There’s no doubt that Eclipse has changed the way people code. All around the world, no matter the language, Eclipse likely has a solution.
But it wasn’t always this way. Ten years ago today, when the Eclipse project officially kicked off, the world of IDEs was still dominated by commercial offerings and niche players. Borland still existed, and Microsoft was still pushing Visual Basic. Java was a young language, and no one had ever used the letters “SOA” in a consulting contract.
How times have changed. Today, Eclipse is the dominant development platform for Java users and a popular choice for folks who write C++, PHP, Python, Ruby, and a host of other languages and tools. With the help of the open-source community, Eclipse has grown to become the Swiss Army knife of enterprise software development, and numerous companies have been built on top of Eclipse technology. Heck, even some of those Wall Street traders use it, thanks to the Eclipse Rich Client Platform (pardon the pun), which allows developers to turn Eclipse itself into an interface and platform for their applications.
And so, it is with great respect and pride that we bring to you the top five cool projects at the Eclipse Foundation. When you’re done, check out the timeline application at the Foundation’s Website.
Eclipse isn’t just about code. When repurposed to act as a platform, it can be used to run just about anything. Such is the case with STEM, a project for using Eclipse as a way to model the spread of infectious diseases. As we’re all programmers here and not doctors, we’ll let the STEM project explain itself:
The Spatiotemporal Epidemiological Modeler (STEM) tool is designed to help scientists and public health officials create and use spatial and temporal models of emerging infectious diseases. These models can aid in understanding and potentially preventing the spread of such diseases.
Policymakers responsible for strategies to contain disease and prevent epidemics need an accurate understanding of disease dynamics and the likely outcomes of preventive actions. In an increasingly connected world with extremely efficient global transportation links, the vectors of infection can be quite complex. STEM facilitates the development of advanced mathematical models, the creation of flexible models involving multiple populations (species) and interactions between diseases, and a better understanding of epidemiology.
STEM is designed to make it easy for developers and researchers to plug in their choice of models. It comes with spatiotemporal Susceptible/Infectious/Recovered (SIR) and Susceptible/Exposed/Infectious/Recovered (SEIR) models pre-coded with both deterministic and stochastic variations. STEM simulates the models using numerical ordinary differential equation solvers (two solver options are currently available) and outputs the results to a range of sources, for instance a map view or the file system.
We bet you thought all of the Eclipse tools we’d list here would be development tools! Well, you’d be wrong. As a developer, you probably already know about all the cool IDEs, debugging tools and workflow helpers that are out there from Eclipse. But did you know you can also use this platform to help the folks in your company that deal with geographical information?
uDig is an effort to build a user-friendly GIS mapping tool. But the real power of uDig comes from its myriad of additional projects for expanding its capabilities. Much in the same way that you can add Eclipse Mylyn or Eclipse Hudson to a Java project and work environment, uDig offers additional tools for workers who are concerned with the shape of the world.
JGrass, for example, allows developers to do significantly complex hydrological modeling inside of Eclipse to see how fluids will be moving through a landscape. Arbonaut, on the other hand, is a forestry management tool built on top of uDig, and therefore on top of Eclipse. Why, the International Potato Center in Peru has even been using uDig as an analytical tool for mapping out potato genetics. We bet you didn’t previously know that Eclipse was being used to model potatoes!
Eclipse isn’t just for coders, engineers and potato enthusiasts, however. If you’ve ever been in a brainstorming session, you could have brought Eclipse with you.
XMind is an open-source mind-mapping tool built on top of Eclipse. It’s designed to allow a roomful of people to build graphs and charts of thoughts and ideas, and to keep them arranged and ordered. It’s far preferable to a whiteboard, as everyone can be e-mailed a chart after the meeting. And it’s safer for the environment than dry-erase markers.
The company behind XMind, TaskAnt, sells a professional version to keep itself in business. But the company also offers the eponymous TaskAnt, which is something like a bug-tracking tool for tasks that need to be done inside an organization. It’s all part of a quiet revolution we’re seeing in businesses, where agile development processes and tools are slowly but surely leaking into the rest of the business operations. In a few years, who knows? Maybe everyone in an enterprise will be using Eclipse and checking their burn-down charts for the day’s assignments.
In keeping with the theme of showing off Eclipse-based tools that aren’t necessarily for enterprise coders, GumTree is mostly of interest to R&D people. For scientists running experiments in a distributed network environment, GumTree gives them a single place to gather instrument readings and to coordinate aspects of the experiment.
From the GumTree site:
GumTree is a cross-platform scientific workbench, a front end for instrument control and data analysis, an open-source Eclipse Rich Client Platform project, and an OSGi-enabled middleware server to provide centralised access to the instrument system. GumTree lowers the barrier between users and complex instrument hardware. It aims to provide a single entry point to all supporting infrastructures that are required for performing scientific experiment.
With support for data analysis tooling, scripting, a workflow, and an application framework, GumTree gets you most of the way to where you need to be to perform experiments with the help of Eclipse.
JDT may have started it all, but it remains the biggest, baddest editor in the Eclipse retinue. With refactorings, deep Java syntax knowledge, and a host of helpful tools for dealing with the almost infinite APIs and handlers within the Java ecosystem, Eclipse is the go-to IDE for most Java developers in enterprises.
But the power of Java in Eclipse doesn’t end with the code editor. Java users also now have access to WindowBuilder Pro (formerly from Instantiations, now from Google). This full-featured GUI editor and designer was commercial for a decade before it was turned into open-source code and donated to the Eclipse Foundation. As a result, Java developers using Eclipse now have access to a top-notch GUI tool, one that can help to transform Java applications from looking like generic X Window applications, to looking like native Windows and Mac OS X apps.
And this summer’s Indigo release of Eclipse included some major enhancements to the JDT. The compiler will now detect objects that could be static; highlighting Java code brings up a drop-down menus of options; and the debugger now allows developers to keep a list of previously used breakpoint conditions.
JDT is the heart of Eclipse, and while you don’t have to use it to be an Eclipse fan, it’s certainly one of the most compelling and useful projects at the Foundation.