Monday, June 30, 2014

IDE Rant

I just thought I'd share some of my opinions on what I don't like about IDEs.  Food for thought anyway.

IDEs:
  1. Coerce developers to use a specific IDE on a per-project basis based on the preferences of the project maintainer.  In the case of open source projects, it's annoying using a different environment for each project or even language.
  2. Lock a project into the IDE because the build system is tied into it (like using visual studio instead of using the command line). 
  3. Make finding resources more difficult unless you prescribe to their same IDE religion.  Tutorials become "click here, check there" instead of more versatile text configurations, like linux historically does.
  4. Can be used as a crutch be some developers.  I knew a guy who if the "intelliscence" or code completion didn't prompt him, he wouldn't look up the actual code and documentation.  Also, I remember he made a bug because he incorrectly assumed something from the method name and hadn't looked at the actual class it was coming from.
  5. Non-native feel.  Typically, the GUI doesn't look right compared to other applications.
  6. Not always cross-platform.  Good luck finding Visual Studio on a Mac or Linux without running a windows VM. 
  7. "Fixes" things without telling you, like Word does.  While you can disable auto-correction (which I do), it's annoying when the IDE introduces mistakes because it tries to anticipate what you meant.  It's the same problem IE has had, where their javascript and dom interpreters over the years try to be dummy proof by assuming some dumb things.
  8. Can cause discrepancies between what you see and what you get.  For example, the drag and drop in visual studio can, without warning, have the visually generated code be disconnected from code you have tweaked and there is no easy way to get the GUI to match again short of reverting.  There are also cases where the GUI looks configured the same, but since you can't see under the hood, you can't see what is wrong as easily.  You can diff config files, but you can't usually diff checkboxes and GUI setups.
  9. Are bloated.  I hate feeling like my laptop is crushed under the load of an IDE.  Geany, which is what i use, has been on all day and is currently only using 20.1 MB.
Anyway, that's just my opinion, but of course you are free to like and use your preferred IDEs, I just don't want one forced on me .  Don't let me force you not to use an IDE either though ;-) Personally, I haven't used an IDE full-time for at least 4 years, and I don't miss it much.  That said, people have suggested I get into vi since it is light weight, more universal, and portable as it's accessible over ssh, but I still prefer something a bit more graphical.

No comments:

Post a Comment

No profanity please.