Rembrandt Venture Partners

SparkBuild: A "How Developer Tools Surface" Story

By Jonathan Erickson

It's long been my belief that the most useful developer tools come from "what I need" rather than "what if." You know the tools I'm talking about — the ones you use everyday. The ones that may not be pretty, that aren't (yet) a product, but were devised by developers to solve specific problems day-in and day-out. Of course, the fun factor is when someone in product marketing runs across one of these tools and says, "What a cool idea. We could make a product out of that if it had a GUI."

That's probably not exactly how it went down at Electric Cloud with SparkBuild, but I bet I'm close. SparkBuild is a new and unique tool Electric Cloud will be releasing that gives you the best of both worlds, build-wise: You get the speed of fast-and-dangerous builds, plus the safety of slow-and-safe ones. It's a tool that Electric Cloud developers were using in house to speed up incremental builds long before "product" was a twinkle in someone's eye. And did I mention that it is free?

Yes, SparkBuild is a free make- and NMAKE-compatible build tool that, according to Electric Cloud, speeds developer builds up to 10 times. Not only does SparkBuild reduce build time, but it includes graphical tools to analyze and debug build results. SparkBuild targets the desktop, so that developers can perform incremental builds that don't require network access. It's built on "build avoidance technology" called "subbuilds" that enable the fast, frequent, local builds that are a requirement in Agile environments. The technology identifies and builds only the components that are necessary for the developer's current focus, resulting in time savings and the ability to compile and test frequently without affecting the rest of the team. As you might guess, SparkBuild is built on the technology shoulders of Electric Cloud's commercial enterprise tools, including the ElectricAccelerator distributed build system, and the ElectricInsight build visualization tool.

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 reuse 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.

The SparkBuild approach involves the aforementioned subbuilds, a technology that identifies and builds only the components that are essential to a developer's current focus. This delivers fewer broken builds, time savings and the ability to compile and test frequently and without affecting the rest of the team — critical to Agile development.

To encourage adoption of the tool, Electric Cloud has set up a community at www.sparkbuild.com, which includes video demos and download opportunities.

What other products are you aware that came to being in like fashion? I'd like to hear from you if you know of others.

Originally published in Dr. Dobbs. View original article.
Page rendered in 320.6 ms