Jakob Nielsen says that Flash is "99% bad." I have to agree. Flash always reduces usability.
On the other hand, every time I read Jakob Nielsen, I get this feeling that he really doesn't appreciate that usability is not the most important thing on earth. Sure, usability is important (I wrote a whole book about it). But it is simply not everyone's number one priority, nor should it be. You get the feeling that if Mr Nielsen designed a singles bar, it would be well lit, clean, with giant menus printed in Arial 14 point, and you'd never have to wait to get a drink. But nobody would go there, they would all be at Coyote Ugly Saloon pouring beer on each other.
I've created a discussion group for this site. You don't have to be a member to post!
Discussion topic number one is:
Bill Gates on Poverty
"Pacing the room, waving his hands, he conjures up an image of an African village that receives a computer.
"'The mothers are going to walk right up to that computer and say, My children are dying, what can you do?' Mr. Gates says. 'They're not going to sit there and like, browse eBay or something. What they want is for their children to live. They don't want their children's growth to be stunted. Do you really have to put in computers to figure that out?'"
--Bill Gates, quoted in today's New York Times.
On Certification of Programmers
Steve McConnell, who has written at least one really good book on software engineering, wrote another book last year, called After the Gold Rush. Steve is very concerned with the "professionalism" of software engineers and the quality of their skills. The most controversial part of the new book is his call for some kind of official, government-type certification of programmers. His company's website is full of statements like: "When 'Professional Software Engineer' certification becomes available in Washington..." When, not if. Yikes.
Needless to say, he's not winning many friends with that idea. I would have written an essay about it, but Tom DeMarco has already done it much better than I could have. "Whatever the merits of certification, it has always been a big hit among those who get to do the certifying," he writes. "Certification is not something we implement for the benefit of the society but for the benefit of the certifiers." Read his short article, it's great, and then ask yourself this: Would 18-year-old Shawn Fanning, who wrote Napster and changed the world, have been certified?
Don't Buy "After the Gold Rush." It's wrong.
The new Robert Jordan book is about to ship. Buy that instead.
From the blatant self-promotion department:
The biggest bug:
More discussion on this topic.
UI Design for Programmers
Due to popular demand, the book is now available as a single, giant HTML page suitable for downloading, printing, and reading in the park.
New Toys Department(why else go into business for yourself?)
I got a new laptop computer. It's an IBM Thinkpad X20. Truly a great, tiny laptop computer with a real keyboard and a real screen. (Dave, these are much better than Vaios, and more reliable, too.)
Most of the day, I keep it plugged into a docking station so that I can use a full size monitor. Fog Creek is all about flat screens; we all use Samsung 770TFT monitors. These monitors are the best monitors you've ever seen, everybody that has them sings hosannas all day long. So far I've bought 4 of them. They are truly amazing. The screen is 17", about the same size as a 19" CRT. It's the only flat screen that runs at 1280x1024 that you can afford ($1300 most places).
I can't help it, voting makes me extremely happy and proud in a deep way. Standing in line with a bunch of fellow citizens doing our civic duty almost makes me tear up. Democracy is something we take for granted, but... think of it from a historical point of view. They let me -- a Jew -- vote! For 2000 years that was unheard of. I can vote for fat old Representative Jerry Nadler, a wonderful man who marches proudly in every NYC gay pride parade, sweating like a pig, even though he looks like he's about to keel over. I love him. I have sent Jerry something like 3 dozen letters over the years, and in every single case, his political position was totally in sync with mine. "Save the whales, Jerry," I would write, and he would respond, "yes, in fact I sponsored that bill." "Protect free speech," I would write, and he would respond, "indeed I wrote the very bill you're talking about." I'm proud to be able to vote for Jerry Nadler and ecstatic that I have that right.
Is Bush going to actually be the next president because of a usability bug?
"If your program model is nontrivial, it's probably not the user model." (from Chapter 2 of UI design for programmers) Any time you do something even a little bit complicated, some part of your user population is going to be confused, because they thought that you were doing the simple thing.
Obviously, usability matters for more than just web sites. Tog writes about this in When Interfaces Kill. And this Florida ballot is going to show up in UI books for the next 100 years.
Florida's Web Site
The Florida Department of State web server is bogged down from zillions of people checking election results. State CIO Gene Bryan is quoted by CNN as saying, "There's not a whole lot you can do other than just get through the night and try to regroup in the morning to get some additional resources to handle the workload."
Um, hello? They've got 4 or five stupid GIFs and a gratuitous scrolling Java applet on that damn page. No wonder you can't handle the load. Clue: Turn off the applet and GIFs for a couple of weeks. Duh. Any half-baked web developer would know that.
Transmeta goes Public
I like Transmeta, for two big reasons.
First, they are the first CPU designers to finally admit that the age of designing instruction sets is over. If you want to design a CPU for PCs, and you want people to use it, you no longer have the luxury of inventing your own instruction set. You have to run x86 code. Period. And Transmeta recognized this from the start.
The second reason I like Transmeta is that they decided to tackle a really, really hard problem, even though it took many years to get launched. This is not a "build to flip" company. They don't mind going after Intel, which is very brave of them. That puts them squarely in the Ben and Jerry's camp. So many of the dot coms that are blowing up right now were built in about three months and never had any sustainable competitive advantage, let alone barriers to entry, and it's no wonder that they're doing so badly.
(By the way, when I say "I like Transmeta," I don't mean as an investment. Intel is probably going to squash them like a bug without even doing anything. Which is too bad, because I like Transmeta.)
Caution, the moving walk is nearing its end. Please watch your step.
I'm in Denver airport waiting for a flight back to NYC on the utterly, completely horrid United Airlines. As I look around dozens of flights are either cancelled, delayed by hours, or overbooked. The customer service line for rebooking is miles long.
If you know the secret, you can get a nice cubicle upstairs with an ethernet connection to the Internet ($3.95 for 30 minutes) and very comfortable aeron chairs. The only trouble is that it's near the end of the moving walk, and there's a voice on the loudspeakers which repeats, "caution, the moving walk is nearing its end. Please watch your step." every half minute or so. So far it hasn't driven me crazy, yet, but I'm sure it will.
Inprise is Borland Again
The only time a company would want to change its name, from something people recognize to something completely new, would be if it had such low brand equity that the old name was a liability. So ValuJet, nearly bankrupted due to their shockingly poor safety record, changed their name to AirTran, and when a bunch of consumer-loathed phone companies merged (Bell Atlantic, GTE, and AirTouch) they must have decided that not one of those names was worth the recognition, so they came up with Verizon. But there was nothing wrong with Borland, so I never understood why they changed their name to Inprise.
I guess they didn't either, because looking at their web site, it seems like they're back to Borland.
Prediction: you'll see a lot of name changes among local phone companies, cable television companies, and airlines over the next few years, as the shakeout for years of abysmal customer service starts to catch up with them.
I was quoted in Le Monde: «Bush finira vraiment par être le premier président élu grâce à un "bogue d'utilisabilité"»
We're trying to find a new office for Fog Creek Software in New York. One of the buildings we're looking at, the World Trade Center, requires businesses to have an international presence. It turns out that Joel on Software has subscribers in 44 countries!
Dell And Usability
Dell doesn't think like their users think. When you go to their website, the first question they ask is what kind of buyer you are: home, small business, large business, etc. I don't know what I am! I guess I'm a small business, but home systems are usually cheaper, and I usually like to buy top of the line PCs, so maybe I need the Big Business section. This distinction is completely lost on me.
I want a PC. What difference does it make whether I'm a home buyer or a small business buyer? I suspect that they are asking me this because they want to charge businesses more than homes, and large businesses even more. To defeat their system, I choose "home."
Suppose I want a PC to run Linux. (I do, actually, need a small, cheap Linux server). There's no way to search for computers that come with Linux as an option. In fact, if you click on the "Search" button and type "Linux," the very first link you get is for something called: "Air Force - Dell and Linux", some kind of page targetted to buyers in the US Air Force. Very strange.
There's a link there on the USAF page to "Dell and Red Hat Alliance." I tried it, hoping it would get me out of the Air Force zone. Indeed it did, but all it had was a list of press releases. Thanks, guys, I'm trying to buy a computer here.
And in fact, what I really want is a Linux computer in a small form factor. We don't have much room and I hardly ever need expansion cards. How do I tell Dell's dang web site that I want a small form factor Linux machine?
The only way to really find systems that run Linux is to try configuring a bunch of different systems until you find a system that happens to have Linux as one of the OS options in the dropdown box.
If Dell is really "building one for me," I don't see why there are so many confusing product lines and why Dell insists on putting their customers into little boxes based on their arbitrary distinctions. I'm sure it made sense for Michael Dell to organize his executives according to target markets, but it makes no sense to organize the web site this way.
The first principle of usability says that you have to bring the program model in line with the user model. Figure out what the user expects to see on the first page, and make that the first page.
Look at Apple's hardware page. This makes sense. There's a list of computers down the side.Or the IBM Thinkpad site. As soon as you click "Browse", you see an organized list describing the main models and their key differences.
As for search, it's no longer good enough to rely on crappy old mechanical search engines. At the very least, your search engine must look for common keywords, trademarks, your own damn brand names, and provide a reasonable answer. Search for "Thinkpad" on the IBM website, and you go to the Thinkpad homepage. Search for "Linux" and you go to IBM's Linux website. But if you search for "Linux" at Dell, you wind up deep inside the site for US Air Force buyers, which is almost certainly wrong.
Survey: How long did it take you to find the first 3 show-stopper bugs in Netscape 6?
I just came back from a weekend in Boston.
The discussion on Netscape 6 seems to be pretty universally negative. I know, I know, I asked for bug reports, so it's not exactly fair.
Painless Bug Tracking
TRS-80 Level-I BASIC could only store two string variables, A$ and B$. Similarly, I was born with only two bug-storing-slots in my brain. At any given time, I can only remember two bugs. If you ask me to remember three, one of them will fall on the floor and get swept under the bed with the dust bunnies, who will eat it.
Keeping a database of bugs is one of the hallmarks of a good software team. I never cease to be amazed at how few teams are actually doing this. One of the biggest incorrect facts that programmers consistently seem to believe is that they can remember all their bugs or keep them on post-it notes.
If I can bend your ear a moment, I'd like to explain a pretty painless way to do bug tracking, in the spirit of my previous articles on painless schedules and painless specs.
Netscape 6 is just not making people happy.
I'm happy, because Netscape 6 is practically an advertisement for what happens if you don't read Joel on Software and do what I tell you :)
The number of problems in Netscape 6 that I've already addressed on these pages is mind boggling.
The Autodesk Files
Wow, I read this in print years ago, and didn't realize it was on the web! The Autodesk Files tells the story of the creation of Autodesk. An interesting look at bootstrapping a big company before the days of lunatic VCs and dotcom mania. (Thanks to Bill Seitz for finding it!)
"Lifeboat is probably the largest independent software vendor in the world today," John Walker wrote, back in 1982. (They were really more of a distributor). Lifeboat was eaten up by what is now Programmer's Paradise, if you can believe that. And people stopped calling PCs "micros." Now when you write "micros" it looks like you were going to write microsoft but thought better.
Fun with Mailing Lists
In an attempt to gain a bit more control over the mailing lists for Joel on Software, I've installed a program called Mailman which, from now on, will handle the email notifications I send to my subscribers. (For me, this means two big improvements: I can delete email addresses that bounce, instead of getting 50 bounces in my mailbox every time I send a bulletin; it should also reduce the incidence of corrupted messages that some of you have been reporting.)
Installing Mailman, by the way, was a barrel of laughs. Like most open source software, "it's only free if your time is worthless." Sob.
If you're not already a subscriber, please sign up! (I've made it very easy.) You'll receive a short notification whenever there is a significant new article on the site -- that is, one of my long articles, not just the short ramblings on the home page which can appear almost every day.
Yesterday we shipped our first product, a bug tracking package called FogBUGZ. I've noticed that lots of development teams have bug tracking software, but many of them just don't use it.
There are a lot of subtle sociology and group-dynamics issues that explain why some software is univerally used, and other software languishes on the shelf. Microsoft's internal bug tracking tool, RAID, is used universally by developers throughout the company. (FogBUGZ works a lot like RAID, but it's web-based instead of client-server). But lots of companies spend hundreds of thousands of dollars on overengineered "defects management" tools which nobody ever uses.
And the reason for the difference comes down to small issues of usability and sociology.
For example, usability theory holds that if you make a task 10% easier, you double the number of people that can accomplish it. I've always felt that if you can make it 10% easier to fill in a bug report, you'll get twice as many bug reports. (When I removed two questions from the Joel On Software signup page, the rate of new signups went up dramatically). Over the three years in which I've been developing and tweaking FogBUGZ, I've resisted dozens of requests for new fields, because I've learned that the more fields you have to fill out, the less likely you are to use the bug database to report a bug, and the more likely you are to work around the system by sending email or making a post-it note.
And in sociology, it's vital to remember that change is hard. It's difficult to get people to learn new habits and new ways of working, and it's impossible to inflict a new style of working on an existing group of developers all at once. So we designed FogBUGZ to be viral. One person on any team - a manager, tester, or developer, can start using it, and pretty soon it will spread to the whole development team. It can start with a single developer, who starts using it as a "to do" list. Then it spreads slowly: maybe the first developer assigns an item on the to do list to a friend. Then the two of them decide to tell the testing team not to report bugs via email, but to use the bug tracking tool instead. Rapidly, it spreads to the whole development organization, and pretty soon, developers get disgruntled that they can't enter a bug for the office manager to get more Mountain Dew.
FogBUGZ reflects our attention to usability and sociology, not just technological "gee whiz" gadgetry. Try it out! We've got a demo online where you can set up your own private bug database to play with for free. And let me know how you like it.
Google Just Rocks.
They are beta testing a new navigation bar -- an add-in for Internet Explorer that's really, really cool. It's the first thing I've seen that justifies the screen real estate. (And I'm not just saying that because I own Google stock!)
Working without a salesperson
As a tiny company, Fog Creek Software can't afford a sales team, or even a sales person, or in fact, a sales cat. "So how do you plan to sell your consulting services?" you ask.
"Aha!" I say. "I'll promote them on my web site! Surely somebody out there wants to hire smart programmers and architects."
Here's what I was thinking of doing to make it worth your time. If you know someone who can use the services of Fog Creek Software, and they hire us, I'll pay you 5% of the revenue we get from the project, up to a maximum $5000 (U.S.) for each referral.
I'll post more details and the complete terms as soon as I get the OK from my lawyer. ("You can afford a lawyer?" you ask. "No, but we couldn't afford to buy errors and omissions insurance if we didn't have a lawyer, so it's the lesser of two costs," I reply). Meanwhile start thinking of all your friends who are CTOs at wealthy startups and Fortune 500 corporations that need a small but crack team of software wizards.
Know somebody who might hire Fog Creek Software? We'll pay up to $5000 as a finder's fee.
I'm pretty psyched, because UI Design for Programmers is going to appear in print soon.
The print version will be expanded from the web version, with about 5 bonus chapters, lots more illustrations, and a foreword by Dave Winer. It's being published by Apress, a publisher I love because the founder, Gary Cornell, actually knows more about programming than I do, a rare trait in a computer books publisher.
Joel on Software is closed for the day.
1110 posts over 13 years. Everything I’ve ever published is right here.
There’s a software company in New York City dedicated to doing things the right way and proving that it can be done profitably and successfully.