Ask HN: What is the must have feature of your IDE
What are the features of your IDE that you think separate it from the rest? What can you not live with out.
If there are things you don't like about your chosen IDE, what are those?
If there are things you don't like about your chosen IDE, what are those?
70 comments
[ 3.3 ms ] story [ 133 ms ] threadI used visual studio a long time ago, now any ide without a debugger seems quaint.
I use NetBeans and NuSphere (PHP IDE) both are OK. The NuSphere PHP/debug plugin is ace. You can pause, edit variables, run random commands, move execution to a different point, all sorts of cool stuff.
Also love the chrome JS debugger, it's a bit verbose for my liking, maybe that's JS having a lot of crap bundled in objects all visible by default.
Alas I am a Java guy and restricted to IntelliJ at work. It's a great IDE but I never feel as 'at home' as I do in the shell.
My favorite and most used refactoring feature in any IDE is Extract Method. It's a simple one, but I use it repeatedly when cleaning up both my own code and legacy code. My code would be much uglier without it.
So, I use Sublime Text. Although it technically isn't an IDE, with some plugins installed (SublimeCodeIntel, SublimeLinter, and others), it works wonderfully as is if was. And it's blazing fast too.
- Multiple Cursors, at first you think this is just a gimmick, but it soon shows its usefulness. I use this feature all of the time.
- Jump to definition.
- Useful and intuitive key bindings.
- Console output.
Package Control should be built in and I'm surprised negotiations haven't been made yet.
> What are the features of your IDE that you think separate it from the rest? What can you not live with out.
Extensibility. I can live without any other built-in features, because I can always write them myself in short order. Imagine a programming language in which you can't write your own functions. You wouldn't want to use that, would you?
I think I'm going to be quoting that for quite a while to come. I'm a fellow Emacs user, and I think that perfectly sums up why I use it.
Nothing distracts my focus from my core work more than the IDE doing something I didn't intend. This is especially irritating when I accidentally switched modes or put myself somewhere else with no idea what I did or how to undo it.
So I should be able to turn it off and never worry about it again.
The caveman in me loves textpad.
It was worth the money, because even small, lasting productivity improvements are that valuable. There are heaps of other ways to learn vim, but it's been a long time and I haven't done them.
I'm an Emacs user. I don't have a very long init.el but appreciate being able to deactivate stuff I don't use, especially things like scrollbars, toolbars, etc.
Using IDEs I feel overwhelmed (too many GUI elements) and powerless (mostly because I'm not familiar with them, but discoverability is important too, see Emacs' apropos.)
Discoverability is important, and the ability to 'get out' of any mode easily. But at the same time, not visually overloading the user, which I think most IDEs are guilty of.
Seriously guys, if I wanted to continuously switch between my editor and a browser with API docs, I'd be using a text-editor. If I wanted to spend 80% of my time going through badly commented undocumented source code written by colleagues or outright (friendly, OSS-contributing) strangers, I'd join a Ruby shop. I want an IDE with discoverability, and a language that supports this well.
My other must-have feature is integrated debugging. An IDE without integrated debugging isn't and IDE, it's a text editor with some plugins.
Edit: oh by the way, SublimeCodeIntel? It's a port of Komodo's CodeIntel library. I switched to Sublime entirely for a while, but bit the bullet and bought a license for Komodo IDE and use Textadept for smaller projects and quick edits (it's a nice Lua-extensible editor, with an awesome ncurses front end to run in the terminal/over SSH)
You can debug/fix code in libraries without even realizing it.
In both case, it's a dynamic language, with an image-based implementation.
3. Automatic organization of imports. I don't want to have to lookup and type package names.
4. Everything needs to work without a mouse
want but have not encountered: - source panel file structure that allow me to open files in different apps of my choice. detects file type. - simple, un-confusing, customizable UI - all shortcuts need to be customizable ...
I'll have to take a look at how VS gives a unit test coverage map. I was trying to figure out a way to link unit tests to their code to make it easier (visually) to write your tests and your code at the same time in the same window and watch your tests pass in real time as you code.
Similar to the original lighttable demo, but using tests, and hopefully easier to understand.
Have you seen this somewhere already?
I'm not sure how difficult this would be to create, but I'm thinking if implemented properly, it could help in working with less/scss and show how changing a variable or class would affect the rest of the compiled css. What classes and ids would be affected, etc. etc.
What have you found that looks good? Sublime is ok, so is Lighttable.