I was twelve when my parents bought me my first computer. A Sinclair ZX81. They still have it in the loft I think, complete with a 16k ram pack. At the time I loved it more than anything else.
Even then, there were games to be played on it. Unlike today, with our DVD's, Steam and Bittorrent, they were printed in magazines for you to enter manually. Lines upon lines of indecipherable code. Each with its own number. 10, 20, 30... With numerous GOTO's. How sweet.
I thank my Dad for it today, but back then I cursed him when he refused to buy me these magazines.
"Scott, you should learn how to program the thing yourself. I've not spent all this money for you to be a parrot." He'd say to me.
So I read and re-read the book that came with it. ZX81 Basic programming. Eventually its arcane contents revealed themselves to me and I began to understand algorithmic thought.
Finally I eked out some functionality from the machine. My first hello world application was, perhaps predictably;
10 Print "Scott"
20 GOTO 10
I hacked and hacked at it, until eventually I made it do some modestly cool stuff.
Such as my first top down scrolling racing game. I remember my mates queuing up to play it. Those that had their own zx81's would wait as I saved the game to their C15 tapes.
I've not been without a computer since. This is my tech history;
ZX81 16k ram pack
Spectrum 48k - soft key
Spectrum 128k - hard key
BBC Micro B+ (School)
586 / Pentium
After this it gets blurry, as I'm sure it does for many. My Pentium based PC was the first and last computer I bought outright. Previously they were hand me downs. Since then, I've always hacked together components and built them myself. My current PC's have evolved into what they are today. None of them can trace a true lineage. Bless 'em.
I have boxes full of unused components rotting away in the garage.
I often wonder why I didn't pursue IT as a career. I do have an aptitude for it. The problem is, it bores me silly. To be frank.
I enjoy a programmatic challenge, I'll admit. But the thought of doing it full time is horrific. That said, I've found myself amateurishly developing my companies clinical databases, which are now served over our intranet (SQL Server, IIS, .NET using C# & VB.net). However, it's just something that I do, so that I can help myself and others save some time and get on with the stuff of real substance - being with people.
When I code, I listen to two things. Mozart or Electronica. Back in my Sinclair days, I listened to Newcleus, (Push the Button) in particular.
These days, my favourite coding music is Four Tet, the brain child of Kieran Hebden of Fridge fame.
This is my favourite track. I write beautiful, graceful code when I listen to it.