Live data from Hacker News

DHH answers: What makes Rails a framework worth learning in 2017?

quora.com

51–60 of 135 posts

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#51
post #16

> formalizing conventions, eliminating valueless choices, and offering a full-stack framework that provides great defaults for anyone who wants to create a complete application Maybe I've drank the kool-aid too much, but I agree with this whole-heartedly. It reminds me of when I want to paint a room. I can go to Home Depot and spend an hour picking out all the tools I need, or I can buy one of those pre-packed toolki…

In the last few months I've built a brand new Node + Express application, and I've built a brand new Rails 5.x one. ES6 has taken the edge off of some of the more obnoxious parts of JavaScript, but it still has a long way to go to catch up to Ruby, and Express is a cheap imitation of Rails. It takes me over a day to get an Express application up and running. There's dozens of dependencies to wrangle into place. There…

Rails is omakase. Node is a grocery and a kitchen supply store. Approaching either as if it's the other is a sure recipe for regret.

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#52

This reinforces what I see a lot too - people creating yet another XYZ, but rarely I see someone go and create an integrated solution to streamline development processes or make things easier or clearer. There are a lot of vocal people who make it seem like you should be doing everything in Go or Angular or what have you, but I want nothing to do with either, and do not have problems that those are meant to solve. I…

> There are a lot of vocal people who make it seem like you should be doing everything in Go or Angular or what have you

It might be hard to believe now, but Rails also went through this stage of vocal supporters advocating for it over alternatives. If you go back and watch the introduction video [1], you have DHH creating a blog in 15 minutes using RoR. I remember being impressed by it and vocally pushing for it where I worked then. :)

[1]: https://www.youtube.com/watch?v=Gzj723LkRJY

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#53
post #44

This reinforces what I see a lot too - people creating yet another XYZ, but rarely I see someone go and create an integrated solution to streamline development processes or make things easier or clearer. There are a lot of vocal people who make it seem like you should be doing everything in Go or Angular or what have you, but I want nothing to do with either, and do not have problems that those are meant to solve. I…

I am a rails dev. I inherited a legacy application. The biggest problem with Ruby/Rails is that anything Ruby will allow, someone will do. Ruby is the language I learned data structures and algorithms in, built my first significant projects in. It has a generous wealth of helpful builtins. But it makes me long for strictness, static typing, a language where not just anything can completely modify any other.

This. Often, you can't find where this variable or function comes from. You read the sources only to discover that there is no trace of this variable and it is probably defined dynamically in some callback. You can only find this kind of stuff with the help of debugger. The dynamism, which allows one to create beautiful interfaces, and is often advertised as a programmer's friend, is actually the enemy of the programmer who is going to read the code afterwards.

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#54

I have been thinking of rails lately. I used both Rails and Merb way back when, but for many years now I have just used Ruby + Sinatra. I wish that I had a more complex web app to do because it would be fun to get reacquainted with Rails. That probably won't happen since I have been going it the opposite direction, having updated a few Sinatra and PHP sites to be 100% static, and using cloud storage and CDNs.

If you are familiar with Sinatra, have you checked our Padrino [0] ?? Padrino gives you a lot of the Rails goodies without too much bulk added.

I've developed and deployed several 'real world' web apps in Padrino now. I looked at Rails in the early days, but for some reason could never really get to grips with it (probably because it was too opinionated for me). Sinatra/Padrino's DSL methodology seemed to sit better with me, and I ran with it.

[0] - http://www.padrinorb.com

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#55

I admire the way DHH writes .. confident and persuasive. However, I'd just like to point out that in the same span of time JavaEE has undergone significant simplification (omakase API standards, anyone ;)) and if you check out the work of Adam Bien, you'll quickly find old myths of bloated memory consumption and fiddly XML configuration debunked. Java is also lucky to have a parallel full-featured stack in the Spring…

Can you point to some specifics by Adam Bien? I'm very curious but don't know where to begin.

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#56

Each user today commands a personal fleet of many devices. "You get to use Ruby" is a weak justification for a monolithic architecture.

Sorry, but I've really got no idea what you're saying here. What's the connection between users having many devices and the monolithic architecture bit?

