Suggested coding style

195 views
Skip to first unread message

Passiday

unread,
Sep 24, 2011, 1:31:21 PM9/24/11
to
Hello,

I have started to code random stuff in Python only recently, still
lots to learn. So please bear with me if my question sounds like rant.

I have been coding in many other languages, most of the time it was
Java and C#. I don't like the function mess of PHP (ie, loads and
loads of functions without any namespaces etc), but I'd like to think
that Python is different.

In my brief coding experience I have stumbled upon Python zfill(width)
method, and I thought, really, do you have to include such a narrow-
purpose method in the basic method set? Perhaps there are more such
methods that are nice when you need them, but then again, you don't
put all the possible methods in the standard set.

Perhaps there is reason such method is in the basic library, and my
complaints are unbased? Or, perhaps the language is on course to bloat
out and get filled with tens and hundreds of special-purpose methods
that render the language structure chaotic?

Passiday

MRAB

unread,
Sep 24, 2011, 3:03:31 PM9/24/11
to pytho...@python.org
Considering that Python has been around for 20 years, there's not much
bloat. Most of the risk of that was early on, when any interest in the
language might have been welcomed. Now that its use has grown, it can
be more choosy.

.zfill does have its uses:

>>> "-1".rjust(4, "0")
'00-1'
>>> "-1".zfill(4)
'-001'

Tim Johnson

unread,
Sep 24, 2011, 3:10:48 PM9/24/11
to pytho...@python.org
* Passiday <pass...@gmail.com> [110924 09:47]:
<...>
> I have been coding in many other languages, most of the time it was
> Java and C#. I don't like the function mess of PHP (ie, loads and
> loads of functions without any namespaces etc), but I'd like to think
> that Python is different.
It is ...

> In my brief coding experience I have stumbled upon Python zfill(width)
> method, and I thought, really, do you have to include such a narrow-
> purpose method in the basic method set? Perhaps there are more such
> methods that are nice when you need them, but then again, you don't
> put all the possible methods in the standard set.
I think that you have raised an interesting question here. I've
been coding in python for 9 years and I have never used it.

> Perhaps there is reason such method is in the basic library, and my
> complaints are unbased?

It could be some sort of legacy. I imagine we will hear from some
more senior pythonists on this matter.

> Or, perhaps the language is on course to bloat
> out and get filled with tens and hundreds of special-purpose methods
> that render the language structure chaotic?

From my observance, python has developed with care and prudence. I
have a feeling (instinctive of course), that Guido van Rossum
is/was more likely to say 'no' to a request for a new
implementation that Rasmus Lerdorf.

MTCW
--
Tim
tim at tee jay forty nine dot com or akwebsoft dot com
http://www.akwebsoft.com

MRAB

unread,
Sep 24, 2011, 3:34:36 PM9/24/11
to pytho...@python.org
On 24/09/2011 20:10, Tim Johnson wrote:
> * Passiday<pass...@gmail.com> [110924 09:47]:
> <...>
>> I have been coding in many other languages, most of the time it was
>> Java and C#. I don't like the function mess of PHP (ie, loads and
>> loads of functions without any namespaces etc), but I'd like to think
>> that Python is different.
> It is ...
>
>> In my brief coding experience I have stumbled upon Python zfill(width)
>> method, and I thought, really, do you have to include such a narrow-
>> purpose method in the basic method set? Perhaps there are more such
>> methods that are nice when you need them, but then again, you don't
>> put all the possible methods in the standard set.
> I think that you have raised an interesting question here. I've
> been coding in python for 9 years and I have never used it.
>
>> Perhaps there is reason such method is in the basic library, and my
>> complaints are unbased?
>
> It could be some sort of legacy. I imagine we will hear from some
> more senior pythonists on this matter.
>
The documentation says "New in version 2.2.2".

>> Or, perhaps the language is on course to bloat
>> out and get filled with tens and hundreds of special-purpose methods
>> that render the language structure chaotic?
>

Arnaud Delobelle

unread,
Sep 24, 2011, 3:54:28 PM9/24/11
to pytho...@python.org
On 24 September 2011 20:34, MRAB <pyt...@mrabarnett.plus.com> wrote:

>>> In my brief coding experience I have stumbled upon Python zfill(width)
>>> method,

[...]


>>   It could be some sort of legacy. I imagine we will hear from some
>>   more senior pythonists on this matter.
>>
> The documentation says "New in version 2.2.2".

But zfill has been in the string module for a lot longer.

--
Arnaud

Tim Johnson

unread,
Sep 24, 2011, 5:09:35 PM9/24/11
to pytho...@python.org
* Arnaud Delobelle <arn...@gmail.com> [110924 12:04]:
> On 24 September 2011 20:34, MRAB <pyt...@mrabarnett.plus.com> wrote:
>
> >>> In my brief coding experience I have stumbled upon Python zfill(width)
> >>> method,
> [...]
> >>   It could be some sort of legacy. I imagine we will hear from some
> >>   more senior pythonists on this matter.
> >>
> > The documentation says "New in version 2.2.2".
>
> But zfill has been in the string module for a lot longer.
:) Like I said. See timestamp.
http://mail.python.org/pipermail/python-bugs-list/1999-July/000035.html
I was coding C/C++ and ASM back then....

Steven D'Aprano

unread,
Sep 24, 2011, 10:36:42 PM9/24/11
to
MRAB wrote:

> On 24/09/2011 20:10, Tim Johnson wrote:
>> * Passiday<pass...@gmail.com> [110924 09:47]:
>> <...>
>>> I have been coding in many other languages, most of the time it was
>>> Java and C#. I don't like the function mess of PHP (ie, loads and
>>> loads of functions without any namespaces etc), but I'd like to think
>>> that Python is different.
>> It is ...
>>
>>> In my brief coding experience I have stumbled upon Python zfill(width)
>>> method, and I thought, really, do you have to include such a narrow-
>>> purpose method in the basic method set? Perhaps there are more such
>>> methods that are nice when you need them, but then again, you don't
>>> put all the possible methods in the standard set.
>> I think that you have raised an interesting question here. I've
>> been coding in python for 9 years and I have never used it.
>>
>>> Perhaps there is reason such method is in the basic library, and my
>>> complaints are unbased?
>>
>> It could be some sort of legacy. I imagine we will hear from some
>> more senior pythonists on this matter.
>>
> The documentation says "New in version 2.2.2".

Which is about nine years old, so roughly half as old as Python itself.
It's hardly a new feature.

Just because Passiday and Tim don't use zfill doesn't mean it's not useful
to some people. Here are examples of it in use, or people asking how to
format numbers with leading zeroes:

http://www.ruby-forum.com/topic/67378
http://stackoverflow.com/questions/134934/display-number-with-leading-zeros
http://stackoverflow.com/questions/733454/best-way-to-format-integer-as-string-with-leading-zeros
http://msdn.microsoft.com/en-us/library/dd260048.aspx
http://www.ozgrid.com/forum/showthread.php?t=64193&page=1

http://www.google.com/codesearch#algXCqBNNP0/utils/zip2rep.py&q=lang:%5Epython$%20zfill%20case:yes&ct=rc&cd=7

http://www.google.com/codesearch#Wnd3W7C0RPM/lives_guide.tar.bz2%7C0MIk12cLwTg/desub.py&q=lang:%5Epython$%20zfill%20case:yes

Padding numbers with leading zeroes is very common. I'm surprised that
more languages don't make it a string method.



--
Steven

Devin Jeanpierre

unread,
Sep 24, 2011, 10:55:10 PM9/24/11
to Steven D'Aprano, pytho...@python.org
> Padding numbers with leading zeroes is very common. I'm surprised that
> more languages don't make it a string method.

