It was love at first sight.
The first computer I learned to program on was an 8-bit, 32Kb RAM BBC model B. The language was BASIC. My first program was the BASIC version of the quintessential "Hello World" program:
The program filled the screen with endless lines of text (at least until you hit the "break" button) and my heart with joy.
10 PRINT "HELLO"
20 GOTO 10
Fast forward 2 years. My parents get me my first computer, an Apple IIc. All their friends advise against it - they claim it's too much to spend on a toy. I spend years taking AppleSoft BASIC to the limits, breaking some of its rules along the way (if you've ever developed in AppleSoft, I'm sure you're familiar with the
pokecommands), before graduating to PASCAL. The Apple also introduced me to the mouse (well before a PC had one) and the concept of a mobile computer (while not truly a laptop - it lacked a battery - the IIc had a small, foldable screen, and a laptop factor).
At high school, I dabbled a little in GW-BASIC and MS-BASIC - but the magic was gone. It was time to move on to C.
Years later, a surprise revisit: Visual BASIC. It was the best and easiest way to get into internet programming. With easy-to-design clients, VBScript on the server side, ADO to simplify data access... Until today I use VB 6 to slap together fast mockups that are actually functional.
My language of choice now is C#. Yes, VB.Net is there, but it's not the same anymore. Fully object oriented, and the use of
gotois frowned upon (although if you ever developed a compiler, you realize it still has its moments). And then, just the other day, I got a link to a new Microsoft project called Small Basic.
The idea behind the project is to create a language and IDE that would introduce a new generation of kids (and kids at heart) to the joy of programming (and pay attention to the fact I'm not saying "developing": development is work, programming is fun). It's easy and simplified on one hand, actually borrowing turtle graphics from LOGO. On the other hand, it provides a deep set of features, such as multimedia capabilities, graphics, access to Flickr, and other innovative packages.
Most of all, I like the IDE. It's simple, clean, and with the best text completion implementation I've ever seen:
Above you can see my Small BASIC "Hello World", and the text completion "wheel" in action.
The IDE depends on .Net Framework 3.5 and the download is 4MB (in this day and age of bloatware, a miracle in itself). You can find it here. Currently it's at version 0.2.
I really hope that this tool will introduce a new generation to the wonders of programming. As for me, I'm falling in love again...