Categories
Uncategorized

Going Down Memory Lane with C

July 25, 1994 issue of Time magazine
The July 25, 1994 issue of Time magazine.

The computer science student phase of my academic career (the less said about the previous phase, in which I was an electrical engineering student, the better) ran from 1991 to a successful conclusion in 1994.

If you are like me, you strongly connect memories with the music of the time; you could say that my computer science student phase ran from the time of Nirvana’s Nevermind and Soundgarden’s Badmotorfinger to Green Day’s Dookie and The Offspring’s Smash. Let’s just say that I often showed up to my classes and labs in a flannel shirt.

Album covers: Nirvana's "Nevermind" and Green Day's "Dookie"

(If that last paragraph makes you think “Whoa, that was a long time ago!”, you’ll be blown away by the fact that the initial work on C ran from the time of the Beatles’ Abbey Road to Led Zeppelin’s Houses of the Holy. A fair number of you probably weren’t even born then.)

My Student Language of Choice

I don’t know what the situation was like at other schools, but at the time, computer science students at Crazy Go Nuts University were allowed to hand in programming assignments using the following languages:

(Remember, there was no Java back then. The Green Project, from which the language/platform sprang, was still ongoing at this time, and Java was still going by its “Oak” codename.)

The general recommendation that came from most of my professors was to use Turing. They told us that it was a kinder, gentler language than Pascal and even more so than C, which they implied was designed by dyslexic aliens. When some of us suggested that it might be better to use a language that saw actual use in the real world, many of them countered with the argument that learning principles of computing was more important than learning specific languages. We might’ve responded by pointing out that one of our professors was a co-creator of Turing and probably got a vig for every Turing installation (it was a commercial language), but that might have been an academic career-limiting move.

I ignored their recommendations and went with C. In the lab, I used good ol’ cc. At home, it was Turbo C at first, and later, when I got my first Mac (a Quadra 660AV bought with money from DJing), Think C.

I never used C in my professional career. My first job out of school took me away from a world where input and output was all printf() and scanf() to interactive CD-ROMs and Macromedia Director (now Adobe Director and 7 versions later), and after that, the languages remained pretty high level: Visual Basic, Python, Java, C#, NSBasic, PHP and Ruby, with only a slight detour through through Visual C++ and C++Builder.

My C Books Back Then

Cover of "The C Programming Language"

It’s almost impossible to talk about C without mentioning “K&R”, the nickname for what is considered to be the official bible of C, The C Programming Language, which was written by Brian Kernighan and Dennis Ritchie. The latest edition of the book — the second edition — is a bit long in the tooth as it was written in 1988, but for the most part, everything in this book should still apply to the current C99 standard.

I never owned a copy of the book in my student days. I signed it out when necessary from the electrical engineering/computer science library in Walter Light Hall. I did own a copy for a brief period in 2002 when my deadbeat ex-housemate left a lot of his stuff behind, but I sold it (along with most of his stuff) in order to recoup some of the money lost from his stiffing me on rent, utilities, groceries and the largest domestic phone bill I’ve ever grappled with.

Cover of "A Book on C"

The books I had while at Crazy Go Nuts University were the second edition of A Book on C and Understanding C Pointers (a book that seems to be no longer in print). I liked A Book on C enough to pick up the fourth edition on sale a couple of years ago, and someone out there has forgotten to give me back my copy of Understanding C Pointers (you know who you are!).

Back to C

I’ve decided to get back into C for a number of reasons.

"Internet Tough Guy" Magazine

I have to admit that one of those reasons is completely irrational: it’s ego. There’s certain geek cred that comes with having at least some proficiency in C. While I had those bragging rights back in school, I can’t honestly claim them now; I haven’t even written a file whose name ends in .c in over a decade. Luckily, I had a pretty good grasp of C back in school, and the noodling I’ve been doing with good old gcc suggests that I’ve still got it, which is pretty reassuring.

iPhone, Arduino 480 and the "Mac Guy"

I’ve also been meaning to do some development with things that are programmed in C or C dialects:

  • The Arduino electronics prototyping platform has its own programming language based on C. I’ve been meaning to try out hardware hacking with the folks at the local group HacklabTO.
  • I’ve also been thinking about putting together some Mac OS X and iPhone apps, which require Objective-C.
  • I’ve even been thinking about doing some GTK noodling, which is done in good ol’ C.

Homer Simpson's brain x-ray

Finally, there’s the matter of just making myself a better programmer by working in C by refreshing my knowledge of the low-level stuff that C requires you to work with, and also the “brain stretch” that comes with working with a language and environment (what with going back to strong typing, compiling and make) that I haven’t worked in for some time.

I’ll be doing some C coding in my spare time, as well as noodling with the Arduino programming languane and Objective-C, and I’ll be posting my notes, observations and experiences here. As I’m fond of saying on this blog, watch this space!

Categories
Uncategorized

Reg “Raganwald” Braithwaite: Alive and Well

His blog presence is missed, but Reginald “Raganwald” Braithwaite is alive and well in real life. He and I work in the same building, and we’ve caught up with each other a couple of times recently. Here we are (along with developer/paparazzo Libin Pan) having dim sum at one of Kristan “Krispy” Uccello’s local developer lunches…

Joey deVilla, Libin Pan and Reg Braithwaite having Dim Sum at Sky Garden Restaurant

