One of the best things any programmer can do is focus on a new language every year. This concept is best highlighted in the book: Pragmatic Programmer. The idea of investing regularly in a trade is something that any aspiring master 'crafts-human' works towards.[1]
Over the past 12 years, I have taken this idea farely seriously and attempted to learn something new each year. Whether it be figuring out type systems in Haskell or ReasonML, or building weird UI's in Opal.
It doesn't matter how complex of a system that's built in the language, the mere fact that a programmer stretches their brain will do wonders for their day-to-day work. So... It's June (nearly June) of 2020 so what language is on the docket for this year?
Truth be told, there isn't one. This will be the first time since 2007 a 'concept' is actively in development, not a language.
The whole wide world of Devops has exploded in the past year. Bringing real programming languages (if you consider JS a programming language) to the world of declarative templating. Cloudformation, Terraform, Ansible, Chef were all interesting ways to symbolize infrastructure as code. However, many of these products have a fairly terrible testing story, along with no great way (my opinion) to programatically build infrastructure.
The world of AWS' CDK and Pelumi, coupled with the concept of GitOps has brought a compelling idea to representing the new frontier of infrastructure. With that, Due to these products hinging on JavaScript (ie not JSON), TDD based Infrastructure and 'GitOps' could be a real thing. Welcome to my 2020 programming language.
Oh yeah, most of the actual programming will be in Typescript (2017's language of the year) and JavaScript (refreshed in 2007 then again in 2011).
Grady Booch said that midiocre programmers will continue to be midiocre programmers. Prove a genius incorrect by learning a new programming language every year. ↩︎