what IDE is the best to write python?

MattBD matthewbdaly at googlemail.com
Sun Feb 1 08:25:53 EST 2009


On Feb 1, 12:19 pm, Stef Mientki <stef.mien... at gmail.com> wrote:
> > IMHO, scripting languages like Python are generally better suited to
> > working with a text editor than an IDE.
>
> I don't understand that, because in my opinion yields
>   IDE = texteditor + (much) more
> please could you explain (as I'm very interested in user interfaces in
> general )
>
> cheers,
> Stef

Obviously, this is just my opinion. The great debate over which is
better, an IDE or text editor, has been going on for years, and no
doubt plenty of other people will disagree.

Really it depends what you are doing. Some languages are very tightly
integrated with an IDE, such as MS Visual C#, and as far as I can see
it would be extremely difficult, if not impossible to use a text
editor with that language. If you only use one language and that has
an IDE you like, there's nothing wrong with sticking with that.

IDE's are often (but not always) designed for a specific language.
Text editors are more flexible and will generally work well with
virtually any language. You may lose a little in terms of language-
specific functionality such as autocompletion and fancy graphical
tools, but you gain in flexibility because the one text editor will
work well with many languages, so you can write programs in C, Perl,
Python, Ruby, or whatever takes your fancy, and still use the same
tools you're used to, which I'd argue makes you more productive as
you're working within a familiar environment. However, there are IDE's
which support multiple languages, such as Eclipse.

Also, I'm strongly of the opinion that using a text editor when you
get started is the way to go. You're more likely to take in every last
detail of something if you type out the commands in detail rather than
using autocompletion. Also, an IDE can add an unnecessary level of
complication - as well as learning a language you have to learn an
IDE, which can be extremely complex. So it can be simpler to just use
a text editor, which is often simpler.

Conversely, IDE's can be better for designing interfaces as they
generally allow you to design them in a way that's more intuitive to
most people.

It's not exactly true to say that an IDE = text editor + much more.
It's more about the nature of the features. A modern programmer's text
editor such as Vim is an extremely powerful and flexible piece of
software. I've just barely started to scratch the surface of what Vim
can do and I learn something new virtually every time I use it.
Although technically it can mean you have to do more typing than you
would with an IDE, it also makes it a lot faster to type the text you
put in.

An IDE will roll everything you need into one package, including the
compiler/interpreter, editor and debugger. A text editor does the text
editing only, but in practice most of them allow you to access the
command line from within the text editor (in Vim you just enter :!
followed by the command you want to run), so you can use other tools
from within the editor. I do most of my coding in Linux, so I would
write a program in Vim, save it, then enter something like :!python
example.py to run it.

At the end of the day it's personal taste. I've tinkered with a few
IDE's but I find text editors work better for me at the end of the
day, and Vim in particular is one that really works well for me. It
does depend on what you're doing. For larger projects sometimes a
dedicated IDE is better, but most decent text editors can do a lot of
the same things that an IDE can. It just requires a different
approach.

I'd recommend you check out this article:
http://osteele.com/archives/2004/11/ides
That gives a good insight into the whole IDE's vs text editors thing.



More information about the Python-list mailing list