Open Source IDEs: An Update
Integrated development environments, or IDEs, aim to boost programmer productivity in both the desktop and web applications worlds. Increasingly, those offerings are pushing into mobile development, and open-source IDEs are part of that evolution. Here’s an overview of the latest on open-source IDEs.IDEs Going Mobile
In June, the latest Eclipse release train, dubbed Juno, included a new package, Eclipse for Mobile Developers. The Eclipse Foundation’s press statement described the package as making it “easier for developers to download and use Eclipse with a variety of mobile SDKs, including the Android SDK.” A month later, Oracle introduced NetBeans IDE 7.2. NetBeans’ Java Micro Edition includes tools for building and debugging apps for mobile devices, a GUI designer and a mobile game builder, among other components.
Some industry executives view the open-source IDE’s mobile moves as inevitable. “As with anything in the open-source world, the work happens where the interest is,” says Doug Seven, an executive vice president at Telerik. Seven leads the company’s Icenium division, which focuses on building cross-platform developer tools.
“Mobile is hot, so it’s natural that open-source IDEs would be turning to mobile -- just as many of them emerged solely for web development when that was the new hotness,” Seven says. “Open source is very opportunistic, and mobile is the opportunity that is knocking.” Commercial IDE makers are also opportunistic, adds Seven, who notes that many mobile IDEs are showing up on the commercial side.
“I see [Eclipse and open-source IDEs] playing a larger and larger role,” says Andrew Graham, director of application development for mobile security company KoolSpan. With Eclipse, “the community seems active and the plug-ins they contribute are useful,” Graham says.
Under the Hood
Developers can directly download an open-source IDE, but they may also see them embedded in other development platforms. Vendors have adopted open source as a way to avoid having to create and maintain their own IDEs, according to Graham. He cites the example of Research In Motion and its propriety BlackBerry Java Development Environment. JDE was in use for years, he says, but now the company has switched to Eclipse.
RIM’s BlackBerry developer website notes that JDE is “no longer under active development” and recommends programmers new to BlackBerry Java development use the BlackBerry plug-in for Eclipse.
Meanwhile, the upcoming BlackBerry 10 includes the QNX Momentics IDE, which runs on Eclipse. BlackBerry 10 developer toolkits are already available in beta form; the new operating system is slated to come out early next year. The bundled Eclipse approach and the plug-in give developers two ways to go.
In another example, Appcelerator Inc.’s Titanium Studio IDE is based on Eclipse. Titanium Studio is built upon Appcelerator’s January 2011 acquisition of Aptana and its Eclipse tools.
Appcelerator built mobile features around the Aptana technology, which was web-development oriented, says Nolan Wright, Appcelerator’s co-founder and chief technology officer. “Basically, Aptana had the raw ingredients needed for an IDE,” Wright says. “We just had to add in mobile-specific capabilities.”
Eclipse has been used by several vendors including BlackBerry and IBM because it provides an affordable way to build their platform tooling, Seven says. “For many platform vendors, leveraging open-source IDEs like Eclipse is smart, because it accelerates their tooling needs without putting them in a competitive tooling business, essentially letting them focus more attention and effort on their platform.”
Customization of these IDEs should be loosely connected so the platform vendor doesn’t have to maintain its own full derivative of the open-source IDE, Seven explains. Instead, the vendor would only be maintaining plug-ins and SDKs that work with the open-source IDE.
Open Source: Contributions
Open-source IDEs face a couple of challenges, says Seven. Competition with commercial IDEs is one. Open-source IDEs, he says, can easily catch up with basics such as code editor, statement completion and integrated compiler. But open source will “struggle in the long run for differentiating value that drives the IDE market.” Seven adds that commercial IDE vendors will continue to push the envelope in an attempt to monetize differentiating productivity benefits -- Microsoft Visual Studio’s IntelliTrace, for instance -- as long as they can before those features become slowly commoditized in the open-source market.
Another open-source challenge relates to customization, according to Seven. “The challenge with IDEs in the open-source world is that any variation has a much more significant impact on developer productivity,” he says. “That is, if you customize something, now you are both maintaining the IDE code base and the product you are developing.”
Wright, however, says only a small percentage of developers contribute back to an open-source effort. And contributing isn’t necessarily viewed as a burden by those coders who do participate. Developers, he says, tend to contribute when they encounter something they want to address: a new capability or a bug fix, for example.
While IDE technology evolves in the mobile space, individual coders looking for an easy way to try out the technology -- and platform vendors seeking to bundle it -- will keep interest in open source alive. “I don’t see Eclipse or the open source idea going away any time soon,” Graham says.