3 ms·
I've been thinking about learning Crystal recently and using it for a personal project. However, now that I have lots of experience with Node.js, Golang and oth
by dimgl 5y ago
I've been thinking about learning Crystal recently and using it for a personal project. However, now that I have lots of experience with Node.js, Golang and others, I'm torn between the "use what's mature" and "learn a new language" decision. Sure, I'm using Crystal now to learn a new language, but what if this becomes a serious project? Anyhow, I agree with this blog post somewhat but it's always good to expand your repertoire of tools.
- jraph 5y agoThere are well established projects using Crystal. At least I've heard of one: Invidious [1], an alternative frontend for YouTube. If your project becomes serious it might as well work for you too! (I don't know anything about Crystal) [1] https://github.com/iv-org/invidious https://github.com/iv-org/invidious
- dimgl 5y agoHey! Thanks for this! I've always loved the Ruby syntax so I'm excited to see what Crystal has to offer. Thanks for sending this over!
- brabel 5y agoWhy not learn a stable technology instead? For example, instead of Crystal, you could try something like Common Lisp or Haskell, both of which are really, really stable. I would even put Rust into the "stable" category... they value backwards compatibility very highly, while allowing breaking changes to happen in newer "editions" of the language (without breaking code written for previous "editions"). Stable does not necessarily mean old.
- dimgl 5y agoI'm not really interested in Lisp or Haskell. I don't feel like I'll be all that productive with them and there is little to no chance I'll use them professionally. If anything I'd be interested in Rust, but it's a bit too low-level for most of the things that I need.
- mattarm 5y agoI code in a new/unfamiliar language if I want to learn something new about the "art" or "science" of programming and have fun doing it. I code in an established language if I want to I'm more interesting in solving a specific technical problem. As for "what if this becomes a serious project?" question, remember that a rewrite always goes faster than the original.
- simpsond 5y agoIf it becomes serious, and crystal becomes a problem, then you can always port it. What are the odds of both those things happening? Give it a shot.