Live data from Hacker News

How We Moved From Microsoft ASP.NET to Rails and NoSQL

infoq.com

81–90 of 101 posts

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#81
post #79
post #74

Earlier quoted context omitted.

A combination of a lot of things. For starters, the thing is architected poorly, so that does play a big factor in it. I know, I know, it's always the new guy inheriting an existing system that lays to claim that the inherited thing is a piece of garbage, but in this case it is undeniably true. And I can tell you, as someone who has been doing .NET consulting for the last 8+ years, it's not uncommon for MS based solu…

can you please specify which OSS stack you use.

Sure.

The search engine is a customized version of Solr.

The front facing website is done in PHP using a framework we developed at Massify (http://heavyfuckingmetal.com/). We thought about going the ruby or django route, but the front end is so light functionally we decided to go with what we knew inside and out. We'll also be using MongoDB for certain things.

The way we are phasing the rebuild, the SQL Server is the last thing we're migrating, so that will stay in the mix for awhile. It's the most complicated piece because it has a bazillion stored procs that need to be migrated/refactored out. The structure is fine for the most part, though a little de-normalization is probably in order. Eventually I hope to have that running on PostgreSQL by next winter.

The backend, or admin, will be done with heavymetal and cappuccino for the front-end.

As an aside, the entire rest of the company is mac based, so we've written a couple of desktop apps, as well as some server apps, in objective-c/cocoa using quite a bit of open source libs. We'll be putting some of our own code public on github in the next few weeks. We've also done an iPad app for showing our image portfolio to clients.

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#82

Earlier quoted context omitted.

If you're developing in .NET, you might as well use as much of the Microsoft stack as possible. The benefit to using Microsoft stuff is the vertical consolidation and tight integration. Otherwise, you'll be fighting against the grain. And the support community will be much smaller (i.e. .NET w/ OSS databases).

No I don't agree at all. It's trivial to connect your .net applications to any database you want. If SQL Server is $7000 too expensive it's a mistake to assume you'll be better off dumping the entire .net framework just because .net + SQL Server is more popular than .net + (arbitrary DB) I agree about using the rest of the MS stack with .net but the DB component specifically is highly modular. Let's say you want to g…

Drivers dude. The drivers are SUCK for using MySQL and PostGreSQL. Couch is fine and so is Mongo but the drivers aren't baked (I worked on one for Mongo - built the initial LINQ provider).

Run MySQL on Windows and see how slow it is. The driver story is horrific.

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#83
post #55

Earlier quoted context omitted.

But why ? My cost right now (aside from hardware, which is net even) is 0 - without the hoops. Also - the testing story is much better.

Was the cost of rewriting that small? In my view it would only make sense if the cost of rewriting the app is insignificant. If you can do it in a week or two, sure... any more than that and I would start to question if it's worth it. I mean, you gotta make sure it brings in money first, right? :-)

Overall about 2 weeks total. I took my time and wrote it first in Sinatra, then scrapped and went to Rails - 2 weeks :)

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#84

Earlier quoted context omitted.

If you're developing in .NET, you might as well use as much of the Microsoft stack as possible. The benefit to using Microsoft stuff is the vertical consolidation and tight integration. Otherwise, you'll be fighting against the grain. And the support community will be much smaller (i.e. .NET w/ OSS databases).

No I don't agree at all. It's trivial to connect your .net applications to any database you want. If SQL Server is $7000 too expensive it's a mistake to assume you'll be better off dumping the entire .net framework just because .net + SQL Server is more popular than .net + (arbitrary DB) I agree about using the rest of the MS stack with .net but the DB component specifically is highly modular. Let's say you want to g…

I didn't say anything about connecting to other databases. Yes, .NET does that. But when you have more advanced problems, you're less likely to find other people who had the same problems (and then solved them) than if you stuck with Sql Server.

My opinion comes from first-hand experience developing for a .NET-based startup. I have faced the issues that the two TekPub guys have. Although, switching away from .NET isn't an option for me. So, sometimes I need to integrate with OSS components. And the .NET examples/docs/community are often sorely lacking, and I have to figure out a lot on my own. I realized that it would be a lot easier to integrate if my employer was a PHP/Ruby/Python/Java shop.

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#85

Earlier quoted context omitted.

Did you happen to try out other frameworks before deciding on RoR? I'm thinking about testing the waters outside of MS land and I'd like to know why you chose RoR versus, say, Django or even Struts.