By making it a string method, instead of a function, we force all
implementations of strings to implement that method. That sort of
sucks, and it's a reason not to include it as a method. It can, after
all, be implemented as a function, and in doing so (with the
appropriate operator overloading) that function could work with
multiple implementations of strings. Instead any implementation of a
string must implement that method. That's a waste.

Of course, one could argue that there are very few string
implementations. On the other hand, there were three in the stdlib in
2.x, and there are other concepts of strings (like ropes) that are
more efficient for different use-cases. The third string in the stdlib,
mmap, didn't even bother implementing the full string interface. It's
just so damned big. (Also some methods didn't apply, like zfill, but
hey!)

At the very least, it's sort of ugly from my perspective to tack on
trivial things like this to be string methods.

But sure, yeah, as a bonus you get to do fewer imports. That's pretty
great too, I guess.

Devin
> --
> http://mail.python.org/mailman/listinfo/python-list
>

Tim Johnson

unread,
Sep 25, 2011, 2:46:14 PM9/25/11
to pytho...@python.org
* Devin Jeanpierre <jeanpi...@gmail.com> [110924 19:07]:

> > Padding numbers with leading zeroes is very common. I'm surprised that
> > more languages don't make it a string method.
>
> By making it a string method, instead of a function, we force all
> implementations of strings to implement that method. That sort of
> sucks, and it's a reason not to include it as a method.
Why does it suck? And why do people say 'suck' so much, especially
in technical venues?
:) Just answer the first question, the second is rhetorical. I
think that your answer, regardless of whether I agree with it may
edify me serendipitously.

> It can, after all, be implemented as a function, and in doing so
> (with the appropriate operator overloading) that function could
> work with multiple implementations of strings. Instead any
> implementation of a string must implement that method. That's a
> waste.

I'm not sure what you mean. I've written my own `split' function. I
don't believe that there would be any conflict if you wrote your
own `zfill' function. Or if there would be, I'd want to know before
I hurt myself.

regards

Petite Abeille

unread,
Sep 25, 2011, 2:54:28 PM9/25/11
to pytho...@python.org

On Sep 25, 2011, at 8:46 PM, Tim Johnson wrote:

> Why does it suck? And why do people say 'suck' so much, especially in technical venues? :)

It's a technical term:

http://www.osnews.com/images/comics/wtfm.jpg

Chris Angelico

unread,
Sep 25, 2011, 5:48:29 PM9/25/11
to pytho...@python.org

Also, because technical people are opinionated windbags. Goes with the
territory. :) Actually, it's partly because it's so easy to create
standards. You don't like X? Create your own language in which it
doesn't exist! You absolutely detest Y? Ignore it and use something
else! But since we can't ignore _everything_ we dislike, there ends up
a happy medium in which we all use the things that we dislike least,
all the while ranting about those aspects of them that "absolutely,
totally suck", and vowing that we could have done way better if we'd
been in the position of Some Famous Guy back when he had that perfect
opportunity to create a new and perfect standard, but he *blew it* by
having a small and narrow view, etc, etc, etc...

Of course, some of us manage to still be courteous and objective when
discussing the things that suck, while others just go off on lengthy
rants. And if you're willing to learn, it's not uncommon to start off
complaining and end up appreciating. :)

Chris Angelico

Devin Jeanpierre

unread,
Sep 25, 2011, 8:23:47 PM9/25/11
to Chris Angelico, pytho...@python.org
> Why does it suck?

The gist of what I was saying is that it's possible to define
functions that do this "generically" so that one implementation of
zfill can work with multiple implementations of strings. Having to
reimplement every time when one implementation would do is bothersome
and generally isn't done unless it has to be (thus why mmap lacks a
zfill method). Having to do more work than necessary "sucks", as does
having partial str implementations that don't do everything str does.

Ideally, I would claim that if some interface will have multiple
implementations, it should have as few methods as possible to make
implementation as easy as possible, and move as much as possible
_away_ from methods and into functions that work with arbitrary
implementations of the interface. This minimizes the amount of work
that must be done for implementors and thus makes life better.

It's also true that it's "bad practice" to have objects with large
APIs, not for convenience reasons but because it increases object
coupling, something that "good" object oriented design seeks to
eliminate. The idea there is that the less ways you can have your
object interacted with / interact with other objects, the easier it is
to think of the way state flows. I agree with this in principle, but
it doesn't really matter for strings.

The situation I see with something like zfill as-a-method is that it
has nearly negligible benefit (less imports vs function?) and some
detriment. So I would conclude it should not exist. Other people look
at this differently.

> Also, because technical people are opinionated windbags.

Pardon?

Devin

> --
> http://mail.python.org/mailman/listinfo/python-list
>

MRAB

unread,
Sep 25, 2011, 8:47:58 PM9/25/11
to pytho...@python.org
On 26/09/2011 01:23, Devin Jeanpierre wrote:
>> Why does it suck?
>
> The gist of what I was saying is that it's possible to define
> functions that do this "generically" so that one implementation of
> zfill can work with multiple implementations of strings. Having to
> reimplement every time when one implementation would do is bothersome
> and generally isn't done unless it has to be (thus why mmap lacks a
> zfill method). Having to do more work than necessary "sucks", as does
> having partial str implementations that don't do everything str does.
>
> Ideally, I would claim that if some interface will have multiple
> implementations, it should have as few methods as possible to make
> implementation as easy as possible, and move as much as possible
> _away_ from methods and into functions that work with arbitrary
> implementations of the interface. This minimizes the amount of work
> that must be done for implementors and thus makes life better.
>
[snip]
I would have thought that a better solution would be to specify a
minimal set of methods in an abstract superclass and write the
additional methods using that minimal set.

The concrete string implementations would be descended from the
superclass and would still be able to override the additional methods
with more efficient code were desired, such as in the 'str' class.

Devin Jeanpierre

unread,
Sep 25, 2011, 9:15:49 PM9/25/11
to pytho...@python.org
> I would have thought that a better solution would be to specify a
> minimal set of methods in an abstract superclass and write the
> additional methods using that minimal set.
>
> The concrete string implementations would be descended from the
> superclass and would still be able to override the additional methods
> with more efficient code were desired, such as in the 'str' class.

This does sound better to me too!

Devin

> --
> http://mail.python.org/mailman/listinfo/python-list
>

Chris Angelico

unread,
Sep 25, 2011, 9:42:55 PM9/25/11
to pytho...@python.org
On Mon, Sep 26, 2011 at 10:23 AM, Devin Jeanpierre
<jeanpi...@gmail.com> wrote:
>> Also, because technical people are opinionated windbags.
>
> Pardon?

No offense intended; just look at this list and you'll see how
opinionated people can be, and how willing to express those opinions
in many words! Frank and courteous exchange of views, one of the best
ways to learn about the subject matter... and about the other
programmers too.

ChrisA

Tim Johnson

unread,
Sep 25, 2011, 10:55:26 PM9/25/11
to pytho...@python.org
* Devin Jeanpierre <jeanpi...@gmail.com> [110925 16:37]:

> > Why does it suck?
>
> The gist of what I was saying is that it's possible to define
> functions that do this "generically" so that one implementation of
> zfill can work with multiple implementations of strings.

That is kind of 'spot on' for me. Before I started using python, I
worked in rebol - where (at that time), there was a limited number
of function names available because of limited namespacing (and
the binary was a fraction the size of python). So I learned to
take that approach.

> Having to
> reimplement every time when one implementation would do is bothersome
> and generally isn't done unless it has to be (thus why mmap lacks a
> zfill method). Having to do more work than necessary "sucks", as does
> having partial str implementations that don't do everything str does.
>
> Ideally, I would claim that if some interface will have multiple
> implementations, it should have as few methods as possible to make
> implementation as easy as possible, and move as much as possible
> _away_ from methods and into functions that work with arbitrary
> implementations of the interface. This minimizes the amount of work
> that must be done for implementors and thus makes life better.
>

