Joel Spolsky quotes:

+1
Share
Pin
Like
Send
Share
  • Usability is not everything. If usability engineers designed a nightclub, it would be clean, quiet, brightly lit, with lots of places to sit down, plenty of bartenders, menus written in 18-point sans-serif, and easy-to-find bathrooms. But nobody would be there. They would all be down the street at Coyote Ugly pouring beer on each other.

  • Full service brokers, in this day and age of low cost mutual funds and discount brokers, are really nothing more than machines for ripping off retail investors.

  • Software development takes immense intellectual effort. Even the best programmers can rarely sustain that level of effort for more than a few hours a day. Beyond that, they need to rest their brains a bit, which is why they always seem to be surfing the Internet or playing games when you barge in on them.

  • If you can't understand the spec for a new technology, don't worry: nobody else will understand it either, and the technology won't be that important.

  • I've been using Vista on my home laptop since it shipped, and can say with some conviction that nobody should be using it as their primary operating system - it simply has no redeeming merits to overcome the compatibility headaches it causes.

  • A user interface is well-designed when the program behaves exactly how the user thought it would.

  • Shipping is a feature. A really important feature. Your product must have it.

  • Entrepreneurship boils down to the simple fact that a team of really smart people who can get things done are going to get smart, useful things done.

  • Not having a schedule is OK if it's your PhD and you plan to spend 14 years on the thing, or if you're a programmer working on the next Duke Nukem and we'll ship when we're good and ready. But for almost any kind of real business, you just have to know how long things are going to take, because developing a product costs money.

  • Listen to your customers, not your competitors.

  • Nothing works better than just improving your product.

  • If your goals is to produce something of permanent value, you start to think differently about you want on the site.

  • Remember, just because Microsoft can do something, doesn't mean you can. Microsoft makes their own gravity. Normal rules don't apply to them.

  • The secret of Big Macs is that they're not very good, but every one is not very good in exactly the same way.

  • Writing code is not production, it's not always craftsmanship though it can be, it's design.

  • Common programmer thought pattern: there are only three numbers: 0, 1, and n.

  • If you are a programmer working in 2006 and you don't know the basics of characters, character sets, encodings, and Unicode, and I catch you, I'm going to punish you by making you peel onions for six months in a submarine.

  • Every day that we spent not improving our products was a wasted day.

  • People ridiculously overvalue aesthetics and beauty when evaluating products. It's one of the reasons iPods, and, for that matter, Keanu Reeves, are so successful.

  • Talk to your customers. Find out what they need. Don't pay any attention to the competition. They're not relevant to you.

  • Design adds value faster than it adds cost.

  • Life is a bit hard sometimes, and sometimes you have to step up and fight fights that you never signed up for.

  • That's another flaw with performance-based rewards: They are easy for one of your competitors to top.

  • If something seems possible, that's probably because someone is already doing it. When something seems that it can't possibly work, nobody tries it. Real innovation happens when someone tries anyway, overlooking an obvious flaw, and finds a way to make an idea work.

  • Good software, like wine, takes time.

  • Never put yourself in a position that will put yourself at risk if you make the wrong decision. We spent cash on everything. It's fashionable to make 'bet the company' decisions, but don't do it.

  • So if you want to get things done, you positively have to understand at any given point in time what is the most important thing to get done right now and if you're not doing it, you're not making progress at the fastest possible rate.

  • Watching nonprogrammers trying to run software companies is like watching someone who doesn't know how to surf trying to surf. Even if he has great advisers standing on the shore telling him what to do, he still falls off the board again and again.

  • There's a subtle reason that programmers always want to throw away the code and start over. The reason is that they think the old code is a mess. [...] The reason that they think the old code is a mess is because of a cardinal, fundamental law of programming: It's harder to read code than to write it.

  • Indeed one of the best ways to deflect attacks is to make it look like they're succeeding. It's the software equivalent of playing dead.

  • We just have to come in every morning and somehow, launch the editor.

  • Something is usable if it behaves exactly as expected.

  • An idea isn't worth that much. It's the execution of the idea that has value. If you can't convince one other person that this is something to devote your life to, then it's not worth it.

  • Beware of Methodologies. They are a great way to bring everyone up to a dismal, but passable, level of performance, but at the same time, they are aggravating to more talented people who chafe at the restrictions that are placed on them.

  • It's harder to read code than to write it.

  • Last week I was listening to a podcast on Hanselminutes, with Robert Martin talking about the SOLID principles "¦ they all sounded to me like extremely bureaucratic programming that came from the mind of somebody that has not written a lot of code, frankly.

  • All non-trivial abstractions, to some degree, are leaky.

+1
Share
Pin
Like
Send
Share