An essential part of a technology strategy is defining the principles behind new technologies and languages adoption.
In particular, programming languages selection is foundational to any strategy and could make-or-break any business endevour.
I see two different axes: language adoption and competitive advantage.
Adoption is the combination of:
- market traction
- quality of the community
- software/library ecosystem
These three components are critical when the company hits hyper-growth and economies of scale matter. At that stage, scaling the Technology organisation is strategically essential, and your technology will drive your hiring and sustainability of the product portfolio. A low adoption language means a smaller pool of talents to hire from; most of your new hires will have to learn the language, with a longer time to contribution. The ecosystem quality is undoubtedly connected to market adoption but not as much as believed. Smaller communities can be incredibly prolific and create just the right OSS libraries and tooling, making the all ecosystem thrive. An example is emerging languages: they still have a small footprint, but the early adopters are engaged, and the ecosystem moves at a blazing pace. These languages will achieve market adoption in a short amount of time while still being in their full innovation cycle.
Programming languages are not just commodities; they are a powerful lever to disrupt markets, either by accelerating your time to market or making complex problems more manageable. This dimension is crucial when exploring a novel problem space or moving towards full Product Market Fit.
In particular, startups have to strike the perfect balance: choose a technology that helps disrupt a market and have a long-term perspective on the future scaling needs. To identify such a Goldilocks fit, look for industry-level technology trends and determine which additional levers could help scale later. For example, a boot camp style training program could be put in place for anyone joining to accelerate learning. Engaging with the community and organising meetups could also increase adoption, opening up your talent pool.
The right set of programming languages could make the company fly. The company strategic goals will prompt which of the two axes will drive the choice. Put your strategic hat on and help the organisation change gear.