[python-advocacy] How programming language webpages should be designed

Carl Karsten carl at personnelware.com
Sun Nov 8 23:22:06 CET 2009

On Sun, Nov 8, 2009 at 2:04 PM, David Goodger <dgoodger at gmail.com> wrote:
> 2009/11/8 Carl Karsten <carl at personnelware.com>:
>> On Sun, Nov 8, 2009 at 12:30 PM, David Goodger <goodger at python.org> wrote:
>>> On Sun, Nov 8, 2009 at 18:56, Carl Karsten <carl at personnelware.com> wrote:
>>>>> if one promotes Python, should programs use Python 3
>>>>> syntax and features when many people will still be encountering Python 2
>>>>> programs? It doesn't help that right at the very start of a beginner's
>>>>> experience with Python, there's a divergence between the dialects involving
>>>>> the print statement.
>>>> If the goal of what this list and thread is about is to promote python
>>>> (which i am sure it is) then the site should use the new and improved
>>>> Python 3.
>>> I disagree with you there.
>> Do you disagree with the goal?
> No, of course not. I disagree with the assertion that we should be
> using Python 3 syntax. I think we should primarily show Python 2
> syntax, with Python 3 as an alternative.
>>> We're still positioning Python 2.6 as the
>>> recommended version for most people, right?
>> Who is we?
> The Python community in general, the Python developers, and the people
> who maintain the website (the pydotorg group).
>> I might be able to figure out what I recommend, but it
>> would be way too small a group, and probably not representative of the
>> group we are advocating to.
> Carl, please don't be obtuse.
>> Recommended for what?
> Python 2 is still recommended for most new users. Perhaps the clearest
> indication of this is on <http://python.org/download/>, where it
> states "If you don't know which version to use, start with Python
> 2.6.4; more existing third party software is compatible with Python 2
> than Python 3 right now."
> We clearly need a better indication of who should be using which version.
>>> Python 3.1 is the
>>> cutting-edge version for those who know what they're doing. I think
>>> it's a great idea to put some code on the front page, with a link to
>>> further examples. Part of that should be a clear (but brief)
>>> explanation of the differences between 2.x and 3.x, specifically their
>>> audiences: who they're aimed at. Such a clear explanation is currently
>>> missing. A "Which Python?" link or sidebar should be prominent.
>> I thought we wanted code on the front page, not a choice of links to code.
>> "which version" also sounds like a good thing, but for other reasons
>> than the goal of promoting.
> I agree that some code on the front page is a good idea. I just don't
> think it should be Python 3, or not only Python 3.

"without alteration in both 2.6 and 3.1" I like that idea, until it
comes to print.   I can't think of sample code that doesn't use print.

>>> As long as 2.x is listed first on the left-hand side under downloads,
>>> we should use 2.x syntax for intros, with links (or sidebars,
>>> whatever) to 3.x equivalents.
>> Why is 2 above 3?  Seems to me 3 should be on top.
> This has been discussed many times on other lists, such as on
> python-dev, perhaps on pydotorg. The consensus is that Python 2.6 is
> the currently recommended stable production version.
> Somebody please correct me if I'm mistaken. (And please point me to
> the new decision.)
>>> When 2.x becomes legacy, then switch
>>> everything to 3.x.
>> Depends on what you mean by legacy.  (i bet you love this :)
> No I don't. You do seem to love picking fights though, and wasting
> people's time.

I love clarity.  If I don't understand what someone is getting at, I
ask.  I would rather I didn't have to ask, but I try to be tolerant of
my fellow humans.

>> There may be more to the requirement than just "2 is legacy" -
>> "popular" maybe, but I don't think so.  I can't think of anything that
>> makes me say 'stick with 2' so for now I'll focus on what you said,
>> which i think is correct.
>> If 2.x isn't legacy now, it wont be for years, like 10.  what event
>> will happen that hasn't happened yet that defines legacy?
>> I think now that 3 is out, stable, in production and depended on (yay
>> Blender!)  that kinda makes 2 legacy.  The reason 2 is used at all is
>> because of existing code bases.  Pretty sure that's the essence of
>> legacy.
> My understanding is that Python 2 is still the recommended version
> because so many 3rd-party libraries and frameworks still depend on it.
> I don't know exactly when Python 3 will become the recommended version
> for most new users. I don't decide that.
> Some day, the community in general will come to a consensus (prompted
> by Guido or someone else, or spontaneously, who knows) that Python 3
> is now the version to recommend to most new users. To my knowledge,
> that hasn't happened yet.

Even though I mildly disagree, it does sound reasonable for which
version people should use.  But I don't think "show people 3" should
wait for the "2 is legacy" consensus.   Showing people 3 will help
move along 3's adoption. I think that is good, but it wouldn't take
much to convince me otherwise.

Carl K

More information about the Advocacy mailing list