> It's also true that it's "bad practice" to have objects with large
> APIs, not for convenience reasons but because it increases object
> coupling, something that "good" object oriented design seeks to
> eliminate. The idea there is that the less ways you can have your
> object interacted with / interact with other objects, the easier it is
> to think of the way state flows. I agree with this in principle, but
> it doesn't really matter for strings.
>
> The situation I see with something like zfill as-a-method is that it
> has nearly negligible benefit (less imports vs function?) and some
> detriment. So I would conclude it should not exist. Other people look
> at this differently.

Good response.
Thank you.

Tim Johnson

unread,
Sep 25, 2011, 10:59:20 PM9/25/11
to pytho...@python.org
* Chris Angelico <ros...@gmail.com> [110925 13:50]:
> On Mon, Sep 26, 2011 at 4:54 AM, Petite Abeille
> <petite....@gmail.com> wrote:
> >
> > On Sep 25, 2011, at 8:46 PM, Tim Johnson wrote:
> >
> >>  Why does it suck? And why do people say 'suck' so much, especially in technical venues? :)
> >
> > It's a technical term:
> >
> > http://www.osnews.com/images/comics/wtfm.jpg
>
> Also, because technical people are opinionated windbags. Goes with the
> territory. :)
I always felt that to be courteous, to the point and reserved cost
me less typing time. And since I'm self-employed and only charge
for productive time for clients, that's being cost-conscious for me.

Of course I've been known to get a little crazy about PHP. So don't
let me get started...

BTW: If you like ranting as a spectator sport, I have found the
Common Lisp newsgroup to be among the most spectacular. But that's
just me.

Chris Angelico

unread,
Sep 25, 2011, 11:41:29 PM9/25/11
to pytho...@python.org
On Mon, Sep 26, 2011 at 12:59 PM, Tim Johnson <t...@akwebsoft.com> wrote:
> BTW: If you like ranting as a spectator sport, I have found the
>  Common Lisp newsgroup to be among the most spectacular. But that's
>  just me.
>

I do, actually, but I don't need to add another newsgroup. Rick
provides plenty of material here, and I can easily sate myself in just
a few other places that I frequent. It's quite amusing to watch those
holy wars erupt...

And every once in a while, they actually prove quite educative. I'm
not sure how it happens, nor how to trigger it - hmm, perhaps this
should be the subject of a scientific paper. "On ranting newsgroups
and how to make them productive".

ChrisA

DevPlayer

unread,
Sep 27, 2011, 2:45:21 AM9/27/11
to
I think intellectual growth from rants works like this:

Ranter: Bla bla, bad logic, poor facts, some point.
Others: Bla bla you rant Mr Ranter, some logic, few facts, same point.
Ranter: bad mouthing
Others: bad mouthing back
Ranter: Bla Bla, I don't rant, better logic counter facts, lots of
opinion (to not get called a ranter)
Others: Bla bla, You do rant Ranter, good counter logic and facts,
same point (some reason needs to put Ranter "in his place")
Ranter: Super Bla, long winded logic with some strong points, random
but accurate facts out the wazzu (tries to save face)
Others: Acknowleges Ranters point are accurate but claims they don't
apply
Ranter: makes case his points do.
Others: agrees to disagree, silently picks mute Ranter,
Ranter: picks a new topic and starts over.

DevPlayer

unread,
Sep 27, 2011, 2:51:08 AM9/27/11
to
By the way OP Passiday the title of the topic is "Suggested coding
style".

Are you suggesting a coding style or asking for a Python coding style
or are you asking what IS the Python coding style.

If you are asking what is the Python coding style. Google The Zen of
Python. It's pretty much the dictum of coding style and referred to
alot by many Pythoneers.
Message has been deleted

alex23

unread,
Sep 27, 2011, 10:25:48 PM9/27/11
to
rantingrick <rantingr...@gmail.com> wrote:
> Since, like the bible
> the zen is self contradicting, any argument utilizing the zen can be
> defeated utilizing the zen.

And like the Bible, the Zen was created by humans as a joke. If you're
taking it too seriously, that's your problem.

> If however you want to learn about the accepted rules for formatting
> code then you need to read "PEP-8"! PEP 8 is our style guide.

PEP 8 is the _standard library style guide_. There's a difference.

> It is
> not perfect as i have pointed out on many occasions HOWEVER it is the
> only thing we have that keeps multiplicity from reproducing like
> leporidae.

Yes, save us from multiplicity, variety and difference. Nothing good
comes from them anyway.

DevPlayer

unread,
Sep 28, 2011, 8:12:31 AM9/28/11
to
On Sep 27, 10:25 pm, alex23 <wuwe...@gmail.com> wrote:
> rantingrick <rantingr...@gmail.com> wrote:
> > Since, like the bible
> > the zen is self contradicting, any argument utilizing the zen can be
> > defeated utilizing the zen.
>
> And like the Bible, the Zen was created by humans as a joke. If you're
> taking it too seriously, that's your problem.
>
> > If however you want to learn about the accepted rules for formatting
> > code then you need to read "PEP-8"! PEP 8 is our style guide.
>
Contradiction is only seen by narrow perspectve.

Calling the Bible a joke is used to hurt people, not enlighten them.
Those words show bitter arrogance, not constructive critism as it
ignores how others feel about that book. What benefit to others is
gained by calling someones belief a joke? To put the "believers" minds
straight? I think not. I think the unsensitive person who attackes
others beliefs, even if illogical or unrealistic, is after some kind
of self grandizement or to illude themself into thinking "they know
the truth of the universe" and should attack others to prove they do.

Although this is not the place to defend about such things it is also
not the place to attack those same things (that being someone's
faith). There is no real forum to defend a faith or religion, or words
in a book about that, other then where such faiths are in fact
attacked.

However I did laugh at the ironic use of using any-kind of zen to
seriously, even Python's, as that is very unzen-like. That is a
contradiction by it's very own definitions!

Ben Finney

unread,
Sep 28, 2011, 10:17:57 AM9/28/11
to
DevPlayer <devp...@gmail.com> writes:

> Calling the Bible a joke is used to hurt people, not enlighten them.

How do you know that?

> Those words show bitter arrogance, not constructive critism

How do you know that?

> as it ignores how others feel about that book.

That strikes me as a good thing; how people feel about a book should not
in any way restrain our criticism of the book.

> What benefit to others is gained by calling someones belief a joke? To
> put the "believers" minds straight? I think not.

I can't speak for the person who wrote that. But when I call a religious
belief a joke, it is to point out the folly of the belief in the pursuit
of convincing people not to hold beliefs I consider to be foolish.

> I think the unsensitive person who attackes others beliefs, even if
> illogical or unrealistic, is after some kind of self grandizement or
> to illude themself into thinking "they know the truth of the universe"
> and should attack others to prove they do.

You are wrong to conflate “attack others's beliefs” with “attack
others”.

You are not your beliefs. If your beliefs are shown to be false – even
ridiculous – you can distance yourself from those beliefs. It is even
virtuous to do so.

We must always be free to attack any belief, and encourage everyone to
stop taking it as any kind of personal attack.

> Although this is not the place to defend about such things it is also
> not the place to attack those same things (that being someone's
> faith).

I will join you in deploring any attack on a person. But that's not what
you're doing, and I deny your attempt to shield any idea from ridicule,
in any forum.

Ideas don't have feelings, and you don't get to put people in front of
them as human shields against attacking those ideas.

Any idea is and must be open to attack in any forum; those that can't
survive ridicule deserve to go.

