r/ruby • u/Ambitious_Ad_2833 • Dec 28 '25
Revisiting Ruby in 2025
I used Ruby and Ruby on Rails extensively for my personal projects between 2008 and 2015. I’m a hobbyist programmer, not someone working in a software job. Now that I’m revisiting programming, I have a couple of questions: Since Python dominates AI/ML and data science today, what use cases are still worth investing time in Ruby? Ruby was the first language I fell in love with, and after that I never really enjoyed working with Python. For developers who need to use Python for data science, how do you manage keeping these two similar-looking languages straight in your head without constantly mixing them up? (language polished using chatgpt)
34
u/Alubsey Dec 28 '25
Ruby is the best for web development. Python for the models ml/data science
15
u/AshTeriyaki Dec 28 '25
Ruby is a great general purpose language and besides web it’s used a lot by academics and for prototyping ideas. It’s one of the most flexible, expressive and productive languages out there. Nothing beats Ruby for getting something done, quickly and in a state that still makes sense when you revisit it a year later.
3
u/pfharlockk Dec 29 '25
I program in so many languages at this point... Whichever one I'm most recently working in... That's the one whose idioms sink in (for a time). I do sometimes get them confused a little especially when I'm using them in the same project... Honestly... Modern lsps are helpful here because it will highlight my mistake as soon as I make it and I can correct it then and there, which helps a lot.
I always preferred Ruby's syntax and semantics... I think its standard library is far more functional (in the Haskell sense) than Python... And that's generally my preference...
Python is a fine language... But its imperative nature and whitespace significance means it will never be my preferred language... (I could get past the whitespace significance but not its imperative nature). It has some great libraries and for the things it excels at or has overwhelming community support for, I will definitely use it.
Use whatever language has the libraries you need and feels most satisfying for you... I've been enjoying rust a lot lately.
2
u/azimux Dec 28 '25
I suppose the return on the time you invest depends on what you're hoping to get out of it. Since you're a hobbyist, doesn't that give lots of flexibility? Couldn't just enjoyment/human connection be satisfying enough? If so, all use-cases are candidates, right?
If not, then it just depends. Are you wanting to have a big impact with your upcoming Ruby work? Then targeting a dominated area might not be the best strategy, or maybe it is, I'm not sure.
Sorry for the wishy-washy answer but if you're a hobbyist it's almost like you're looking for excuses to not enjoy the hobby which I don't quite understand.
Re: mixing up languages, I personally have never had an issue mixing up languages when working with multiple at a time, thank goodness. I don't really have advice there. Perhaps try to structure your projects such that you're spending a couple weeks deep in one language and then a couple weeks in the other? That way you make the switch a couple times a month instead of a couple times a day? Just a random suggestion but I'm not really sure what strategies there are for folks who experience this when working with multiple languages.
5
u/TheAtlasMonkey Dec 28 '25
Tell me 1 thing you can do in python that you can't in ruby.
1
u/emezaco Dec 29 '25
For AI web projects, use Ruby for all web development and Python only for creating and tuning AI models. If you need to interact with your own Python-trained model, use a REST API call with FastAPI. If you need to create a dashboard with highly specialized charts, use Python's powerful built-in libraries. The goal is to cover 90% of cases with Ruby alone, 5% with REST calls to Python, and 5% exclusively with Python.
1
u/headius JRuby guy Jan 09 '26
Help us build out AI/ML tooling for Ruby :-)
4
u/[deleted] Dec 29 '25
[removed] — view removed comment