Showing posts with label ide. Show all posts
Showing posts with label ide. Show all posts

Saturday, December 31, 2011

Python IDEs/Editors

If you're getting into developing in python, then you're going to ask yourself the question 'Which IDE / code editor should I use?'  Although this is obviously a subjective issue, let me weigh in with my personal experience.
Ignoring VI/Emacs.
If you're a MicroSerf / Windows developer, then one good option is NotePadPlusPlus (NPPP).   NPPP is light-weight - and so snappy and responsive, but at the same time VERY extensively featured.  On the downside, it's really a Windows-only product, and so if you like me want to be able to use the same python dev platform across both Windows and Linux, then NPPP is disqualified.  Other detractors are a lack of code completion, and no class / solution explorer.  (At least no built-in code completion, and the one or two attempts  I made to equip it with a plug-in failed.)
Which brings us to Scintilla-derivative Geany, a long-time personal favourite of mine.  It's a light-weight code editor which bests NPPP by coming off-the-shelf with some code completion, and a class/solution explorer.  OS-wise, Geany binaries compiled for both Linux and Windows are available.  On the down-side, the feature-set that Geany offers is quite limited compared to NPPP, although most of the essentials are there.  The upside of the limited feature set, is that the IDE/editor itself is not resource hungry.
Finally, the PyDev extension for Eclipse.  I've just recently started using this, so its a bit early in the game for comment, but it's obviously a fully featured IDE, with code completion, a solution/class explorer, test-infrastructure integration, cross-platform and is open-source.  The only disadvantage of this option is that Eclipse is clearly not a light-weight application itself, and so if your development box is spec-light, then you may want to go with either NotePadPlusPlus or Geany.

Note Pad Plus Plus
+ V.Fast, light-weight
- Windows only (Linux version runs under Windows emulator [Wine], and is horrible)

Geany
+ Cross OS - identical Windows & Linux versions
+ Code completion
+ Class / solution explorer
+ Light-weight
- Relatively limited feature-set

Eclipse PyDev
+ Cross OS - identical Windows & Linux versions
+ Code-completion
+ Refactoring support
+ Class / solution explorer
+ Test integration
+ Integrated debug support
- Requires decent machine specs

Post Script - Aptana Studio 3

In the two months or so since I wrote this post up, I've started using Aptana Studio 3.

Aptana Studio 3is a customisation of Eclipse developed and maintained by Aptana, who via some convoluted corporate cannibalism, has absorbed the original PyDev team.  So, in short, Aptana is the heir apparent to PyDev for Eclipse.

What you get is an all-in-one download, which short-circuits the previous two-stage download, for a grade-A user-experience.  The IDE itself is snappy, and seems faster than PyDev under Eclipse Indigo.  In addition, Aptana features support for Django projects, although I haven't actually done any Django work in the interim, so more to come on that...

FINAL VERDICT

Aptana Studio 3 by a Knock-Out !





Sunday, October 24, 2010

geany

Finally, in search of a light-weight text editor for ubuntu - one that has code folding and a decent selection of editing facilities (i.e. a tier above gedit and scite), I come to GEANY.

idiotuser@computer:~$ sudo apt-get install geany

Configure with a dark colour scheme from http://download.geany.org/contrib/oblivion2.tar.gz, and you're good to go.

---

Quick Punt:

I've been using Geany for a couple of months now, and I can whole-heartedly recommend it. It could do with a couple more short-cut keys (but maybe they're actually in there somewhere and I've just missed them), but other than that, its a winnner. I've been using it on my Lenovo X100e netbook running Ubuntu 10-1- Meerkat, and it runs snappily, so I can do python dev complete with both basic predictive text and symbol explorers, v.nice. For those of you who are not quite VI/EMACS streetfighters, but want a fast but solid python IDE, rub this lamp.