Hacker News new | past | comments | ask | show | jobs | submit login

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/Media Encoder and so on.

http://www.microsoft.com/sqlserver/2008/en/us/pricing.aspx http://www.microsoftstore.com/s/visualstudio


What did a full license of VS give you over just using the Express versions of the tools? From what I've seen unless you have a huge team and need the team features you could probably get by using the express versions.

I do agree with that the SQL server licensing is a huge PITA and in your case you really didn't need all its ancillary features and instead just needed a simple, fast data store.

The article was a great read.


Express -> VS.NET is an improvement on the order of Notepad -> Eclipse. (Or Eclipse to VS.NET, for that matter).

If you're developing on the MS stack, you simply need VS.NET and ReSharper or you'll be wasting hours of your life every week.


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.


BizSpark has an expiration date, as covered by a comment on Rob's blog:

http://blog.wekeroad.com/2010/05/19/no-sql-in-the-wild#comme...


The program does, but the software you download does not.

Microsoft comes out with new ISV programs about as often as new versions of Visual Studio. As long as you join the latest one every few years, you'll always have an up-to-date set of developer tools.

So all that's left is server costs, which as I mentioned above come to a little over $1k/box.


So then why not just replace the database and keep the rest? Were you using Linq to SQL and hence tied to SQL Server? As far as VS I'm sure it would not have been a problem for you to get free versions. However, I suppose if you were to change the database portion, probably a sizable chunk of the application, you may as well replace the whole thing...


If you're developing with .NET, you are best off using the whole Microsoft stack. The vertical consolidation and tight integration is the benefit you get for the high costs.

If you mix .NET code with significant OSS components (i.e. databases), you will incur a lot of extra setup work and hassle. There is less of a community and therefore you'll have to figure more stuff out on your own. If you're a .NET programmer for life, then this is great experience for you.

One of the traits of a good CTO is to access the community around a mix of technologies (i.e. C#/Sql Server, C#/MongoDb, or Ruby/MongoDb). If there's a good community around your technology stack, that'll streamline development a lot more. Things will just work. Many people will have already solved the problems you're bound to have.


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 :)


I'd like to hear more about why you switched from Sinatra to Rails. I'm primarily an Asp.net MVC dev who plays with Python/Ruby on the side, but Sinatra really interests me.


What is it about your database requirements that prevents you from using SQL server express?


Using SQL Server Express is just trading one time-bomb for another time-bomb. Now instead of a 3 year bizspark timebomb we have a size time-bomb, once we cross that point we are springing for SQL Server. Why use a stunted Express product when you can use MySQL or Postgres for free?


Because it's a robust and feature rich database/tool-set thats great to develop on and gives me peace of mind. It's been a while since I used MySQL but the database and it's tools left me underwhelmed. I found that I could be more productive with SQL server. I haven't tried Postgres.

I guess I like to think if my databases grow too large for the free version that's a good problem to have. It's not that bad a "time-bomb" to me. Many sites will never need the paid version - especially the ones small enough to be so cost sensitive.


You can't even do automated backups with SQL Server Express (without some hacks or other tools).

MySQL is a pleasure to work with and so it MongoDB, more so than SQL Server.

If you prefer SQL Server than more power to you.



I do backups using a windows scheduled batch file that runs sqlcmd.exe (part of sql express). Slightly hackish but it gets the job done.

Anyway, I hope that articles and interviews like yours do make MS lower the price of SQL standard, but people shouldn't dismiss the MS platform based on cost when in many cases it could be almost free.


Didn't look at Windows Azure as an option? http://www.microsoft.com/windowsazure/


We didn't seriously look at Azure for a couple reasons:

1) It's expensive compared to other hosting platforms. 2) I hate lock-in to a particular platform. If we coded against Azure tables we would be locked in to Azure. If we used their SQL platform we would be space constrained. 3) I have used Azure and deployment, updates, and troubleshooting are all slow and cumbersome. It is still a very immature platform.


We're looking at making the move from Rails to ASP.NET MVC. So pretty much the opposite of what you've done, and we're planning on hosting on Azure. So I read this thread with great interest.

We've found that like for like the Azure platform is very well priced and is actually less expensive than our current Ubuntu setup, as well as being cheaper than comparable high level Microsoft hosting providers.

