Joel Spolsky Quotes
-
The secret of Big Macs is that they're not very good, but every one is not very good in exactly the same way.
→ -
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.
→ -
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.
→ -
Nothing works better than just improving your product.
→ -
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.
→ -
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.
→ -
A user interface is well-designed when the program behaves exactly how the user thought it would.
→ -
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.
→ -
That's another flaw with performance-based rewards: They are easy for one of your competitors to top.
→ -
Common programmer thought pattern: there are only three numbers: 0, 1, and n.
→ -
Talk to your customers. Find out what they need. Don't pay any attention to the competition. They're not relevant to you.
→ -
Listen to your customers, not your competitors.
→ -
Shipping is a feature. A really important feature. Your product must have it.
→ -
It's harder to read code than to write it.
→ -
Writing code is not production, it's not always craftsmanship though it can be, it's design.
→ -
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.
→ -
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.
→ -
Life is a bit hard sometimes, and sometimes you have to step up and fight fights that you never signed up for.
→ -
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.
→ -
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.
→ -
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.
→ -
If your goals is to produce something of permanent value, you start to think differently about you want on the site.
→ -
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.
→ -
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.
→ -
All non-trivial abstractions, to some degree, are leaky.
→ -
We just have to come in every morning and somehow, launch the editor.
→ -
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.
→ -
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.
→ -
Design adds value faster than it adds cost.
→ -
Every day that we spent not improving our products was a wasted day.
→