Sunday, December 19, 2021

Babel Tower Programming

In the ancient story of the Tower of Babel, all of Humanity is unified in a common language.  They begin to construct a great tower which, in some variations of the story from other civilizations, might save them from possible extinction from another Divine Flood sent by an angry God.  Construction of the tower is abandoned when God disrupts the ability of Humanity to communicate by dividing their shared language into many.

Babel Tower Programming is what I call a form of Polyglot Programming in which the use of multiple computer programming languages impedes rather than promotes progress.  An example might be using one programming language for front-end development and a separate for the back-end when the same language could be used for both.  One sign that you are experiencing the impedance of Babel Tower Programming is when software developers are choosing their feature development tasks based primarily on which programming language will be used.

The solution, which I call the Incantation of Nudimmud, is to adopt a policy which requires that any new software features be developed in a common programming language.  Legacy code developed in the abandoned programming languages can be gradually phased out using techniques such as the Strangler Fig Pattern.  As Babel Tower Programming is a form of Technical Debt, the decision to move to a single language usually requires some cost analysis and both bottom-up and top-down support.

 

Saturday, September 25, 2021

Head First Agile

I just finished reading from cover to cover the book Head First Agile: A Brain-Friendly Guide to Agile Principles, Ideas, and Real-World Practices. Even before I finished reading it, I started recommending this book to my co-workers. I tell them that they can get almost everything they need to get started in Scrum by reading just the first four chapters.

I own a number of books in the Head First series. Like the For Dummies series, the "Head First" books provide fun introductions to a variety of topics. Unlike the "For Dummies" series, you do not have to explain that you are not trying to insult someone when you recommend one of their books.

rugby scrum