profile

Fullstack Ruby

The Enduring Appeal of Ruby

Published almost 2 years ago • 2 min read

Hey everybody! Sorry for the long wait since the last newsletter went out. I expected to have a bunch of content to roll out in late May, and then…well, the rug just got pulled out from under me.

But here I am. 😅 I did publish a new article on Fullstack Ruy recently, entitled What Would It Take for Roda to Win?

In the article I write:

Roda is a web toolkit—which is basically another way of saying it’s a web framework. But the reason the author of Roda, Jeremy Evans, likes to call it a toolkit is because it’s really the thing you use to construct the thing you need to build a web application. You start with a toolkit, and end up with a framework: the precise framework your application truly requires.
Roda’s stated goals are simplicity, reliability, extensibility, and performance. And those are the very reasons why I have become a Roda stan.

I go on to elaborate some the particulars of what I love about Roda, and then take it a bit further to ruminate on continuing developments in web design on the frontend, what increasingly troubles me about the direction Rails has been headed in, and my efforts as I incrementally work on the Bridgetown + Roda integration to "skate to where the puck is going to be". Hope you enjoy the read!


In other news, there's a constellation of fascinating developments in how software gets built and packaged which I feel could have a profound effect on Ruby. The “enduring appeal of Ruby” as the subject line goes is it's expressiveness, elegance, internal logic, flexibility, and robust ecosystem…however, the ability to experiment with or deploy Ruby on the web quickly and painlessly has sometimes eluded us. Heroku was once born out of a goal to make deploying Rails apps a lot more straightforward, but since we've seen certain other trends in the web industry at large seemingly pass us by. Namely:

(a) Sharable Code Editors "in the Cloud"
(b) WASM (aka WebAssembly)

Thankfully it looks like we're finally seeing a rennaisance on both fronts. With services like GitHub Codespaces and GitPod, you can spin up new or existing Ruby applications in mere minutes or even seconds and edit them in real-time—without needing any local dev tools installed including Ruby. Heck, I've worked on Bridgetown projects on my iPad, and increasingly choose to do so! Why is this so important? Because one of the common criticisms of Ruby over the years has been that's it's hard to for newbies get started with. With a cloud-based IDE, that's no longer the case: you get immediate, push-button access to Ruby and all related app dependencies. No more excuses! Now anyone can learn Ruby! 😆

And then there's WebAssembly, which promises a whole new era of porting code spanning a variety of languages and ecosystems to a website near you. No longer will our frontends be constrained merely to what JavaScript affords us. In case you missed the news, Ruby compilation via WASM is now an official part of the core of the language as of Ruby 3.2 (currently in beta), and that means Ruby—real Ruby, not any sort of imitation—can now run natively in the browser*.

* As always, caveats abound with these sorts of leaps forward…namely that the Ruby runtime and compiled app code can measure in the MBs which is very poor for production-grade performance on most web projects, and just because you can get Ruby running doesn't automatically mean all your gems and other server-context tooling will suddenly work in the browser. But the work being done on this stuff right now should end up paying real dividends down the road. Maybe honest-to-goodness frontend Ruby doesn't entirely make sense in 2022. But in 2025? 2027? There is zero doubt in my mind.

I'll be covering these topics and a whole lot more on Frontend Ruby in the coming months. Let me know if you have any thoughts or questions, and I'll make sure to tackle them in a future issue of the Fullstack Ruby newsletter!

Cheers,
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