Listening To Reason

random musings about technologies by Andy Norris

09 September 2006

5 Reasons Why Joel's Business (Probably) Isn't Like Yours

Joel Spolsky has had a lot of interesting things to say about software and the software business, including this week when he had a whole series on hiring. In this week's series, he said lots of things that programmers are bound to like: treat your developers like rockstars, give them all Aeron chairs and super-expensive monitors, build an elaborate atrium with a fountain just to impress your developers.

You have to admire Joel's approach, because it says right on his site that his business is all about programmers:

Best Working Conditions => Best Programmers => Best Software => Profit!

If you're a programmer, how can you not like that?

I'm sure his recent series (and maybe his blog in general) has left a lot of people thinking: wow, my company isn't like that. Joel is so much cooler than my company. And, well, maybe he is. But before you go in to your boss and start complaining about how he's cheap, and if he would just run his business like Fog Creek, things would be so much better, here are a few reasons to take his ideas with a grain of salt and think about whether they would really benefit the company where you work.

By the way, I'm not really an expert on Fog Creek or anything, so I'm inferring a lot of this as I go along. And I'm not doing this to trash Joel, because I love reading his writing, so if you're reading this to get to the good parts where I really rip him a new one, well, sorry.

1. Fog Creek is a software business

In a software business, the developers drive the products. Programmers are always going to be pretty vital to a software company. By contrast, at an automaker or a bond trading firm, it's going to be people like car designers or bond traders that are the rockstars -- they're the ones that make the business go.

By the way, here's a corollary: all other things being equal, it's more fun for a programmer to work at a software company than to write software for a business in another industry. Any software company that cares about its products cares about its programmers.

2. Joel doesn't have 2000 people

This is the "not everyone can be a rockstar" rule. The larger a company gets, the harder it is to only hire the kind of superstars Joel talks about looking for. It's not clear that his model scales to bigger businesses.

Then again, he learned the software business at Microsoft which always used to have a rep for only hiring brilliant people, so maybe it's not impossible to scale this model, but merely really difficult.

3. Joel started up with a good-sized chunk of capital

