Posts by Joel Spolsky

In 2000 I co-founded Fog Creek Software, where we created lots of cool things like the FogBugz bug tracker, Trello, and Glitch. I also worked with Jeff Atwood to create Stack Overflow and served as CEO of Stack Overflow from 2010-2019. Today I serve as the chairman of the board for Stack Overflow, Glitch, and HASH.

2001/04/17

Your typical architecture astronaut will take a fact like “Napster is a peer-to-peer service for downloading music” and ignore everything but the architecture, thinking it’s interesting because it’s peer to peer, completely missing the point that it’s interesting because you can type the name of a song and listen to it right away.

All they’ll talk about is peer-to-peer this, that, and the other thing. Suddenly you have peer-to-peer conferences, peer-to-peer venture capital funds, and even peer-to-peer backlash with the imbecile business journalists dripping with glee as they copy each other’s stories: “Peer To Peer: Dead!”

Read all about it in today’s story: Don’t Let Architecture Astronauts Scare You

2001/04/06

Mark Newman: “As you can see, I’m not a fan of CMM. I view it primarily as a means for high-priced consultants to hold seminars and sell books, not as a process to improve software.”

(CMM: “capability maturity model”.)

Capturing Email Addresses

We used to ask people to provide an email address to sign up for our on-the-web FogBUGZ demo. Just an email address, nothing else: many of the free software demos you find on the web require a complete name, address, where did you hear about us, birthday, mother’s driver’s license ID, etc.

I was curious as to how many people our email request was scaring away. So (sneaky Joel) we changed the demo signup so that 50% of the guinea pigs, er, potential customers had to provide an email address and 50% didn’t.

Result: about half of the people gave up when asked to type in an email address. We want people to try the demo, so we changed it to never ask for an email address.

Of course, people are concerned about privacy and spam. But this reminds me of a more interesting principle of the usability curve: reducing difficulty by even a small amount tends to double the number of people who succeed with a task.

2001/04/05

A couple of developers here at Fog Creek have spent the last day or so doing ‘extreme programming’ … actually pair programming, which is all anybody remembers about extreme programming…

Conclusion: it’s very effective when you have a long list of small bug fixes you want to sprint through, because you can reach incredible velocity. Typos and small bugs get caught right away.

