The four-letter word that made me avoid computers and programming for far too long is math.
Continue reading
Formatting a Series for Output
Difficulty: ★ ★ ☆ ☆
Here is an issue that crops up often in programming, specifically when outputting data in a series: How do you separate items in the series and not make the last item look dorky? It’s tricky.
Continue reading
Silicon Valley Encryption, Part III
My attempt to de-obfuscate the easter egg from the HBO series Silicon Valley didn’t help in my efforts to reverse engineer the code. I got close, but I just can’t obtain that first (or final) value.
Continue reading
Silicon Valley Encryption, Part II
When Alexander faced the challenge of untangling the Gordian Knot, he just sliced it with his sword. Brilliant. Alas, untangling obfuscated C code takes more than a swift swipe of a blade.
Continue reading
C Blog 12th Anniversary

Twelve years ago today, this blog had its first post. It’s been run consistently since, with new Lessons posted every Saturday and a new Exercise posted on the first of each month.
Continue reading
Silicon Valley Encryption, Part I
I’m a fan of the HBO Series, Silicon Valley. From creator Mike Judge, it excellently showcases the antics of the nerds who populate California’s Silicon Valley and the companies they work for. It’s a brilliant series that I highly recommend to my techy friends. Plus, it’s chock full of digitally delightful easter eggs.
Continue reading
A Nutty Non-Loop – Solution
The insane challenge for this month’s Exercise is to generate a countdown loop without using any looping functions. And, no, you can’t just use a buncha printf() statements to output the values.
Continue reading
The Phone Number Value
As a string, a phone number is easy to parse, left-to-right, as shown in last week’s Lesson. As a value, however, the processing requires mathematical manipulation to work it from left-to-right.
Continue reading
A Nutty Non-Loop
Difficulty: ★ ★ ★ ★
Loops are fun. They’re easy to learn. But not everything that repeats in a C program is constructed as a loop.
Continue reading
The Phone Number String
This Lesson’s topic is more about database programming than C programming, but the philosophy still applies. When do you store a number as a value as opposed to storing it as a string? Two famous examples are zip codes and phone numbers.
Continue reading