The last word on SCons performance

My previous look at SCons performance compared SCons and gmake on a variety of build scenarios — full, incremental, and clean. A few people suggested that I try the tips given on the SCons ‘GoFastButton’ wiki page, which are said to significantly improve SCons performance (at the cost of some accuracy, of course). Naturally, I [Read More →]

9 comments | posted by on August 11, 2010

What's new in GNU make 3.82

GNU make 3.82 hit the streets last week, the first new release of the workhouse build tool in over four years. Why so long between releases? To me the answer is obvious: the tool Just Works ™, so there’s no need to churn out new releases chasing the latest development fad. But as this release [Read More →]

1 comment | posted by on August 3, 2010

A second look at SCons performance

UPDATE: In response to comments here and elsewhere, I’ve done another series of SCons builds using the tips on the SCons ‘GoFastButton’ wiki page. You can view the results here A few months ago, I took a look at the scalability of SCons, a popular Python-based build tool. The results were disappointing, to say the [Read More →]

29 comments | posted by on July 21, 2010

Designing for high performance

Here’s the thing about high performance: you can’t just bolt it on at the end. It’s got to be baked in from day one. No doubt those of you who are experienced developers are now invoking the venerable Donald Knuth, who once said, “Premature optimization is the root of all evil.” But look at it [Read More →]

no comments | posted by on July 12, 2010

Visualizing Build Processes

The other day I was waiting for my continuous integration build to finish. Think about that a minute. See anything wrong with that statement? I was waiting for a continuous integration build to finish. The whole point of continuous integration is to detect integration errors as quickly as possible. After years of growth, our builds [Read More →]

2 comments | posted by on June 29, 2010

How scalable is SCons?

The marquee feature in ElectricAccelerator 5.0 is Electrify, a new front-end to the Accelerator cluster that allows us to distribute work from a wide variety of processes in addition to the make-based processes that we have always managed. One example is SCons, an alternative build system implemented in Python that has a small (compared to [Read More →]

24 comments | posted by on March 8, 2010

How to quickly navigate an unfamiliar makefile

The other day, I was working with an unfamiliar build and I needed to get familiar with it in a hurry. In this case, I was dealing with a makefile generated by the Perl utility h2xs, but the trick I’ll show you here works any time you need to find your way around a new [Read More →]

3 comments | posted by on November 10, 2009

Seven lessons from seven years at Electric Cloud

We wrapped up the 2009 Electric Cloud Customer Summit a couple weeks ago. Like last year, I left refreshed and reinvigorated after hearing so many customers’ stories. Comments like, “Developer builds are now measured in seconds [with Accelerator]. Nobody does local builds anymore,” and, “ElectricAccelerator will give you better performance than you deserve,” really make [Read More →]

1 comment | posted by on November 2, 2009

What is SparkBuild?

At the 2009 Electric Cloud Customer Summit we introduced SparkBuild, a free gmake- and NMAKE-compatible build tool. SparkBuild is now in public beta, and several people have asked us for some more explanation: what is SparkBuild and why should I care? I thought I’d take a crack at answering those questions, hopefully without sounding too [Read More →]

6 comments | posted by on October 27, 2009

Subbuilds: build avoidance done right

I’ve heard it said that the best programmer is a lazy programmer. I’ve always taken that to mean that the best programmers avoid unnecessary work, by working smarter and not harder; and that they focus on building only those features that are really required now, not allowing speculative work to distract them. I wouldn’t presume [Read More →]

2 comments | posted by on October 21, 2009