Top 5 Integrated Development Environments

So, you want to do some programming but don’t have the budget of a major corporation? This is just the thing for you because all of these development environments are free of charge! Many Integrated Development Environments are marketed towards companies who have money to pay for such expensive environments. Here are the Top 5 Integrated Development Environments that are most widely used and recognized. Some will be used when programming past and future tutorials. The following are listed in no particular order and all make an excellent development environment.

There are alot more IDE’s out there that were not mentioned but should have been.  We have posed the question at Hack A Day Answers “What are your Top 5 IDE’s?” Give us some feedback and we will be back with a revised list from the comments you give us!

Visual Studio Express

Visual Studio has an advantage when it comes to programming. This IDE is mostly used by corporate programmers to produce .NET code. Sometimes people want to try the product without investing thousands of dollars first, so Microsoft has the Express editions for all of their products. This makes it perfect for casual users that want to hack out some code as a hobby or programmers who need a free solution to code in C#. Be warned though, if the application developed by someone using the express versions of Visual Studio takes off and starts making money it would not be surprising to see big brother step in and start asking questions.

  • Advantages
    • Intellisense
      • For those who don’t know what Intellisense is, here is a brief overview. Intellisense is Microsoft’s way to make programming in .NET as painless as possible. When you start programming in Visual Studios IDE you will notice a suggestion box will appear when you start typing anything within the IDE, this is to notify the user what methods and functions are available (R.I.P. Clippy). When clicking on one of the methods in the suggestion box the environment will tell you exactly what the method will do and how many and what parameters are needed. The ability to make decisions on what functions and methods to use based on intellisense is a powerful feature that many would find useful, if not life changing.

    • Automatic code formatting
      • With a product like Visual Studio you get what you pay for. When you start coding a method and go to enter the “{“ brackets, the code inside those brackets will actually indent to the right. A very handy feature for a code monkey who is just looking to get the program done. As well, there are options to enhance the colors to see variables as a different color than a method header which is very useful when going through hundreds of lines of code to find a bug. Both these things may be minute details but in the end are designed to save the developer time and money.
    • Extensibility
      • Something that you don’t like about Visual Studio? Code a new tool for it or use one of the many available to the developers using Visual Studio Gallery. This site is a wealth of fixes for things that developers didn’t like with Visual Studio and decided to fix.
    • Compiles Code
  • Cons
    • CPU Hog
      • When running Visual Studio it is a must that you have plenty of RAM to spare. This is a beast when it comes to developing apps and for good reason. If you take the plunge and sacrifice RAM to run this IDE you are equipped with one of the most comprehensive GUI’s (once you learn to navigate it) for developing in the .NET framework.
    • Overwhelming GUI
      • If you have never used Visual Studio before, then you are in for a surprise. When first starting it up, the layout of buttons and panes can be a little/very confusing at first. This will take time to adjust, so the downfall is there is a steep learning curve with the layout.
    • Cost
      • With the 2008 Professional edition of Visual Studio costing a thousand dollars (without MSDN subscription) and upwards if you are looking for additional features and subscriptions. This can be a real turn off for the hobbyists but that’s where the express versions will become redeeming.

Eclipse


This is the best alternative if you are not a big fan of Microsoft’s Visual Studio. The interface is a lot cleaner and concise than Visual Studio and the languages that are possible to use extend past the .Net Framework. Besides being the number on way to develop Android applications via the Android SDK, it is fully extensible to use languages such as Ruby, C, C++ and many many more.

  • Advantages
    • Language Extensibility
      • The languages mentioned above are not limited by Microsoft and anyone is free to develop plug-ins for different languages and to make the development environment easier to use. Also, the ability to use this on Linux is a great sway for many people who don’t like to be bound by Microsoft’s operating systems and like full control of their OS.
    • Free
      • Besides being fully customizable and extensible, the next best thing about eclipse is it’s free. This is good news for hobbyists and casual programmers wanting to just hack out some code in their free time.
    • Compiles Code
  • Cons
    • Steep Learning Curve
      • With so much available to upgrade and add on, the learning curve of eclipse will be quite steep. The best way to get past this is to just try coding something. Making mistakes when coding could never be so beneficial. Once you start learning from your mistakes you will learn the fastest way to accomplish what you are trying to do.

Netbeans


The is the number one alternative to Eclipse. This program is extensible and free, and it compiles code which is a bonus. When installing Netbeans it comes with a Java server called GlassFish that you could deploy on your computer for your testing environment. This server is the second biggest server for Java next to WebSphere (which is a whole different ball game).

  • Advantages
    • Extensible
      • Again, extensibility is a must have for the development environments out there to survive. Instead of having multiple programs for multiple different languages combining them into one program gains recognition from developers and the software programs that combine it all but the kitchen sink are utilized more often because of the simplicity and ease of access to the languages developers want.
    • Compiles Code
    • Free
  • Cons
    • Bloated
      • While using this program you may notice that your computer slows down, throws errors in your program that you didn’t know existed etc. This is a tough software program to master and when coding you have to be careful to dot the I’s and cross your T’s. This may not be the case for you and Netbeans might be all sunshine and rainbows but it is always best to be safe, rather than sorry later on when you have hundreds of projects.

kate


Kate is exactly how the website describes it, a text editor. Not to be looked down upon as it does a lot more than a regular text edit can do and that is what makes this an indispensable product.

  • Advantages
    • Uses Linux
    • Code Folding
      • This is probably one of the best features for kate. [Mike Szczys] explains that there is a small column to the left of the code. Any line that is an opening bracket that column will have an arrow next to it. If you click the arrow it will fold all of the code between the opening and closing brackets. Very useful for large source packages.
  • Cons
    • KDE Overhead
      • 250 Mb of overhead just to use the application. This is not just one package but several packages that are required to be on the system just to start the application. This may not be the best choice if you are using a net-book for development purposes on the go but if you have a Linux box at home this would do just fine.
    • Doesn’t Compile Code

gedit


gedit is the official editor of the gnome desktop and comes installed once the system is setup. Very useful for the user that is casually editing code and not undertaking major projects. This would be a good companion to Netbeans or Eclipse.

  • Advantages
    • Uses Linux
    • Already Installed on gnome systems
      • This is a major bonus for Linux users. If the application is already installed on the system would you be more likely to use it? Either way, if you don’t have to hunt down a program from the software manager then it must be
    • Code Highlighting
      • gedit offers the ability to highlight your code and figure out where the bugs are by giving you a fresh perspective. This can also be used for web development, to help developers see where the start of nodes are and where to submit the end nodes, doing this could cut down drastically on XHTML issues. While it may not do almost everything like Netbeans or eclipse, it is a handy tool to have on the computer.
    • Tabbed
      • This feature allows multiple source packages open at once to jump back and forth between if need be. This is a highly useful when comparing documents and debugging code.
  • Cons
    • Doesn’t Compile Code

All of the development environments are amazing choices. It all depends on what you want to do when programming and the tools you would like to have available. Microsoft Visual Studio express editions came in first because of the extensibility and comprehensiveness of the product. This provides eclipse, netbeans and other development software a goal to reach for when marketing to the masses. Remember, it’s not the size of the install it’s how you use it. Until next time, Happy Hacking!

185 thoughts on “Top 5 Integrated Development Environments

  1. Eclipse is extremely extensible , a lot of engineering companies out there adopt it for this purpose as they can fully customize it to their pipeline. I would definitely recommend anyone who is in this industry to pickup eclipse development.

  2. What about QtCreator ? It is free and opensource, have integrated debugging, code highlightning, code folding, bookmarks, offer compilation…
    The auto-completion is very powerful.
    It’s a great IDE when working with C++, even if you’re not using Qt.

  3. I code Python and X++ professionally. For Python I only use Vim, and for X++ I’m pretty much bound to Dynamics.

    Vim will do all (and more) that Kate does, and once you get the hang of keyboard navigation and control, you’ll never want to use a mouse-based IDE again!

    Off course the learning curve is probably one of the steepest around…

  4. Hmm, the geditkate-comparison isn’t completely fair: both rely on the libraries of their respective desktop environments. I just tried installing both on my barebones Debian Linux-server without any installed graphical stuff: when I try to install Kate apt-get tells me it would set me back 110M, if I were to install GEdit, it’d eat a chunk of 153M out of my hard disk space. On a desktop system: if you run Ubuntu, gedit probably is only a few megs, conversely an install of Kate on Kubuntu would only eat away a few megs too.

  5. Not having (real) Intellisense in other editors is something I miss badly compared to Visual Studio. Eclipse isn’t terrible (it has it’s problems, though) but Xcode is horrendous.

  6. Nice profile. What measurement was used to determine the top 5? Regardless, I’d also mention Xcode for the OSX users and KDevelop for KDE. Visual Studio gets my vote though. I’d happily switch to another IDE, but MS is way out in front of everyone else in the full-featured IDE game. For some things, Eclipse comes close.

  7. Netbeans was my environment of choice. Especially with its excellent support of PHP, Ruby, and Rails. However, now that Sun has been absorbed into Oracle, I’m reevaluating IDEs, as I can’t be sure of Oracle’s commitment to making sure netbeans stays available, even as open source. They’ve already managed to cripple OpenSolaris, I’m worried about netbeans specifically, and Java in General.

  8. Microsoft have said that Visual Studio Express is free for commercial use, so I wouldn’t be worried about “big brother”. Visual Studio 2010 is an absolute resource hog, sadly (possibly due to the new WPF user interface) in comparison to Visual Studio 2008. It’s a shame C# 4 is so nice else I’d be back to 2008 in a shot. :-( It may also be worth bearing in mind that the Express editions do not support add-ins.
    I find Programmer’s Notepad is a great text editor for Windows, and is very easy to customise to integrate third-party tools. It uses Scintilla, which is the same text editor component used by Notepad++ (which I personally find to have an abominable UI).

  9. Anjuta with the Scintilla engine.

    I tried many IDEs, but this is just the best I could find for Linux (GTK but non-Gnome environment). There are a couple listed here I haven’t tried though, will do when I have time.

  10. I understand a list with Visual Studio, Eclipse and Netbeans on it, but Kate and gedit are “just” advanced editors and are not full IDEs.

    For an IDE on the KDE part, you can take a look at KDevelop as someone else already pointed out.
    For the Gnome part, I think you have Anjuta and maybe some more.

    QtCreator is also a nice C++ IDE since it’s cross-platform and doesn’t depend on KDE or Gnome.

    Finally, as for the advantages and cons of Kate and gedit, it depends on what you’re using. Not everyone uses Gnome on Linux ;P

  11. I had never heard about Kate, I’ve been using gedit for a while, but I missed quite a lot in in.
    I’m now checking out Kate, and I must say I’m impressed with it so far. Looks like my webdev work is about to get more pleasurable.

    THANKS HaD!

  12. I appreciate the article, but I think you seriously missed some major ones. Gedit and Kate are fine and great, I’m not knocking them, I use them a ton, but as far as full featured IDE’s go, what about things like Geany, QT, and others that are way ahead of the programmer esque editors mentioned.

    Also, please don’t tell me the order associated with each entry actually has meaning? I know visual studio is…well, there and Microsoft-made and all…but who actually uses that anymore for more then just for video games?

  13. Are you kidding me ?! You mention Visual Studio to be a “CPU Hog”, yet you don’t say nothing about this for Eclipse ?! Dude. What’s wrong with you? Not to mention that under “CPU Hog” you actually comaplain about memory requirements, not CPU.
    VIM FTW.

  14. Seriously?
    1) Obligatory “not a hack”
    2) Ignoring 1, it isn’t even a top 5 of IDE’s, their are two text editors in the mix which are not in any way IDE’s.

    I mean I appreciate the effort, but if you’re going to put something up that isn’t a hack at least make it a good article. This isn’t.

  15. +1 for vim (or emacs). properly setup they can deliver anything any IDE on this list can including Intellisense like behaviour. (admittedly it takes ages to set them up like that)

  16. For me, the greatest is Code::Blocks. It’s cross-platform, relatively light and very universal. My favorite for writing for ARMs and AVRs.

    http://www.codeblocks.org

    When it comes to good text editor, you should also consider using PSPad. Really powerful thing, consists even hex-editor. Similar to gedit from my perspective.

    http://www.pspad.com

    And for programming .NET platform, SharpDevelop is a must-have.

    http://www.icsharpcode.net/opensource/sd/

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.