Jeff Atwood

Indoor enthusiast. Co-founder of Stack Overflow, Discourse, and RGMII. Disclaimer: I have no idea what I'm talking about. Let's be kind to each other. Find me

Bay Area, CA
Jeff Atwood

software development concepts

The Reality of Failure

How can you tell experienced programmers from beginners? New programmers think if they work hard, they might succeed. Experienced programmers know that if they work really hard, they might not fail. Allow me to elaborate with an excerpt from an interview with Steve McConnell: SM: One of the points I

By Jeff Atwood ·
Comments

.net

Net.WebClient and Deflate

In a previous entry, Net.WebClient and Gzip, I posted a code snippet that enables the missing HTTP compression in Net.WebClient, using the always handy SharpZipLib. This code eventually made it into one of my CodeProject articles. An eagle-eyed CodeProject reader noted that, while my code worked for

By Jeff Atwood ·
Comments

code refactoring

The real cost of performance

I don’t usually get territorial about modifications to “my” code. First of all, it’s our code. And if you want to change something, be my guest; that’s why God invented source control. But, for the love of all that’s holy, don’t take working code and

By Jeff Atwood ·
Comments
WebFileManager updated

c#

WebFileManager updated

I updated the WebFileManager CodeProject article with some enhancements. It now supports zipping files and column sorting: I included both the code-behind and inline code versions of the page in the solution archive this time. There’s also a new dependency on SharpZipLib, assuming you want the remote file

By Jeff Atwood ·
Comments
MAME Cocktail Arcade

arcade gaming

MAME Cocktail Arcade

After years of resistance, I finally buckled. I ordered a 3-way MAME cocktail arcade kit: Over the last few years, the homebrew arcade market has spawned a number of businesses specializing in prefab cabinets – think IKEA meets MAME. They ship you the cabinet in a large box, and you

By Jeff Atwood ·
Comments

unicode

There Ain’t No Such Thing as Plain Text

Over the last few months, I’ve come to realize that I had an ugly American view of strings. I always wondered what those crazy foreigners were complaining about in their comments on my CodeProject articles, and now I know: there ain’t no such thing as plain text: If

By Jeff Atwood ·
Comments
Perceived Performance and Form.Paint

multithreading

Perceived Performance and Form.Paint

As a follow-up to my caution about exceptions in Form.Paint(), I wanted to illustrate why this technique is so effective. Let’s say you had a form with this code: Private IsFirstPaint As Boolean = True Private Sub DoWork() Cursor = Cursors.WaitCursor StatusBar1.Text = "Loading..." System.Threading.

By Jeff Atwood ·
Comments
Moving the Block

software development concepts

Moving the Block

A recent post by Wesner Moise after a two month hiatus got me thinking about a passage from Steve McConnell’s, After The Gold Rush. Like all Steve’s stuff, it’s great, but the title is unintentionally ironic: the book was released in 1999, at the very height of

By Jeff Atwood ·
Comments
If an Exception happens in Form.Paint, does anyone catch it?

windows forms

If an Exception happens in Form.Paint, does anyone catch it?

In a previous post, I mentioned the old VB6 trick of deferring form work until the Form.Paint event in order to provide a (seemingly) responsive interface to the user. Well, in the .NET world there’s one strange side effect when you do this. Let’s say you had

By Jeff Atwood ·
Comments

asp.net

Code-Behind vs. Inline Code

After religiously adhering to the new, improved code-behind model of ASP.NET for so long, I have to admit it’s sort of refreshing to rediscover inline code ASPX pages again. Deploying single web pages to a server without recompiling the entire solution? Making localized edits to single pages

By Jeff Atwood ·
Comments

programming languages

On mistakes

It’s always reassuring to be reminded that people much more talented than myself make mistakes, too. And I especially appreciate it when they share those mistakes in the form of advice: On avoiding IT mistakes: Rick Cattell’s, Things I Wish I Learned in Engineering School: * Good technology is

By Jeff Atwood ·
Comments

javascript

Client-Side code highlighting

When I visited Alex Gorbatchev’s blog, I noticed he had a unique client-side code highlighting solution in place, one I hadn’t seen anywhere else. That’s something I’ve wanted on my blog for a while; the vanilla <PRE> sections I’ve been using are

By Jeff Atwood ·
Comments