6 ms·
But I've been resisting it for so long! I can't give in now...
by araneae 16y ago
But I've been resisting it for so long! I can't give in now...
- calloc 16y agoDon't. Give them a month or so to start hating Rails. As soon as you attempt to step outside of what Rails is built for or need some new piece of functionality it starts falling apart, not only that but Rails is painful to scale.
- throwawaypyguy 16y agoyup i agree, look at twitter and then youtube then twitter and then again back at youtube. who scales? Its no wonder when DHH and 37 signal espouse no features philosophy, since implementing them is hard and ruby + rails dont help. You would rarely find any other engineer worth his salt saying that inability to implement a highly requested feature is a virtue and not a failure.
- kingkilr 16y agoYou know youtube is a Python shop right?
- njharman 16y agoThey are contrasting the two.
- generalk 16y agoYou understand that Twitter's issues weren't due to Ruby on Rails, but due to application architecture, right? If Twitter had implemented the same architecture on top of a Python web library, they'd have had the exact same issues.
- eatenbyagrue 16y agoThere's a middle ground of knowledge where this is true... but once you power through to the other side, and understand how Rails works, you can pretty much make it do anything.
- throwawaypyguy 16y agosuch as scaling to meet needs of multi million users?
- pjdavis 16y agoYes, like hulu or yellowpages.com
- steveklabnik 16y agoRaverly has 10mm requests a day: http://highscalability.com/blog/2009/9/22/how-ravelry-scales-to-10-million-requests-using-rails.html http://highscalability.com/blog/2009/9/22/how-ravelry-scales...
- pjdavis 16y agoReally? I've been working with it for nearly 4 years now, and I haven't had any problems getting it to what I needed it to do. I wonder what problems that it wasn't "built for" have you had problems implementing? Also, while scaling may be a non-trivial challenge, going to over ~100,000 page views a day (95% are between 8am - 6pm) was pretty easy, and very little fuss.
- modoc 16y agoWhile 100k views/day is good traffic it's generally not at the level where I'd consider it 'scaling". Unless you app is very complex or CPU intensive 100k/day should be achievable by out of the box settings on a single server. I've done this with a few different JBoss based applications with zero performance tuning tweaks or issues. To me real scaling is where you're having to run a cluster since a single server is inadequate to handle the traffic, where you're having to implement or leverage various application caching schemes, etc...
- snprbob86 16y agoThe vast majority of startups don't have to worry about "real" scaling. You don't need to be Twitter or Facebook to make money; in fact, it might help to not be. Especially, if you are actually, you know, charging for a product. This fascination with scaling is hazardous to the health of both the startup and engineering communities.
- pilif 16y ago100k views/day, while not huge is certainly way more than what the usual application you'd build nowadays is hit with. To recommend against rails based on the assumption that it'll scale badly in cases where it has to handle more than 100k views per day isn't really helpful. Once you reach these values, chances are, you'll have team, budget and need for a custom solution anyways. Now, I'm no rails developer and I never got to really like the framework. So if you ask me, I would find other issues that prevent me myself from using rails (many personal soft-facts - a matter of preference). The (supposed) inability to scale beyond 100k views/day isn't one I'd consider first
- 16y ago
- snprbob86 16y agoAre you speaking from experience? Which things start to fall appart? Regardless, I subscribe to the belief that scaling is a good problem to have.
- generalk 16y agoThis post is extremely confusing. As soon as you attempt to step outside of what Rails is built for Rails is a tool for building database-driven websites. It does this well, and I'm confused as to how you can "step outside of" this. Admittedly Rails probably doesn't help you built a GUI application well. or need some new piece of functionality Wait, what? How did you arrive at this conclusion? Rails doesn't ship with authentication, but there's no less than two (authlogic, restful_authentication) major frameworks for authentication, and countless smaller libraries or self-written tools. The same goes for uploading files (attachment_fu, paperclip), testing (rspec, cucumber, steak, shoulda, ...). The list goes on. Rails' active community is one of the main benefits of using Rails in the first place! Rails is painful to scale Rails is no more painful to scale than any other web framework. The bottlenecks for scaling usually come down to application design, not your ORM. Have you ever even used Rails, or have you prejudged it based on posts by people who also have never used it?
- msie 16y agoYou don't sound like someone who has had experience with the framework, but is merely regurgitating what other blogs say. You should spend some non-trivial time working with the framework and yes it's not perfect, but it'll probably serve your needs. I too used to criticize Ruby and Rails until I started using them. I think it's too bad how Rails may be over-hyped as an easy-to-use, does-all framework because it sets up high expectations for the beginning developer. It does reward the developer who has put in the time to learn it.
- calloc 16y agoPlenty of experience with the framework. Plenty of experience with Ruby. The scalability issues I was talking about were seen at a fortune 500 company where a Rails app was used for an internal only application. The major issues with scaling was that Ruby in general is absolutely horrible in managing memory, and was constantly having to be restarted. We ended up replacing the app with one built on top of Java which instead of requiring 6 servers with load balancer in front of it, to just 2 servers, one for the front-end and one for the backend. Java served the needs much better, faster, and didn't require the same amount of administration to constantly make sure that everything is still running properly. Could the same have been done with Rails? Maybe. Are we happier with the Java based solution, its stability and speed? Yes absolutely.
- davidw 16y agoJava's certainly a more efficient language than Ruby, so it makes sense that you can use fewer machines to do the same thing. The question is always: what's that cost in developer time? Rails is very quick to develop with. What Java framework did you use, out of curiosity? Incidentally, I'd be curious to hear about anyone's experience with Scala/Lift - if it's actually as efficient as straight-up Java, and how quick it is to develop stuff with.
- calloc 16y agoI am not at liberty to disclose the technology used unfortunately, otherwise I would have given more information in my previous post. While rails may be quick to develop with and may be great for prototypes it is not something that is ready for the prime time. The cost to get up to speed in Java was negligible compared to the end result, in that we are now able to have less time spent trying to debug problems because of Ruby not functioning correctly or having to be restarted (we had several tasks that took some database crunching in which ruby would sometimes fall over, or just take up all of the available memory thereby starving other processes and eventually being killed by the oom killer leaving parts of our database in an inconsistent state).
- deleted 16y ago[deleted]