Jeff Atwood

Indoor enthusiast. Co-founder of Stack Overflow and Discourse. Disclaimer: I have no idea what I'm talking about. Find me:

Bay Area, CA
Jeff Atwood

keyboard

Keyboarding: Microsoft Natural Ergonomic 4000

I was plenty excited when I saw Microsoft was releasing a new non-mangled ergonomic keyboard – the Microsoft Natural Ergonomic Keyboard 4000. Now that I own one, I’m not excited any more. I’m ecstatic! This keyboard is the natural heir to the obsolete but much loved Microsoft Natural Keyboard

By Jeff Atwood ·
Comments

guids

Mastering GUIDs with Occam's Razor

Do you remember the scene from the movie Full Metal Jacket where the marines recite the USMC creed? It’s a little known fact, but programmers have a similar creed: This is my GUID. There are many like it but this one is mine. My GUID is my best friend.

By Jeff Atwood ·
Comments

naming conventions

Microsoft naming: who stole the soul?

Jason Kemp notes that Microsoft's choice of product names can have some unintended consequences: I don't know yet how I feel about the name Windows Vista, but it at least has some character to it. But Windows Presentation Foundation? Windows Communication Framework? Who wants to use

By Jeff Atwood ·
Comments

programming languages

Programming 4 Fun

Looking for something fun to do on family night? How about a friendly game of c-jump, the programming board game: Although the prospect of a computer programming board game sounds positively stultifying, there is a rich history of computer games based on programming. It’s not a programming game per

By Jeff Atwood ·
Comments

user experience

On the Death of the Main Menu

One of the biggest highlights of PDC 2005 was the first day keynote, when the Office 12 UI was unveiled. I don’t know if people realized the significance of what we saw at the time – but we had just witnessed the death of the main menu. There’s no

By Jeff Atwood ·
Comments

software development concepts

In Defense of Verbosity

During the fantastic Monad session at PDC 2005,* Jeffrey Snover and Jim Truher illustrated the tradeoff between verbosity and conciseness: cp c:apples c:oranges -fo -r copy-item c:apples c:oranges -force -recurse Monad has a ton of aliases for common commands (e.g., echo is the same as

By Jeff Atwood ·
Comments

email

When Email Goes Bad

It’s easy to fire off an email with barely any effort at all. And that’s exactly how much effort goes into most emails: none. Ole Eichhorn’s Tyranny of Email offers a succinct set of guidelines to avoid thoughtless email abuse: 1. Never criticize anyone in email. Avoid

By Jeff Atwood ·
Comments

c++

Moire Screensaver Source

I’m not a big screensaver enthusiast per se, but one of my all time favorite screensavers is definitely Moire from the DirectX 8.1 SDK. It’s simple yet visually striking, and it works seamlessly on multiple monitors. It’s also hardware accelerated on each monitor without requiring a

By Jeff Atwood ·
Comments

software development concepts

The Positive Impact of Negative Thinking

In Waltzing with Bears: Managing Risk on Software Projects, DeMarco and Lister outline the dangers of penalizing negative thinking: Once you’ve identified and quantified these risks, they can be managed just like the others. But getting them out on the table can be a problem. The culture of our

By Jeff Atwood ·
Comments

ui design

Is UI still in the stone age?

The Top 8 reasons user interface design is in the stone age is more of a rant than a reasoned argument, but it’s still worth reading. If UI design is in the stone age, why are there at least two sites which document known UI patterns? 1. UI Patterns

By Jeff Atwood ·
Comments

security

The Six Dumbest Ideas in Computer Security

Marcus Ranum, the inventor of the proxy firewall, brilliantly condenses why many security efforts are doomed from the start: they fall prey to the The Six Dumbest Ideas in Computer Security : 1. Default Permit Also known as “on by default.” This one is huge, and it alone is why the

By Jeff Atwood ·
Comments