Kernighan and Ritchie made things look so easy with their innocent "Hello, World" program. Yes, it's just a few lines, and the command to invoke the compiler is so easy ("cc hello.c"). But don't go underestimating "Hello, World."
While playing with some of nifty applications I downloaded for my iPod touch, I thought about maybe writing my own application. I visited Stack Overflow, where I learned that developing for the iPod without a Mac is pretty much a non-starter. But I also learned that most iPod/Mac development is in Objective C, so I figured I could at least learn some Objective C while saving money for a Mac mini.
I found some sample code that looked interesting, so I went about trying try to compile it, to see it run.
It was while struggling with my compiler and my Makefile that I thought about how hard it is to get "Hello, World" to work sometimes. In K&R, they hand-wave the details with this sentence: "Just how to run this program depends on the system that you are using." "Hello, World" may be a "basic hurdle", but it is a hurdle. And it's a hurdle every programmer has to get past.
(On my system, a laptop running Windows XP, I just happened to have MinGW (Minimalist GNU for Windows) installed. The MinGW software includes (if you install it) an Objective C compiler. Once I familiarized myself with the switches, it was just a matter of typing in some code (or in my case, copying and pasting the code) into some source files, and typing make (or in my case, typing "mingw32-make").)