Ever since the popular Rails framework for the Ruby programming language, creating backend web services seemed like a domain for dynamically typed languages. This trend was only reinforced by the rise of Python and JavaScript as primary languages for these tasks. After all, the nature of these technologies made creating these services especially fast and changes to services (for example, a new field in the JSON response) are simple to do. Returning to static types for web services feels strange for many of us; after all, it takes a lot longer to get something going.
However, there is a cost to these: many services are deployed in the cloud nowadays, which means that a pay-as-you-go model is employed together with (practically) infinite scalability. Since—most notably—Python is not known for its execution speed, we can now see the cost...