TechnoFrolics is a small, internationally known design studio located near Boston, MA USA. Its signature style melds art, engineering, and science into a unique design experience. If you’ve been to a major museum or aquarium lately, chances are you’ve witnessed a TechnoFrolics experience, as the studio’s clients consist of dozens of science centers, children’s museums, and aquariums throughout the USA and worldwide.
Some of their most known creations are interactive video exploration tools such as the FrameGlide | Spin Browser™ video explorer and kinetic artworks such as the award-winning “Dancing Trees” composed of iron dust in a choreographed magnetic field.
When looking at TechnoFrolics’ achievements it’s hard to believe the studio is run mainly by one man, David Durlach, and a couple of assistants. (Though David is quick to point out both the value of his current assistants, and the major technical contributions provided by others during TechnoFrolics’ almost three-decade existence.)
David acts as the primary artist, engineer, and developer. He codes largely in C++ within Microsoft Visual Studio, on both MFC and Qt based projects. We asked David about the challenging reality of being an internationally successful one man (almost) show, and how it creates so little room for mistakes and time-slips.
“During projects where I am programming, I am generally deeply immersed, often recompiling dozens of times per day. Some of the biggest challenges I find when coding include:
- Holding everything in my head sufficiently to properly organize both the high-level modules and the lower level details. I find that the task of understanding where abstraction barriers are best placed (ironically) requires seeing (at least elements of) the whole picture at once – something far from easy (and one of the reasons I have four monitors on my development machine).
- Debugging code quickly and efficiently.
- More generally, meeting deadlines and being efficient about the coding process when it is just one of a half-dozen things needing attention each day.
In terms of both increased productivity, and general mental sanity during intense bursts of coding work, Incredibuild has been extremely valuable; it has greatly improved the daily work experience on both practical and emotional levels”
How Incredibuild Crunched it
According to David, “Incredibuild has been invaluable. While our code base is tiny compared to that of a large firm and thus our build times are small regardless, the gain of going from over 2.5 minutes per build to less than 45 seconds has been enormous because in base practical terms, when performing dozens of builds/day during intensive periods of development and testing, it saves significant time in a direct, measurable way.”
It’s interesting to note Durlach is keenly aware of what we call in Incredibuild, “the collateral damages” of slow builds. These are all the accumulated negative side effects a time-consuming development task has on developers’ days, even when they’re largely unaware of them.
As David explains, “much more importantly, however, at 45 seconds/build, I find it practical to remain continuously focused on the coding task, even during builds. Such unbroken attention is critical when trying to hold complex designs in my head.
This is in stark contrast to 2.5 minutes plus, where I found myself constantly feeling the need while waiting to shoot off an email, answer one of my assistant’s questions, etc. The time lost, and mental effort, from having to then (repeatedly) re-remember the 1001 details that allowed me to see the whole picture at once, was painful.
Now build times are short enough that I can continually rename/refactor variables and functions for increased clarity, without have to worry about whether the resultant rebuild time means I should just skip it for the time being. This results in better code quality, both immediately and in final form.
In a similar vein, when debugging, rather than having to spend inordinate time adding print statements everywhere I think a problem might originate from, because build times are so short, I can just add print statements to the most likely areas. Then, if I am wrong, I just add additional statements to other code blocks and quickly rebuild. This too is a great timesaver.”
Finally, David also utilizes the build monitor, a free visualization tool built-in Incredibuild which replaces your old text output with a sleek intuitive graphic UI.
“Seeing the real-time view on the build monitor, as our various studio machines work in unison to perform a compilation, is surprisingly fun and calming. I showed it to a colleague who dropped by, and he too found it ‘incredible’.”
The Bottom Line
TechnoFrolics overcame the collateral damage of slow builds in all the following aspects:
- Delivering on time against harsh odds:This is the story of one brave entrepreneurial developer with dozens of global clients. If the numbers don’t seem to add up, remember he hacked the development process with Incredibuild and accelerated his whole cycle.
- Undivided focus: Incredibuild empowers TechnoFrolics’ staff to focus on his task of choice without constant interruptions, a valuable gift for any developer.
- A product with zero compromises: Not having to worry about the time consequences of coding, debugging and other tasks means pouring your resources into the number one priority for each company: making the best possible product.
For short, fun movies showing the kinds of art, technology and education initiatives Incredibuild is helping bring to life, please see homepage videos at www.TechnoFrolics.com and on new offshoot site www.ChoreoV.com.
- Build Time
- 2.5 minsWithout Incredibuild
- 0.75 minsWith Incredibuild