There was a moment in web development where a single "full-stack framework" was possible, that moment has passed, and that moment was more rare and unique than it seemed at the time. The future seems to be more about lambda functions[1], api gateways, and many native clients.

Quoting DHH, the Rails pitch was use Ruby for everything:

> The core premise of Rails remains in many ways as controversial today as it was when it premiered. That by formalizing conventions, eliminating valueless choices, and offering a full-stack framework that provides great defaults for anyone who wants to create a complete application, we can make dramatic strides of productivity.

That premise is irrelevant today. A complete application today isn't just a website. It's a website, a phone app, a car app, a TV, a kiosk, a conversational bot, etc. Choosing even the highest common denominator across all those platforms means eliminating unique opportunities to delight the user.

If now the premise of Rails is that it's a great way to generate JSON on the server, sure but that's a fraction of the stack. The selling point for Rails is now simply an aesthetic choice between Javascript and Ruby. DHH admits as much with his closing argument:

> Just look at some code. I dare you not to fall in love.

Since the core premise of Rails remains full-stack, plugins at best are a cycle behind innovation. Conventions have to be explored elsewhere before they can be formalized, and before choices can be exposed as valueless. At worse, plugins are multiple cycles behind innovation due to pointless infighting.

This just seems way too slow, I'd rather get my hands dirty today.

[1] or process containers, let's not get bogged down in vendor details.

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#57

This reinforces what I see a lot too - people creating yet another XYZ, but rarely I see someone go and create an integrated solution to streamline development processes or make things easier or clearer. There are a lot of vocal people who make it seem like you should be doing everything in Go or Angular or what have you, but I want nothing to do with either, and do not have problems that those are meant to solve. I…

I mean it sounds rational until you realize that modern rails apps are a perfect example of the complexity you want to avoid.

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#58
post #30

Earlier quoted context omitted.

> There are a lot of vocal people who make it seem like you should be doing everything in Go or Angular or what have you Can you give examples of the 'lot of vocal people' saying 'you should be doing everything in Go or Angular'? I don't see this. I only hear this kind of black/white sentiment when filtered via junior devs. Experienced devs I know get there are trade-offs. And I don't see anyone on the React/Angular/…

At least once a week I read comments or a submission about how X should be written in Rust. That's a pretty common occurrence here; if you stay long enough it'll be another language.

Do you have any examples?

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#59
post #19

Each user today commands a personal fleet of many devices. "You get to use Ruby" is a weak justification for a monolithic architecture.

He considers the monolithic architecture to be an advantage: https://m.signalvnoise.com/the-majestic-monolith-29166d02222...

Agree with your comment, but am not sure there is a more potent monolith than AWS or GCP.

Re: DHH answers: What makes Rails a framework worth learning in 2017?

#60

Maybe Rails has changed from when I last used it five years ago, but I dealt with many of the issues DHH makes against other technology. > That people spent hours, if not days, just setting up the skeletons. The basic build configurations. I spent hours everyday getting the asset pipeline to work, or it would break again, meaning I would have to fix it again. > The vast majority of activity today is for yet another o…

> I spent hours everyday getting the asset pipeline to work, or it would break again, meaning I would have to fix it again. I used to have this problem too -- more so in the early days of asset pipeline. Mostly when trying to use some client side framework. Rails is working on (or maybe already available, I'm not sure) yarn/webpack support. > Every week the developers want to switch out some module for another module…

Until a new point release comes out and everyone forgets about the one you're running. Then you get to find out how much of your code you'll need to rewrite so it'll run with the Rails chefs' wild new menu. And there's no point even trying with an app written for an earlier major version. Just give up now, because the whole ocean's been boiled and recondensed since then, and now occupies but few of the basins it once did.

Granted, it's been a couple years since I dealt with any Rails apps. That's in large part by design, because every Rails app has a relatively high curation cost just to keep it up to date with the latest and greatest, and you have to do that if you want to be able to add features or usefully maintain anything without undue agony, because the Rails community has the collective memory of a goldfish and even less interest in maintaining continuity with the past.

I get that that's the big selling point, the drum DHH and his fans never stop beating: "Rails is omakase." This is a fundamentally broken metaphor, because sushi is dead by the time it gets to you, and all you have to do with it is eat it; the history of the ingredients is of little consequence. Would that software were so simple.

Post reply on HN