After reading a blog post titled "The Abysmal State of Python IDEs" (which I won't link to because it's minformative, but it's easy to google by title), I wondered how the author managed to pick such a lousy group of IDEs to try. He tried "ActiveState" (does he mean PythonWin?), DrPython, SPE, and ScrIDE, only one of which is in the top 10 google hits for Python IDE.
The google top 10 include Eric, Wing IDE, Radio Userland, SPE, PyDev, and Komodo. The Yahoo and MSN top 10s are similar. Except for Radio Userland, this is a much better group to start with, and one that in fact does include what I think are the only 3 Python IDEs worth trying.
So how does a newbie end up picking such a lousy group of IDEs to try? The only likely possibility seems to be that he went to the top google hit, the python.org wiki page. Or possibly he went off of the top MSN hit, the c2 wiki Python IDE page. Both are (rather, were) heaping wads of products that mostly weren't IDEs at all, or were IDEs for other languages that happened to include Python syntax coloring.
Syntax coloring and maybe a Run button doesn't qualify you as a Python IDE in 2008, guys. (Sorry, IDLE.) Integrated means you need to integrate something nontrivial, preferably a debugger, although gui builders can also count.
So I organized the python.org IDE page by feature set and moved the non-IDEs to the Editors page, even if a pedant would note that they were IDEs, just not really for Python. That's not what 99.9% of people are looking for when they go to a Python IDE page, so let's be useful rather than pedantic. I also elided the non-IDEs from the c2 page.
Comments
Personally I think Komodo Edit is pretty slick, although it's not an IDE.
Patrick: I consider the ones in the top category on the new page (introspection-based completion and debugger) to be the best, so (alphabetically) Komodo, PyDev, and Wing. I use Wing myself but if you are on a budget I think it is hard to beat Komodo Edit, and for $30 PyDev + Extensions is very compelling if you can put up with Eclipse.
Anonymous: any of those three work well on Windows, OS X, and Linux. The only caveat is that Wing requires X to run on OS X (but not Windows).
much of my classwork is in Python and I've been jumping back and forth between IDLE and Notepad2, and it sure is painful.
Anyway, Visual Studio is also a cool IDE for Python, but it will only be useful if you pick IronPython flavour. Although today not all Python programs run on IronPython, that is one of the targets.
I may be mistaken, but my impression is that textmate does not have either introspection-based code completion or an integrated debugger or an integrated gui builder. So no.
Well, this newbie* doesn't necessarily want to try to reconstruct the chain of Googling that led to picking these, but it had something to do with the Google search terms "python IDE macos X free." I did definitely look at python.org Wiki.
I had previously been using PythonWin, which is what you get from ActiveState if you look for a Python tool that isn't Komodo, but it isn't cross-platform.
Anyway, kudos for putting together yet more resources. My original post certainly brought out a surprisingly large number of comments.
*It feels a bit odd for this 40-year-old software engineer to be termed a newbie... but to Python, I guess it is technically correct.
What really suck, are the gui builder IDE's. BOA is the only (open source) one of note, but the project seems to have died :-(
I agree...
I've seen so many people coming to Python, loving the language and then ask where the GUI designer is ("you know like in Visual Studio"?)
I understand it is very hard to make a reasonable GUI designer but strangely the Python community doesn't seem to care.
As much as I love Python/WxPython when it comes to make rich/complex GUI there's no way to stay competitive "with deadlines" while staying with Python. I found that learning C# and use Visual Studio C# express made me lose much less time for GUI centric projects. Ironic. I think Python won't gain lots more adoption in the future because of this lack.
Concerning Python IDEs I was using SPE but moved away since there's no more support/builds on windows. Tried PyScripter which was fine but had problems to kill properly python scripts/app launched from it. Tried komodo edit which lacks many features I need.
I've finally settled to the free pydev which I really find excellent.
I didn't use Eclipse before so It was a little weird to install properly first (Eclipse was made for static languages) but after that it was just happiness. Also the next version of PyDev will have the missing interactive console in the IDE (thanks Fabio!).
http://pydev.blogspot.com/2008/03/interactive-console-in-pydev.html
Would be paradise with a GUI designer :)
Francois: Since you like PyDev show much, and are hankering for more (like a GUI designer), you should consider supporting the author by actually paying for PyDev Extentions.
This isn't a comment to you specifically, but I think it bears repetition every now and again. Good work should be rewarded, even if it's being given away for free.
Regards,
Shane Caraveo (ActiveState)
I agree (I made a donation to stani SPE when I used it), and intended to do so for PyDev that I use now, in fact I've just done it :)
Never-the-less, for such a complex/strategic task as building a good GUI designer I think that the PythonSoftwareFondation should also promote/support it in a way or another if we want it to happen.
What do you mean by SPE not being supported on Windows? I'm running SPE 0.8.4.d on windows right now.
""" What do you mean by SPE not being supported on Windows? I'm running SPE 0.8.4.d on windows right now. """
Yes me too I was but as I said above : " there's no more support/builds on windows."
Unless I'm mistaking the last build for Windows is version 0.8.3 from october 2006:
http://developer.berlios.de/project/showfiles.php?group_id=4161
If you know of a newer one please let me know.
Stani switched to Ubuntu a year ago I think. So obviously it's still possible to svn checkout the code but it doesn't have the same level of 'OS integration' as a proper installer and also SPE was the Python IDE I was advocating to beginners (who don't yet know what a svn is).
francois
Syntax colouring/check, autocompletion, calltips, class browser, integrated shell, bookmarks, easy memo, code snippets,sessions, subversion support, ftp client, live regular expressions, debugger, todo list, ...
I use this great editor for private projects and also at work
I am looking to learn a new language, but I am frustrated by the lack of ecosystem and decent ides for Python et al.
I am looking to learn a new language, but I am frustrated by the lack of ecosystem and decent ides for Python et al."
Me too. Any suggestions?