Why are people so obsessed with outright speed on basic examples? I am sure that this language produces a fast hello world Web throughput, but for a backend cms, is this even relative?
As the article states, backend servers have to perform api calls, database queries etc, using a alpha language with minimal libraries will make this task a lot longer, sure if you just have to deal with json api and basic sql queries, it’s all hunky dory, but then you get a legacy api you need to connect to, possibly using something that’s no longer sexy (edi/soap etc) you start to run into problems and you need advanced data structures for complex sql queries . (I haven’t checked use cases for Crystal, but this is the case for most alpha languages). Using something like golang /python on the backend in my opinion just allows the job to get done, and unless your serving literally 5k plus requests per second, is the speed even a valid metric?
Most projects eventually end up doing something interesting in the application logic (in the “slow” language)? I’ve replaced ruby and python code, which was never really “too slow”, but eventually started to feel a bit sluggish with larger loads, with luajit and go and its way faster. It’s not clear there was a hot spot. Just a diffusion of overhead.
You start out processing a request in 10ms. Inevitably that creeps up to 100ms. Or you can choose to start at 1ms and creep up to 10ms.
Possibly because your basic examples should be fast. If they aren’t, that raises questions. If Hello World is too slow, you might end up CPU bound. Also, faster languages, in this age of the cloud, are also often cheaper.
Im guessing the guys from duo missed this: