Given the introduction, I thought we were going to see a fantastic breakdown of cost estimates; capex and opex expenses, 95% percentile bandwidth pricing vs. Amazon's fixed rate per-byte pricing.
A real analysis would have even dug into the question of sysadmins vs engineering staff, and the potential for "the cloud" to allow programmers to actually program infrastructure, eliminating internal sysadmin staff completely (and outsourcing all the remaining sysadmin work to Amazon).
Instead, we got bizarre platitudes about how they "love computers". How boring. Early in my career, I spent a lot of time in the hot/cold, blaring fan world of data centers -- sometimes late at night, when a hard drive failed or a switch's fans went out. Anyone that thinks that it's pleasant to spend time in a data center is insane; whether or not it makes sense in terms of cost was the answer I'd hoped to get from this article.
> eliminating internal sysadmin staff completely (and outsourcing all the remaining sysadmin work to Amazon)
Man, this idea is one of the most insane things I hear. Amazon does not install your operating systems, Amazon does not install and configure you applications, Amazon does not troubleshoot anything related to the operation of the servers, Amazon does not do analysis on your traffic patterns and decide when you need more instances, Amazon absolutely doesn't care about how well your product runs as much as your own staff does, in other words there is no way you outsource your WHOLE sysadmin staff. All Amazon does is provide the hardware and network infrastructure to run on. It is not a magic bullet that says I don't need to have these people around. SysAdmin != server monkey - yes it is part of our jobs, but quite honestly it is a very very small part of it.
> Anyone that thinks that it's pleasant to spend time in a data center is insane
Call me insane because I sure do love spending time in a datacenter, it's one of the few times working in IT you really get to do something with your hands, and that does have a certain appleal to me.
It was a real analysis that went beyond just counting the beans. As a privately held company, getting rid of passionate people doesn't make the stock go up, increase anyone's bonus, or benefit their long term goals - and blogging about their values certainly cannot hurt in attracting top notch talent.
What a silly argument. "If you just want to use someone else’s computers, it means you don’t love computers — at least not every aspect to them."
Uh, don't they use Dell? If they love them so much, why not build their own? Why stop there? I love software and programming languages, but it doesn't mean I'm going to use my own compiler or run a company on my own libc.
There is always the question of degree and practicality. So in terms of libc / and custom compilers that is perhaps ad absurdum. There really wouldn't be any practical benefit taking it to that far for most companies. However, people that love programming languages often probably wish it was practical and that they had an excuse to write compilers at some point.
As far as Dell goes, I honestly have mixed feelings at this point. When I started at the company there was less than 10 people, so the idea of having centralized firmware updates etc seemed practical. I'm not sure I really feel this way any more -- I go back forth. But sticking with Dell seems to make sense at this point so we have more uniformity in hardware and management.
You don't really love computers unless you're working out every bit of the quantum mechanics necessary to design and model its integrated circuits on a chalkboard.
Whom is going to do a better job? A group of educated, passionate people that can troubleshoot their own problems in realtime? Or "Peggy" at Cloud Vendor X that deals with 400 other clients?
The reason I'm still wary of the cloud is that the abstractions are still too leaky (to borrow Joel Spolsky's turn of phrase). When you start abstracting away core system calls (like fsync), things work great 99.99% of the time. But when that .01% bites you, it bites hard. We don't expect core system calls (like fsync) to fail. And when they fail, the fact that our code is two or three levels levels of abstraction higher means that we often have no way of fixing the issue. The cloud will be at a disadvantage to "real servers" as long as its abstractions are leaky enough to be distinguishable from real hardware.
Keep in mind that screwing with syscalls is an AWS thing, not a virtualisation thing. They make fsync wierd for good reason though, and they really don't have much they can do.
Cloud or not, if you're writing serious software (and by that I mean software that depends on fsync succeeding) you'd better expect system calls to fail and have code to handle that.
Poorly written argument full of red herrings. From what I can tell, their answer to the "why aren't you in the cloud" question is that they "love computers so much that they want to do it all themselves because it's so fun".
If I asked you why you were eating pizza and you responded "because I like pizza" would you still consider that a red herring argument?
All they are saying is that they are not in the cloud because they don't want to be in the cloud and because they quite like not being in the cloud. It works for them. Why is that expression at all controversial?
If they'd labeled their blog "Why being in the Cloud is a bad idea" or "Why being in the cloud would cost Stack Exchange a lot more" or "Why nobody should ever use the Cloud" then I could see the reason for the dispute. Then their arguments would be very unconvincing.
It is certainly valid for Stack Exchange to make a choice because it fits within their culture and then explain that that is why they are doing it. You might think it's a dumb decision and that's fine. But they clearly are not trying to convince you that they've made the best possible decision. They're just saying that good or bad, they've made the decision that they want to make. And it's clearly a decision that has been working well for them so far anyway. So why do people keep bugging them about it?
Would you have preferred a gigantic stack of technical chaff designed to rationalize and obscure the fact that they're doing whatever seemed like fun at the time? Because I'm sure we can find you some examples. ;)
And taken on those terms - not on the cost accounting of cloud vs local - it makes sense to me. Is it a convincing "no matter what" argument against cloud hosting in all cases? I'd say no - there will be cases where sheer scale or fluctuations in scale make cloud hosting more attractive. as the article admits.
I suspect that this is part of the problem with many big manufacturing companies these days. Ford was a leader for so many years was because their leadership was passionate about engineering and manufacturing. Henry Ford was an engineer for the Edison Company before he was a manager and is famous for obsessing about every detail of the manufacturing process. That sort of spirit infected the company up through the 1960's and 70's when the MBA's took over and everything was reduced to a column of numbers.
It appears that many early tech companies (TI, HP) have headed in the same direction. Maybe 30 - 40 years is the limit before the accountants take over.
A Ford bought today is less expensive, considerably safer, more efficient, and more reliable than a Ford from the days of Henry Ford.
Meanwhile, today's manufacturing companies routinely make objects – like the processor driving the machine that you are reading this on – that are orders of magnitude more complex than the most advanced technology of 1959.
And all of this was done by companies that employ lots of accountants. I'm not sure why you think that accountants and engineers don't routinely coexist, or that Henry Ford didn't employ plenty of accountants back in his day. Being able to manufacture good stuff in bulk at reasonable prices is a major exercise in accounting, and always has been.
One key reason I suspect is that you haven't been able to get SSDs in the cloud so their scaling up approach would be more difficult. Having your own servers means you can "NewEgg your way out of it" (http://news.ycombinator.com/item?id=3243133 :-).
I'm growing to understand "the cloud" not as AWS/Rackspace/Heroku/whatever, but as a mindset where:
1) you're not tied to hardware
2) your application scales horizontally
3) you can easily (and dynamically) add (computational) resources as needed, preferrably managed by your application.
4) you build fault tolerance and redundancy into your application
This article basically takes the approach that "the cloud" is AWS.
OT: I've heard claims that dedicated servers beat cloud VPS (i.e. AWS) in cost. But most of the dedicated servers I've seen cost $100 and up for a month. Is there a comparison on the cost/computing_power with benchmark for review?
What you care about at any reasonable scale (ie. the point at which costs matter) is $/serviced request. That usually ends up being dominated either in $/cpu cycle or $/iop. The current problem is that most cloud platforms suck iops which makes them far more expencive then they really should be.
Cloud vs. dedi vs. colo in terms of raw prices though, depends entirely on your price of money and the price you can negotiate with your provider.
Amazon has very good .NET support. So does Rackspace. So does Azure (obviously). In my personal experience the quality of cloud platforms has been comparable for both Linux and Windows environments. Is there any evidence that .NET cloud platforms are of lower quality? I'm genuinely interested. Please elaborate.
I think we are overanalyzing here. This is like a car company that maintains a garage to attract people who like to look under the hood. It's taking a strategic people decision when hard data isn't easily available. Everything about sys admin job descriptions seems like a digression.
Why is everyone attacking this article? So what if their reason is subjective? They want people who enjoy working on the whole stack. They have fun doing that, and that's all the reason they need.
They aren't saying that "people who use the cloud don't care as much". It's just their thing.
They're the masters of their own company, and as such, can do things however they like. One of the benefits of a private organization.
[+] [-] nupark2|14 years ago|reply
A real analysis would have even dug into the question of sysadmins vs engineering staff, and the potential for "the cloud" to allow programmers to actually program infrastructure, eliminating internal sysadmin staff completely (and outsourcing all the remaining sysadmin work to Amazon).
Instead, we got bizarre platitudes about how they "love computers". How boring. Early in my career, I spent a lot of time in the hot/cold, blaring fan world of data centers -- sometimes late at night, when a hard drive failed or a switch's fans went out. Anyone that thinks that it's pleasant to spend time in a data center is insane; whether or not it makes sense in terms of cost was the answer I'd hoped to get from this article.
[+] [-] gbeech|14 years ago|reply
Man, this idea is one of the most insane things I hear. Amazon does not install your operating systems, Amazon does not install and configure you applications, Amazon does not troubleshoot anything related to the operation of the servers, Amazon does not do analysis on your traffic patterns and decide when you need more instances, Amazon absolutely doesn't care about how well your product runs as much as your own staff does, in other words there is no way you outsource your WHOLE sysadmin staff. All Amazon does is provide the hardware and network infrastructure to run on. It is not a magic bullet that says I don't need to have these people around. SysAdmin != server monkey - yes it is part of our jobs, but quite honestly it is a very very small part of it.
> Anyone that thinks that it's pleasant to spend time in a data center is insane
Call me insane because I sure do love spending time in a datacenter, it's one of the few times working in IT you really get to do something with your hands, and that does have a certain appleal to me.
[+] [-] brudgers|14 years ago|reply
[+] [-] MichaelGG|14 years ago|reply
Uh, don't they use Dell? If they love them so much, why not build their own? Why stop there? I love software and programming languages, but it doesn't mean I'm going to use my own compiler or run a company on my own libc.
[+] [-] MattyDub|14 years ago|reply
[+] [-] KyleBrandt|14 years ago|reply
As far as Dell goes, I honestly have mixed feelings at this point. When I started at the company there was less than 10 people, so the idea of having centralized firmware updates etc seemed practical. I'm not sure I really feel this way any more -- I go back forth. But sticking with Dell seems to make sense at this point so we have more uniformity in hardware and management.
[+] [-] glimcat|14 years ago|reply
[+] [-] xradionut|14 years ago|reply
[+] [-] quanticle|14 years ago|reply
[+] [-] asharp|14 years ago|reply
[+] [-] wulczer|14 years ago|reply
[+] [-] wmf|14 years ago|reply
[+] [-] jinushaun|14 years ago|reply
[+] [-] nephyo|14 years ago|reply
All they are saying is that they are not in the cloud because they don't want to be in the cloud and because they quite like not being in the cloud. It works for them. Why is that expression at all controversial?
If they'd labeled their blog "Why being in the Cloud is a bad idea" or "Why being in the cloud would cost Stack Exchange a lot more" or "Why nobody should ever use the Cloud" then I could see the reason for the dispute. Then their arguments would be very unconvincing.
It is certainly valid for Stack Exchange to make a choice because it fits within their culture and then explain that that is why they are doing it. You might think it's a dumb decision and that's fine. But they clearly are not trying to convince you that they've made the best possible decision. They're just saying that good or bad, they've made the decision that they want to make. And it's clearly a decision that has been working well for them so far anyway. So why do people keep bugging them about it?
[+] [-] mechanical_fish|14 years ago|reply
Would you have preferred a gigantic stack of technical chaff designed to rationalize and obscure the fact that they're doing whatever seemed like fun at the time? Because I'm sure we can find you some examples. ;)
[+] [-] StrawberryFrog|14 years ago|reply
And taken on those terms - not on the cost accounting of cloud vs local - it makes sense to me. Is it a convincing "no matter what" argument against cloud hosting in all cases? I'd say no - there will be cases where sheer scale or fluctuations in scale make cloud hosting more attractive. as the article admits.
[+] [-] jtbigwoo|14 years ago|reply
It appears that many early tech companies (TI, HP) have headed in the same direction. Maybe 30 - 40 years is the limit before the accountants take over.
[+] [-] mechanical_fish|14 years ago|reply
Meanwhile, today's manufacturing companies routinely make objects – like the processor driving the machine that you are reading this on – that are orders of magnitude more complex than the most advanced technology of 1959.
And all of this was done by companies that employ lots of accountants. I'm not sure why you think that accountants and engineers don't routinely coexist, or that Henry Ford didn't employ plenty of accountants back in his day. Being able to manufacture good stuff in bulk at reasonable prices is a major exercise in accounting, and always has been.
[+] [-] espeed|14 years ago|reply
[+] [-] Joakal|14 years ago|reply
Although it's not quite the cloud, one of the founders prefer vertical stacks due to several reasons including licensing costs.
[+] [-] asharp|14 years ago|reply
The major problem with their 'scale out' chart is that that particular hardware is far from optimal hence costing far more then it should.
[+] [-] david_a_r_kemp|14 years ago|reply
This article basically takes the approach that "the cloud" is AWS.
[+] [-] ww520|14 years ago|reply
[+] [-] asharp|14 years ago|reply
Cloud vs. dedi vs. colo in terms of raw prices though, depends entirely on your price of money and the price you can negotiate with your provider.
[+] [-] coob|14 years ago|reply
Is it not perhaps because there's much less competition for .NET stack cloud platforms, therefore less quality?
[+] [-] hughesdan|14 years ago|reply
[+] [-] droz|14 years ago|reply
[+] [-] mathattack|14 years ago|reply
[+] [-] eduadecastro|14 years ago|reply
[+] [-] unknown|14 years ago|reply
[deleted]
[+] [-] jaequery|14 years ago|reply
[+] [-] lhnn|14 years ago|reply
They aren't saying that "people who use the cloud don't care as much". It's just their thing.
They're the masters of their own company, and as such, can do things however they like. One of the benefits of a private organization.
[+] [-] chollida1|14 years ago|reply
I personally thought I going to get a break down of the pros and cons of being cloud hosted vs running your own servers.
The article ended up being completely non technical or quantitative and boils down to "we like to build our own computers".
Chalk it up to high expectations that weren't met :) That's not the authors fault.
[+] [-] drhayes9|14 years ago|reply
But they did say that people who use the cloud don't care as much:
> If you just want to use someone else’s computers, it means you don’t love computers — at least not every aspect to them.