

Rails users: would you use rails again? - menloparkbum

I've been building web apps ontop of rails for the past year and a half. Now I need to decide if I want to stick with rails for my startup.<p>I like that it is quick to try things out. I don't like the various execution models or scaling issues. I've spent as much or more time tweaking configurations and de-railsifying certain pieces for performace as I have developing the app. I've also used Ruby to replace perl and python for utility scripts, and haven't been impressed with its performance. <p>For those of you in a similar position, would you choose to use rails again? 
======
tx
Sure I will - Ruby is a wonderful language that I simply adore. I suspect that
over time I will slowly migrate to my own replacements for various Rails
parts.

Furthermore, there isn't much of "Rails" you have to deal with. What is Rails?
Templates? They're more or less the same everywhere. DB access? Databases are
dying anyway... What's left? URL mapper? Rails, ASP.NET, Django.. they are all
the same to me.

~~~
tocomment
Databases are dying? What will they be replaced with?

~~~
omouse
Punch-cards..or flat/XML-files loaded into memory.

------
mdolon
In all honesty, for a quick and easy app, sure I would. For anything more
complex where performance or scaling is required without hassle, I'd use
something else. This is after I've made my first couple of apps in rails.

------
chaostheory
In my case I would. None of the apps I have in my mind are super complicated
(relative to other apps that is - though even simple apps have the devil in
the details).

If you're looking for performance, ruby is not the place to look. Ruby/Rails
is for faster development with good organization, with much less chance of
having sphagetti code (like PHP) which results in easier maintenance and
evolution.

~~~
cglee
That's been my experience as well. I prefer Rails over most Java frameworks as
well due to all the sugar that comes with a fully integrated webdev stack.

As far as scaling, no problems so far (but this is a relatively small app). To
me, as long as a certain response time is met, it's not nearly as important as
being agile and organized.

All the frameworks have trade offs. But to me, Rails seems like a good place
to be not only because of its technical merits, but also because its strong
and innovative community...which is constantly improving the framework (as
well as Ruby itself).

~~~
cglee
...so, to answer the initial question: yes, I'd use Rails again for a webapp
as long as I wasn't planning on building something like Second Life.

------
zach
Hell yes and a half. I love it and people keep doing my work for me (i.e.
releasing plugins).

I'm a recovering video game programmer who picked up Ruby ages ago as a Perl
replacement. But coming from that background, it pained me to see Rails pages
that took a third of a second, a half a second or even (gasp) longer to
render, but you know, the problems are tractable. You don't have to create
sophisticated data structures to address performance problems, for example.
And Rails scalability is pretty well-understood and although it's complex, it
gets easier all the time.

------
mattculbreth
Yes I would. Probably any smallish consulting gigs I do will be in Rails now,
as will any sort of internal quick admin-type app we do for our startup. Rails
+ ActiveScaffold gets you going very quickly for your standard LOB/CRUD app.

For my startup we've chosen Pylons and we're happy so far. It's definitely not
as polished as Rails but it gives us a lot more flexibility. We're using
SQLAlchemy as well and there's no better way to talk to a database.

------
AF
Nope. It is a nice package, but there's too many good frameworks in Python
that can give me similar productivity without the performance hit.

------
Zak
For a quick, simple app that's primarily used to create, edit and display
lists, sure. There are a _lot_ of apps that fit that model. For something more
complicated, probably not. I'd certainly consider Ruby, but Rails seems like
it would be more of a burden than a help.

Note that I've only used Rails to make a couple quick, simple apps that are
primarily used to create, edit nad display lists. When I had the opportunity
to use it for something more complicated, I went with CL/TBNL/CL-WHO/CLSQL and
never looked back.

------
grovemeister
"I don't like the various execution models or scaling issues." Can you be a
bit more specific? I'm pretty much hooked on rails but if you know python
already, checking out django couldn't hurt.

------
jey
"Syntactic sugar causes cancer of the semicolon." -Alan Perlis

------
wastedbrains
Currently using rails and like it a lot. I have done some really small sites
in rails, but haven't had to deal with scaling or performance yet really.

So I will be learning more about those issues in about a month or so when we
launch.

------
jamesbritt
Nitro or Ramaze, as the APIs settle down and the docs beef up.

------
rnc000
No way.

~~~
motoko
Any war stories? I mean, with due respect to veterans and causalities, of
course...

Also, what would you recommend instead?

~~~
sbraford
ok - here's one.

just like with _any_ other language, if you are not careful you can end up
writing some sloppy RoR code.

especially once you get into the 50-100+ migrations apps - your first few
might suck unless you have some good guidance on how to do the more advanced
things.

as a corollary - I just joined a RoR startup and by the end of my first day I
had already closed out 2-3 feature/bug tickets, mostly because the code was
clean & well-structured. in some heavier environments I remember it taking a
few days just to get your system setup & figuring out how to navigate /
compile / etc. all the code.

