programming languages

case sensitivity

The Case For Case Insensitivity

One of the most pernicious problems with C-based languages is that they're case-sensitive. While this decision may have made sense in 1972 when the language was created [http://cm.bell-labs.com/cm/cs/who/dmr/chist.html], one wonders why the sins of Kernighan and Ritchie [http://cm.

By Jeff Atwood ·
Comments

programming languages

Conversations with Erich Gamma

Artima has another great interview series, this time with Erich Gamma. You know, Erich Gamma: Gang of Four, JUnit, Eclipse. As you might expect from such a notable developer, it's full of great advice. Like this section on avoiding frameworkitis: Frameworkitis is the disease that a framework wants

By Jeff Atwood ·
Comments

programming languages

Software Apprenticeship

In Software Training Sucks: Why We Need to Roll it Back 1,000 Years [http://www.softwarebyrob.com/2005/11/15/software-training-sucks-roll-it-back/], Rob Walling makes a compelling argument for abandoning traditional training classes in favor of apprenticeships: > [Why not] use the time-tested approach of trades that have been doing

By Jeff Atwood ·
Comments

music

The Windows 95 Startup Sound

Did you know that the Windows 95 startup sound [http://www.codinghorror.com/blog/files/Win95-startup-sound.mp3] was composed by avant-garde electronic musician Brian Eno [http://en.wikipedia.org/wiki/Brian_Eno]? I had no idea until I saw it referenced on music thing [http://musicthing.blogspot.com/2005/05/

By Jeff Atwood ·
Comments

programming languages

Please use .ToString() responsibly

I've seen this kind of code a lot recently: try { int i = 0; int x = 0; Console.WriteLine(i / x); } catch (Exception ex) { Console.WriteLine(ex.Message); } This results in the following output: Attempted to divide by zero. Unless there's some compelling reason you need an

By Jeff Atwood ·
Comments

programming languages

Road Signs and Icons

I've always been fascinated with road signs. And evidently so is Donald Knuth [http://www-cs-faculty.stanford.edu/~knuth/diamondsigns/diam.html ]: > During our summer vacation in 2003, my wife and I amused ourselves by taking leisurely drives in Ohio and photographing every diamond-shaped highway sign that we

By Jeff Atwood ·
Comments

programming languages

Copying Visual Studio Code Snippets to the Clipboard as HTML

As I mentioned in Formatting HTML code snippets with Ten Ton Wrecking Balls, copying code to your clipboard in Visual Studio is often an excercise in futility if you want anything more than plain vanilla text. VS copies code to the clipboard with bizarro-world RTF formatting instead of the sane,

By Jeff Atwood ·
Comments

programming languages

The Cognitive Style of Visual Studio

Charles Petzold is widely known as the guy who put the h in hWnd. He's the author of the seminal 1988 book Programming Windows, now in its fifth edition. And he can prove it, too. He has an honest-to-God Windows tattoo on his arm: This is explained in

By Jeff Atwood ·
Comments

programming languages

Pimp My IDE

I just updated my Programming Fonts entry. It now includes a much larger code sample in each font, and a few new fonts including the "gee, did I really just pay $100 for a single font" Pragmata. Be sure to check it out. It's a shame

By Jeff Atwood ·
Comments

programming languages

The Best of Creative Computing

In the process of researching a few recent blog entries, I found the amazing Atari Archives [http://www.atariarchives.org/]. The title is a little misleading; it isn't completely Atari specific. The archives contain incredible page-by-page high resolution images of many classic computer books, including The Best of

By Jeff Atwood ·
Comments

programming languages

Keyboard Shortcut Summary Macro

I finally had time to improve my Visual Studio .NET keyboard shortcut summary macro. Instead of writing HTML to the console*, it now creates a HTML file in your user documents folder, and navigates the IDE to the created file: Download the Keyboard Shortcut Summary Macro (2kb ZIP) The advantage

By Jeff Atwood ·
Comments

programming languages

Equipping our ASCII Armor

On one of our e-commerce web sites, we needed a unique transaction ID to pass to a third party reporting tool on the checkout pages. We already had a GUID on the page for internal use. And you know how much we love GUIDs! 22da5537-de54-459d-9b33-f40f2101143b A GUID is 128 bits,

By Jeff Atwood ·
Comments