Jeff Atwood

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

Bay Area, CA
Jeff Atwood

The Day Performance Didn't Matter Any More

OSNews published a nine-language performance roundup [http://osnews.com/story.php?news_id=5602&page=3] in early 2004. The results are summarized here: intlongdoubletrigI/OVisual C++9.618.86.43.510.548.8Visual C#9.723.917.74.19.9 65.3gcc C9.828.89.514.910.073.

By Jeff Atwood · · Comments

.NET Pet Shop 4

Vertigo Software's .NET Pet Shop 4.0 article [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnbda/html/bdasamppet4.asp] just went live on MSDN. It's Pet Shop! You know... our old pal, Pet Shop [http://www.gotdotnet.com/team/compare/petshop.aspx]: However,

By Jeff Atwood · · Comments

Revisiting Edit and Continue

Edit and Continue, which shipped in Visual Studio 2005, is generally regarded as A Good Thing. It's pretty difficult to argue against the benefits of immediacy when debugging, but that isn't about to stop some people: * Frans Bouma People who grew up with assemblers, the gnu

By Jeff Atwood · · Comments

Keeping Private Keys Private

After I posted the CodeProject article .NET Encryption Simplified, a reader asked this question in the comments: I would like to know what your thoughts are on private key storage in applications. I believe the recommended practice is to use the DPAPI, but I have found this to be too

By Jeff Atwood · · Comments

Smart Tags and Sane Keyboard Shortcuts

I constantly rename variables. It's probably the single most frequent refactoring activity I do. And that's why I love Visual Studio 2005's built-in Smart Tags feature. If you're not familiar with smart tags, check out K. Scott Allen's post; he

By Jeff Atwood · · Comments

Don't Acronymize Your Users

As a commenter noted in my previous post on how not to give a presentation, I have another complaint about software development presentations that I didn't list. They're chock full of meaningless acronyms. SOAP, BI, SOA, RDBMS, SGML, CRUD, RMS, RDBMS, XML, ORM, FAQ. I appreciate

By Jeff Atwood · · Comments

How Not to Give a Presentation

I hold speakers to relatively high standards. They get paid to present to large groups because they're ostensibly good communicators. And I cannot believe the beginner mistakes some of the speakers are making here at VSLive. Based on my experiences over the last two days, here are a

By Jeff Atwood · · Comments

Presentation Magnification

Here at VSLive! 2006 San Francisco, I've been sitting through a lot of presentations. Unfortunately, I've spent a disproportionate amount of that time staring at tiny, unreadable 12 and 10 point IDE text. Presenters, please don't do this to your audiences. If you can&

By Jeff Atwood · · Comments

Not All Bugs Are Worth Fixing

One thing that continually frustrates me when working with dedicated test teams is that, well, they find too many bugs. Don't get me wrong. I want to be the first person to know about any bug that results in inconvenience for a user. But how do you distinguish

By Jeff Atwood · · Comments

Google is the Help Menu

Jensen Harris recently cited some Microsoft Office usability research which produced a rather counter-intuitive result [http://blogs.msdn.com/jensenh/archive/2005/11/29/497861.aspx]: > One of the most interesting epiphanies I've had over the last few years seems on the surface like a paradox: "

By Jeff Atwood · · Comments

Visual Design Patterns

A recent post by Steve Makofsky reminded me that the excellent UI Patterns and Techniques site is now a book from O'Reilly -- Designing Interfaces. There's technically no reason to buy a book on visual design patterns when you can find the same information online .. * GUI

By Jeff Atwood · · Comments

Dependency Avoidance

Have you ever worked with developers that were charter members of the third-party-control-of-the-month club? You know the kind-- they never met a third party control they didn't like. They spend all day trolling downloads and experimenting with every tool listed on The Daily Grind. Which means deploying your

By Jeff Atwood · · Comments