I've been using and enjoying Crystal for quite a few years now, one is the big issues for a lot of us is the show compilation speeds, it really becomes a problem on large projects
Oh interesting. That's not something I've even considered. Is the complication parallelized? I may have to clone a large project and see how bad it is.
It’s promising it’s good to see new option emerging from Ruby style, therefore to me the biggest winner and go to would be Elixir coz FP, also the Phoenix framework is awesome.
new.. crystal has been there for years already... shows that this language is not to be trusted, just a hobby project of someone i like, very clean syntax tho, would use it.. if it would actually be decently developed and maintained
@@dreamsofcodeSame reason I'm looking at crystal. Developing with nodejs is a pain for me. It's a memory hog😅. Plus I've got vscode(nodejs😂), nodejs and chrome(nodejs, well v8😂) all running together when I work(my machine is kinda old). We're not even talking backend stuff here. Just frontend dev with vite😂😭. I plan to use crystal to make some personal cli tools rn
Until now I have not discovered the popularity of this language within the ruby developer community, I still see developers using ruby instead of using crystal.
still, a better option than Ruby while I need my command line tools to be protected I can quickly build projects with Crystal and I get my native binary executable ready to use later on I can add some layer of protection on my executable
Yep, agreed! It's certainly interesting but doesn't offer anything unique other than the syntax. It's a shame because I was hopeful for it. I think the nil pointer handling is my favorite, but that exists in other languages as well now a days.
All these new programming langs will never be ready if people ain't writing stuff with them. People have become framework/library users. When python, ruby, java and cpp came out, they didn't have any of the tooling they have today, they had a lot more crap than these modern alternatives. But programmers back then wanted to write code, while "devs" today just want to "get the job done".
So a language is not good enough to use cause their ecosystem is not mature enough or because they lack libraries… and that is mostly contributed to what exactly? Shunning the language? It’s one reason I just don’t get why people say “don’t use this language”. How is it supposed to grow if it lacks the user base to begin with??
I think this matters for a language to be used in production, personally. I wouldn't want to risk the possibility of the language dying, or the difficulty in on-boarding team members into it, especially if the tooling is lacking compared to other languages. That doesn't mean the language should be shunned. As I mentioned in the video, I don't think it's ready for production, just yet.
Yea, they're mostly about targeting ruby users who need more speed. There is c interoperability, meta programming at compile time too😊. And it's fairly easy to port ruby code to crystal. It's majorly funded by Manas company. Total invested into the language by companies is about I think half a mil in total😅. But it's more of an internal tool for them. Besides they announced crystal conf for this month and I did see crystal getting 2 mentions at ruby conf 2022. The dev experience does need some work though but they'll get there.
As someone who has worked daily with python for a few years now i can list some of the major reasons of why i am very interested in replacing it with crystal. I really like union types and using mypy in python we can get sort-of good optional type checking with support for multiple input types. While it works, i would much rather like to have a real compiler that forces me to check all my types before runtime, especially Nil. The other obvious win is performance, where crystal blows python out of the water. I also really like the whole idea of basing a language on LLVM. That means they can outsource most of the really low level optimizing to the c/c++ community where they are really into that stuff. I'm basically looking for languages that allow me or a smaller team to be as productive as possible while sacrificing as little as possible in terms of performance. I find that python is still marginally more readable than crystal but it probably comes down to being used to it. I will probably never need Rust level performance in any of my projects but i also don't want to worry about having to write weird optimizations to python later just because the base language is not fast enough. My intuition tells me that crystal has to potential to become really big in webdev where it seems to outshine everything when looking at the trade-off between developer productivity, code quality and performance. It really is kind of like having (almost) rust level safety and at least Java level of perf while writing Ruby with enforced types.
I remember years ago when crystal came out I was super excited because i was obsessed with Ruby.. just sad to see it hasnt really taken off yet.
Yeahsame here. Ruby has an amazing syntax. Hopefully crystal becomes viable in the near future
Same and now having learned some more languages in the meantime I don't really like Ruby that much anymore either haha
My first language is Ruby, definitely trying Crystal.
I've been using and enjoying Crystal for quite a few years now, one is the big issues for a lot of us is the show compilation speeds, it really becomes a problem on large projects
Oh interesting. That's not something I've even considered. Is the complication parallelized?
I may have to clone a large project and see how bad it is.
It is a little irritating but our app is backed with microservices, so it's not too bad.
0:34 "I'm using arch btw" lmao, I know it's a joke but it always still gets me
Despite within such short amount of time, the total content you are creating and providing to us is really genuine and must be appreciated.
Thank you so much. That's really nice feedback to hear and I appreciate it a lot. I love creating the content and improving with each video!
I like your videos, they're really informative!
Thank you! I'm glad you like them
It’s promising it’s good to see new option emerging from Ruby style, therefore to me the biggest winner and go to would be Elixir coz FP, also the Phoenix framework is awesome.
I do love Elixir a lot, except for the memory usage of the Erlang VM.
Other than that, it's such a wonderful language to use.
@@dreamsofcode Totally agree with you ! would be interesting to see the memory usage of the same app in rails & Pheonix 🤔
new.. crystal has been there for years already... shows that this language is not to be trusted, just a hobby project of someone
i like, very clean syntax tho, would use it.. if it would actually be decently developed and maintained
@@Microphunktv-jb3kj Ruby was released in 1995. It took 10 years for it to gain significant popularity and adoption by major companies.
@@dreamsofcodeSame reason I'm looking at crystal. Developing with nodejs is a pain for me. It's a memory hog😅. Plus I've got vscode(nodejs😂), nodejs and chrome(nodejs, well v8😂) all running together when I work(my machine is kinda old). We're not even talking backend stuff here. Just frontend dev with vite😂😭. I plan to use crystal to make some personal cli tools rn
As always a good video!
Aww thanks! I'm glad you enjoyed it. I always get spooked when publishing a new video so I appreciate the feedback!
which theme are you using in neovim?
Definitely gonna be more relevant in the future
Until now I have not discovered the popularity of this language within the ruby developer community, I still see developers using ruby instead of using crystal.
still, a better option than Ruby while I need my command line tools to be protected I can quickly build projects with Crystal and I get my native binary executable ready to use later on I can add some layer of protection on my executable
I agree. There's some benefit to using it especially for cli tools. I just don't think it's ready for microservices at this stage.
I always wished ruby was easier to compile but I get that's a whole new thing that makes gems less portable
Can you make a video about Elixir? it's also a pretty good language that has a syntax similar to ruby
I can! I'm a big fan of Elixir and will probably do a video soon :)
@@dreamsofcode I appreciate it! I am very big fan of Elixir too! Elixir's simple FP focusing in concurrency design is perfect for me!
"I'm using arch... btw"
Seems like this is to ruby what typescript is to JavaScript
That's a great way of putting it
If typescript made JS run as fast as C, maybe
Sure... those are great features (But not new)...I thing it just better version of Ruby ?
Yep, agreed! It's certainly interesting but doesn't offer anything unique other than the syntax. It's a shame because I was hopeful for it. I think the nil pointer handling is my favorite, but that exists in other languages as well now a days.
I use arch btw too
I salute you.
All these new programming langs will never be ready if people ain't writing stuff with them. People have become framework/library users. When python, ruby, java and cpp came out, they didn't have any of the tooling they have today, they had a lot more crap than these modern alternatives. But programmers back then wanted to write code, while "devs" today just want to "get the job done".
So a language is not good enough to use cause their ecosystem is not mature enough or because they lack libraries… and that is mostly contributed to what exactly? Shunning the language?
It’s one reason I just don’t get why people say “don’t use this language”. How is it supposed to grow if it lacks the user base to begin with??
I think this matters for a language to be used in production, personally. I wouldn't want to risk the possibility of the language dying, or the difficulty in on-boarding team members into it, especially if the tooling is lacking compared to other languages.
That doesn't mean the language should be shunned. As I mentioned in the video, I don't think it's ready for production, just yet.
Yea, they're mostly about targeting ruby users who need more speed. There is c interoperability, meta programming at compile time too😊. And it's fairly easy to port ruby code to crystal. It's majorly funded by Manas company. Total invested into the language by companies is about I think half a mil in total😅. But it's more of an internal tool for them. Besides they announced crystal conf for this month and I did see crystal getting 2 mentions at ruby conf 2022. The dev experience does need some work though but they'll get there.
I like the language but as you mentioned, imma use it for personal projects for now. Not doing anything prod yet anyways.
Compilation time is sloooooooooooow
I don’t think OOP is a good selling point lol
Haha. Yeah, it's def something we've moved away from. Was the first bit of OOP I've done in a while!
Why?
Ya why?
@@frenchmarty7446 cuz it’s cool to shit on OOP
When every big corporation in this shitty planet work with OOP
cause functional is the trend these days
So why not just keep using Python then ?
Python is great, but it is really slow still. Pypy definitely helps to speed it up.
As someone who has worked daily with python for a few years now i can list some of the major reasons of why i am very interested in replacing it with crystal. I really like union types and using mypy in python we can get sort-of good optional type checking with support for multiple input types. While it works, i would much rather like to have a real compiler that forces me to check all my types before runtime, especially Nil. The other obvious win is performance, where crystal blows python out of the water. I also really like the whole idea of basing a language on LLVM. That means they can outsource most of the really low level optimizing to the c/c++ community where they are really into that stuff.
I'm basically looking for languages that allow me or a smaller team to be as productive as possible while sacrificing as little as possible in terms of performance. I find that python is still marginally more readable than crystal but it probably comes down to being used to it. I will probably never need Rust level performance in any of my projects but i also don't want to worry about having to write weird optimizations to python later just because the base language is not fast enough. My intuition tells me that crystal has to potential to become really big in webdev where it seems to outshine everything when looking at the trade-off between developer productivity, code quality and performance. It really is kind of like having (almost) rust level safety and at least Java level of perf while writing Ruby with enforced types.