Mastery and Complexity

Zed Shaw has a good post relating his study of martial arts to programming here http://zedshaw.com/archive/the-master-the-expert-the-programmer/. I can appreciate the drive for simpler solutions in the face of over-engineering and needless complexity.

When I saw the image in this Thoughtworks article my initial reaction was much like I imagine Zed's to be: that system was built by experts not masters.

Tech Stack

However, the Thoughworks article has great insight one you get past any knee-jerk reaction.

My favorite quotes:

One mantra of efficiency-driven managers has been standardization, standardization, standardization. In today's world standardization may be a direct path to calcification.

As tech stack complexity grows, organizing your teams based on technology layers becomes less and less effective.

Rather than partition your architecture in technical layers, teams increasingly organize around domain concepts like Customer or Order, encapsulating the technical layers within a service.

If companies continue to organize along technical silo lines, the number of siloed functions with their necessary interactions will increase dramatically causing more severe integration problems.

One of the benefits of the agile and lean movements has been to encourage the empowered, collaborative, cross-functional teams.

companies pay a price when they undervalue the strategic importance of producing excellent software

Building a culture to adapt and learn is as important as building specific technical skills.

There is no way around it, if you want to build a digital savvy enterprise, you can't do it with a cost-cutting mentality.



comments powered by Disqus

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© 2017 Frank Meola

Back to top