Live data from Hacker News

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

quora.com

101–110 of 135 posts

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

#101
post #96
post #93

Maybe a more relevant question is whether Rails is worth learning if you're looking for a job. Searching Indeed.com's API by title, which removes duplicates, there are currently 133 Rails jobs in the USA compared with 763 PHP (excl. WP, Drupal etc.) and 467 Node.js. In the UK there are 104 Rails jobs compared with 1013 PHP (excl. WP, Drupal etc.) and 230 Node.js. However, if you deleve deeper it turns out that half o…

I don't think indeed.com is representative of the market, many rails jobs aren't even online. Besides, if for 133 rails jobs and 763 PHP jobs there are 60 and 1500 rails and PHP candidates (respectively,) you're clearly better off choosing rails.

That's not very scientific until you can establish that Rails jobs are more likely to be posted offline than PHP jobs. I don't see any evidence for this.

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

#102

Earlier quoted context omitted.

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.

Node is like walking into a Home Depot when you want a house. Technically you can build one out of the bits they can provide, but it's a ton of work. The thing is Node could offer the Rails out-of-the-box experience through a package that provided sane defaults. There's nothing preventing people from doing this but cultural resistance.

node has sails (http://sailsjs.com/) which i believe is rails-inspired. haven't used it though.

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

#103
post #93

Maybe a more relevant question is whether Rails is worth learning if you're looking for a job. Searching Indeed.com's API by title, which removes duplicates, there are currently 133 Rails jobs in the USA compared with 763 PHP (excl. WP, Drupal etc.) and 467 Node.js. In the UK there are 104 Rails jobs compared with 1013 PHP (excl. WP, Drupal etc.) and 230 Node.js. However, if you deleve deeper it turns out that half o…

So you are saying that PHP is worth learning in 2017? I think it goes beyond job posting counts.

Have you looked at Laravel recently? With Vue.js integrated into the framework and adopting the best bits of Rails I'd say it's looking in better shape than Rails right now.

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

#104

The only thing I'd really take much issue with is the "provides great defaults" statement made in passing. There are several things that are defaulted more to what I'd call "lowest common denominator" than "great." For example, sessions.

This a great point that gets to the heart of the problem with the premise of a full-stack framework. Defaults end up more "good enough" rather than "great"

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

#105
post #97

Earlier quoted context omitted.

If he really believed that, then the thing todo would be to re-write rails to run on top of node. Then he'd have a runtime that spanned nearly every possible use case and device. Sticking with Ruby betrays that aesthetics are really the core premise of Rails, rather than aspirations of being the one framework to link all run times and in the darkness bind them. Frankly, node needs such a framework.

Why on earth is Node considered the default for concurrency with its shitty single-threaded callback execution model? Anyone switching from Rails for improved concurrency would surely be better advised to choose Elixir?

Was referencing the run-time's viability on devices as small as a Beagle Bone micro controller, a mobile app, up to a backend service, etc.

There's an attractive opportunity for code reuse.

Have a preference for process pools over thread pools so don't mind the execution model. Would not be surprised that some applications are better served by other backends like akka etc. Elixir is on my list to learn.

That does of course play into the position that a great "full stack" framework is a thing of the past.

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

#106

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?

Put another way, it would be absurd to generate Arduino, Hololens, and Android runtimes from any single language framework.

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

#107

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.

> modern rails apps are a perfect example of the complexity you want to avoid

Nope. This is a misnomer that get's passed around a lot, and it's not based on anything factual. It's also dangerous, because people will read that and think "oh, i guess rails is bad". but it's not.

When you leverage the framework and best practices, it's great. There are different styles that can make things more complex, sure - but that's by no means the fault of rails.

People can go overboard at any level of the stack - rails won't stop you from this. Things can get sloppy and not perform efficiently - or become convoluted. again - not the fault of rails.

Sometimes, you need a little magic. Ruby (and rails) makes this possible. But if you rely heavily on magic, it'll bite you in the end.

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

#108
post #53
post #44

Earlier quoted context omitted.

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 program…

that sounds like shitty code - i wouldn't blame ruby or rails for that.

Lots of things are possible - but not everything is a good idea - or is, but could be done in a clearer way.

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

#109

Earlier quoted context omitted.

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 whe…

Your first quotation is something you're seriously misreading, I think. It's not about using Ruby for everything. It's about not spending time on minor decisions that don't affect the outcomes you're pursuing. And that's what that quote says – nothing about Ruby; everything about pruning down the pointless decisions you need to make as a developer.

> 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.

I disagree pretty strongly with that. A complete application can be any one of those things. Sure, if you have a need for all of those at once, then Rails isn't going to be your one and only tool. But it could still well be the tool for your complete web application, and at the same time your API server for (some/all) of the other tools.

> DHH admits as much with his closing argument

No, he says that Ruby's beauty is an additional reason to use it. It's hardly an admission that it's all that differentiates Rails from other options.

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

#110
post #84
post #53

Earlier quoted context omitted.

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 program…

I've actually run into methods defined from names concatenated from multiple strings, i.e. methods you can't even use grep over the whole codebase to find. This has left me with a lingering vague fear ever since.

I've seen worse.

A system that would load chunks of code out of MySQL and eval them in place.

Magic variables with magic meanings... shudder

Post reply on HN