Last week I went to a remote meetup of Paris.rb (fr). Well, it was at 1am in my timezone, but I wanted to check how remote meetups can go and there was some presentation about crystal and about kemal. It was a great moment (video is online if you can understand french), and gave me the push to give crystal a try. It was low on my todo list but it was there, waiting for the proper conditions.
That’s pretty much the main thing that I got out of it. Attending to social activities is providing once again a great push to move forward. It’s not about what you learn (which still can be valuable), it’s not about networking with people (even if it can be priceless), it’s all about the personal alchemy that brings you on your edge and keeps you hungry for more. Well, that’s how it works for me, at least.
So I had a look at Crystal, and played a bit with Kemal, and I’m very happy with the result. I had some attempt to check Elixir too but crystal felt really much closer to ruby. The main difference being the variable typing, the stdlib that includes some modern stuff like websockets or oauth2, and the compile step (which in some case can be a bit taxing). But the speed gain is phenomenal. I suspect it would make some sense, in a scalability strategy, to think about porting ruby code to crystal when perfs become an issue (not sure how it would apply to complex rails app though).
Okay yeah Crystal is still very young. But it’s getting traction, I bet it has a bright future ahead.