--
\ “Ridicule is the only weapon which can be used against |
`\ unintelligible propositions.” —Thomas Jefferson, 1816-07-30 |
_o__) |
Ben Finney

Tim Johnson

unread,
Sep 28, 2011, 7:26:51 PM9/28/11
to pytho...@python.org
* DevPlayer <devp...@gmail.com> [110928 04:31]:
> On Sep 27, 10:25 pm, alex23 <wuwe...@gmail.com> wrote:
> > rantingrick <rantingr...@gmail.com> wrote:
> > > Since, like the bible
> > > the zen is self contradicting, any argument utilizing the zen can be
> > > defeated utilizing the zen.
> >
> > And like the Bible, the Zen was created by humans as a joke. If you're
> > taking it too seriously, that's your problem.
> >
> > > If however you want to learn about the accepted rules for formatting
> > > code then you need to read "PEP-8"! PEP 8 is our style guide.
> >
> Contradiction is only seen by narrow perspectve.
>
> Calling the Bible a joke is used to hurt people, not enlighten them.
> Those words show bitter arrogance, not constructive critism as it
> ignores how others feel about that book. What benefit to others is
> gained by calling someones belief a joke?

My wife and I are devout christians, but not fundamentalist. We
would not take rantingrick too seriously. If _you_ take him
seriously, you're just giving him 'street cred'.

Steven D'Aprano

unread,
Sep 28, 2011, 9:14:04 PM9/28/11
to
DevPlayer wrote:

> On Sep 27, 10:25 pm, alex23 <wuwe...@gmail.com> wrote:
>> And like the Bible, the Zen was created by humans as a joke. If you're
>> taking it too seriously, that's your problem.
[...]
> Calling the Bible a joke is used to hurt people, not enlighten them.
> Those words show bitter arrogance, not constructive critism as it
> ignores how others feel about that book. What benefit to others is
> gained by calling someones belief a joke?

It is the same benefit as the little boy who pointed out that the Emperor
was not wearing any clothes. (In real life, the story was called "The
Little Boy Who Said The Emperor Wasn't Wearing Any Clothes, and Got
Arrested and Thrown in Prison Together With His Parents for Insulting The
Emperor".)


> To put the "believers" minds
> straight? I think not. I think the unsensitive person who attackes
> others beliefs, even if illogical or unrealistic, is after some kind
> of self grandizement or to illude themself into thinking "they know
> the truth of the universe" and should attack others to prove they do.

There is a difference between attacking ideas and attacking people.

"The Bible is a joke" attacks the idea.

"Insensitive people after self-aggrandisement deluding themselves" attacks
the person.

We live in a world where religion is privileged, where governments pander to
the most sick and twisted, hateful, bigoted beliefs because of religion,
where organised conspiracies to support and protect child molesters and
sexual predators are nevertheless looked up to as sources of morality.

There are some ideas that are simply incompatible with civilization, and the
idea that religious beliefs should be beyond criticism is one of them.
Forget money, or even the love of money. The idea that one mustn't
criticise another person's beliefs is the root of all evil.



--
Steven

Devin Jeanpierre

unread,
Sep 28, 2011, 9:40:27 PM9/28/11
to Steven D'Aprano, pytho...@python.org
> Forget money, or even the love of money. The idea that one mustn't
> criticise another person's beliefs is the root of all evil.

This was a technical discussion, and calling the bible a joke was not
necessary at all. It creates a hostile atmosphere.

Can't you pick somewhere else to attack Christianity?

Devin
> --
> http://mail.python.org/mailman/listinfo/python-list
>
Message has been deleted

DevPlayer

unread,
Sep 28, 2011, 10:15:24 PM9/28/11
to
Oh I was just testing my intellecual-enlightenment-from-ranter-
conversation algorithm found in a previous post. I think my OOP model
failed as I'm just too tired to finished that pattern test. He had
some good points which fit the process I layed out. But the original
topic is just so much better:

Suggested coding style Options



alex23

unread,
Sep 28, 2011, 10:41:51 PM9/28/11
to
On Sep 28, 10:12 pm, DevPlayer <devpla...@gmail.com> wrote:
> Calling the Bible a joke is used to hurt people, not enlighten them.

Y'know, I wouldn't even bother responding to this if Xianists were as
open, forgiving and accepting as their messiah told them to be. It was
a *flippant remark*. If you want to establish intent, aggression and
religio-politico-philosophy from every throwaway remark made on the
internet, you're not really going to have much time for Python.

My belief system isn't your's. Hell, my belief system doesn't even
require that I have *any respect whatsoever* for your's. If it's okay
for Xianists to "suffer not a witch to live", then I'm going to assert
my making light jokes about those whose world view is in direct
opposition to mine isn't even comparable to that mentality.

from attitude import humour

(Since we're already fully derailed here, I've always preferred
Borges' suggestion that it was actually Judas who carried the full
weight of man's sins, given that his betrayal of Christ and inevitable
condemnation to hell was a necessity. Then again, I'm able to safely
view this as *allegory* and am genuinely interested in the opinions of
modern minds over something first begun by nomads millenia ago...)


Ben Finney

unread,
Sep 28, 2011, 11:05:36 PM9/28/11
to
Devin Jeanpierre <jeanpi...@gmail.com> writes:

> > Forget money, or even the love of money. The idea that one mustn't
> > criticise another person's beliefs is the root of all evil.
>
> This was a technical discussion, and calling the bible a joke was not
> necessary at all. It creates a hostile atmosphere.

I disagree. It was not an attack on any person nor group of people. If
we are to be required to avoid jokes not directed at people, then *that*
is an atmosphere hostile to open friendly discussion.

> Can't you pick somewhere else to attack Christianity?

The person who wrote the “bible is a joke” intended it as a flippant
remark. Countless other flippant remarks pass through here all the time,
making jokes at the expense of some idea or other. Christianity will not
be an exception to that.

If you find someone attacking people, I'll join you in ostracising the
attacker. But no, don't attempt to silence jokes that attack an idea.

Off-topic? If we start discussing the content of the ideas being
attacked, yeah, I'd say religion is pretty off-topic.

But the topic of keeping this forum safe for technical discussion
entails that it must be safe for *any* idea to be the butt of a joke, be
it a religious text or the Zen of Python, and that is very much
on-topic.

--
\ “We demand rigidly defined areas of doubt and uncertainty!” |
`\ —Vroomfondel, _The Hitch-Hiker's Guide To The Galaxy_, Douglas |
_o__) Adams |
Ben Finney
Message has been deleted

Westley Martínez

unread,
Sep 29, 2011, 2:24:13 AM9/29/11
to pytho...@python.org
On Wed, Sep 28, 2011 at 07:11:08PM -0700, rantingrick wrote:
> On Sep 28, 6:26 pm, Tim Johnson <t...@akwebsoft.com> wrote:
> > * DevPlayer <devpla...@gmail.com> [110928 04:31]:
> DevPlayer was not even talking about what i said, he was replying to a
> statement by Alex23 who said (and i quote) "And like the Bible, the
> Zen was created by humans as a joke". Maybe you should spend the next
> fifteen or so minutes catching up to the conversation...(ಠ_ಠ)...of
> course only *after* you clean that egg from your face

Perhaps you should spend a little less time on the mailing list and a
little more time in church.

Ian Kelly

unread,
Sep 29, 2011, 2:57:21 AM9/29/11
to pytho...@python.org
On Thu, Sep 29, 2011 at 12:24 AM, Westley Martínez <anik...@gmail.com> wrote:
> Perhaps you should spend a little less time on the mailing list and a
> little more time in church.

You must not like churchgoers very much if you want to inflict
rantingrick on them...

Ian Kelly

unread,
Sep 29, 2011, 3:08:13 AM9/29/11
to pytho...@python.org
Although come to think of it, I bet he could deliver a pretty mean sermon. ;-)

Steven D'Aprano

unread,
Sep 29, 2011, 6:37:53 AM9/29/11
to
Westley Martínez wrote:

> Perhaps you should spend a little less time on the mailing list and a
> little more time in church.

Is that meant as punishment for Rick or for the churchgoers?


--
Steven

Passiday

unread,
Sep 29, 2011, 6:37:39 AM9/29/11
to
Oh, my. Who could expect this topic would iterate to some whining about religion (please don't respond on this remark of mine).

Here's a summary of what I take from this longwinded thread:
Read the Zen of Pthon for some fun: http://www.python.org/dev/peps/pep-0020
Read the PEP-8 for some good guidelines: http://www.python.org/dev/peps/pep-0008

My topic was "Suggested coding style" because I hoped there is some common understanding which of the ancient methods/functions are so not where they should be that the use of them should be depreciated. I can fully understand that when the language evolves, it might implement some ugly methods. Perhaps it was some quick itching need to format some numbers that drove some antique Python programmer so mad that he decided this belongs to the string class, instead of some number/date/string formatting class that attempts to build on existing well established standards. And so, the str.zfill() was born. But I'd expect that there exists some leadership who are brave enough to admit some bad decisions and lead the people by announcing that using certain methods is "bad style". No need to take them out of the implementation, that might unnecessary break some code in obscure places. However, guiding programmers for better coding practice and avoid ugly bloating of nice scripting language should be considered a holy (please don't rant on use of this word) mission.

Passiday
Message has been deleted
Message has been deleted

MRAB

unread,
Sep 29, 2011, 10:02:55 AM9/29/11
to pytho...@python.org
On 29/09/2011 04:05, Ben Finney wrote:
> Devin Jeanpierre<jeanpi...@gmail.com> writes:
>
>>> Forget money, or even the love of money. The idea that one mustn't
>>> criticise another person's beliefs is the root of all evil.
>>
>> This was a technical discussion, and calling the bible a joke was not
>> necessary at all. It creates a hostile atmosphere.
>
> I disagree. It was not an attack on any person nor group of people. If
> we are to be required to avoid jokes not directed at people, then *that*
> is an atmosphere hostile to open friendly discussion.
>
>> Can't you pick somewhere else to attack Christianity?
>
> The person who wrote the “bible is a joke” intended it as a flippant
> remark. Countless other flippant remarks pass through here all the time,
> making jokes at the expense of some idea or other. Christianity will not
> be an exception to that.
>
> If you find someone attacking people, I'll join you in ostracising the
> attacker. But no, don't attempt to silence jokes that attack an idea.
>
> Off-topic? If we start discussing the content of the ideas being
> attacked, yeah, I'd say religion is pretty off-topic.
>
> But the topic of keeping this forum safe for technical discussion
> entails that it must be safe for *any* idea to be the butt of a joke, be
> it a religious text or the Zen of Python, and that is very much
> on-topic.
>
Even if it offends Python worshippers?
http://www.youtube.com/watch?v=asUyK6JWt9U

Westley Martínez

unread,
Sep 29, 2011, 12:34:25 PM9/29/11
to pytho...@python.org
Hopefully neither, probably both.

Westley Martínez

unread,
Sep 29, 2011, 12:42:11 PM9/29/11
to pytho...@python.org
On Thu, Sep 29, 2011 at 05:23:30AM -0700, rantingrick wrote:
> On Sep 29, 5:37 am, Passiday <passi...@gmail.com> wrote:
>
> What is so bad about breaking code in obscure places? We changed print
> to a function which broke just about every piece of code every written
> in this language. (BTW, print should ALWAYS have been a function!)
> What is so bad then about breaking some very obscure code? We could
> always have a lengthy deprecation period.
>

Well, I once thought that a print function made a lot of sense. In C,
printf is a function, however then I think why print is a function. In
C, just about every function has side effects (the return values are
more often than not either pointers or status codes). In Python
functions are encouraged to not have side-effects, so the implementation
of print as a statement or a method makes far more sense than as a
function.

But maybe I'm just batty as you all think I am.

Chris Angelico

unread,
Sep 29, 2011, 1:02:29 PM9/29/11
to pytho...@python.org
On Fri, Sep 30, 2011 at 2:42 AM, Westley Martínez <anik...@gmail.com> wrote:
> But maybe I'm just batty as you all think I am.

Yes, I'm afraid so. Bonkers. Off your head. But let me tell you a
secret... All the best people are.

> Well, I once thought that a print function made a lot of sense.  In C,
> printf is a function, however then I think why print is a function.  In
> C, just about every function has side effects (the return values are
> more often than not either pointers or status codes).  In Python
> functions are encouraged to not have side-effects, so the implementation
> of print as a statement or a method makes far more sense than as a
> function.

Since functions and methods in Python are practically the same thing,
I don't know that there really need be any difference in policy. But I
do like any reduction in the number of "special features" of a
language. If screen output can be done as an ordinary function taking
ordinary arguments, that's better than having a special language
construct. Also, it's just plain stupid and yet just plain cool to be
able to:

print = sys.stderr.write

and smoothly redirect all your prints to stderr. (Unfortunately this
doesn't quite work, as it means you don't get your newlines put in for
you, but there's sure to be an equally stupid/cool reassignment
available.)

ChrisA

Devin Jeanpierre

unread,
Sep 29, 2011, 2:49:05 PM9/29/11
to Ben Finney, pytho...@python.org
>> This was a technical discussion, and calling the bible a joke was not
>> necessary at all. It creates a hostile atmosphere.
>
> I disagree. It was not an attack on any person nor group of people. If
> we are to be required to avoid jokes not directed at people, then *that*
> is an atmosphere hostile to open friendly discussion.

Well. It wasn't directly an attack on people exactly. It did mention
believers directly. It could certainly be _interpreted_ as an attack
(and was interpreted that way), and that's really all that's necessary
for a hostile environment.

I'm not saying we should censor ourselves exactly. I've always been
opposed to harsh _rules_ about what's appropriate and what
isn't. But I do think it's important to consider others' feelings.
Just because it isn't an attack, doesn't mean it can't hurt peoples'
feelings, and I think hurting peoples' feelings is something worth
going out of your way to avoid.

Anyway, if it was a joke before, it isn't when somebody starts calling
some "group of people" "organised conspiracies to support and protect
child molesters".

> The person who wrote the “bible is a joke” intended it as a flippant
> remark. Countless other flippant remarks pass through here all the time,
> making jokes at the expense of some idea or other. Christianity will not
> be an exception to that.

That doesn't make it right. Is it OK to make fun of arbitrary ideas as
"jokes"? I don't think so. It seems, again, hurtful. Especially when
the idea is totally unrelated. It's like we're having a discussion
about dynamic typing and somebody blurts out "Hahaha, static typing is
almost as dumb as Cartesian Dualism". The best case outcome is that
nobody cares. The worse case outcomes go down to hurt feelings and
flame wars from dualists.

> But the topic of keeping this forum safe for technical discussion
> entails that it must be safe for *any* idea to be the butt of a joke, be
> it a religious text or the Zen of Python, and that is very much
> on-topic.

It obviously isn't "safe" to joke about any topic, seeing as it caused
a derailment and new thread.

Devin
> --
> http://mail.python.org/mailman/listinfo/python-list
>

Petite Abeille

unread,
Sep 29, 2011, 3:32:20 PM9/29/11
to pytho...@python.org

On Sep 29, 2011, at 8:49 PM, Devin Jeanpierre wrote:

> It could certainly be _interpreted_ as an attack
> (and was interpreted that way), and that's really all that's necessary
> for a hostile environment.

In other news:

http://alt.textdrive.com/assets/public/non/nq050616.gif

--
Tout le monde il est beau, tout le monde il est gentil


Ethan Furman

