C
Chris Cioffi
I started writing this list because I wanted to have definite points
to base a comparison on and as the starting point of writing something
myself. After looking around, I think it would be a waste of time to
start writing yet another IDE and so am now thinking in terms of new
features/plug-ins for existing systems.
Right now I mostly use Komodo Personal and it's pretty close to being
what I want. They don't currently support plug-ins, but maybe in the
future. I do about 90% of my development on and for Win32. The rest
is for Linux and usually done in vim through an ssh login.
What Komodo has that I really like:
-Projects - This is the difference between an editor and an IDE for
me. The ability to define a set of files as being logically related.
My issue is that Komodo doesn't go nearly far enough. What I really
want would be an IDE that removed the idea of a 'file' from the
process.
We break up programs into modules/packages for 2 reasons:
1. Too much complexity in a file
2. Re-usability
A decent project management system would allow us to define those
relationships and handle the fussy details in the background.
My response to the 'I want control' argument: I'm most productive
writing code, not doing fiddly file management.
I know this is kind of vague. I'm still working on the details of
exactly what this should be. See the code outliner below.
-Debugger
-Simple (one or two key/click) way to run the program I'm editing
-Syntax completion (Kinda...)
What I am still looking for:
-Post run access to the command interpretor. Basically, after my
program crashes, I'd like to be at a place where I can do a little
digging on variable state, etc. This might just be my need to learn
more about pdb and start using it.
-Built in, syntax aware, spell checker.
-Code/class browser, should be doc string aware
-The ability to import/export all settings from another installation.
I work on 2-3 machines and would like to be able to sit down, point at
a config and use that config. If I point to an Internet based config
it doesn't need to be read/write, just give me "my" options for right
now, thank you very much.
-Sophisticated Python aware syntax highlighting Beyond just "this is
a string". I'd like to have highlighting distinguish between doc
strings, normal strings and triple
quoted strings.
-Better command completion, like what ActiveState PythonWin does. For
instance, while it is frequently no possible to know the class/type
-Ability to work through an SSH shell. I can deal with losing some
debugging capability, although I'd prefer to be able to have the IDE
open it's own remote shell and execute remotely.
-Ability to build extensions in Python would be slick.
-Built-in UML to code outline builder. At least a graphical code
structure designer. (At the object/function/module/package level.)
-GUI designer? With all the GUI tool kits/langauges this might not be
reasonable except as a plug in...
-Support for version control systems. This probably needs to be a
plug in kind of thing so it can support CVS, Subversion, et al.
What features do you think make a great coding system? I'm throwing
this out both for current IDE developers to get ideas from and to see
if I'm the only person not 100% happy with what's currently available.
;->
Chris
to base a comparison on and as the starting point of writing something
myself. After looking around, I think it would be a waste of time to
start writing yet another IDE and so am now thinking in terms of new
features/plug-ins for existing systems.
Right now I mostly use Komodo Personal and it's pretty close to being
what I want. They don't currently support plug-ins, but maybe in the
future. I do about 90% of my development on and for Win32. The rest
is for Linux and usually done in vim through an ssh login.
What Komodo has that I really like:
-Projects - This is the difference between an editor and an IDE for
me. The ability to define a set of files as being logically related.
My issue is that Komodo doesn't go nearly far enough. What I really
want would be an IDE that removed the idea of a 'file' from the
process.
We break up programs into modules/packages for 2 reasons:
1. Too much complexity in a file
2. Re-usability
A decent project management system would allow us to define those
relationships and handle the fussy details in the background.
My response to the 'I want control' argument: I'm most productive
writing code, not doing fiddly file management.
I know this is kind of vague. I'm still working on the details of
exactly what this should be. See the code outliner below.
-Debugger
-Simple (one or two key/click) way to run the program I'm editing
-Syntax completion (Kinda...)
What I am still looking for:
-Post run access to the command interpretor. Basically, after my
program crashes, I'd like to be at a place where I can do a little
digging on variable state, etc. This might just be my need to learn
more about pdb and start using it.
-Built in, syntax aware, spell checker.
-Code/class browser, should be doc string aware
-The ability to import/export all settings from another installation.
I work on 2-3 machines and would like to be able to sit down, point at
a config and use that config. If I point to an Internet based config
it doesn't need to be read/write, just give me "my" options for right
now, thank you very much.
-Sophisticated Python aware syntax highlighting Beyond just "this is
a string". I'd like to have highlighting distinguish between doc
strings, normal strings and triple
quoted strings.
-Better command completion, like what ActiveState PythonWin does. For
instance, while it is frequently no possible to know the class/type
-Ability to work through an SSH shell. I can deal with losing some
debugging capability, although I'd prefer to be able to have the IDE
open it's own remote shell and execute remotely.
-Ability to build extensions in Python would be slick.
-Built-in UML to code outline builder. At least a graphical code
structure designer. (At the object/function/module/package level.)
-GUI designer? With all the GUI tool kits/langauges this might not be
reasonable except as a plug in...
-Support for version control systems. This probably needs to be a
plug in kind of thing so it can support CVS, Subversion, et al.
What features do you think make a great coding system? I'm throwing
this out both for current IDE developers to get ideas from and to see
if I'm the only person not 100% happy with what's currently available.
;->
Chris