The need for writing this pos has arisen from my recent and past experience
of using Idea.
For the very first time I used Idea it was shock to me. IDE seemed to be so
brilliant, it just guessed the way I worked. Hiding toolwindows, intentions,
refactorings and all that stuff was clear a huge advantage of Idea over
As time passed, Idea added many MINOR, not revolutional features and
to follow this style of IDE. For now, Eclipse seems to be the most advanced
competitor and in
fact they've come pretty darn close to what we have in Idea (ok. I agree,
some of the features
are way too complicated, not so smart, but, for the hell, they exist and can
be used for free).
Time for next step, to prove that Idea is clearly the leader among Java
IMHO what makes Idea so cool is its friendliness. We can improve this in
many, many ways.
It all started some time ago. In recent builds we have the following
- tracking user decisions to intelligently suggest most commonly used
- intelligent progress window that shows you ways in which you can improve
your work with Idea - in the meanwhile of
time consuming operations
- we have Productivity Guide which show what Idea features are used and how
often (although it seems to incorrectly monitor feature usage, as for me)
But, lately, not much power is devoted to these features. Not very many
users vote for that. Why?
That's because we, EAP'ers have mastered IDEA in parallel with their
creators. We test and use every new feature, so for whom this features are?
For all other people, createing a 'mass' of Jetbrains customers. In my
company, we have recently bought several Idea copies. Most of the people
migrated from JBuilder and Eclipse to Idea with no problem. But with
current, limited help, they have no chance to master Idea in the way I have
For me, the following steps are to be performed to improve existing
situation (then we can talk about new features):
- tracking user should be improved to support other kind of autocompletion,
not only methods
- tips list in intelligent progress window should be updated to include all
the tips of the day from Idea 4.0 and more, so that use can learn while
for time consuming operations
- productivity guide should work as expected and feature list should be much
longer, mentioning not only 'killer features' but these nice small things
make Idea so cool IDE to use
Then come new features. I believe in future of Idea as INTELLIGENT IDE. This
mean much more that Idea has to offer novadays.
This means learning from the user about his habits, code conventions, most
commonly used things such as:
- learning code style from live code (you point Idea to live code - a
project, and Idea 'learns' code style and adjusts settings to match habits
in the code)
- smart code templates (Idea learns your commonly used code constructs and
stores them in the form of dynamic templates, for eg. you are used to write
for loop to iterate over collection...)
- going hand in hand with programmer to point out mistakes and things that
can be possibly errors - with power of InspectionGadgets Idea should be a
more invasive when helping programmer - I would love a toolwindow with
inspections at current cursor position, which is visible all the time
- a way to define dependency constraints and when you try to break 'em -
Idea should cry very loudly. I am talking about 'compile-time aspects' -
can be fired to check dependencies and other constraints
- updating CVS plugin so that it can be comparable with Eclipse's - in fact
I think that CVS integration in Eclipse is the reference for all other...
- Idea should track user gestures and suggest more convenient way to do
things (if you for examples did extract methid by choosing it from menu,
Idea should point in popup - that you can use context menu or shortcut key).
Enough for 5.0?
- J2EE generic Open API (without weblogims as Hani says)
- full JSP 2.0 support
- more IG quickfixed - I think there plenty of inspections that can have
quick fixed builtin.
Welcome to discussion, EAPers and Jetbrainers.