unread,
Sep 29, 2011, 3:52:23 PM9/29/11
to pytho...@python.org
Petite Abeille wrote:
> On Sep 29, 2011, at 8:49 PM, Devin Jeanpierre wrote:
>
>> It could certainly be _interpreted_ as an attack
>> (and was interpreted that way), and that's really all that's necessary
>> for a hostile environment.
>
> In other news:
>
> http://alt.textdrive.com/assets/public/non/nq050616.gif


Okay, now that's funny.

~Ethan~

Petite Abeille

unread,
Sep 29, 2011, 3:54:54 PM9/29/11
to pytho...@python.org

On Sep 29, 2011, at 9:37 PM, Navkirat Singh wrote:

> I am looking for the python mailing list. . ? Have you guys seen it
> somewhere? I think I accidently reached the cry-me-a-river list?

The portal can be reactivated by intoning Bobby Brown Goes Down in unison.

Westley Martínez

unread,
Sep 29, 2011, 5:20:15 PM9/29/11
to pytho...@python.org
On Thu, Sep 29, 2011 at 02:49:05PM -0400, Devin Jeanpierre wrote:
> >> This was a technical discussion, and calling the bible a joke was not
> >> necessary at all. It creates a hostile atmosphere.
> >
> > I disagree. It was not an attack on any person nor group of people. If
> > we are to be required to avoid jokes not directed at people, then *that*
> > is an atmosphere hostile to open friendly discussion.
>
> Well. It wasn't directly an attack on people exactly. It did mention
> believers directly. It could certainly be _interpreted_ as an attack
> (and was interpreted that way), and that's really all that's necessary
> for a hostile environment.
>
> I'm not saying we should censor ourselves exactly. I've always been
> opposed to harsh _rules_ about what's appropriate and what
> isn't. But I do think it's important to consider others' feelings.
> Just because it isn't an attack, doesn't mean it can't hurt peoples'
> feelings, and I think hurting peoples' feelings is something worth
> going out of your way to avoid.
>
> Anyway, if it was a joke before, it isn't when somebody starts calling
> some "group of people" "organised conspiracies to support and protect
> child molesters".
>
> > The person who wrote the “bible is a joke” intended it as a flippant
> > remark. Countless other flippant remarks pass through here all the time,
> > making jokes at the expense of some idea or other. Christianity will not
> > be an exception to that.
>
> That doesn't make it right. Is it OK to make fun of arbitrary ideas as
> "jokes"? I don't think so. It seems, again, hurtful. Especially when
> the idea is totally unrelated. It's like we're having a discussion
> about dynamic typing and somebody blurts out "Hahaha, static typing is
> almost as dumb as Cartesian Dualism". The best case outcome is that
> nobody cares. The worse case outcomes go down to hurt feelings and
> flame wars from dualists.
>
> > But the topic of keeping this forum safe for technical discussion
> > entails that it must be safe for *any* idea to be the butt of a joke, be
> > it a religious text or the Zen of Python, and that is very much
> > on-topic.
>
> It obviously isn't "safe" to joke about any topic, seeing as it caused
> a derailment and new thread.
>

Sometimes it's just not appropriate to joke. Save them for the dates.

Ben Finney

unread,
Sep 29, 2011, 5:24:15 PM9/29/11
to
Passiday <pass...@gmail.com> writes:

> Oh, my. Who could expect this topic would iterate to some whining
> about religion (please don't respond on this remark of mine).

That's an unreasonable request. If you make a provocative remark (I
doubt you chose to use “whining” without knowing how dismissive it is),
it's disingenuous to then ask that people please not respond.

--
\ “If nothing changes, everything will remain the same.” —Barne's |
`\ Law |
_o__) |
Ben Finney

Ben Finney

unread,
Sep 29, 2011, 5:32:42 PM9/29/11
to
Even then. People who remain attached to ideas are being unreasonable if
they take a joke about that idea personally. No idea, certainly not any
religion, gets any special exemption.

--
\ “On the other hand, you have different fingers.” —Steven Wright |
`\ |
_o__) |
Ben Finney

Westley Martínez

unread,
Sep 29, 2011, 5:33:34 PM9/29/11
to pytho...@python.org
I'm kind of new to the whole mailing list thing, but they seem to be a
lot more lenient than internet forums about most things. I've noticed
that sometimes Off-topic posts can get a little out of hand. I guess
it's not really a big deal, but it bothers me, and the trolls just love
to feed on it. I mean, as programmers, we should devote our time to
improving computer systems. On this mailing list, we're programmers,
nothing else, and so we shouldn't mingle other things into the list.
Think of it as using global variables or even a goto. That's
essentially what OT is. It just serves to obfuscate valuable answers to
good programming questions.

Chris Angelico

unread,
Sep 29, 2011, 5:40:13 PM9/29/11
to pytho...@python.org
On Fri, Sep 30, 2011 at 7:33 AM, Westley Martínez <anik...@gmail.com> wrote:
> On this mailing list, we're programmers,
> nothing else, and so we shouldn't mingle other things into the list.
> Think of it as using global variables or even a goto.  That's
> essentially what OT is.

Not a bad analogy, that... but I accept it in perhaps not the same way
as you intended it.

I don't mind using a global variable once in a while. I don't object
to a well-placed goto, especially when it's clear and obvious what
it's doing. And the occasional off-topic post or thread on a mailing
list isn't the end of the world either.

ChrisA

Ben Finney

unread,
Sep 29, 2011, 6:01:32 PM9/29/11
to pytho...@python.org
On 29-Sep-2011, Devin Jeanpierre wrote:
> >> This was a technical discussion, and calling the bible a joke was not
> >> necessary at all. It creates a hostile atmosphere.
> >
> > I disagree. It was not an attack on any person nor group of people. If
> > we are to be required to avoid jokes not directed at people, then *that*
> > is an atmosphere hostile to open friendly discussion.
>
> Well. It wasn't directly an attack on people exactly. It did mention
> believers directly.

It did not. It mentioned only a pair of texts: the bible, and the Zen of
Python. Texts are not people, and we should not go out of our way to
protect them from jokes or criticism.

> It could certainly be _interpreted_ as an attack (and was interpreted
> that way), and that's really all that's necessary for a hostile
> environment.

Nonsense. *Any* joke could be interpreted as an attack; the issue is
whether it's reasonable to do so. Anyone who is so confused as to take a
joke about a book as an attack on people is being quite unreasonable, and
we should not restrain our jokes for the sake of that.

> I'm not saying we should censor ourselves exactly. I've always been
> opposed to harsh _rules_ about what's appropriate and what
> isn't. But I do think it's important to consider others' feelings.

Agreed. But only to the extent that attacks *on those people* are
concerned. Peoples feelings about ideas are not a consideration when
discussing ideas, and certainly not when joking about ideas.

> Just because it isn't an attack, doesn't mean it can't hurt peoples'
> feelings, and I think hurting peoples' feelings is something worth
> going out of your way to avoid.

There we disagree. The hurt feelings of someone who attaches their identity
to a text should not restrain our discourse.

> Anyway, if it was a joke before, it isn't when somebody starts calling
> some "group of people" "organised conspiracies to support and protect
> child molesters".

The group of people to whom that refers, the administrative hierarchy of
the Catholic Church, have been doing exactly what the quotation says.

I agree that's not a joke; it's a matter of fact, and relevant in the
context where it was mentioned.

> Is it OK to make fun of arbitrary ideas as "jokes"? I don't think so.

Yes, a thousand times yes. Ideas are not people, have no rights, and get no
exemption from criticism or dismissal or attack or ridicule.

> It seems, again, hurtful. Especially when the idea is totally unrelated.

That would eliminate just about every joke: a huge range of jokes *depend*
for their humour on connecting seemingly-unrelated ideas. So by your logic,
we don't get to make those jokes here.