I find it hard to imagine that there is any web framework still around that could be more screwed up than Struts. After having had some major exposure to the various members of the Struts family and Rails, I would say that the experience of using Struts 2 is slightly worse than using Rails while being flogged by an expert torturer. :-) If you want to test the world beyond MS I would recommend (apart from Rails or Dja…

I would be careful with Rails, when you plan to do some heavy data processing and/or if you need your application processes to run for a long time without being restarted.

Heavy data processing yes, but the long running process is bogus. The major memory leaks in Rails were patched up years ago. The tooling is a lot better today on the off chance that you do need to debug a memory leak, and the new breed of ruby runtimes such as Rubinius will keep memory in even tighter control.

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#86

Earlier quoted context omitted.

No I don't agree at all. It's trivial to connect your .net applications to any database you want. If SQL Server is $7000 too expensive it's a mistake to assume you'll be better off dumping the entire .net framework just because .net + SQL Server is more popular than .net + (arbitrary DB) I agree about using the rest of the MS stack with .net but the DB component specifically is highly modular. Let's say you want to g…

Drivers dude. The drivers are SUCK for using MySQL and PostGreSQL. Couch is fine and so is Mongo but the drivers aren't baked (I worked on one for Mongo - built the initial LINQ provider). Run MySQL on Windows and see how slow it is. The driver story is horrific.

No self-respecting .NET developer would use MySQL for anything :P

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#87

Earlier quoted context omitted.

No I don't agree at all. It's trivial to connect your .net applications to any database you want. If SQL Server is $7000 too expensive it's a mistake to assume you'll be better off dumping the entire .net framework just because .net + SQL Server is more popular than .net + (arbitrary DB) I agree about using the rest of the MS stack with .net but the DB component specifically is highly modular. Let's say you want to g…

I didn't say anything about connecting to other databases. Yes, .NET does that. But when you have more advanced problems, you're less likely to find other people who had the same problems (and then solved them) than if you stuck with Sql Server. My opinion comes from first-hand experience developing for a .NET-based startup. I have faced the issues that the two TekPub guys have. Although, switching away from .NET isn…

Since there's SO many people using .net I really have never had any of these problems you describe. Every database under the sun has loads of users with .net frontends - even compared to RoR users. Yes it's true that the .net+SQLServer userbase is larger than the .net+OtherDB but that does not imply that RoR+OtherDB is always bigger than the .net+OtherDB group.

Could you give me an example of the sorts of issues you've had? I've been using .net since 1.0 and we integrate with dozens of thirds party systems every year and database tools for .net are in my experience mature enough to not be an issue.

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#88
post #3

As an MS developer this really is devastating. Rob Conery is one of the names that any fan of ASP.NET MVC knew. He was involved in the project when he worked there (I'd call him the most high profile MS employee aside from Scott Guthrie). To have him come out and say he couldn't make a startup work with Microsoft technology really tells you all you need to know about that. I still need to use .Net at work but I think…

I'm not a web dev per se, but I never heard of Rob Conery until now. I now ScottGu, Anders, Cutler, Brumme, Dussud, Crowley, Russinovich, Spiro, even Luca, but never Rob. Not to say he's not a big name, but to say he's the most high profile MS employee beside ScottGu seems absurd. Even in the dev tools space I think you have to give that to Anders.

I agree. I had only heard of Rob.

And easily the top .NET employee is Anders by far.

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#89

Earlier quoted context omitted.

I find it hard to imagine that there is any web framework still around that could be more screwed up than Struts. After having had some major exposure to the various members of the Struts family and Rails, I would say that the experience of using Struts 2 is slightly worse than using Rails while being flogged by an expert torturer. :-) If you want to test the world beyond MS I would recommend (apart from Rails or Dja…

I would be careful with Rails, when you plan to do some heavy data processing and/or if you need your application processes to run for a long time without being restarted. Heavy data processing yes, but the long running process is bogus. The major memory leaks in Rails were patched up years ago. The tooling is a lot better today on the off chance that you do need to debug a memory leak, and the new breed of ruby runt…

Being somewhat problematic for long running process is not only a function of memory leaks.

Even with the better runtimes now available, suggesting that they come close to the stability (and performance and long term memory consumption and profiling + debugging capabilities) you'll find on the big JVMs is not really helpful (JRuby being the obvious exception but even here I am sceptic).

Re: How We Moved From Microsoft ASP.NET to Rails and NoSQL

#90
post #19

Earlier quoted context omitted.

I would've loved to see a rough breakdown of how they got the the "5 figures" cost...

SQL Server license: $7171 per processor - we have a single quad machine... which we'll likely need to split into two machines, incurring extra licensing fees. Our servers were hosted at MaximumASP and they gave us a bandwidth quote with additional servers that was 4 figures (remember, this is 3 years out). Visual Studio is $1200 a pop - this is for two people. I'm already at 5 figures and I didn't include Expression/…

Yikes. Why would you pay retail for that stuff?

Small Business Server gives you all the backend stuff for more like $1000 per server. BizSpark/EmpowerISV/WhateverTheyCallItNextYear gives you all the dev tools and OS stuff essentially for free.

I can't imagine that anybody has EVER actually paid $7k per processor for a SQL Server license. We've been running it on our servers for years, properly licensed, and never even come close to that figure.

Post reply on HN