this post was submitted on 13 Nov 2023
93 points (91.9% liked)

Programming

17432 readers
251 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] iceywhatyoumean@lemmynsfw.com 5 points 1 year ago (3 children)

Ruby. It’s designed for developer happiness, and it’s beautiful. Not as beautiful as it once was, but still lovely to code in.

[–] Fal@yiffit.net 4 points 1 year ago (2 children)

I just can't comprehend how anyone can think ruby is enjoyable to work in or beautiful. To me it's a dumpster fire. I would almost rather write php.

[–] iceywhatyoumean@lemmynsfw.com 3 points 1 year ago

I can’t imagine thinking the opposite either. People are different. Matz’s attempts at backwards compatibility in Ruby 3, particularly wrt typing haven’t been kind to its more elegant origins, but ‘dumpster fire’ is baffling to me. Some people do like php , though, so 🤷🏻‍♂️

[–] zagaberoo@beehaw.org 2 points 1 year ago

Ruby's === operator actually serves a useful purpose at least.

[–] Pyroglyph@lemmy.world 3 points 1 year ago (1 children)

Crystal is very similar to Ruby, but is compiled to native code instead. Would you consider that? Why or why not?

[–] iceywhatyoumean@lemmynsfw.com 2 points 1 year ago

Yeah, I’ve tried out Crystal. I like it, I think it’s got a lot of potential. I like the improved performance, and the concurrency model. The community and ecosystem isn’t as strong, though. If I had to pick one right more, it would still be Ruby! I love Elixir too, for different reasons. It’s a completely different language, but with a similar style.
I had a look at Mirah back in the day. It’s like Ruby, with stronger, more static typing, that is designed-in better than Ruby’s bolted on typing additions.

[–] amju_wolf@pawb.social 2 points 1 year ago* (last edited 1 year ago) (1 children)

Ruby seems like a clusterfuck for anyone who doesn't work on a project alone, change my mind.

[–] zagaberoo@beehaw.org 2 points 1 year ago (1 children)

Ruby gives you all kinds of tools to make clusterfucks, but it's not hard to keep your hands out of the metaprogramming cookie jar.

But with careful application even fucky features can be put to good use. Like monkey-patching a problematic method to only throw an exception rather than allow accidental misuse. With a nice verbose error message and good testing practices there's almost no risk.

[–] amju_wolf@pawb.social 1 points 1 year ago (1 children)

Oh I didn't even mean that; just the (possible, shorthand/unreadable) syntax alone, weird typing, etc. seem like it'd be hard to work with.

It's also funny because "allowing clusterfucks" is a huge reason why PHP was so hated; when you took care to write it properly it wasn't bad even in the early days.

[–] zagaberoo@beehaw.org 1 points 1 year ago* (last edited 1 year ago)

The thing with Ruby clusterfucks is you have to go looking for them. Languages with implicit type coercion and loose comparison like PHP and JS have clusterfucks lying in wait for you and it takes concerted effort to avoid them.

What do you mean regarding weird typing?