We don't much like lock in either and for the parts of the Azure platform that will lock us in we're extracting the code into a wrapper so we can replace with the minimum of work should we need to switch hosting platform in a hurry. Database wise we're going with SQL Azure and their 10GB limit I find to be quite spacious for our needs, although that would depend entirely on what you're storing. I believe they have 50GB databases in the works for the near future?

The deployment times are an issue and I have heard similar, but again I believe if you upload the project yourself then request the update the deployment time is greatly reduced making it less of an issue. It would take some doing to match Capistrano deployment though which is simply awesome and something I will certainly miss.


Surprising to hear that Azure is cheaper for you, I would be interested in hearing if that holds true once you actually get up and running on it.

I actually used a powershell script to automate deployments on Azure, it was the delay from when you do that which is so frustrating. Waiting 5-10 minutes was fairly normal.


You really don't HAVE to use SQL Server just because you're using .net you know...


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 go for PostGre or Couch. Neither of those are part of the 'RoR stack' is it? How is is any less correct to use PostGre + .net rather than PostGre + RoR? Is the PostGre + .net community really that much smaller than the PostGre + RoR? I seriously doubt it.


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.


I can vouch for the Postgres part of that. We use .NET against PostgreSQL at work (a not especially database-intensive app, fortunately) and wound up using the ODBC drivers. We experimented with Npgsql, but ran into some flakiness that scared us away. There's really not a tremendous amount of documentation around using .NET with Postgres, either, which is unfortunate.


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


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.


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.


This article is pretty short on costing details. Silverlight encoding aside (because that's competely unrelated to asp.net mvc deployment) you can deploy web sites really cheap on the microsoft stack.

Windows Web Server: $400 SQL Server Express: Free (Databases have a 4 GB maximum size)

I can't image how it would cost them 5 figures to use asp.net mvc. I find the productivity of the MS development stack to be well worth the meager cost.

Take stackoverflow.com - a hugely successful site that I believe runs off 3 servers (originally 1). Jeff and Joel put this together on a pretty tight budget and I bet their site handles a bigger workload than the OP's site.


Look a few comments up - also (from MS themselves) running a site on SQL Express is not a good idea. I would never do that. Once you leave express, you need to license (for the web) by the cpu - which means you're about to cough up a lung.

Ask Jeff and Joel how much they're going to owe - I think it's almost to 6 figures :).


To be fair, Jeff and Joel are still on Bizspark. StackOverflow is ~2 years old.


And after 3 years if they need to spend 10k on licensing for a very successful site that will be peanuts compared to their own time spent. Or do they value that at nothing?

I think this is a bad article/interview because it gives the impression that you can't do websites in asp.net MVC on the cheap.


You are assuming that we would spend more time using RoR then ASP.NET, we have found this to be the opposite. We build out and deploy features in much less time then we would on ASP.NET now.


Not sure if this is feasible, but it would be great to post your ASP.NET vs RoR code to compare the delta.


When is $10,000 peanuts? Seriously - I'd rather bonus a developer that money then hand it over for something I can get for free.


I think the point is $1 is too much money if the tools aren't the best. But $10k is not a lot of money if the tools are great. I tell my team, if you find a tool that makes you more productive, buy it. There's almost no reasonably priced tool that wouldn't be worth it if the dev thought it was.

We budget around $10k per dev for tools and training per year. We usually come in a fair bit under, but given we spend over $200k/year per dev, this is a small fraction of their cost.

I think your point is that the tools weren't the right fit. Because if they were, it seems like baulking at $10k is a sign that you can't make the right cost-beneift tradeoff -- which is a very bad sign for a company.


Actually, with 2008 R2 the SQL Express limited has been raised to 10GB.


SQL Server licenses will get you there pretty quickly.


DB Servers are irrelevant when you are talking ASP.NET, so long as you use NHibernate.


Tell that to MySQL which runs like an ape through a mud bog on Windows.


Then put MySQL on a Linux box, no need to have it on Windows...


And then you have the added complexity of two OS platforms to support.....

I think they made the point in the article that they could have overcome the obstacles of the ASP MVC platform, but why? They said they're more productive on Rails, they like working on it better, and it's cheaper.

What positive would there be (for them) of staying on the MS platform?


How many mixed platform server shops do you know of? If you're going to go linux/OSS for your DB you might as well go all the way.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: