The ProGit blog has a nice post on using the new git notes feature.

Posted Thu 16 Sep 2010 09:54:00 PM PDT Tags: programming

If you typically send patches to mail lists then Felipe Contreras' git send-email tricks blog post is definitely worth reading.

Posted Wed 28 Oct 2009 09:29:00 PM PDT Tags: programming

Dave Jones is a genius. Using mutt and your editor to highlight your coding errors -- he should have patented that one!

Posted Wed 27 Aug 2008 10:47:00 PM PDT Tags: programming

As an emacs user, I knew the butterfly command. I just don't find it that useful.

Posted Sun 03 Feb 2008 02:31:00 PM PST Tags: programming

In the C/C++ programming language, data can be given the volatile qualifier. Typically, people think this is sufficient to prevent code ordering problems. Well, volatile does not do that.

Linus provided a great explanation of the problem on the lkml today. Definitely worth reading. Also, you should read Linux Kernel Memory Barriers from the kernel documentation.

Update 2007-10-14: Also check out the LWN article The Trouble with Volatile.

Posted Fri 17 Aug 2007 11:47:00 AM PDT Tags: programming

If you've heard of pointer aliasing but have not fully understood what it means, read this great explanation by Krister.

Posted Tue 21 Nov 2006 02:52:00 PM PST Tags: programming

Update 2009-10-12: Updated Intel document link

Posted Wed 01 Nov 2006 12:00:00 AM PST Tags: programming

When you are programming it is often convenient to have 32-bit values that, when displayed in hex (base-16), spell words (e.g, 0xdeadbeef). These values are useful for signifying specific conditions either within a program's resident memory or in persistent storage.

I found a cool list of words that were pragmatically generated and expanded to include l337 spellings.

Posted Wed 30 Aug 2006 12:00:00 AM PDT Tags: programming

Ulrich Drepper has a blog entry about using the environment variable MALLOC_PERTURB_ to aid in the detection of typical memory usage bugs in programs.

Using this debugging feature is as simple as setting the environment variable and running the program you want to test. No recompiling required. Sweet!

Posted Wed 21 Jun 2006 12:00:00 AM PDT Tags: programming