5 Comments

I used to program in Perl and moved to Python. Perl like Ruby has lots of syntactic sugar, and while you can do "cooler" things in Perl, I write far better (more readable, more reliable), if a little more verbose code in Python.

Whenever I have inherited some Ruby code to debug, it's got way too much fancy syntax that I don't understand.

Expand full comment
author

Well, obviously I haven’t walked in your boots, but I had some experience with explaining Ruby (both to complete novices, and to less experienced colleagues); and I had some experience with Perl a long ago.

In my experience, compared to Perl (and even many less "fancy" languages), Ruby has _much_ less "accidental"/"fancy" syntax that can’t be just guessed once someone grasps the base ideas of the language. I’d say it is complex, expressive language with relatively small core; so it might be hard to read Ruby without spending some time getting acquinted with its main concepts, but it is not the same as a lot of random syntax that just needs to be mechanically memorized.

Expand full comment

I played with Ruby a little bit years ago and it did seem like a "tidied up" version of Perl, especially regarding object orientation. And while I do find Python less expressive, I did find that I shot myself in the foot a lot less with it when I switched. For the sake of a few lines extra, it's worth it in my opinion.

Perl to me is probably how you describe Ruby, it's fine once you are used to it, even quite logical, but to the uninitiated it seems quite chaotic.

Expand full comment

Thanks for writing, Victor! I'd love to read an extended version on those "things you're not a big fan of", with possibly "...and how I wish they were"

Expand full comment
author

Yeah, I have that on my todo list as a potential topic... Though I am not sure it would be wise to write it.

I have a lot to say on it, yet I can’t see many good consequences. Inside the Ruby community some people would be angry at me, and some would agree with me in the way I wouldn’t be happy to see ("yeah, this is what we always told: Ruby is crap!")

In the broader audience (which I frequently target now), the possible effect would be "one more article that confirms already existing bias about Ruby’s design flaws".

So... While it would be easy and pleasant to write, it probably would be wiser to use some of those thoughts in different contexts than gather all of my grievances together.

Expand full comment