<http://schema.org/articleBody>
"The Web Development Series is supported by Rackspace, the better way to do hosting. Learn more about Rackspace's hosting solutions here.\nIf you're new to programming (or new to programming in a particular language) you might be looking for an IDE \u2014 that's an integrated development environment, the handy, dandy piece of software that acts as text editor, debugger and compiler all in one sometimes-bloated but generally useful package.\nUnless you're committed to working in a text editor and a command prompt window (and there are compelling reasons for doing exactly that) you might be looking for some advice on how to choose a good IDE, the pros and cons of various varieties, the relative costs (financial or system resources) of running a particular IDE, what other languages the IDE might handle well, the operating system(s) it runs on and ever so much more.\nI was recently in need of such advice, myself. As some of the readers of this blog know, I recently went back to school to study computer science. Being an utter novice, I made the mistake of asking developers in my sphere what IDE I should use.\nThe topic is apparently a minefield of catastrophic proportions. Developers are passionate, experienced and opinionated when it comes to optimizing their workflows, and recommendations (and anti-recommendations, e.g., \"NetBeans is superlatively bad and will turn your hardware into Cream O' Wheat!\") fly like shells over a battlefield.\nHere's a less opinionated, concise but thorough look at IDEs for the new programmer. If you need more detailed information or want to find an IDE for a less common programming language, check out the Wikipedia article comparing just about every IDE known to humankind.\nAnd if we left out an IDE you particularly love, let us know about it in the comments \u2014 but try to keep the NetBeans/Eclipse, Vim/Emacs flamewars to a minimum.\nIDEs Built from Text Editors\nIt's a slightly more complicated setup, but some pro developers swear by these workflows, which take a lightweight, run-of-the-mill text editor and turn it into a full-fledged, be-all-end-all IDE.\nArs Technica has an excellent step-by-step article on how to turn Vim into a great IDE using Exuberant Ctags, completion modules, script collections and more.\nEmacs users can also use commands to make this editor more developer-friendly. And of course, this topic gets a thorough discussion at StackOverflow.\nWhen in doubt, search Google for tips on turning your favorite text editor into a great IDE for your language of choice. Chances are someone, somewhere has already attempted it and is willing to hand out advice.\nMulti-Language IDEs\n\n\n\n\nAs a beginning programmer, you might not need tools for coding in Ruby and Python and C++ and PHP, but if you're aiming for a multi-language career later on, you might consider learning the ropes of a multi-language IDE.\nOne kind gent (or lady) on Hacker News wrote, \"Although many IDEs can handle more than one language, few do it well. Plus, it's likely overkill if you are just getting started.\" This individual suggested instead using a simple text editor such as gEdit (Linux) or TextMate (Mac) for multi-language practice.\nEclipse\nLanguages: C, C++, Python, Perl, PHP, Java, Ruby and morePrice: FREE\nEclipse is the free and open-source editor upon which many development frameworks are based. It's one of the granddaddies in its field and comes highly recommended by many a professional developer. Eclipse began as a Java development environment and has greatly expanded through a system of lightweight plugins.\nNetBeans\nLanguages: Java, JavaScript, PHP, Python, Ruby, C, C++ and morePrice: FREE\nNetBeans is neck-and-neck with Eclipse as the most-recommended IDE in this category. It's free and open-source, supports tons of languages with more plugins coming all the time, and is incredibly simple to install and use, even for a beginner.\nKomodo\nLanguages: Perl, Python, Tcl, PHP, Ruby, Javascript and morePrice: $295\nThis enterprise-level tool might be best for the pro developer because of its higher price point. For beginners, you might also want to check out the Komodo-based, FOSS editor Open Komodo or Komodo's FOSS version, Komodo Edit.\nAptana\nLanguages: HTML, CSS, JavaScript, AJAX and others via pluginsPrice: FREE\nAptana is a popular choice for web app development. Aptana Studio 2 can be used as a stand-alone IDE or can be plugged into Eclipse. Aptana comes with Firebug support built-in, and its developer community seems to release plugins for other languages as needed.\nBlackAdder\nLanguages: Python and RubyPrice: $59.99 (personal developer license)\nThis IDE is designed for Python and Ruby devs creating apps for Windows and Linux. It includes a text editor as well as a GUI designer that uses pyQT and QT Designer. The makers of BlackAdder allow you to test drive the IDE in a limited demo version.\nGeany\nLanguages: C, Java, PHP, HTML, Python, Perl, Pascal and a boatload morePrice: FREE\nGeany bills itself as a \"small and fast\" IDE, but it is by no means a lightweight. Its list of supported languages is about a block long; it's highly customizable; and it features a robust set of plugins which is open for hacking.\nHere's a chart showing the differences and similarities between a few multi-language IDEs. An asterisk denotes the need to use a third-party or other plugin to achieve the desired functionality. The .NET column indicates support for .NET languages, particularly C#. \"FOSS\" is the acronym for \"free and open-source.\" Click the image to see a slightly larger version.\n\nIDEs for Mobile Development\nThese days, developing mobile applications is one of the most compelling and exciting reasons for learning how to code. We're still looking for that perfect, all-in-one, cross-platform mobile app IDE \u2014 in fact, we particularly welcome your comments and suggestions on this score \u2014 but here are a few ideas to get you started.\nTry some of PhoneGap's cross-platform tools. PhoneGap works with Xcode and Eclipse for iPhone and Android, respectively. You could also try the web-based, hosted RhoHub, which allows for git-powered source control and team collaboration.\nAnother good bet for mobile developers is Appcelerator's Titanium Mobile, which lets you write in any language/IDE you choose, then translates your code to Objective-C or Java. You can also check out our list of cross-platform mobile development tools. Finally, the mobile development products (and resultant applications) from Adobe are getting more interesting all the time \u2014 we highly recommend keeping an eye on their developer tools.\nAlso, if you're already using a multi-language or other IDE, check the web to see if a mobile-development plugin already exists; many IDEs such as Eclipse have this functionality.\nWeb-Based IDEs\n\n\n\n\nIf you're working remotely or need a last-minute fix, these IDEs might be worth looking into.\nCodeRun\nLanguages: ASP.NET, PHP, Ajax, C#, JavaScript, CSS, HTML and morePrice: FREE\nThis broswer-based IDE works in Chrome, Firefox, Safari and even good old Internet Explorer. Like the more robust multi-language IDEs, CodeRun supports Visual Studio projects and .NET languages. Best of all, your code is sharable via hyperlinks; it's even got built-in social sharing tools, should you want to tweet your code.\nShiftEdit\nLanguages: PHP, HTML, CSS and JavaScriptPrice: FREE\nShiftEdit brings revision history and code snippets to the browser. Any files you access will stored until next time you log in. This IDE's text editor is based on Mozilla's Bespin (mentioned below).\nIf you need a collaborative, web-based code editor \u2014 great when working on joint projects or as part of a team \u2014 you might also want to check out Squad. And for HTML5-based code editing, try Mozilla's SkyWriter, formerly codenamed Bespin.\nIDEs for Microsoft/.NET/C# and Apple/iPhone/Mac Devs\nSome languages require a bit of special handling; not all multi-language IDEs support all languages, and if you're working with the Cocoa API, for example, or with a .NET framework language, you might want to consider something more specifically suited to a Microsoft or Apple development environment.\nAnother part of this category includes single-platform IDEs such as Coda and Espresso. They only run on Mac Operating Systems, but they allow for multi-language development within a very Apple-flavored GUI.\nVisual Studio\nLanguages: Visual C++, VB.NET, C#, F# and othersPrice: $549\nVisual Studio is Microsoft's IDE. If you're building Silverlight apps or planning on working in a .NET shop (such as MySpace), you may want to spend some time with Visual Studio. Visual Basic has some support for non-Microsoft languages such as Python and Ruby, but you'll have to install those services yourself. A free, limited-time trial version is available.\nXcode\nLanguages: Objective-C, Objective-C 2, Cocoa and Cocoa Touch APIsPrice: FREE\nThis IDE is just for creating iOS and Mac apps. If you're thinking along Apple-y lines and want to get into iPhone or iPad development, Xcode might be your first stop. This IDE includes an iPhone simulator and GUI builder, too.\nMonodevelop\nLanguages: C/C++, Visual Basic, C# and other .NET languagesPrice: FREE\nMonodevelop is a good option if you're working in a .NET languages and don't want (or need) to fork over the $550 for Visual Studio. This free-as-in-beer IDE also allows you to port your apps to Linux while maintaining a single codebase.\nEspresso\nLanguages: HTML, CSS, XML, JavaScript and PHPPrice: $79.95\nEspresso, a tool for Mac web devs, comes from the makers of CSSEdit. Its supported languages and other features are extensible through plugins known as \"Sugars.\"\nCoda\nLanguages: PHP, JavaScript, CSS, HTML, AppleScript and Cocoa APIPrice: $99\nCoda bills itself as \"one-window development\" for the Mac user, and its a favorite of many developers on this platform. It's a full-featured IDE, but one of its most interesting features is live collaboration with other users.\n\n\nIt's not delirium tremens; it's just an elePHPant.\n\nIDEs for Specific Languages\nHere are a few suggestions for IDEs that cater to developers working in a single language. Some of these options are more costly than others, but most of the non-free IDEs here will also have a free trial version available for you to test-drive the software, learn to use it and decide whether or not you need and want its features and interface.\nWe only have space to highlight a few of the more popular programming languages here. If we left your preferred language out of this list, search StackOverflow for IDE recommendations, or ping the friendly devs over at Hacker News for their advice.\nC/C++\nC/C++ languages are some of the most widely used in the world of computer programming. Almost every multi-language IDE will support C/C++, but here are some dedicated IDEs just for C programmers.\nBloodshed Dev-C++Price: FREE\nCode::BlocksPrice: FREE\nCodeLitePrice: FREE\nC-FreePrice: $79.95 (single-user license)\nJava\nYeah, yeah, I've heard about how much Java sucks more times than I can recall. But it's used in the Android stack as well as in a lot of intro-level programming courses, so here's a lineup of good Java IDEs.\nJikesPrice: FREE\nJcreatorPrice: $89 (single-user license)\nIntelliJ IDEAPrice: FREE\nPython\nNever mind the fu and bar, here's some spam and eggs. If you got that reference, you might want to check out these links. Here are a few IDEs dedicated to Python, a powerful, readable and fascinating language. For more suggestions and comparison information, check out this exhaustive StackOverflow list of Python IDEs.\nIdlePrice: FREE\nPyCharmPrice: $49 (personal license)\nPidaPrice: FREE\nWingPrice: $35 (personal license, single OS)\nPyscripterPrice: FREE\nPHP\nPHP powers some of the most ubiquitous web apps around today, from WordPress to Facebook. Many of the free multi-language IDEs also support PHP development. Here are some full-featured, pro IDEs we've seen recommended.\nPHPStormPrice: $99 (personal license)\nPhpEDPrice: $119\nZend StudioPrice: $399\nPHP DesignerPrice: $45 (personal license)\nRuby/Rails\nFor a relatively young language, Ruby gets a lot of mileage, from consumer-facing apps like Twitter to dev-centric sites such as GitHub. In addition to these IDEs, also check out Ruby In Steel, a Ruby tool for Visual Studio, and Heroku, the so-hot-right-now PaaS for Ruby apps.\nRubyMinePrice: $99 (commercial license)\nRedcarPrice: FREE (and still under development)\nRadRailsPrice: FREE\nUse What You Love, Love What You Use\nFinally, after scores of links and a huge data-dump of information, we can only tell you this: Developers are passionate and opinionated about their IDEs because each individual has researched, chosen, used and come to appreciate a specific IDE (or set of IDEs) for personal as well as practical reasons.\nWe recommend you try out a few of the free (and free trial) IDEs before making a hard and fast choice as to what you'll use, but you should ultimately use the IDE that suits you best and makes you happiest. Anyone else's recommendations are just highly subjective suggestions.\nWe wish you well, and happy coding!\nDisclosure: The author of this post uses gEdit, Notepad, NetBeans, JCreator, and a magnetic needle and a steady hand.\nSeries supported by Rackspace\n\nThe Web Development Series is supported by Rackspace, the better way to do hosting. No more worrying about web hosting uptime. No more spending your time, energy and resources trying to stay on top of things like patching, updating, monitoring, backing up data and the like. Learn why.\n\nMore Dev &amp; Design Resources from Mashable:\n- 11 Trends in Web Logo Design: The Good, the Bad and the Overused- Top 5 Web Font Design Trends to Follow- 5 Tips for Aspiring Web App Developers- Flash vs. HTML5: Adobe Weighs In- 6 New Mac Apps for Designers and Developers\nImage courtesy of Flickr, roland"^^<http://www.w3.org/2001/XMLSchema#string>
<http://mashable.com/2010/10/06/ide-guide/>