SparkBuild, a free software build tool claims to make developer builds up to ten times faster. SparkBuild helps developers overcome the challenges inherent in build avoidance techniques and makes debugging faster and easier. It is free for both commercial and non-commercial projects.
SparkBuild includes build avoidance technology that enables the fast, frequent local builds that are a requirement in Agile environments. Build results are displayed graphically, making it easy to pinpoint and correct errors. It’s based on the technology developed for Electric Cloud’s commercial enterprise tools including the ElectricAccelerator distributed build system, and the ElectricInsight build visualization tool.
“To date, developers have been forced to choose between slow and safe or fast and dangerous desktop builds,” said Mike Maciag, Electric Cloud CEO. “Electric Cloud solved the build speed and accuracy problem for full builds with our ElectricAccelerator product. Now we’re leveraging our expertise and technology to provide this benefit on the developer desktop with a free tool.”
Enterprises hire software developers to write great code. Waiting for a build to complete or taking time to debug a broken build is time that is not spent creating great code. Worse, errors can be introduced in a production build when a developer tries to save time by avoiding or partially building their changes prior to checking in code, techniques which often produce incorrect results.
One of SparkBuild’s key features is the ability to avoid unnecessary work by automatically reducing a full build to the smallest subset of critical changes. Traditional “build avoidance” techniques like object re-use and incremental builds often break builds, creating more headaches than they solve. To reliably avoid those problems, developers are forced to recompile the entire application when making changes, even though an individual’s changes may affect only a small portion of an application.
Electric Cloud is taking a fresh approach to the problem with subbuilds, a technology which identifies and builds only the components that are essential to a developer’s current focus. This delivers fewer broken builds, huge time savings and the ability to compile and test frequently and without affecting the rest of the team, a critical Agile development practice.