Every programmer knows the first program one must accomplish when learning a new language. But it was only when I was about 16 that I’ve read the book “The C Programming Language”, by Brian W. Kerningham and Dennis Ritchie, where the first program was in fact:
#include <stdio.h> main() { printf("hello, worldn"); }
But my adventure in programming began some years before.
I was about eleven years-old and the ZX Spectrum was hype! I did not have one (yet!) but a school colleague had and so I borrow him the things’ manual. From there, I asked him to try some BASIC instructions that I’ve wrote in a sheet of paper. The next day he would bring me the screen output on the same paper. After studying that at home, I would ask him more tryouts… until he fed up.
After a while I convinced my parents that the ZX Spectrum was the future and they would like me to be in the future, right? Games were ok, but not my thing. After maybe a year or two I had these two books: “The Complete Spectrum ROM Disassembly”, by Dr. Ian Logan & Dr. Frank O’Hara, and “Z-80 Reference Guide”, by Alan Tully, and the Z-80 (the ZX Spectrum CPU) assembly was my game. In those years I’ve also packed in some custom hardware projects, one for LED light shows and other for connecting a dot matrix printer to the ZX Spectrum using a Centronics parallel interface.
After the ZX Spectrum, it came the Philips MSX and the Commodore Amiga (this supported the “hello, world” and my math and computer science degree) and then the IBM PC compatible ruled after the advent of Microsoft Windows 95. Somewhere in those early days even used an Apple ][ for developing a project for a contract.
Programming in college went about C, C++, PASCAL, LISP (“Lots of Irritating and Stupid Parentheses”: ah, those were the days!), PROLOG, ML, HyperTalk, SQLWindows and probably some others. After that, I ran into C# professionally and I’m an admirer ever since.
And now this blog sees the world. After getting inspired by Scott Hanselman with his post “Your words are wasted”, I decided to let it out. Besides this blog will also serve the purpose to follow my efforts into open source software.