6 ms·
Ask HN: why most startups use ruby and rails?
Hi, I would like to understand why ruby and rails is used heavily in startups? Thanks.
- teemo_cute 13y agoYour question has already been answered at Quora: http://www.quora.com/Ruby-on-Rails-web-framework/Why-do-so-many-startups-use-Ruby-on-Rails http://www.quora.com/Ruby-on-Rails-web-framework/Why-do-so-m... P.S. You need to sign-in with your Google or Facebook account to view the page.
- coffeecodecouch 13y agoNo, just append ?share=1 to the end of the URL as so: http://www.quora.com/Ruby-on-Rails-web-framework/Why-do-so-many-startups-use-Ruby-on-Rails?share=1 http://www.quora.com/Ruby-on-Rails-web-framework/Why-do-so-m...
- teemo_cute 13y agoThanks. I was not aware of that feature yet. It would be nice if those pages (shared) are the ones google would list in the search results, but then quora needs its user sign-ups.
- alouanchi 13y agoGood to know this feature.
- mahouse 13y ago> Rails developers often use Macs. For some people, this means nothing. For others, this means the difference between getting hired or passed over. YMMV. I must say this made me laugh. Is the tech scene getting too stupid?
- midas007 13y agoWhen people fall in blind, biblical love with a particular technology, rational perspective goes out the window. Further, groupthink is something to be feared for it's failure of a subtle kind. And, the vast majority of interview processes are rarely measurably accurate at preventing false positives AND false negatives, most tend to sacrifice the later for preventing the former. I'd be more impressed if someone ran PC-BSD zfs on a homemade laptop. (Disclaimer: written on a hackable non-Retina MBP, not that it matters. 2 SSDs + 16 GiB in 13")
- fractalcat 13y agoWhat? I must say, this is the first I've heard of this trend. Personally, I might be a little querulous when interviewing a dev who used Windows by preference (though this would be irrelevant once they'd demonstrated or failed to demonstrate technical skill), but I've never worked with a hiring manager who'd discount a web dev who used a Linux-based operating system.
- mahouse 13y agoDo you feel the same about Windows?
- alouanchi 13y agoSo if I want to be hired as Rails dev. I should have Mac!!!. Great joke
- sigvef 13y agoMaybe it's a regional thing? Where I live, Python and Django is much bigger than Ruby and Rails.
- incidence 13y agoSame here
- kelmop 13y agowhere do you live?
- alouanchi 13y agoThanks for your comments(for all involved in this thread). For the moment I am living the UK. But also I have lived in France where I used symfony1.4. But now I am a bit lost trying to get my hand in different technologies. Thanks in advance for all.
- incidence 13y agoI recommend checking out Django, it's a great framework, also really easy to approach and learn. Their documentation is perfect!
- midas007 13y agoUnless you're in SF, it's easier to find Pythonistas than Rubyists, hipster jokes notwithstanding. But the stats show the giant, kitchensink frameworks are pretty even in measurable terms, but Rails had about 5x individual committers. https://www.ohloh.net/p/rails https://www.ohloh.net/p/rails https://www.ohloh.net/p/django https://www.ohloh.net/p/django
- alouanchi 13y ago"Unless you're in SF". isn't there where most startups are? so if many of them use ruby and rails in SF why it isn't the main framework outside SF.
- csense 13y agoBecause they don't mind using garbage tools, as long as they are hip and trendy.
- donkeeswitch 13y agoI can't stand answers like this ... why is it a "garbage tool?"
- csense 13y agoMy main complaint: The syntax is awful [1]. The runtime is also extremely bloated. To run one fairly simple web application with a handful of users, Rails uses well over 500 MB. I have no idea what it could possibly be doing with that much memory -- is it trying to make a separate object for every pixel? Startup for Ruby apps often takes over a minute. Ruby is Rails. It's hard to find information about using Ruby for non-Rails projects. So as a beginner, not only do you have Ruby's weirdness to deal with, you're often fighting the number of moving parts in a modern web application. Also, "magic." I haven't used Rails enough to know about this, but I hear "magic" is common, e.g. (I've heard) Rake uses some horrible hack to monkey patch the lexer or somesuch so it can have its own syntax. This kind of thing leads to code that's even harder to understand because you now have non-local dependencies. To be fair, Python also allows monkey patching, but also has a strong "don't-do-that" cultural norm. [1] https://news.ycombinator.com/item?id=5872899 https://news.ycombinator.com/item?id=5872899
- dham 13y agoRails is not bloated, it just comes with a lot of features. I'd suggest watching these videos. http://www.youtube.com/watch?v=2Ex8EEv-WPs http://www.youtube.com/watch?v=2Ex8EEv-WPs http://www.youtube.com/watch?v=uUNdKVG2W-8 http://www.youtube.com/watch?v=uUNdKVG2W-8 A typical Rails instance will use 100 - 150mb, and does not take a minute to start up. Have you actually used Rails? I have several large projects and none have ever taken that long to startup. I use Ruby for non Rails projects all the time and had no issue finding how to include Active Record and Action Mailer into a Ruby CLI application.
- sandwell 13y agoIt's quick to get started with (and it's not PHP). It runs on *nix/Mac OS/Windows. Tools like scaffolding let you move on from simple CRUD stuff to business logic. I'm not a rails dev but these seem like desirable properties, especially if you are working with limited resources to get a prototype or mvp going asap.
- umren 13y agodo you sure it can be run on windows server or windows desktop with all additional gems that can be used for development?
- midas007 13y agoBias: I'm mostly a Ruby dev, compile OpenSSL and Ruby from source. For greenfield apps, node has the advantage of being mostly the same language back- (node) and front-end (browser). Hence why Asana and others use it. Python is more popular than Ruby, but they're roughly equivalent sans religious wars. The other thing is that Rails is a mature, well-defined architecture with tons and tons of gems. The bower asset packages can be used straight via # Gemfile source 'https://rails-assets.org' It's also not hard to get gulp and phantomjs setup. General advice though... Build outside-in. (Frontend first, backend later) Building inside-out can lead to wasting time building things that just aren't needed.
- alouanchi 13y ago"Build outside-in. (Frontend first, backend later) Building inside-out can lead to wasting time building things that just aren't needed." I will keep it in mind.
- AJ72 13y agoTo understand Ruby, and why anyone including a startup wants to use it, you need to understand more about its founder, Matz. He is a truly amazing individual. Here's a recent interview with Matz from RubyConf13 (Miami Nov 2013) http://multifaceted.io/2013/rubyconf-13-a-chat-with-matz/ http://multifaceted.io/2013/rubyconf-13-a-chat-with-matz/ that may be of interest. It's about making developers happy…
- voiduser 13y agoWell its as heavily used as other technologies I think it would be safe to say. RoR, Django, Synphony are some of the frameworks I am constantly hearing about for start ups. Just depends on the programming language preference.
- andretti1977 13y agoI think because it's easier to learn and require less code so startup may focus on product instead of code. This should be true especially if you compare RoR to java technologies, but i'm working on a project where Grails was the requirement and i think Grails has a good future because thank to Groovy it requires a lot less code but has its foundation on java frameworks (hidden to the developer) which are very stable, solid and mature (and obviously complex!)
- hkarthik 13y agoIt's because Rails is essentially a "batteries included" full stack framework which helps a startup focus on building a business and not on building technology infrastructure. Outside of Rails and Django, you're left to make a lot of decisions to get the same level of functionality before you can start building even an MVP. Here's what you get out of the box with Rails: 1) Database schema management via Rails migrations which work great with mature RBMSs like Postgres and MySQL. 2) A solid ORM (ActiveRecord) which makes CRUD super easy and intuitive. 3) An active community with lots of open source libraries (gem) to do just about anything you want. 4) Highly productive ways to work with frontend (CoffeeScript) and backend (routing, controllers, active_record, etc). 5) Great documentation and ecosystem around it. Contrast this with Go, Node, and other OSS ecosystems and you're often left to make a lot of the decisions on your own with immature libraries. Often to get to the same place, you'll be inventing a lot of your own infrastructure. Node is probably the closest to approaching a "batteries included" status with the MEAN stack, but it's not quite there yet. You can certainly get all of what Rails comes with out of the box on any stack, but unless you know it really well, there's a lot of decisions to be made. With a startup, the kind of analysis paralysis that often comes with technology decisions can really kill an idea in its early stages.
- alouanchi 13y agoThanks for the reply. Do you have some feedback from your own experience with it and/or with another framework, says Django?
- hkarthik 13y agoI used to write .NET for a living and when I started working with my own ideas for a startup, I looked at both Django and Rails. Python/Django had a very small community in my local area (Dallas, TX) while the local Rubyists were more plentiful, not to mention very welcoming. I got some early mentors that helped me get going and that got me to stick it out with Rails. These days, I see more similarities than differences between Python and Ruby. It's like choosing between Vim and Emacs. Both sides have their value, but the bigger difference really exists between a text editor and an IDE like Eclipse or Visual Studio. My advice is to try both, and see which one appeals to you more. Focus on it for a few months and find mentors to help you through it. The harder choice would be to pick something like Node.js which is just starting to hit its stride, or Golang which is really just starting to pick up. Keep in mind, it's quite common for startups using Django or Rails to augment their stack with either Node.js or Go to solve certain problems that don't fit nicely into either Ruby or Python.
- gesman 13y agoBecause for startup to survive it needs to take minimal time from paper napkin idea pitch to production deployment. And RoR has all the bells and whistles packaged together. The quicker the time - the quicker VC's gets return on their investment. Having said that, please note that ruby on rails is one of the slowest performing frameworks: http://www.techempower.com/benchmarks/#section=data-r8&hw=i7&test=query http://www.techempower.com/benchmarks/#section=data-r8&hw=i7...