This is just speculation -- I could be wrong. But his basic premise of starting a really cool business with Aeron chairs and an atrium and expensive monitors makes it sound like he (and maybe his occasionally-mentioned business partner, who I don't know anything about) had a bunch of Microsoft options that vested and brought in a bunch of money as seed capital.

I don't mean that in a dismissive way, such as "well, anyone could start a successful software business if they had that kind of capital." That's actually not at all true. Most Microsoft people who vested and started their own businesses completely failed. What it means is, if you start a business by maxing out a Visa card, for god's sake, don't spend the money on an Aeron chair.

Also, because I presume that the capital was mostly his, he didn't have people pressuring him to show a large immediate return. If you have Venture Capitalists breathing down your neck, don't go hook yourself up with an office with a fancy atrium, just because Joel told you to. Keep your burn rate low, like everyone learned from the dot com crash.

4. Fog Creek makes shrinkwrap software

Joel wrote a really good essay a few years ago about the 5 Worlds of Software Development. One of them is shrinkwrap software, which is what Fog Creek does.

Shrinkwrap software is great. Everyone actually pays you to use your software, which, if you do it right, makes it a lot easier to pay your bills than if you write open source and hope to live off support contracts or build a cool website and hope to live off Google AdWords.

Not only do you get paid up front, but the best part about shrinkwrap is that it scales like crazy. If you work in an IT department and build internal software, you work closely with your client, and you usually can't easily add any more clients. If you write software with a heavy customization component, you pretty much have to add new fleets of consultants or VARs as fast as you add clients. But if you sell shrinkwrap, then as you add more clients, the money from the new sales mostly goes straight to the bottom line.

What this means is that if you have a shrinkwrap company, you have the best possible situation to actually generate a return on hiring rockstar programmers and throwing expensive perks at them. You have a situation where you get paid for producing software people want, and there's a significant asymmetric relationship between the work that goes in and the money that comes back if you're successful. The only thing you have to watch out for is secondary costs like technical support, which merely reinforces that you have to build and test it right in the first place.

Here's the thing, though: as evidenced by the fact that there aren't many startups doing shrinkwrap anymore, it's a tough business to succeed at. As you would expect from the asymmetric returns, and as evidenced by Microsoft, it tends to be a winner-take-all business. More sales => more money to invest in products and marketing => even more sales. So what does it take to be successful? Well, one is good products up front, so you can sell some in the first place. This is where the whole rockstar programmers thing comes in, and why it makes sense for Joel to give everyone Aeron chairs.

The other big one, of course, is simple market awareness: get your product in front of people. And that's where the blog with millions of hits comes in. Which brings us to my last point:

5. Joel's target market is programmers

If you've ever heard MBAs wet themselves talking about synergy and thought that it was all a pile of B.S., well, sometimes even MBAs are right. Because Joel's business is just one giant perpetual motion machine of synergy. He clearly spends a ton of time writing blog entries about software development and software businesses, but it all pays off, because his target market is other programmers. Soccer moms and MBAs surely don't have any use for bug tracking software and remote-support applications -- developers do. So Joel's investment of his time in his blog pays off in massive brand awareness among his target market.

Joel writes all these things about hiring, and how programmers should be treated as rockstars. And one benefit is that he must have one monster applicant pool. But another is that it ties right into what his target market wants to hear. Not only that, but after all the time he spends talking about how he only hires the best of the best, who wouldn't want to at least evaluate his software if they need bug tracking? I mean, what kind of schmuck would settle for ordinary software when they can have code written by supergeniuses (even if it is in VBScript)?

Now, someone is going to read this last point and think I'm saying that Joel is evil: he's just doing all of this to trick us into buying his software. But that's not my point at all. The guy has built a business where he gets to go to work in a fun environment and write code with lots of other smart people. He gets to be famous in the blogosphere, and have lots of people hanging on his every word. And as icing on the cake, he gets to profit from the whole thing on top of it. There ain't nothing wrong with that other than that we can't all be that lucky (though really, it isn't luck -- it's a smart business plan).

But like I said at the start, your business (probably) isn't like that. So if you don't have the Aeron chair and the fountain and the 30" monitor, it probably has something to do with one of these reasons.


At 11:22 AM, Anonymous Anonymous said...

You make the case that due to Joel's specific business model, he can afford to hire the best rockstar programmers, throw expensive perks at them, and therefore produce really good software. This generally seems true, but I'd like to point out that "rockstar" programmers are not generally the best, and don't necessarily produce the best software.

For instance, ego-driven rockstar programmers in a shrinkwrap software company often succumb to the cowboy hack-and-fix mentality: "I'm so badass that I don't need to follow best practices when it comes to writing software."

My point is simply that a "rockstar" programmer does not automatically equal good code nor good products. You've got to have some moderating forces so that ego doesn't get out of control and ruin the development process.

At 12:14 PM, Blogger BlackTigerX said...

perhaps rockstar programmer is not the same as a great programmer, and I'm sure Joel knows the difference

At 12:40 PM, Anonymous Anonymous said...

I think it's more than that. I watched as I worked for a public health company and conditions deteriorated for programmers over the years.

I can attest to you that I got less and less done with the time I had. The question becomes, what is the margin on programmer time?

Presume yearly costs of capitalization for equipment, for example.

1000 - aeron chair (which you can get a good chair for 500 without the name, but some really like aeron.)

1000 - second computer. (Yes, having your own test environment pays dividends.)

700 - two 23 inch monitors.

200 - premium trackball and keyboard.

2900 dollars, even if done each year (which is not so!) is, even in an inexpensive market no more than 5% of a programmer's salary, including benefits.

Presume a 5x5 cube is 25 square feet. An office or reasonable office-like structure is likely at least 10x10. that's 75 square feet. That's much harder to justify over another programmer. However, what about tall 6x8 cubes with closing doors and plenty of conference rooms so that people who need to talk can do so outside the working area? It's not as "cool" but the return on investment is tremendous.

At 1:16 PM, Anonymous Anonymous said...

I agree there is an element of popular fiction for computer-nerds to Joel's blog.

I personally don't really pay for much software myself so, I like to think that gives me enough prespective to appreciate the reality-to-fiction ratio and not loose track of the fact that the blog generates publicity in the target market.

However, I read Joel because he is funny and in my opinion mostly right when it comes to pointing out the classic flaws in software houses.

I have never really worked for good houses as such, good managers maybe but, I am forced repeatedly to agree with the obvious in what Joel says.

1. Programmers need peace and quiet to work.

2. People should not be able to arrive at your desk/near your desk/around your desk and start making noise.

3. If you disrespect your programmers, your programmers will leave and you'll have to find different programmers.

4. Time is money, scrimping on the work stations, monitors, chairs or otherwise interrupting the work-flow of your computer people, actually costs you money.

Invariably the more enlightened the company the better the working conditions.

Entropy prevents change, thus as a company becomes more successful the conditions for programmers do not necessarily become better.

Conclusion. Even a startup without tons of cash simply cannot afford not to have the best conditions that can be had.

Finally. Since the MBAs are so fond of the Open-plan office, so sure it saves company money, it seems only logical that the programmers should allow them have access to the open plan space since we need the peace and quiet of an office and MBAs spend most of they time out of their own offices, talking near-to programmers desks anyway.

This isn't about status it's about making the best use of company resources.

At 1:35 PM, Anonymous Anonymous said...

While I don't disagree with the point of this article, not all of Joel's tenets of Software Developers are reasonable for every business. However this article seems to take the stance of a staunch traditional old school business which is fundimentally more flawed than trying to apply Joel's ideas across all businesses.

First, ultimately the whole point of writing software for any non-software business is to make workers more productive. This is especially true in businesses like an automaker or bond-trading. This means that the productivity of one software developer's ultimately influences the productivity of many, many other people.

Secondly, a software developers productivity is much more easily increased by relatively small things which would seem superfluous for other employees. A second monitor is a perfect example of this, while everyone believes people are more productive with a second monitor its significantly less than with a software developer. Many studies have shown that Software Developers can have a 10-15% productivity improvement by not having to flip between debuggers, IDE, and test environment. Since the productivity of a Software Developer is leveraged by the productivity increases of the general workforce this can result in a massive revenue difference for the price of a monitor. It'd much hard to justify the ROI on something like individual offices for developers.

For some reason this seemingly simple concept, has gotten lost of the last few years.

At 4:43 PM, Anonymous Anonymous said...

It can all begin still having a CRT while the girl at the reception has two LCD panels - one for WinAMP and the other one for mails. Plus I cannot have a LCD because...

Does it even matter whether I am a rockstar developer?

At 5:02 PM, Anonymous Anonymous said...

If you put 14 hours a day in front of a computer there are actually chairs that are far cheaper and far superior to the Aeron. Namely, try the Steelcase Sensor high-back t-arms (don't buy new, find used on ebay etc.) For best keyboard tray, Dashboard Proformix from Canada (unbelievably versatile, comofrtable, and durable). By the way, I don't work for any of these companies, I am just a programmer.

At 9:30 PM, Anonymous Anonymous said...

"and maybe his occasionally-mentioned business partner, who I don't know anything about"

When Joel speaks of his partner, he means partner-in-life, as in a gay lover. Joel is homosexual.

At 12:40 AM, Anonymous Anonymous said...

"... which merely reinforces that you have to build and test it right in the first place."

Wrong! Shrinkwrap software firms can never afford to "build it right". Once you create a version that is "right" then the market buys the product. But then they won't pay for upgrades or the next version. They're happy with the "right" version.

IOW unless you have a product that caters to an extremely large market, you can't both continue to make money and make an excellent product. Eventually you saturate the market with your good product and no buyers remain.

The common fix is to ensure that every version has bugs. Then customers are more willing to upgrade to the next version.

I worked for a company that made millions in shrinkwrap software the first year but saturated their (rather small) market. The next year we were starving to death. The third year we became a service firm.

At 2:28 AM, Anonymous Anonymous said...

Yes, interesting comments. I've always wondered how some business people, have the time to blog as much as they do. It hadn't occured to me, that there might be an actual business benefit!

At 3:57 AM, Anonymous Anonymous said...

Affordability talks....

what can u afford to give?
- to programmer [new-age sweatshop workers]
- to clients [ripped off stupid/dont ahve time bastard]

At 4:53 AM, Anonymous Anonymous said...

Joel's (occasionally-mentioned) business partner is Michael Pryor, the guy behind

When Joel mentions "Jared", that's his "life-partner".

At 3:21 PM, Anonymous Anonymous said...

I guess I should preface the comment by saying that I, like yourself, have no idea how things run inside the walls of Joel's company. Aside from reading his blog for a few months or so, and seeing Aardvark'd (which was fun in a fly-on-the-wall sort of way, but a bit of a disappointment as a stand-alone movie), I'm just as ignorant as anyone else on the matter -- with the possible exception that I happen to run a small company of my own, about the same size as Joel's, so I do have at least a little experience in this arena.

I definitely don't think you have to be a Fog Creek insider to know that what Joel's advocating is right on the money. Your post misses the mark for several reasons, but the most crucial is that it ignores the underlying thread running through all of his essays on this subject (including some published in his books) that the only way to lure and retain great developers is to inspire, challenge, equip and appreciate them. I've worked on cheap monitors and loved it -- it's not about the monitor or even the chair (my chair isn't an Aeron, and I'm happy).

But to people on the fence, as someone who's spent months looking for people to fill our spots, I can tell you that we developers can afford to be picky these days, and without all four of those things, man, you're going to have a hard time finding and keeping good people. If you're a developer lacking any one of those three, you're going to have a hard time not looking for greener grass.

At 12:42 PM, Anonymous Anonymous said...

I'm in my third year of running a company that sells a web-based product. I've been a "fan" of Joel's for years and even hired a handful of developers off of his forums. For the most part, I'm in complete agreement with him on most topics.

That being said, I think he is a good example of what a software company can be *when you have significant amounts of personal capital invested into it.*

No, I don't know that for a fact, but I know quite well what is cost to run a software company, pay salaries, rent, buy equipment, marketing costs, etc. It's friggin' expensive folks and I simply find it unimaginable that he can pay NYC rents, salaries and all the perks from his company's revenue. Heck, we even have several FogBugz licenses and, frankly, the amount of money we spent on them is trivial. Takes a lot of $100-$200 sales to pay for what Joel has.

How many people does he have working there? 5-8 at least? What do you think his rent is? Cost of computers and those Aeron chairs? On an extreme low-end, let's say it cost him $30K a month to pay rent, salaries and payroll taxes. At even a $200 average sales, he has to sell 150 units every month. That's 5 sales per day, every day of the month. Every month of the year. To largely Windows centric developers that aren't already using another solution.

Sorry, but I just don't see that happening.

But hey, who knows. It certainly doesn't take anything away from the guy. He's clearly bright, eloquent and I value what he has to say.

At 7:54 AM, Anonymous Anonymous said...

This comment has been removed by a blog administrator.

At 6:16 AM, Anonymous Anonymous said...

Here is an old rule! If you want to be really successful in affiliate marketing, you ought to drive traffic to your website. The more visitors to the website, the higher the probability of click through. Many affiliate guides forget to mention that it is always prudent to build traffic first and then consider affiliate marketing. There is no magic potion. If there is no traffic, there are no profits. Don’t worry, if you haven’t got hordes of visitors, even a few visitors will do initially. Once these visitors start trickling down the web drain, you can place banners and advertising in appropriate places to get the results. A good affiliate marketer doesn’t care about the number of clicks but on the average number of clicks per visitor.

At 4:43 AM, Anonymous Anonymous said...

Very nice post and comments

At 3:39 PM, Anonymous price per head said...

Thank you for sharing your journey, it is very inspiring, and I use it to motivate me with my own fat loss journey.


Post a Comment

<< Home