I miss Ruby on Rails

I shipped my first Ruby On Rails app—an ecommerce website—in 2007. I had been writing PHP apps for a few years and working with Rails was a revelation. In fact, I was half finished writing that ecommerce site using PHP when I discovered Rails. I was so sure about Rails that I convinced the CEO to let me trash the PHP version and start over in Rails. It was worth it.

A few years later I drifted from writing code into more of a project management role. Of course I still work with developers every day, and have watched them chase newer, “better” technologies for years. They seem to have collectively decided that a full-on JavaScript stack (Node/React/Vue/Nuxt/etc) is where we should be. Is it though?

I’ve been itching to write some code lately and found my chance in a Rails app we’d been working on for years. I wanted a small change to the way something worked in the app, so I cracked my knuckles, ran docker-compose and friends, made the changes, submitted a PR and Bam! my work was in production. Rails worked much the same as it did when I was using it regularly. That was comforting, given the rapid change and deprecation I see everywhere else.

It felt really good. It also made me think about Rails again. It made me think about monoliths vs microservices. I wondered why I became infatuated with microservices along with everyone else a few years back. I think that maybe it’s because splitting apps into a bunch of services provides us the opportunity to play with something new without needing to toss the entire system. As fun as this can be, it probably isn’t the best approach for most teams.

I guess what I’m learning is that I kind of miss Rails. I lament that we were, collectively, so eager to find something new that we forgot how easy and productive it is to build stuff in Rails. I read about the HEY Emal app stack and was reminded how refreshing it would be to work with a stable, (relatively) simple stack like that.

Yes, I know there are a shitload of Rails apps still out there, and more being built all the time, but if you follow current development events, the mindshare has moved on. I wonder if it was a mistake.

This is just me wondering what I should do about my recent urge to build something. I could, as I mentioned recently, go with something crazy like Clojure. Or, I could do what everyone else is doing and dive into JavaScript. Or… I could put on my old, comfortable Ruby on Rails T-shirt and perhaps actually get something done.