Hacker News new | ask | show | jobs
by satyanash 1704 days ago
> Python is such a joy to write

Try out Ruby: so many Python syntax decisions make no sense after you see the Ruby way.

5 comments

I began my professional career writing Rails apps (previous experience in software was cobbled together Python and .NET scripts), and 1-2 years later made the full transition to Django and Python, mostly because my mentors and friends at the time were writing projects in Python. Plus, the job market for fullstack Python devs was much more lucrative at the time.

I must say though, I do miss Ruby and the syntactic sugar, packaging/dependency system, etc. The transition itself was also very painless. I’m keen on checking out the current state of Ruby and/or Rails 4-5 years later, as I’m sure much has changed!

The two main frameworks I use(d) have relative equivalents in both languages which is super nice (Flask and Sinatra, Rails and Django). Right now I’m in the FastAPI craze, but perhaps I’ll opt for Rails for my next personal project.

Honestly, I don't think you'll find it feels like much has changed at all - modern Rails is still pretty consistent with Rails 4+, modern Ruby is still pretty consistent with Ruby 2+. Its one of my favorite things about the language and framework combo, it feels like once we got past Ruby 1.9.3 and Rails 3 things have been pretty well locked in.

There are new niceties and improvements, but bundler is still bundler, everything is still an object, etc.

I did, but so many Ruby syntax decisions made no sense to me.
Im convinced the only people that like ruby are those that want to delve into metaprogramming. It might be fun for the person that constructs it but it is a nightmare as an outsider looking into a project.

I know this is more rails but the fact that autoloading is even a thing speaks to the wild nature of ruby.

This might just be me not understanding Ruby well enough, but managing packages and dependecies feel even worse in Ruby.
Conda has become vastly better since I used it a few years ago. Worth a try again
That’s a pretty good idea, also a tool many Python developers already use, making the move between the two languages easier.
how? In ruby you are supposed to use rubygems and bundler for dependencies, and things generally work fine, and it's been like that for a decade or so.

There have been a few version management tools (rvm, rbenv), but those were all "fine" and still are, AFAICT, and you don't strictly need them.

Meanwhile for inexplicable reasons in pythonland we keep reinventing package/version/environment management.

I had a friend who managed to mess up their local env this morning to the point of screwing up their OS install, and it reminded me of the XKCD on python env[0].

It's at least 3 years old, and things have not improved.

[0]https://xkcd.com/1987/

I used to love Ruby. But it’s too exciting. Python is boring, in a good way. Like mowing the lawn. Or buying potatoes. I no longer want excitement in the process, only in the results.