8 ms·
Is The Microsoft Stack Really More Expensive?
- SwellJoe 17y agoYes.
- njharman 17y agoAnd in many ways other than monetary.
- pclark 17y agohow do you mean?
- njharman 17y agoWasted experience, when Microsoft decides to totally change their dev chain/libs for business/marketing reasons. VB, .net, activeX. Last 20 years of MS dev is littered with them. Wasted time upgrading / relearning OS because MS has end of lifed it and requires new OS for tools to run. Wasted opportunity when you discover there is market outside win32 but it's too expensive to target cause all your products/libs/experience is invested into a proprietary stack. Vendor lock in is expensive in other ways as well. Inability to find/fix bugs in stack cause it is closed source. Inability to tune/add feature/etc stack cause it is closed source. Those are some of the first that come to mind. There have been essays, articles, papers, and blogs galore written about how and why closed, proprietary < open / standards compliant. I'm sort of stunned anyone reading HN needs to schooled in that.
- mr_luc 17y agoFor instance, let's measure it in terms of hacker news comments. The fact that this is identifiable from the title as a MS PR piece means that most HN regulars completely lack the desire to respond. The very idea that the question is being asked is enough to indicate that any discussion would be pointless. Clearly, this person has a diametrically opposed worldview, and is going to try and win me over with arguments based on that worldview. Cost of my "stack": $0. A free OS, a free IDE (emacs), free tools. Well, I guess I paid for photoshop. ;)
- jasonkester 17y agoIf your chosen stack slows you down by being more painful/cumbersome to develop on, set up and maintain, then it's costing you money. The fact that it's lost income rather than extra outflow doesn't change the fact that it's a cost. Compared to PHP or Django (which we also do consulting in), ASP.NET is just plain faster to develop in. I can get my own stuff out the door quicker, which means that I can bill more of my time to consulting clients, which means that I'm net ahead at the end of the month. So I guess you need to stick opportunity cost into that equation to see where you actually stand.
- tvon 17y ago> Compared to PHP or Django (which we also do consulting in), ASP.NET is just plain faster to develop in. I'd love to see any info backing this up.
- jasonkester 17y agoIt's all subjective. Naturally, I've done my share of development across a wide range of frameworks and languages, and I've made my choice. The best advice I can give would be to do so as well. Personally, I consider it a slight competitive advantage that so many shops avoid Microsoft stuff on ideological grounds. If they never try it, they'll never know. And we'll have that slight edge in getting things to market faster.
- etherael 17y agoUhh, just finished a week's intensive training in a supposed to make stuff more rapid .net based framework, and coming from a Django / Code igniter / Ruby on Rails / Grails background I'm utterly stunned that anyone would claim that the basic asp.net environment is a productivity boost over a top of the line MVC framework like Django? Maybe the problem is your competence rather than your tools? I don't mean to be blatantly offensive, but wow, asp.net > django? Really? ... Man..
- 17y ago
- acg 17y agoOn the Microsoft stack side, everyone knows about Visual Studio. The licensing cost for the Team Suite is $10,939. LAMP developers just love to point that kind of thing out. But folks, the fact is, that price is not measurable as the equivalent of LAMP freeware. It’s for an enterprise shop that needs very advanced and sophisticated tools for performing every corporate software role in a software development lifecycle. These arguments are walking tightrope of avoiding the obvious. Installing all of the Microsoft free tools will make the stack cheaper. But as soon as you want to do something even close to challenging you can bet you'd need support and a license for the real tools. Apparently it's the open source crowd that is subjecting the "market" to FUD?
- desu 17y agoNot to mention the subtle insinuation that the open source "freeware" is just a toy and everyone knows you have to pay for the real stuff. I cannot imagine how Microsoft developers begin a project. "Today, I'm going to write this new web app to change the world! Right after I spend the day setting up Microsoft Team Studio and purchasing software licenses for every computer I plan to use!" How inspiring.
- jasonkester 17y agoYou realize that you can use the same copy of Visual Studio twice, right? As in "Today I'm going to write this new web app, as soon as I install Eclipse, Django and SVN" would sound just as silly. It's just development tools. Oh, and for what it's worth, Microsoft will give you 15 seats worth of MSDN Universal for $400 if you tell them you're a small business. Per seat, the MS tools are the cheapest part of setting up a new dev box for me. (CodeSmith, ReSharper and Ants Profiler are the ones that hurt!)
- desu 17y agoI guess I just don't like integrated mega-software like "team studio". Give me some nice, loose tools that work together well. Git is all the collaboration tool I need. And, for what it's worth, the open source community will give you unlimited seats worth of all the best web development software in the world for $0.00 :D
- rgrieselhuber 17y agoOf all of Microsoft's technologies, I have considered SQL Server, because from what I've seen it is an extremely powerful database engine with really good BI tools. There are two reasons I don't use it though: 1) it would be prohibitively expensive (for me anyways) to use across dozens of nodes and 2) it means introducing Windows into my environment, which quickly becomes very expensive and a nuisance.
- javery 17y agoI agree completely, Windows isn't that expensive (look at the difference in EC2 pricing) but SQL Server is where they get you. It's not Oracle bad, but for a small startup it might as well be.
- ams6110 17y agoI haven't really paid attention recently, but at a conference several years ago a former Microsoft sales rep said that nearly every "enterprise" product they sold required accompanying SQL Server licenses.
- StrawberryFrog 17y agoMost "enterprise" products are complex enough to need some complex backing store. A SQL server database is a natural choice for this in the MS world. Even TFS (source control and associated work item tracking, kitchen sink, etc.) is backed by one. This is not a bad thing, (e.g. you get atomic transactions from the DB), but it's interesting that most other source control systems are not backed by any relational database.
- gaius 17y agoA small startup would sign up to the BizSpark programme, tho'.
- javery 17y agoI am a BizSpark member and network partner and I agree it's a good program. The problem is that it's only for 3 years, so you still need to keep costs in mind.
- st3fan 17y agoYeah .. haha .. "The shell and all that fluff is a separate download" .. fluff :-)
- asnyder 17y agoMicrosoft SQL Server 2008 is, by far, a vastly superior RDBMS than most anything I have seen from anyone, in every respect I was willing to continue reading the article, up to the above line, at which point it became clear that there's no basis for anything said.
- StrawberryFrog 17y agoWhich ones do you think is one a par with it, and why? "vastly" may be an overstatement, but it's very good. The only issue is that for simple designs a smaller, free product (e.g. postgreSQL) may have all that you need. A lot of the new stuff in SQL server seems to be Business Intelligence tools, which I don't pay much attention too. the SQL stuff where you "select * from ...." seems to be much the same for several versions now, and gets only minor updates since it's already done right.
- DrJokepu 17y agoWell, while SQL Server has its merits, I wouldn't consider it vastly superior (or superior at all) to Oracle or IBM DB2, although SQL Server 2008 is indeed getting very close. Of course it depends on your requirements; for most purposes MSSQL is perhaps a better choice but if I needed an enterprisey-schwenterprisey zero downtime database server no matter what it costs, then of course I would go for Oracle or DB2.
- bad_user 17y agoDo you have bad experiences with MSSQL (or any other popular RDBMS) in an enterprisey environment ? The only RDBMS I worked with that was too limited for the enterprise ... is MySql. But that's because when you have a "Big Ball of Mud" it is easier to patch many things in the data-store and MySql has bad support for stored procedures / triggers / views and I also wouldn't trust it to store a data warehouse. But Postgresql was more than suitable for such a scenario. MSSQL is also more than adequate for any task you might have. I've seen this argument many times before ... that Oracle is more reliable. But with Oracle unless you have a DBA with years of experience to administer it, you're pretty much screwed. And a RDBMS that requires so much tweaking and maintenance just to keep it working doesn't seem so reliable to me. True story ... while working at Adobe I participated in meetings about the future of Oracle at the company. Long story short: the company holds much of its data on 2 big Oracle servers and the problem with the setup is that it doesn't scale horizontally. And many newer projects are using Mysql, because it has a good-enough replication system and it also has a hidden gem (mysql proxy). It seems to me (at least as an outside observer ... I'm not a professional DBA) that these are just effects of marketing campaigns.
- kgrin 17y agoScaling horizontally is considerably more expensive on the MS stack, as the StackOverflow folks discovered recently ("discovered" is a poor word choice maybe). I distinctly remember a blog post or podcast where Jeff basically lays out the numbers and says that the software costs make scaling up more enticing than scaling out.
- bad_user 17y agoSQL Server Express is so limited that you really can't use it in production, and I've never had a case where Postgresql or Mysql couldn't handle the load (with enough architecture tweaks). And you still need IIS. You can get that with Windows 7 Ultimate, but that's $319.95 for the retail price. And you pretty much can't get away without buying the retail version. We have deployed 8 HTTP servers, 2 MySql servers, another server with Varnish, 2 servers with Memcached and one for logging ... for one of the applications we maintain. Of course, we're using virtualization with Xen. But if we were to use Windows 7 Ultimate, then we'd have to shell out ... 13 * 319 = 4147 USD On such a quantity you can probably get a discount, but let's be honest ... 4147 USD is almost the price we payed on the hardware, and I wouldn't run anything else than Windows Server in production which is a lot more expensive. And if you're developing on top of PHP, Rails, Django, Mysql, Postgresql ... why on earth would you want to use a Windows server?
- joechung 17y agoFor reference's sake, Windows Web Server 2008 costs $469 and is likely the version of Windows you would use instead of Windows 7 to run IIS in production.
- bengtan 17y agoI don't trust a Windows server to provide reliable uptime. I have no other arguments that I wish to make.
- trapper 17y agoWe recently deployed a system (linux based on a windows server with vmware) on a huge infrastructure provider. Every week the box was going down, and we asked why - it's because they reboot ALL microsoft servers once per week, across the entire infrastructure. He claimed they were so unreliable it's good practice. WTF? Uptime on my first linux production server box was over 4 years.
- Daishiman 17y agoYes, in all large shops a weekly/monthly reboot cycle is a requirement. Duly note that this requires several hours of overtime from sysadmins, adding additional cost.
- jasonkester 17y agoThis article was all over the map in terms of numbers. Here at Expat, we develop on the Microsoft stack whenever we have a choice in the matter, including for our own products such as Twiddla, Blogabond, Rootdown, S3stat, etc. and here's the breakdown of what we pay for what: Tools: $399 total. For Everything MS makes, for every developer in the shop, once every 2 years. That's what it costs for an MSDN license through the EmpowerISV program. Servers: ~$2000 per production box. That's Small Business Server, which comes with production licenses for SQL Server, Exchange Server, and pretty much all the backend stuff you could want. And that's it. Assuming we buy a new server every 2 years, that means we pay about $100/month for the privilege of developing on the MS stack. Put another way, that means that the MS stack need only gain us 20 minutes worth of productivity every month to pay for itself. Like I said up top, we build on the MS stack whenever we have a choice in the matter. It's just a no-brainer.
- etherealG 17y agotake a look at the hosting cost on something like slicehost.com for a server. add in bandwidth costs to your server costs. does it still seem better to be developing on windows? also, what are you charging your customers if 20 minutes or your time is worth $100, that's impressive. I wish I worked for a microsoft platform company so that customers would be willing to pay that much for a simple service.
- jasonkester 17y agoThat's actually what I imply above. Given that we pay $800/month for rack space, power and bandwidth, and would do so regardless of our development stack, the extra $100/mo for the luxury of developing in C# is just noise.
- desu 17y agoAnd how does your reckoning change when the big day comes that you have to buy another server? And another? And then another 20? And you've locked yourself into the MS stack? That $2k/box starts adding up real quick.
- makecheck 17y agoMicrosoft's development products are not that good. I've used Visual Studio, and I found the interface so incredibly clunky that it was easier for me to mount a network drive to my Linux box, and use a real text editor, "vim", to modify the project XML directly to make changes. (And that is not a joke.) And the set of downloads is irrelevant, because it shouldn't even be necessary. On Linux and Mac, most of what I need is already there; while I do download other packages from time to time, they're for good reasons (like getting a new version). The base Mac and Linux installations already have python and perl and a real shell and a real terminal and an SSH client and a good web browser, and the list goes on. The number of things Windows completely lacks out of the box is mind-boggling, given the size of Microsoft's budget. And remember, you have the privilege of downloading and installing it all again every 6 months when Windows' holes make your PC useless. But it isn't even about the cost or quality for me. It doesn't take much of a history lesson to realize that the vast majority of Microsoft's wealth has come from questionable business practices; practices that resulted in "de facto standards" through which they gain even more undeserved business. At this point, they could have the best products imaginable (they sure don't), and they would still deserve no business. The entire computing industry has been set back at least a decade due entirely to Microsoft (and a number of other IT-dependent industries have been harmed). Microsoft has destroyed entire companies through unfair means; Microsoft should receive no recognition whatsoever as a credible business, and should receive no new contracts. I know it's just wishful thinking now, but it's the absolute truth.
- gjm11 17y agoEww. Among his arguments: 1. It's OK that the MS developer tools cost money, because there exists an IDE for Ruby, PHP, etc., that costs money. (No matter than Eclipse, NetBeans, etc., are free.) 2. It's OK that IIS/ASP.NET costs money whereas Apache/PHP doesn't, because ASP.NET is more sophisticated than PHP. (No matter that, e.g., Rails is also more sophisticated than PHP but is also free.) 3. You probably won't have to pay for Visual Studio, because typically your employer pays for it. (Apparently in Mr Davis's world costs don't count when they are paid by employers.)
- desu 17y agoWindows can also execute all the Java and Ruby stuff that you see in nix platforms.* Really? Hit any Ruby mailing list and every second post is a Windows user complaining that something doesn't work. Not just obscure things either - DataMapper doesn't work on Windows, or didn't a few months ago. Capistrano, the "official" Rails deployment tool, is not supported on Windows. And good luck with any gem that requires compilation. Not to mention you lose out on all the command line tools. You'll need to install cygwin, of course. At that point you may as well just stop trying to run unix on a Windows box and just, you know, run Unix.
- windsurfer 17y agoI know as a student, it's waaaay too expensive. I could eithter get 4 months of rent, or a legal copy of some microsoft software. Guess which one I chose?
- steverb 17y agoExcept that as a student you get most everything on the MS Stack for free. Enjoy your straw man.
- windsurfer 17y agoThey have student pricing for microsoft server and sql?
- steverb 17y agoYes. They are both free under the dream spark program. To be clear, it's SQL Server express or developer edition, but if your goal is just learning the stack then it's enough. https://www.dreamspark.com/default.aspx https://www.dreamspark.com/default.aspx
- windsurfer 17y agoWhat restrictions are there, exactly? I'm not familiar with licensing of these products, as I mainly use open source stuff at the moment.
- Novash 17y agoSimply put, the restriction is that you cannot profit from it. I use all the 'Express' stack to develop at home. All free. Including the XNA lib.
- windsurfer 17y agoDo they have an express version of windows I can hack on?