profile

Fullstack Ruby

Optimized for programmer happiness…huh?

Published almost 2 years ago • 2 min read

Hello Ruby friends!

There's a bit of a brouhaha going on on Twitter right now (er, when is there ever not?!) regarding Ruby and how we address criticism and engage with critiques of the language and the ecosystem. After all, as the saying goes, Ruby is "optimized for programmer happiness" — which must mean that if somebody's not happy with Ruby, we've failed. Right? Right??!

Well, I just recorded a podcast episode all about this. (Naturally.) 🤓

I would say more, but really…just go listen to the episode. What I will say here though, simply to stave off any misconstruction of my outlook, is that it's perfectly fine not to like Ruby. I would never say everyone "should" like Ruby, or that if you don't there must be something wrong with you. The opposite in fact: I don't at all expect everyone will like Ruby. Some people simply won't. That's fine! That's why I'm so bullish on a polyglot programming industry. That's why I push even web developers not to seek consolidation around any one programming language (er, that is, JavaScript…or TypeScript!). May a hundred flowers bloom.

What I do push back on is criticism of Ruby which, when analyzed, reveals more about the implicit biases of the people doing the criticizing than structural issues within the Ruby ecosystem itself. Someone will throw out a comment like "Oh, people seem to write unsafe code in Ruby and get all kinds of errors all the time!" Hmm. So you click over to their profile and find out they're a Rust language stan. 😆

Well, of course! If you love programming in Rust, you must really care about language safety and avoiding errors at all costs. Because that's the "Rust way". That's something people who program in Rust are obsessed with. The whole language is designed around the concept of safety. Right on the Rust homepage, they say: "A language empowering everyone to build reliable and efficient software."

As a Rubyist, I can tell you right now building "reliable" and "efficient" software is actually not my top priority as a programmer. Shocker! Let's now go over to the Ruby home page and see what it's top selling points are:

"A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write."

Simplicity. Productivity. Elegant syntax. Natural to read. Easy to write.

Guess what folks? Those are the priorities I care about as a programmer. I will sacrifice a little bit of efficiency—and yes, I will sacrifice even a little bit of reliability if need be (😱)—in order to maximize Simplicity. Productivity. An elegant syntax. And so on and so forth.

So is Ruby optimized for the Rust programmer's happiness? Nope. Not at all. But is it optimized for my happiness? Oh yes. Yes indeed.

And perhaps it's optimized for your happiness as well. After all, you are subscribed to the Fullstack Ruby newsletter. 😉

🎙 Now go listen to the podcast episode and let me know what you think!

'Till next time,

Jared

Fullstack Ruby

The hip place to be for a groovy take on developing web apps using this plucky language.

Join 400 of your fellow Rubyists and receive fresh updates from our podcast & blog:

Read more from Fullstack Ruby

Hello Ruby friends! OK, so it's been a minute. 😅 Fullstack Ruby was on hiatus last year, and I delve into the some of the reasons why in my new blog post as well as another post on the Bridgetown website. (post link) But the TL;DR is I've found a way to thread the needle back to feeling pumped about working in Ruby and on Ruby-themed projects again—most specially around the Bridgetown ecosystem as well as Roda, Sequel, and Rodauth which are increasingly playing a role in my business to enable...

about 1 month ago • 1 min read

Hello Ruby friends! ✌🏼 I hope you had a lovely St. Patrick's Day ☘️ weekend…certainly much fun was had here in Portland, Oregon with plenty of bagpipes and beer to go around. But that's not why you're subscribed to this newsletter. So let's talk about Ruby! Signalize, a Ruby Port of Preact Signals I'm excited to announce a new gem called Signalize. It's a direct port of the JavaScript package called Signals, brought to us by the fine folks at Preact. As it says on the tin, Signalize provides...

about 1 year ago • 3 min read

Greetings fellow Rubyists & happy Friday! I've got a couple of exciting bits of news for you. Bridgetown, the Ruby-powered site generator & fullstack framework of which I am lead maintainer, just celebrated its v1.2 release. Some of the new features include a new plugin configuration format, slotted content for templates and components, easier access to front matter and site-wide data, and bunch of quality-of-life improvements to i18n, helpers, SSR, and more. But if you aren't already a user...

over 1 year ago • 1 min read
Share this post