The obsession with building a better screwdriver

I was ever so excited to join a team working on a major Scala codebase for a suite of in-house reporting tools. My only experience with the language up to that point were self-study, hobby projects and a Coursera course. Two years on and I am mainly doing Java again, at my own request I might add. Has the love affair reached its end? Not entirely, but it has cooled.

There is a pretty big gap between the conceptual soundness of a language and the grim reality of building working software with it. However well designed, it can never be a joy to work in without a stable and extensive support system, starting with the IDE through to testing frameworks, proofing tools, etc. No JVM language can match the range and maturity of the tooling we have for Java, especially when you go beyond mere IDE support.

Continue reading “The obsession with building a better screwdriver”