Open source programming tool on the rise: Build management tools
Over the past few years, tools for building Java projects have evolved from something one person ran on a desktop occasionally into tools that run on a server every few seconds to coordinate the work of a team of programmers. The server constantly monitors the source tree, executing an Ant or Maven script whenever new code appears. Compilation and test results are then posted for all the developers to see. Fancy dashboards that display bugs and fixes in real time are a popular attraction.
The wealth of rising open source projects in this area indicates that programmers still haven't found the optimal mix of features. Cruise Control is the original open source build tool that is well-integrated with most repositories and bug databases. Apache's Continuum is highly integrated with Maven, and users of Continuum like to say that all you need to do is "point the pom.xml file at the repository." Another popular project once known only as Hudson is more open to using building scripts written for Ant or a few others. In late 2010, the team broke in two and the group dominated by Oracle's paid developers kept the name "Hudson," while the others are creating a new open source build management tool called Jenkins.
Many users stress that constantly building the software and often deploying it almost immediately afterward increases the harmony of the team and prevents programmers from drifting down different paths that require too much time to harmonize. By continuously rebuilding the software and applying unit tests, the team is more likely to converge.
Open source programming tool on the rise: OpenVidia
Graphics processing units are best known for popping up triangles from mythical worlds where people are always shooting at each other. This is rapidly changing as both video card manufacturers and programmers are realizing that the chips are massively parallel computers primed to manipulate almost any code, not just game realms. Scientists everywhere are learning that the cool graphics card used to play Grand Theft Auto can also run simulations to help cure humans. Many scientific problems can be structured to include a huge number of events that happen simultaneously, a perfect job for a massively parallel computer that does things simultaneously: in other words, a video card.
The OpenVidia repository is filled with projects that perform image recognition, searching, and more. It makes a perfect excuse for every programmer to ask their boss for an expensive graphics card with the potential to generate a very high frame rate -- er, I mean a very high rate of curing cancer in simulations.