Choosing a Language

Choosing a Language #

When deciding what programming language to use, there are several important factors:

The ergonomics of the language itself. This includes things like the type system, immutability/functional programming support, OOP support, etc. Mostly, these features contribute to how pleasant it is to develop in the language, which leads to productivity gains and potentially ease of debugging.

The library/tooling ecosystem around the language. Some very non-ergonomic languages may still be the right choice because lots of libraries have been written for that language, so the total amount of work to do to accomplish anything is dramatically reduced. One good example of this is GDScript (a less-featureful Python), which is built into the Godot Game Engine. Another example is Javascript, which has tons and tons of libraries.

Productivity? This is really hard to measure, but there have been some attempts.

This is a cool way to directly compare the look and feel of different languages: http://www.rosettacode.org/wiki/Rosetta_Code.

Categories: Software Dev