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

programming languages

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 solution

By Jeff Atwood ·
Comments

responsive design

... and a Pony!

From the “why I don’t read Robert Scoble any more” department: One thing I wish is that Web site developers/designers would look at their site on a small screen with limited bandwidth. So many sites suck really bad. I’m going to call these sites out with increasing

By Jeff Atwood ·
Comments

software development

Code Reviews: Just Do It

In Humanizing Peer Reviews, Karl Wiegers starts with a powerful pronouncement: Peer review – an activity in which people other than the author of a software deliverable examine it for defects and improvement opportunities – is one of the most powerful software quality tools available. Peer review methods include inspections, walkthroughs, peer

By Jeff Atwood ·
Comments

audio programming

3D positional audio and HRTFs

I’ve always been fascinated with 3d positional audio through headphones. The nice thing about headphones is that they don’t bug your neighbors or your wife – and they’re actually the best way to hear surround sound, too: But for some surround sound, particularly 3D positional computer audio, headphones

By Jeff Atwood ·
Comments

windows xp

The World’s Slowest Windows XP System

I’m not sure exactly why, but the guys at winhistory.de managed to install Windows XP on a 20 megahertz Pentium 1 system with 32 megabytes of RAM: That puts the XP in back in Windows XP – Xtremely Pokey: The CPU is working at 60% of full capacity at

By Jeff Atwood ·
Comments

software development concepts

DIVX vs. DivX

It’s ironic that the popular DivX codec has all but obliterated the identity of the ill-fated DIVX pay-per-view rental system. VS. So what was DIVX? DIVX (Digital Video Express) was a rental format variation on the DVD player in which a customer would buy a DIVX disc – physically similar

By Jeff Atwood ·
Comments

virtual machines

Our Virtual Machine Future

Lately I’ve been spending more and more time inside virtual machines. Whenever I need to try out a new bit of software, whether it’s a small shell extension, or a giant product like Team System – I tear off a new VM first. I don’t want to junk

By Jeff Atwood ·
Comments

programming languages

Software Developers and Asperger’s Syndrome

When I read Wesner Moise’s post on Asperger's Syndrome, I wasn’t surprised. Many of the best software developers I’ve known share some of the traits associated with Asperger’s Syndrome: 1. Social impairments It is worth noting that because it is classified as a spectrum

By Jeff Atwood ·
Comments

security

Is there an optimal piracy rate?

I’ve recently been struggling with a number of racing sims I bought to use after work hours in our new racing cockpit. I’m a big believer in supporting developers. I’m a developer myself. But digging around for CDs or DVDs is impractical for dedicated gaming rigs, so

By Jeff Atwood ·
Comments

regex

Regex Performance

I was intrigued by a recent comment from a Microsoft Hotmail developer on the pitfalls they’ve run into while upgrading Hotmail to .NET 2.0: Regular Expressions can be very expensive. Certain (unintended and intended) strings may cause RegExes to exhibit exponential behavior. We’ve taken several hotfixes for

By Jeff Atwood ·
Comments

.net

Return to the Planet of Managed Code Bloat

I just updated my post The Bloated World of Managed Code with baseline memory footprints for Console and Winforms apps in .NET 2.0. I’ll admit I am a bit of a hypocrite when it comes to managed code apps. Now that tiny, native BitTorrent clients are available such

By Jeff Atwood ·
Comments

code refactoring

Flattening Arrow Code

I often encounter code like this: if (rowCount > rowIdx) { if (drc[rowIdx].Table.Columns.Contains("avalId") { do { if (Attributes[attrVal.AttributeClassId] == null) { // do stuff } else { if (!(Attributes[attrVal.AttributeClassId] is ArrayList)) { // do stuff } else { if (!isChecking) { // do stuff } else { // do stuff

By Jeff Atwood ·
Comments