Me, Libin Pan and Reg Braithwaite.
Photo by Adam Wisniewski.

Categories
Uncategorized

“Penny Arcade” on the Seinfeld/Gates Ads for Windows

I like Penny Arcade‘s take on the current Seinfeld/Gates TV ads for Windows:

"Penny Arcade" comic on the Seinfeld/Gates TV spots
Click the comic to see it on its original page.

My favourite line from the article accompanying the comic: “Trying to associate Microsoft with “fun” is like trying to associate Satan with aromatherapy.” Mind you, I think they managed to pull it off with the XBox 360.

Categories
Uncategorized

Bill Gates and Jerry Seinfeld’s Second Microsoft Commercial: Longer and Weirder

The first Microsoft commercial featuring Bill Gates and Jerry Seinfeld established them as oddball buddies in a commercial running one minutes and thirty seconds. In the follow-up, they’re living with a suburban family as an exercise in being in touch with ordinary people and weirdness ensues. The version shown below is the long one — it runs for four minutes and thirty seconds, and features a teensy bit of technology and tech terms (for a brief moment, Gates talks about object-oriented design) and another “Bill, give me a sign!” ending.

Categories
Uncategorized

Multi-Processor Computing in 1924

My friend Miss Fipi Lele, who provides me with a lot of pictures for my blogs, pointed me to this photo on Shorpy, “The 100-Year-Old Photo Blog”. It depicts “multi-processor computing”, circa 1924:

Old-school computing room (preview size)
Click the photo to see it on its original site, Shorpy, at full size.

The caption for the photo at Shorpy is:

November 24, 1924. Washington, D.C. “Bonus Bureau, Computing Division. Many clerks figure the amount of the bonus each veteran is entitled to.”

Before the age of electronic computers, the term computer referred to someone whose profession was performing mathematical calculations by hand.

Here’s what Wikipedia has to say about the profession’s origins (see the entry Human Computer):

The approach was taken for astronomical and other complex calculations. Perhaps the first example of organized human computing was by the Frenchman Alexis Claude Clairaut (1713–1765), when he divided the computation to determine timing of the return of Halley’s Comet with two colleagues, Joseph-Jérôme Le Lepart and Nicole-Reine Étable. For some men being a computer was a temporary position until they moved on to greater advancements. For women the occupation was generally closed, but this changed in the late nineteenth century with Edward Charles Pickering. His group was at times termed “Pickering’s Harem.” Many of the women astronomers from this era are computers with possibly the best known being Henrietta Swan Leavitt. Florence Cushman was one of the Harvard University computers from 1888 onward. Among her best known works for him was A Catalogue of 16,300 Stars Observed with the 12-inch Meridian Photometer. She also worked with Annie Jump Cannon. That said as a female computer she normally earned half of what a male counterpart would.

The Indian mathematician Radhanath Sikdar was employed as a “computer” for the Great Trigonometric Survey of India in 1840. It was he who first identified and calculated the height of the world’s highest mountain, later called Mount Everest.

Categories
Uncategorized

Zero Punctuation’s Bang-On Review of “Too Human”

Some of my coworkers at b5 were all hot-and-bothered about the demo for the XBox 360 game Too Human, so I decided to download it and give it a try. I played it and was generally less than impressed with both the gameplay and especially the storyline (like Assassin’s Creed, the story’s a rather clumsy mish-mash of swords-and-sorcery and sci-fi genres).

Ben “Yahtzee” Croshaw, the fast-trash-talking host of the excellent videogame review show Zero Punctuation agrees with me. He panned the game in his trademark fashion:

Categories
Uncategorized

Better, Funnier Videos Featuring Bill Gates and Celebrities

“Was this ad supposed to be funny?” is the question that a lot of techies are asking after having seen the first of the new series of Microsoft ads featuring Bill Gates and Jerry Seinfeld. The ad, which sets up both the tone for future commercials and the Bill/Jerry dynamic, could’ve been lifted straight from any number of Seinfeld episodes. In fact, the “Churro? No thanks” exchange is practically a repeat of the “Snapple? No.” exchanges in the episodes The Virgin and The Visa.

It’s a real shame that the ad turned out this way because there’s prior work with Bill and celebrities that is funny and gives Microsoft a warmer, fuzzier image. Here are two of the most notable ones…

Bill and John Heder in a Napoleon Dynamite Spoof

This video was shown at Microsoft’s 2005 Professional Developers Conference, and unlike the ad with Seinfeld, it makes good use of the source material and the guest star, and better still, it’s actually funny. They could’ve easily repurposed this ad or called Jon Heder to shoot some more:

Bill Gates’ Last Day

This one’s not as funny or as clever as the Napoleon Dynamiteone, but it’s still amusing and cute: it’s a video shown at the Consumer Electronics Show earlier this year that purports to be a documentary of Bill’s last full day at Microsoft. This one features a boatload of celebrities: Bono, Hillary Clinton, Bob Costas, Al Gore, Barack Obama, George Clooney, Jay-Z, Matthew McConaughey, Jon Stewart, Steven Spielberg and Brian Williams.


We’ll have to wait ands see if the next Gates/Seinfeld ad is any better, or at least generates more than a mild chuckle. They’ve got nowhere to go but up…