What text editor is everyone using for Python
Steven D'Aprano
steve at REMOVE-THIS-cybersource.com.au
Fri May 29 04:01:06 EDT 2009
On Fri, 29 May 2009 08:57:18 +0200, Gabor Urban wrote:
> In one the last postings about this topic Steven D'Aprano has written:
> "As a general rule, menus are discoverable, while keyboard commands
> aren't. There's nothing inherent to text editing functions which makes
> then inherently undiscoverable, and KDE apps like kate and kwrite do a
> reasonable job of making them so."
>
> I agree with this assumption if, and only if we are speaking about
> outsider users.
It's not an assumption, it's a conclusion. My assumption is that
everybody, no matter how experienced they are, will *at some time* be
looking for some editor functionality without knowing whether or not it
exists. I've never needed to (say) strip out all comments from a
document, but if I ever do, if the editor makes functions discoverable,
I've got a better chance of finding the command I need, rather than
wasting my time programming something that's been done before.
We all know of experienced system admins who have built-up an amazingly
detailed amount of knowledge about the systems they've used. They can
tell you about the most obscure features and functions of a system. But
put them in a system which is *not quite the same* (say, Ubuntu instead
of Redhat, or FreeBSD instead of Linux), and they often flounder. All the
functions they're used to are in a different place, so to speak. And
there's no easy way to learn that command ABC on one system is precisely
the same as command XYZ on another.
Only two sorts of people don't benefit from ease of discoverablity: those
who know everything, and those who never do anything new.
> This is a Python mailing list, which supposed to be a forum of people
> using the Python programming language. So Python source is a plain text,
> so Python interpreter should be a command-driven application. With no
> other UI than the plain old Command Line Intreface.
That Python is command-driven doesn't have *any* implications for the
editor you use to write Python code. Photo-editing software is mouse-
driven. That doesn't mean that you should be forced to write photo-
editing programs by point-and-click.
> MOre than that, all we are supposed to be techmen, who does acknowledge
> and appreciate the conceot of wrtitten User Manual or Reference. All we
> have learned Python from tutorials and not from the menues.
We're probably better at reading manuals than average people, but that
doesn't mean we *like* it. That's one of the reasons we use Python:
nearly everything is discoverable from inside the Python runtime
environment. We have a wealth of tools for inspecting objects. If you
want to know what methods an object has, you don't have to look it up in
the manual, you can inspect it with dir().
Besides, once you've been in the tech industry for long enough, you'll
learn that the Python documentation is *remarkably* good compared to the
average technical documentation.
> As a summary, any open source editor should be perfect, which is
> extensible, optionally language-sensitive, portable, basically
> independent of any OS features. THat cuts the list drammatically.
(1) Closed source editors have the same functional requirements as open
source editors.
(2) If you're waiting for perfection, you'll be waiting forever.
(3) Why independent of the OS? When is the last time you've used a system
without an OS? Forth programmers in the 1970s used an editor that was OS
independent -- it managed files using its own unique file structure,
managed memory itself, etc. Why do you want to go back there?
--
Steven
More information about the Python-list
mailing list