> It's like we're having a discussion about dynamic typing and somebody
> blurts out "Hahaha, static typing is almost as dumb as Cartesian
> Dualism". The best case outcome is that nobody cares. The worse case
> outcomes go down to hurt feelings and flame wars from dualists.

And the joke would still be okay, and it would be silly for anyone to take
it as hurtful.

You can call such a joke off-topic, and I'd agree. You can say it's not
very funny, and I'd agree. You can say it's undeserving of a flame war, and
I'd agree wholeheartedly.

But whoever takes that joke and says it's deliberately hurtful is being
presumptuous and censorious and unreasonable. If they then castigate the
joker for supposedly hurting someone's feelings, it's at that point the
atmosphere turns hostile to discussion.

--
\ “The most dangerous man to any government is the man who is |
`\ able to think things out for himself, without regard to the |
_o__) prevailing superstitions and taboos.” —Henry L. Mencken |
Ben Finney <b...@benfinney.id.au>

signature.asc

Ian Kelly

unread,
Sep 29, 2011, 6:12:51 PM9/29/11
to Python
On Thu, Sep 29, 2011 at 6:23 AM, rantingrick <ranti...@gmail.com> wrote:
> A specific method for padding a string with ONLY zeros is ludicrous
> and exposes the narrow mindedness of the creator. The only thing worse
> than "zfill" as a string method is making zfill into built-in
> function! The ONLY proper place for zfill is as an option in the
> str.format() method.
>
> py> "{0:zf10}".format(1234) -> "00000000001234"

Agree that zfill seems to be redundant with str.format, although your
suggested syntax is atrocious, especially since a syntax already
exists that fits better in the already-complicated format specifier
syntax.

"{0:=010d}".format(1234) -> "0000001234"

There are a couple of warts with the existing implementation, however:

1) str.zfill() operates on strings; the .format() syntax operates on
numeric types. I would suggest that the "=" fill alignment in format
specifiers should be extended to do the same thing as zfill when given
a string.

2) It seems to not behave as documented for floats. I expect:

"{0:=010f}".format(-32.7) -> "-0000032.7"

I get:

"{0:=010f}".format(-32.7) -> "-32.700000"

On the other hand, I can't imagine why I would ever actually want the
expected result, so maybe it's not a big deal.

Chris Rebert

unread,
Sep 29, 2011, 6:16:43 PM9/29/11
to Westley Martínez, pytho...@python.org
On Thu, Sep 29, 2011 at 2:33 PM, Westley Martínez <anik...@gmail.com> wrote:
> I'm kind of new to the whole mailing list thing, but they seem to be a
> lot more lenient than internet forums about most things.  I've noticed
> that sometimes Off-topic posts can get a little out of hand.  I guess
> it's not really a big deal, but it bothers me, and the trolls just love
> to feed on it.  I mean, as programmers, we should devote our time to
> improving computer systems.

This is why good mail clients have a "Mute" or equivalent function to
ignore an entire thread and not let it waste any more of your time.

You may want to plonk Xah and the ranter who goes by Rick while you're at it. :)

Cheers,
Chris
Message has been deleted

Devin Jeanpierre

unread,
Sep 29, 2011, 7:03:24 PM9/29/11
to Ben Finney, pytho...@python.org
> There we disagree. The hurt feelings of someone who attaches their identity
> to a text should not restrain our discourse.

Yes, we do.

> That would eliminate just about every joke: a huge range of jokes *depend*
> for their humour on connecting seemingly-unrelated ideas. So by your logic,
> we don't get to make those jokes here.

I didn't have much logic. I just don't think it's nice to do things
that hurt other people, and if we can, we should avoid those things.
Avoiding them is pretty easy here.

> But whoever takes that joke and says it's deliberately hurtful is being
> presumptuous and censorious and unreasonable. If they then castigate the
> joker for supposedly hurting someone's feelings, it's at that point the
> atmosphere turns hostile to discussion.

I don't really care about the "joke". I honestly I didn't understand
it as a joke, which would drive most of my disagrement. I don't think
it should have been made, yes. I take major issue with the
anti-Christian rant that appeared afterward, but I haven't really
taken much opportunity to attack it because it doesn't matter. All I'd
like is for people to be a little more friendly, if you please.

I also didn't reprimand anyone, except maybe Steven.

But anyway, no, we don't agree on what it means to be friendly or what
a hostile atmosphere is. I've noticed that people tend to be a lot
harsher here than what I'm used to, so perhaps your attitude to it is
more common on mailing-lists and I should just adapt.

Devin
> --
> http://mail.python.org/mailman/listinfo/python-list
>
>

Devin Jeanpierre

unread,
Sep 29, 2011, 7:07:28 PM9/29/11
to rantingrick, pytho...@python.org
> However, as you use the new format method you will come to appreciate
> it. It's an adult beverage with an acquired taste. ;-)

Yeah. It's a much more difficult to read thing, but once you learn how
to write it it flows faster.

Of course, I never managed to learn how to write it...

I would suggest that rather than being "complicated" it is "dense".

> PS: Has anyone noticed all the off topic chatter about religion and
> feelings? Since the main subject of this thread is about zfill i can't
> help but wonder if the minions where sent out to present a distraction
> with "scripted" pseudo arguments. Just an observation.

May I suggest a email client that can group mailing list threads?
Also, not accusing others of conspiracies.

Devin

On Thu, Sep 29, 2011 at 6:56 PM, rantingrick <ranti...@gmail.com> wrote:
> On Sep 29, 5:12 pm, Ian Kelly <ian.g.ke...@gmail.com> wrote:
>> On Thu, Sep 29, 2011 at 6:23 AM, rantingrick <rantingr...@gmail.com> wrote:
>> > A specific method for padding a string with ONLY zeros is ludicrous
>> > and exposes the narrow mindedness of the creator. The only thing worse
>> > than "zfill" as a string method is making zfill into built-in
>> > function! The ONLY proper place for zfill is as an option in the
>> > str.format() method.
>>
>> > py> "{0:zf10}".format(1234) -> "00000000001234"
>>
>> Agree that zfill seems to be redundant with str.format, although your
>> suggested syntax is atrocious, especially since a syntax already
>> exists that fits better in the already-complicated format specifier
>> syntax.
>
> It's interesting that you find the format specifier "complicated". I
> will admit that upon first glance i lamented the new format method
> spec and attempted to cling to the old string interpolation crap.
> However, as you use the new format method you will come to appreciate
> it. It's an adult beverage with an acquired taste. ;-)
>
> One thing that may help format noobs is to look at the spec as two
> parts; the part before the colon and the part after the colon. If you
> break it down in this manner the meaning starts to shine through. I
> will agree, it is a lot of cryptic info squeezed into a small space
> HOWEVER you would no want a verbose format specification.
>
> But i wholeheartedly agree with you points and i would say the zfill
> method has no future uses in the stdlib except for historical reasons.
> We should deprecate it now.
>
>
>> "{0:=010d}".format(1234) -> "0000001234"
>>
>> There are a couple of warts with the existing implementation, however:
>>
>> 1) str.zfill() operates on strings; the .format() syntax operates on
>> numeric types.  I would suggest that the "=" fill alignment in format
>> specifiers should be extended to do the same thing as zfill when given
>> a string.
>
> EXACTLY!
>
> PS: Has anyone noticed all the off topic chatter about religion and
> feelings? Since the main subject of this thread is about zfill i can't
> help but wonder if the minions where sent out to present a distraction
> with "scripted" pseudo arguments. Just an observation.
> --
> http://mail.python.org/mailman/listinfo/python-list
>

Chris Angelico

unread,
Sep 29, 2011, 7:12:50 PM9/29/11
to pytho...@python.org
On Fri, Sep 30, 2011 at 9:03 AM, Devin Jeanpierre
<jeanpi...@gmail.com> wrote:
> But anyway, no, we don't agree on what it means to be friendly or what
> a hostile atmosphere is. I've noticed that people tend to be a lot
> harsher here than what I'm used to, so perhaps your attitude to it is
> more common on mailing-lists and I should just adapt.
>

I'm told that there are other mailing lists / newsgroups that are far,
FAR more hostile than this. Haven't explored though, as I don't feel
like torturing myself :)

As to the original offensiveness, though: I'm a fundamentalist
Christian (not Catholic though), and I water-off-a-duck's-backed the
insult. If it's true, it's allowed to be offensive; if it's not true,
I can distance myself from it. (In this case, the latter; the inner
issues of the Catholic church are unconnected to the core of
Christianity.)

Chris Angelico

Ethan Furman

unread,
Sep 29, 2011, 7:21:25 PM9/29/11
to pytho...@python.org
Ben Finney wrote:
> But whoever takes that joke and says it's deliberately hurtful is being
> presumptuous and censorious and unreasonable. If they then castigate the
> joker for supposedly hurting someone's feelings, it's at that point the
> atmosphere turns hostile to discussion.

Um, wasn't it RantingRick who made this 'joke'? Do you honestly believe
he /wasn't/ trying to be offensive?

~Ethan~

MRAB

unread,
Sep 29, 2011, 7:37:08 PM9/29/11
to pytho...@python.org
rantingrick:
"""Since, like the bible the zen is self contradicting, any argument
utilizing
the zen can be defeated utilizing the zen."""

alex23:
"""And like the Bible, the Zen was created by humans as a joke. If you're
taking it too seriously, that's your problem."""

Message has been deleted

Ethan Furman

unread,
Sep 29, 2011, 7:40:59 PM9/29/11
to pytho...@python.org
Ethan Furman wrote:
> Ben Finney wrote:
>> But whoever takes that joke and says it's deliberately hurtful is being
>> presumptuous and censorious and unreasonable. If they then castigate the
>> joker for supposedly hurting someone's feelings, it's at that point the
>> atmosphere turns hostile to discussion.
>
> Um, wasn't it RantingRick who made this 'joke'? Do you honestly believe
> he /wasn't/ trying to be offensive?

Okay, that's what I get for skimming -- it was alex23, not rr. My
apologies, rr, for the misattribution.

~Ethan~
Message has been deleted
Message has been deleted

Ben Finney

unread,
Sep 29, 2011, 10:06:56 PM9/29/11
to
Westley Martínez <anik...@gmail.com> writes:

> I'm kind of new to the whole mailing list thing, but they seem to be a
> lot more lenient than internet forums about most things.

Note that a mailing list *is* an internet forum: it is a forum for
discussion, conducted on the internet. Mailing lists have been internet
forums long before any web application came along.

> I've noticed that sometimes Off-topic posts can get a little out of
> hand. I guess it's not really a big deal, but it bothers me, and the
> trolls just love to feed on it.

Yes, these are hazards of an unmoderated discussion forum like this. The
overall quality of discussion here, and the signal-to-noise ratio, makes
it very worthwhile I think.

> I mean, as programmers, we should devote our time to improving
> computer systems. On this mailing list, we're programmers, nothing
> else, and so we shouldn't mingle other things into the list.

What counts as “mingle other things in”? What sparked this latest outcry
was a flippant remark at the expense of an ancient text and the Zen of
Python. That outcry was, I have argued, not reasonable.

I am firmly committed to allowing flippant remarks which are not at the
expense of people. It's highly inappropriate to ask that such remarks
not be made simply because some people might take undue offense.

Are they off-topic? Maybe, but there's no compulsion to respond to them
since flippant remarks, by definition, aren't meant seriously.

Are they not funny? That doesn't matter. If the obligation is that
people should not make unfunny jokes, we'd all be guilty.

Are they poking fun at something? That *definitely* shouldn't matter; if
a thing (not a person) is worth defending, then do so or not as you
choose. If you like it but can't defend it adequately, that's your
problem not anyone else's. If the ridicule works because it's true, then
the target thing is perhaps not worth defending.

We draw the line, IMO rightly so, at personal attacks on people or
groups of people. I have many times spoken out against those in this
forum. But books and ideas, no matter who likes them, are fair game for
flippant remarks in this and any forum, and I resist efforts to quash
such expression.

--
\ “What I have to do is see, at any rate, that I do not lend |
`\ myself to the wrong which I condemn.” —Henry Thoreau, _Civil |
_o__) Disobedience_ |
Ben Finney

