[Idle-dev] The Future of Python

phil jones interstar at gmail.com
Sat Feb 8 00:40:03 CET 2014


Just putting a couple of thoughts / questions out to the community here :

The impression I get about IDLE is that it's a bit of an
embarrassment. (Possibly because of tk). Everyone accepts it's
substandard. But no-one seems to want it to grow into something else
(eg. a full IDE, something more like PythonCard / VisualBasic /
Processing). Maybe IDLE is deprecated and the hope is it will die
quietly. But if that IS the plan, then it would be nice to have it
stated somewhere so that we can stop thinking of it as the "official"
default IDE for Python and periodically wondering whether we should
try to resuscitate it. And maybe focus our contributions on a project
like VPython etc. instead.

Bluntly, is IDLE meant to be getting good or to be going away? I don't
know. And I can't find out by reading python.org or this mailing list.

It feels like this ambiguity isn't only bad for IDLE, but might be
lying behind the issues Jessica refers to. As well as a python
programmer, I'm a digital artist so I've been doing a fair amount with
Processing in the last few years. It's incredible to me that a
language as officiously unpleasant and hostile to beginners as Java
has managed to become the preferred choice for non-technical artists
who want to do cool stuff with graphics, sound and physical computing.

How did that happen? It's a niche that would have been perfect for
Python. And should have been well within its grasp. As far as I can
tell, Processing's success is a combination of beginner-oriented IDE
and comprehensive library in a single convenient download. Those are
two virtues that Python has been able to boast for 15 years. And yet
... somehow ... the package didn't quite add up. IDLE wasn't quite
straight-forward enough, and Python's included batteries didn't
include OpenGL, which has become the standard for all the cool
graphics.

When I've suggested on IDLE-dev that IDLE could evolve to be more like
Processing, that idea has been generally rejected on the grounds that
IDLE is meant to be a "basic editor". But what's a basic editor? One
which never evolves, innovates or adds new functionality? No one is
going to be motivated to work on IDLE if it's not allowed to grow into
anything new.

At the same time, Jessica asks for Python to be a good beginner's
development environment, straight out of the box. If IDLE isn't the
solution to that requirement then what is?

That seems the challenge here : either IDLE gets good for beginners
who want to do cool stuff. Which means maybe taking inspiration from
Processing. Or HyperCard. Or really exotic things like LightTable
(http://www.chris-granger.com/lighttable/) Or perhaps the python
community and especially the python.org site, should just drop it and
start promoting (and offering easy beginner downloads for)
comprehensive packages like VPython, IPython, Enthought etc.

Phil



On 7 February 2014 05:57, Sean Felipe Wolfe <ether.joe at gmail.com> wrote:
> IDLE!!!!!
>
> We are starting up a partnership with a community center here in
> Oakland, CA, starting kids up with programmming. We're starting with
> Logo (yay, Logo!) and transitioning to Python with the turtle module.
> We've been using IDLE on Linux and also a Raspberry Pi. So far, so
> good!
>
> I for one am ecstatic about IDLE. It has a warm place in my heart. I
> should set aside a few hours a week to help out with it.
>
> Anyhow great video, thanks for the link!
>
> On Thu, Feb 6, 2014 at 11:31 AM, Guido van Rossum <guido at python.org> wrote:
>> On Thu, Feb 6, 2014 at 10:31 AM, Bruce Sherwood <Bruce_Sherwood at ncsu.edu>
>> wrote:
>>>
>>> I was surprised that in talking about the future of Python Jessica didn't
>>> touch on what may be really crucial, which is the importance of being able
>>> to use Python in client-side browser programming. Running in a browser is of
>>> rapidly increasing importance and Python could easily get left behind. There
>>> exist multiple projects whose goal is to be able to compile Python to
>>> JavaScript to address this issue. It looks to me like Brython may be the
>>> best bet, in that it seems to be an active development with a small but
>>> growing community of interested parties. What do you think about this,
>>> Guido?
>>
>>
>> I think this is a lost cause. Many very smart people have broken their heads
>> against this particular wall.
>>
>>>
>>> I'll mention that with the aid of Steve Spicklemire VPython has been
>>> converted to be based on wxPython, which was vital in order to get off
>>> Carbon and onto Cocoa on the Mac, and which also makes it possible to use
>>> wxPython widgets with VPython 3D canvases. I'm happy to report that in the
>>> last six months there were nearly 50,000 downloads of VPython, and that it's
>>> now featured in four (soon to be five) computational physics textbooks.
>>
>>
>> That's awesome!
>>
>>>
>>> Inspired by VPython, with a big initial push from David Scherer, the
>>> originator of VPython, I'm developing GlowScript (glowscript.org) where you
>>> can write VPython-like 3D animations using WebGL, writing in JavaScript or
>>> CoffeeScript. A minimal program is the single-line program
>>>
>>> box()
>>>
>>> This program places a WebGL canvas in the window, displays a cube in the
>>> window, creates lights to illuminate the scene, places the camera so that
>>> the cube fills the window, and enables mouse interactions to zoom and
>>> rotate. You can of course control all of these elements, but there are lots
>>> of good defaults to get going easily. Needless to say writing WebGL programs
>>> with other tools is vastly more difficult.
>>>
>>> It's already the case that it's very nice to be able to send a URL in an
>>> email and have the recipient click that link to see a 3D animation rather
>>> than asking them to install Python and VPython. Here's a simple example that
>>> will run in WebGL-enabled browsers:
>>>
>>>
>>> http://www.glowscript.org/#/user/GlowScriptDemos/folder/Examples/program/Bounce-CoffeeScript
>>>
>>> Many more demo programs are available at glowscript.org.
>>>
>>> However: I don't like the syntax of JavaScript, especially for novice
>>> programmers, and even though CoffeeScript is more Pythonesque its syntax and
>>> use of white space is kind of quirky and, I judge, not good for novices. I
>>> would love to enable Python as one of the languages (indeed the major
>>> language) for novices and experts to write GlowScript programs.
>>
>>
>> Agreed that CoffeeScript is not newbie-friendly. But browsers have been even
>> more unfriendly to running Python than mobile platforms. At least for the
>> latter we have Kivy.
>>
>> --
>> --Guido van Rossum (python.org/~guido)
>>
>> _______________________________________________
>> IDLE-dev mailing list
>> IDLE-dev at python.org
>> https://mail.python.org/mailman/listinfo/idle-dev
>>
>
>
>
> --
> A musician must make music, an artist must paint, a poet must write,
> if he is to be ultimately at peace with himself.
> - Abraham Maslow
> _______________________________________________
> IDLE-dev mailing list
> IDLE-dev at python.org
> https://mail.python.org/mailman/listinfo/idle-dev


More information about the IDLE-dev mailing list