Colonel John Boyd was a United States Air Force fighter pilot and self-taught scholar. A true polymath, he mastered a wide range of subjects from dogfighting to physics to philosophy. Boyd was the best kind of thinker; a theorist as well as a practitioner. His thinking influenced US fighter jet design and military operational art and science from the 1970’s up to the present.
One of Boyd’s mantras was “People, Ideas, Hardware. In that order!”. Investment in people is paramount. A perennial engineering temptation (naturally and understandably) is to focus on the technology (aka hardware). A great programmer will produce results regardless of the language (Java, C++, Scala, Fortran, Cobol, future super cool language X, whatever). Technology does not a software developer make.
The “people over technology” theme can be illustrated by a study of the past. Because the past is truly prologue and history has useful trans disciplinary lessons for us, behold the Russian T-34 tank:
First developed in the late 1930’s, the T-34 was a revolutionary design. It would have a huge influence on tank development that resonate today. When the German Wehrmacht (Armed Forces) first encountered the T-34 in Operation Barbarossa in the summer of 1941, the T-34 was a shock. Superbly well-endowed with thick, sloped armor, a deadly 76.2mm cannon, and a powerful 500 hp diesel engine, it was everything its tank peers were not. Typical tanks of the period (including German) had thinner, unsloped armor, small caliber cannon, and easy-to-catch-fire gasoline engines. For the technology uber-alles crowd, the Russian army should have swept the field of its adversaries in the last half of 1941.
History records a much different result. The exact opposite happened. The Russian army incurred devastating losses of men and material and was thoroughly routed. Better technology did not and could not save them*. The German army of 1941 had superior people (better trained and experienced), strategic/tactical ideas, and leadership. Their technologically inferior armored force did not impede their success. This example from history can be applied, albeit loosely, to the modern battlefield of software development.
Boyd’s emphasis on people is something I try to remember, especially when a new and exciting technology appears on the horizon. Technology alone will not save your project. Hard, diligent work coupled with sound design principles (separation of concerns, DRY, decoupling, etc.) are the most important things. As long as they remain in focus, have at it with the technology, old or new. As an added benefit, the essentials above will make your technology choice decisions informed and wise ones.
A book** I’ve reading lately supports Boyd’s maxim. After recapping some of the author’s hard-won experience with successful software architectures, they note that “Success is not based on the technology”. People and ideas are more important.
Of course, good people + good ideas/process + good technology is ideal!
* In the utterly ruthless feedback chamber of WW2 Eastern front warfare, the Russian personnel and strategic/tactical ideas would learn and adapt and ultimately, of course, win the war beside their American and British Commonwealth allies.
** M. Rosen, B. Lublinsky, K. Smith, and M. Baker, Applied SOA, Wiley Publishing, Indianapolis, IN, 2008, page 10.





