Ask HN: Ruby on Rails or .NET?
I wondered if anyone out there knows of examples of startups that have developed web applications on a .NET framework? We have heard that Ruby on Rails is far quicker then trying to develop a web application on .NET but wondered if that is really true or if there are examples of companies that have just built on a .NET framework from the beginning? Thanks..
24 comments
[ 4.2 ms ] story [ 104 ms ] threadWe are a dev shop with a lot of experience with .NET. For our most recent web project we decided to take RoR for a spin. Things that would take an hour in .NET took us days. Not because RoR is lacking, but because we just don't have as deep a knowledge of Ruby or Rails.
Having used both, I can't think of a compelling technical reason to choose one over the other. I personally think .NET has a nicer tool chain, but RoR's tools are more than adequate.
Go with what your developers want to use.
In .NET you are paying Microsoft for whatever they deem suitable to bequeath down to its licensees. There's been a lot of hand-wringing in the community over slow uptake on new web tech, and general problems that go unresolved because it's not an open source model. On the plus side, you get a nice IDE and documentation.
In Rails on the other hand, v3 just came out, allowing both sensible defaults, and unprecedented modularity. If Rails is too heavyweight you also have Sinatra. Everything is built on Rack which makes things much more standardized and interoperable amongst a range of web server options. You even have people doing work to integrate Ruby backends with bleeding edge tech like node.js that has huge world-changing advantages for certain types of applications over the monolithic and antiquated MS stack. In general the Ruby world is well integrated with the Unix and Open Source worlds where you are free and able to solve your own problems as well as take advantage of rapid progress by the community.
Given Microsoft's lack of success on the web over the years, and the amount of lock-in that Microsoft imposes on its developers, it just seems like a no brainer to go with open technologies (whether that be Rails, Django, or some PHP framework). The counterpoint is if your most talented developers are .NET guys, or you have a bunch of legacy MS stuff to integrate with.
If that all seems like it trends corporate for you, well, that's obviously going to happen when your platform costs money.
All else being equal, would I start a new project on Microsoft's stack? No. But if I was really strong on ASP.NET and completely new to Django or Rails, I'd stick with ASP.NET. It works, it works at scale, and it's far from the hardest stack to code for. I might even suggest it's better than PHP, all else being equal.
There's no need to make that decision in a vacuum.
There are technical reasons and financial reasons for choosing either one. Have a read - hope it helps.
Dont get caught up too much in worrying what other people are using. You initial technology stack will not make or break your company as you can always iterate to another technology stack at a later date if you wish.
Why yes, actually -- the startup I am working on uses .NET as I (the technical co-founder) am traditionally a .NET developer. http://salesathand.com
> We have heard that Ruby on Rails is far quicker then trying to develop a web application
This is true if you are familiar with RoR. If you're not familiar with the platform then it's not going to be true.
>but wondered if that is really true or if there are examples of companies that have just built on a .NET framework from the beginning?
Yes, I am quite productive on .NET and that's why I stay. I'd love to migrate to an OSS platform -- Python would be amazing -- but I'm just not productive in that environment (yet) and the one thing a startup can't loose is productivity!
I use tons of OSS tools, though, that make things go faster and smoother. The biggest of which is NHibernate. Also, avoid ASP.NET and use MVC if you can.
That all said, if you don't know .NET or Rails or Ruby or whatever - you're probably better off selecting something that won't cost you money right from the start...
There are programs that MS has to temporarily offset these costs, as others mentioned. Check out www.microsoft.com/bizspark/
(You/others may also be interested in http://www.microsoft.com/web/websitespark/ and https://www.dreamspark.com/default.aspx)
-Stackoverflow: http://stackoverflow.com/
-Agile Zen: http://agilezen.com/
The framework you use to develop doesn't matter. If you like .NET go with it, if you like RoR go with it. For costs, you can take a look at the BizSpark program from MS, you can get all MS products you need for $100 for 3 years, then you pay for it.
Tough choice, really.