
Ask HN - My manager called Rails passé.  Is he wrong? - binofbread
My manager called Rails passé this morning.  It was in a conversation about upper management trying to get our team to start using a single page architecture and he called it a trend just like rails was a year ago.  I disagree (on both fronts actually), but I&#x27;m have a hard time formulating a good argument.  Can HN help me?
======
GFischer
What kind of company is it? Is it a tech company, services company or other?

That said, I believe he is a bit right in that Rails is no longer the new kid
on the block, but you should read Jeff Atwood's post on Ruby (and maybe steal
some arguments from him!):

[http://www.codinghorror.com/blog/2013/03/why-
ruby.html](http://www.codinghorror.com/blog/2013/03/why-ruby.html)

"Ruby isn't cool any more. Yeah, you heard me. It's not cool to write Ruby
code any more. All the cool people moved on to slinging Scala and Node.js
years ago. Our project isn't cool, it's just a bunch of boring old Ruby code.
Personally, I'm thrilled that Ruby is now mature enough that the community no
longer needs to bother with the pretense of being the coolest kid on the
block. That means the rest of us who just like to Get Shit Done can roll up
our sleeves and focus on the mission of building stuff with our peers rather
than frantically running around trying to suss out the next shiny thing."

~~~
binofbread
We're a decent sized tech company. I have actually read that, but I had
forgotten about it. Thanks for the reply and pointing me back to the article!

------
jdietrich
It's just an irrelevant and unhelpful way to evaluate anything in software.
Rails is no longer the height of fashion, but it's still a superbly productive
way to develop web apps. There are newer options that optimise for different
things and that might be a better choice in some cases, but they all bear the
same foibles of immaturity that Rails had a few years ago. "Boring" is a
complement to software, not a criticism - it implies that the software is
sufficiently mature to just work.

------
subsection1h

      > My manager called Rails passé this morning [...]
      > our team to start using a single page architecture
    

What server-side framework does your manager think should be used with the
client-side framework?

    
    
      > a trend just like rails was a year ago.
    

Rails was a trend a year ago (2012)? Out of curiosity, what was Rails between
2005 and 2011?

~~~
binofbread
He seems to be in the "if it works now, why change it?" camp. So at the moment
that means using Java Server Faces on the front end. I haven't had much
exposure to the server-side, but I'm so not sure there is any good framework
in place as it's closely coupled with the front end logic.

Your second comment is a good one. What I think he meant by "trend" was that
last year Rails was what all the architects and leaders at the company were
pushing for. His argument was that this year it's the same thing except with
single page architecture (Backbonejs in this case).

~~~
GFischer
From an entirely outside experience, I saw at the company I work for a very
bad experience with a project where the team pushed for a single page
application - they got delayed for months because of the technology, the
problem was not single page applications in themselves, but that they
seriously underestimated the learning curve and they were absolute novices
(no-one had prior experience in SPA). And I definitely believe they could have
cut months from the development time by sticking to known tech.

For a company where development is not core, I wouldn't recommend it, but if
the company is a tech company, I would evaluate devoting resources to learning
single page applications and doing some pilot projects, then leveraging the
experience and pushing it into the main projects if applicable :) .

------
palidanx
Well I think you need to articulate the business case. For example:

Using Rails will save us '$x' over time and use 'y' less engineers.

On the flip side, you do have to calculate the ramp up time of learning the
technology.

To make a convincing argument, try to understand the other person's value
system.

------
argumentum
_In matters of style, swim with the current; in matters of principle, stand
like a rock._ \- Thomas Jefferson

It's (intendedly) a simplification, but one that aptly describes how to
respond to a situation like yours.

There is value in both style and principle, but there's a _distinction_
between the type of value each provides. As a member of Society, Style has
obvious social value.

Programming is a society as any other. The social value of following trends
(swimming with the current) is that often many of the most creative &
adventurous of us are early adopters of trend. Being the best people is so
important, that it's often worth taking a leap based on that.

Usually genuine programming trends starts with a small group of bright hackers
imagining a different future. They've probably got at least a couple inspiring
ideas and it's worth taking a risk that these are _the right ideas_.

Every good hacker (or scientist, engineer, founder, writer, artist, thinker)
has first principles. Whether they've explored their own intellect as much as
say Paul Graham, unlikely, but if your moorless at sea, your simply at the
mercy of every current that comes along. You simply wouldn't get anywhere.

To wrap up this wordy spiel, here's an summary:

> Use the current (Style) to arrive at your rock (Principle)

~~~
binofbread
Well said, thanks for the insight.

------
memracom
He is right.

Rails was part of the old paradigm where a webapp runs on the server and sends
HTML pages to the client.

The new paradigm, which I would not call single page architecture for
historical reasons, sends the app to the client in when they open a page, and
then runs on the client and only calls back to the server to get/post data.
And maybe load some additional code blocks. These apps are built in Javascript
with underscore, backbone, angular, ember and related tools. They are also
typically MVVM or MV(something other than C).

~~~
subsection1h

      > Rails was part of the old paradigm
      > where a webapp runs on the server
    

Web apps no longer run on servers? They insert data directly into databases
from the client? Isn't that insecure?

The developers of Rails::API should be informed about the new paradigm so that
they stop wasting their time.

[https://github.com/rails-api/rails-api](https://github.com/rails-api/rails-
api)

------
graham1776
That being said, I am learning rails right now... Is it time to switch to a
different language? What would you learn today in preparation for the next big
thing?

~~~
binofbread
I don't think learning Rails right now is a bad thing. I've been doing some
side projects in it for ~2 years and definitely don't regret it. As some other
folks in here have mentioned, there is always going to be something newer and
better out there. If Rails is your first or even one of your first web stack
experiences, it is a great way to learn the fundamentals and it makes learning
the next new thing that much easier. In short, the "next big thing" is ever
changing and I don't think anyone would call Rails old. It's just no longer
new.

------
brianwawok
I might say the same thing. What is passe or not is a matter of opinion. Doubt
you can change your managers opinion.

Realistic options are

a) Deal with what the manager wants you to code in

b) Find a new job

