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

lazy programming

How to be Lazy, Dumb, and Successful

Philipp Lenssen agrees that inspired laziness is a desirable trait for software developers: ... only lazy programmers will want to write the kind of tools that might replace them in the end. Only a lazy programmer will avoid writing monotonous, repetitive code. The tools and processes inspired by laziness speed up

By Jeff Atwood ·
Comments

gaming

Mavis Beacon Ate My Brain!

You may be familiar with the classic Mavis Beacon Teaches Typing* series of software from Broderbund. Well, Sega’s sublime Typing of the Dead is like Mavis Beacon Teaches Typing... if Mavis Beacon was a flesh-eating zombie!! Any self-respecting software developer should be a decent typist. Now you can prove

By Jeff Atwood ·
Comments

user experience

The User Interface Is The Application

Shawn Burke’s post Shippin’ Ain’t Easy (but somebody gotta do it) explains why you have to resist change at the end of a project, no matter how justifiable and rational the reasons may be. Even the smallest change has a real risk of introducing additional bugs. The first

By Jeff Atwood ·
Comments

sql

Microsoft LogParser

Ask yourself this question: what if everything could be queried with SQL? Microsoft’s LogParser does just that. It lets you slice and dice a variety of log file types using a common SQL-like syntax. It’s an incredibly powerful concept, and the LogParser implementation doesn’t disappoint. This architecture

By Jeff Atwood ·
Comments

events

Is DoEvents Evil, Revisited

A colleague of mine had some excellent comments on the surprising reentrancy issues you’ll run into when using Application.DoEvents(): The Application.DoEvents method is often used to allow applications to repaint while some longer task is taking place. This is usually the result of polling instead of using

By Jeff Atwood ·
Comments

.net

Clean Sources Plus

Omar Shahine’s Clean Sources is a nifty little right-click app for .NET developers: This application does one thing. It adds an explorer shell menu to folders that when selected will recursively delete the contents of the bin, obj and setup folders. If you have a .NET project that you

By Jeff Atwood ·
Comments

image processing

The myth of infinite detail: Bilinear vs. Bicubic

Have you ever noticed how, in movies and television, actors can take a crappy, grainy low-res traffic camera picture of a distant automobile and somehow “enhance” the image until they can read the license plate perfectly? Yeah. I don’t know what kind of crazy infinite-detail fractal images these scriptwriters

By Jeff Atwood ·
Comments

programming languages

Are All Programming Languages The Same?

There’s a chart in Code Complete that compares the productivity of working in different languages: Programmers working with high-level languages achieve better productivity and quality than those working with lower-level languages. Languages such as C++, Java, Smalltalk, and Visual Basic have been credited with improving productivity, reliability, and comprehensibility

By Jeff Atwood ·
Comments

security

Nasty Software Hacks and Intel’s CPUID

We were discussing nasty software hacks today at lunch. The worst hacks are always in software, but those software hacks have an insidious tendency to seep into the hardware, too. I was reminded of Intel’s infamous CPUID hack: Prior to the Pentium, software had to jump through elaborate loops

By Jeff Atwood ·
Comments

programming languages

Microsoft 1978

I’m sure most of you are familiar with this famous Microsoft group photo from December 1978: Groovy. In case you were wondering, the photo is authentic. It’s even featured on the official Microsoft Bill Gates biography page. Of course we recognize Bill Gates in that famous photo, but

By Jeff Atwood ·
Comments

ui/ux

UI Follies: Windows Media Player Edition

Windows Media Player may be the only windows application with a UI that gets progressively worse with each new version. It is my media player of choice due only to overwhelming indifference on my part; I curse every time I use it. That’s why I was so encouraged by

By Jeff Atwood ·
Comments