But you can’t stop and concentrate, so it’s probably not so useful for longer programming tasks. Another caveat: personal synergy is crucial. It’s like being a cop: if you don’t like your partner, it’s one of the less pleasant rings of hell! (Luckily, rule #0 in Fog Creek hiring is no jerks.)

2001/03/29

Vacation Planning Time

We’re looking to rent a luxury villa on an island in Greece, walking distance to a nice beach, for a week or two in July/August, for the family. It needs to sleep around 10 people and be self-catered so we can cook our own kosher meals. If anybody has any suggestions, I’d love to hear them!

How Many Lies Can You Find In One Direct Mail Piece?

George Meyer, one of the writers on the Simpsons, likes to collect examples of advertising in which “the word-to-falsehood ratio approaches one.” In an interview in the New Yorker, he complained about a magazine ad for a butter substitute called Country Crock. “It’s not from the country, there is no crock,” he told the interviewer. “Two words, two lies.”

Recently I got this piece of junk mail from Earthlink (larger view)

Just for my own personal amusement, I decided to try to count how many lies are on this particular fine specimen.

  1. The whole piece is attempting to disguise itself as an express mail letter. They are working on the assumption that ignorant recipients will confuse it with a Federal Express letter, or perhaps think that “Urgent Express” is a company that competes with FedEx. Uh huh. Ooooh! The marketing slimeballs at Earthlink must have drooled at the thought of old Marge in a nursing home, practically falling over with excitement that she got an urgent express letter, like those letters you get from fancy New York lawyers urging you to sue the nursing home.

  2. It says that it’s urgent, and it isn’t, it’s just a stupid CD trying to get you to sign up for Internet access.

  3. It says that it’s “express”, but it’s mailed using “Presorted Standard” rate, which isn’t express at all, in fact, it probably cost precisely $0.23 to mail (FedEx is $15.34).

  4. It has a tracking number, but it is using a class of mail service that is not tracked, and I’ll bet you anything that everybody gets the same tracking number. Sorry, folks, for $0.23 you don’t get tracking.

  5. It uses a fake handwriting font, intended to make you think that it is not junk mail but rather something that a person made for you.

  6. It says that it’s from Sky Dayton (founder of Earthlink) although it is actually from Earthlink’s direct marketing department. I can just see the thought going through the copy writer’s head. “People won’t open it unless it’s from someone they know, and everyone knows Sky Dayton!”

  7. It has a “sender’s account number” which is, of course, completely fake (Anybody care to try to use it to sign up for Earthlink?)

  8. It has a little “payment” section with a checkbox indicating that it should be billed to the sender, even though this has no meaning on standard mail.

  9. It has a “release signature” with a little annotation that this signature is “required,” when actually no “release signature” is required at all.

  10. It says “Time Sensitive Material Enclosed,” which is almost certainly untrue and meaningless anyway.

  11. On the back, it says “Weight Limit 8 Ounces” even though the actual weight limit for Presorted Standard is 16 Ounces.

  12. It actually has a piece of clear plastic glued on the front. The clear plastic serves no purpose whatsoever except to imitate FedEx envelopes which have the same plastic to hold the mailing manifest, much like those little butterflies which have fierce markings in attempt to convince butterfly-eaters that they themselves are fierce, even though they couldn’t be less fierce if they were dressed up like Julie Andrews in high heels singing “My Favorite Things.” In nature this is called Batesian mimicry.

The biggest problem with direct mail (what we normal people call “Junk Mail”) is that 99% of it (literally) gets thrown away unopened, Batesian mimicry or not. To combat this, direct mailers will do anything to get you to open their junk, no matter how dishonest.

When I went to Earthlink’s home page, it only took me a couple of clicks to find their Mission and Core Values and Beliefs. And what it says there is:

We require complete honesty and integrity in everything we do.

I didn’t even have the energy to open the damn thing and see how many lies were on the inside. Does this mailing strike you as “completely honest”? Or just “business as usual?” Am I too sensitive? Should I go back to complaining about complaining about Bloatware?

[Followup: Earthlink is unrepentant.]

2001/03/24

Mark Bernstein writes:

There’s one question that bothers me about huge programs like Excel, though, a question you don’t quite address. What are they doing with all that space?

I actually think that Excel’s “minimum system requirements” come from all the other apps that it installs. For example, if they use a part of Internet Explorer 5.x to parse XML or display HTML documents, they just install ALL of Internet Explorer 5.x (which most people have anyway, so it doesn’t really take up that much extra space for most people). There are a few applications such as Microsoft Query, the Jet Database Engine, and Microsoft’s Picture editor, and the office toolbar, which probably get installed when you install any Office App. The actual Excel EXE itself is under 7 MB.

On my system all of office takes up 190MB, which confirms my belief that it is the shared office components which take up all the space. But who cares? It’s a great app and it’s 1% of my disk space.

Lies, Damn Lies, and Direct Marketing

George Meyer, one of the writers on the Simpsons, likes to collect examples of advertising in which “the word-to-falsehood ratio approaches one.” In an interview in the New Yorker, he complained about a magazine ad for a butter substitute called Country Crock. “It’s not from the country, there is no crock,” he told the interviewer. “Two words, two lies.”

Recently I got this piece of junk mail from Earthlink…

Strategy Letter IV: Bloatware and the 80/20 Myth

Version 5.0 of Microsoft’s flagship spreadsheet program Excel came out in 1993. It was positively huge: it required a whole 15 megabytes of hard drive space. In those days we could still remember our first 20MB PC hard drives (around 1985) and so 15MB sure seemed like a lot.

By the time Excel 2000 came out, it required a whopping 146MB … almost a tenfold increase! Dang those sloppy Microsoft programmers, right?

Wrong.

I’ll bet you think I’m going to write one of those boring articles you see all over the net  bemoaning “bloatware”.  Whine whine whine, this stuff is so bloated, oh woe is me, edlin and vi are so much better than Word and Emacs because they are svelte, etc.

Ha ha! I tricked you! I’m not going to write that article again, because it’s not true.

In 1993, given the cost of hard drives in those days, Microsoft Excel 5.0 took up about $36 worth of hard drive space.

In 2000, given the cost of hard drives in 2000, Microsoft Excel 2000 takes up about $1.03 in hard drive space.

(These figures are adjusted for inflation and based on hard drive price data from here.)

In real terms, it’s almost like Excel is actually getting smaller!

What is bloatware, exactly? The Jargon File snidely defines it as “software that provides minimal functionality while requiring a disproportionate amount of diskspace and memory. Especially used for application and OS upgrades. This term is very common in the Windows/NT world. So is its cause.”

I guess those guys just hate Windows. I haven’t run out of memory in more than a decade, ever since virtual memory appeared in Windows 386 (1989). And hard drive space is down to $0.0071 per megabyte and still plummeting like a sheep learning to fly by jumping out of a tree.

Maybe Linus Åkerlund can explain it. On his web page, he writes, “The big disadvantage of using these bloated programs is that you have to load this very large program, even if you just want to accomplish one tiny little thing. It eats up all your memory… you’re not using your system in an efficient way. You make the system seem more inefficient than it really is, and this is totally unnecessary.”

Ohhh. It eats up all your memory. I see. Actually, well, no, it doesn’t. Ever since Windows 1.0, in 1987, the operating system only loads pages as they are used. If you have a 15MB executable and you only use code that spans 2MB worth of pages, you will only ever load 2MB from disk to RAM. In fact if you have a modern version of Windows, the OS will automatically rearrange those pages on the hard drive so that they’re consecutive, which makes the program start even faster next time.

And I don’t think anyone will deny that on today’s overpowered, under-priced computers, loading a huge program is still faster than loading a small program was even 5 years ago. So what’s the problem?

RA Downes gives us a clue. It looks like he spent hours dissecting a small Microsoft utility, apparently enraged that it was a whole megabyte in size. (That’s 3.15 cents of hard drive space at the time he wrote the article). In his opinion, the program should have been around 95% smaller. The joke is that the utility he dissected is something called RegClean, which you’ve probably never heard of. This is a program that goes through your Windows registry looking for things that aren’t being used and deleting them. You have to be a little bit on the obsessive-compulsive side to care about cleaning up unused parts of your registry. So I’m starting to suspect that fretting about bloatware is more of a mental health problem than a software problem.

In fact there are lots of great reasons for bloatware. For one, if programmers don’t have to worry about how large their code is, they can ship it sooner. And that means you get more features, and features make your life better (when you use them) and don’t usually hurt (when you don’t). If your software vendor stops, before shipping, and spends two months squeezing the code down to make it 50% smaller, the net benefit to you is going to be imperceptible. Maybe, just maybe, if you tend to keep your hard drive full, that’s one more Duran Duran MP3 you can download. But the loss to you of waiting an extra two months for the new version is perceptible, and the loss to the software company that has to give up two months of sales is even worse.

A lot of software developers are seduced by the old “80/20” rule. It seems to make a lot of sense: 80% of the people use 20% of the features. So you convince yourself that you only need to implement 20% of the features, and you can still sell 80% as many copies. 

Unfortunately, it’s never the same 20%. Everybody uses a different set of features. In the last 10 years I have probably heard of dozens of companies who, determined not to learn from each other, tried to release “lite” word processors that only implement 20% of the features. This story is as old as the PC. Most of the time, what happens is that they give their program to a journalist to review, and the journalist reviews it by writing their review using the new word processor, and then the journalist tries to find the “word count” feature which they need because most journalists have precise word count requirements, and it’s not there, because it’s in the “80% that nobody uses,” and the journalist ends up writing a story that attempts to claim simultaneously that lite programs are good, bloat is bad, and I can’t use this damn thing ’cause it won’t count my words. If I had a dollar for every time this has happened I would be very happy.

When you start marketing your “lite” product, and you tell people, “hey, it’s lite, only 1MB,” they tend to be very happy, then they ask you if it has their crucial feature, and it doesn’t, so they don’t buy your product.

Bottom line: if your strategy is “80/20”, you’re going to have trouble selling software. That’s just reality. This strategy is as old as the software industry itself and it just doesn’t pay; what’s surprising is how many executives at fast companies think that it’s going to work.

Jamie Zawinski says it best, discussing the original version of Netscape that changed the world. “Convenient though it would be if it were true, Mozilla [Netscape 1.0] is not big because it’s full of useless crap. Mozilla is big because your needs are big. Your needs are big because the Internet is big. There are lots of small, lean web browsers out there that, incidentally, do almost nothing useful. But being a shining jewel of perfection was not a goal when we wrote Mozilla.”

2001/03/23

Version 5.0 of Microsoft’s flagship spreadsheet program Excel came out in 1993. It was positively huge: it required a whole 15 megabytes of hard drive space. In those days we could still remember our first 20MB PC hard drives (around 1985) and so 15MB sure seemed like a lot.

By the time Excel 2000 came out, it required a whopping 146MB … almost a tenfold increase! Dang those sloppy Microsoft programmers, right?

Wrong.