Steven D'Aprano

unread,
Sep 29, 2011, 10:38:01 PM9/29/11
to
Westley Martínez wrote:

> On this mailing list, we're programmers, nothing else,

Speak for yourself.



--
Steven

Chris Angelico

unread,
Sep 29, 2011, 10:48:17 PM9/29/11
to pytho...@python.org
On Fri, Sep 30, 2011 at 12:38 PM, Steven D'Aprano
<steve+comp....@pearwood.info> wrote:
> Westley Martínez wrote:
>
>> On this mailing list, we're programmers, nothing else,
>
> Speak for yourself.
>

I don't think he meant that the populace here is exclusively
programmers, but that *on this list* we are here because we're
programmers. We may happen to have coincidental interest in (say)
music, but just because some group of us (or even all of us) all enjoy
music does not mean that it'd be on-topic to have a discussion of the
tetrachord of Mercury.

ChrisA

alex23

unread,
Sep 29, 2011, 10:50:27 PM9/29/11
to
On Sep 29, 10:23 pm, rantingrick <rantingr...@gmail.com> wrote:
> What is so bad about breaking code in obscure places?

Try coding in PHP across minor release versions and see how you feel
about deprecating core functions on a whim.

> We changed print
> to a function which broke just about every piece of code every written
> in this language.

In a well declared _break_ with backwards compatibility. Not on a whim
between minor releases.

> (BTW, print should ALWAYS have been a function!)

Unfortunately, not everyone is as infallible as you. Or as
intractable. Coding styles change over time: this is a concept known
as "progress", although it's not as obvious in monocultures, so you
may not have heard of it.

> What is so bad then about breaking some very obscure code?

Because while you say "some very obscure code", what you really mean
is "code that isn't mine".

> GvR should be texting me every night in hopes that some of my API genius will rub
> off on him.

Are you off your medication again?

> I believe GvR had a "mid-dev-crisis"[...]

You seem to believe a lot of absolute garbage. As you have no access
to the inner states of _any_ of the people you regularly condemn here
with your hypocritical attacks, I've no idea why you consider yourself
to be an expert on their desires and opinions.

alex23

unread,
Sep 29, 2011, 11:05:26 PM9/29/11
to
On Sep 30, 9:37 am, MRAB <pyt...@mrabarnett.plus.com> wrote:
> rantingrick:
> """Since, like the bible the zen is self contradicting, any argument
> utilizing
> the zen can be defeated utilizing the zen."""
>
> alex23:
> """And like the Bible, the Zen was created by humans as a joke. If you're
> taking it too seriously, that's your problem."""

Strangely, calling the bible self-contradictory wasn't seen as
inflammatory...

Seeing the quotes again, I'm pretty sure I was intending to be
flippant _in reference to rantrantrantrick's comment_. Given that it
was a response to someone else referring to the bible _and_ it made a
point about the zen, I'm not entirely sure why my comment was OT.

Again, if you want to disagree with my remark, knock yourself out. If
you want to take it as a personal attack, then there's nothing I can
do to stop you. But do realise that it is _you_ who is interpreting it
as such, and then recall the provision your very own Christ stated
about judging the actions of others: within your own belief system
_it's not your right to do so_.

That never seems to reduce the moral outrage though...

Steven D'Aprano

unread,
Sep 29, 2011, 11:10:07 PM9/29/11