A Chequered Past

I dumped more than a few old backups over the past couple of weeks, to fascinating results.

Much to my amazement, I kept a fair amount of source code from the past couple of decades, and it was fun (if occasionally embarrassing) to look at the hundreds of personal projects I dabbled in, from little hacks and scripts to entire desktop apps (none of which even run anymore, unless I can bother to set up a VM for them).

The awesome thing was that after hitting a set of densely packed folders with college coursework, I came across a “Sinclair” folder… I have absolutely no idea how I managed to convert some of those assembly files across (I suppose the older bits were migrated by way of “CP/M”:Wikipedia:CP/M on the “+3”:Wikipedia:ZXpectrum#ZXpectrum2B3), but it was then that I decided to try to summarize the whole thing in some fashion.

For your amusement, here’s a more-or-less complete tally of what programming languages I was into over the years:

Update: Come April 2018, I decided to tack on the post-2013 years.

Year (est.) Languages Platforms
2018 (Very little) C#, a lot of Python and JavaScript, a fair amount of Java, some regrettable moments with PHP on Windows, a fair amount of fun with Lua and C/C++ on IoT devices, some R again. Windows (obviously) in Azure services, a lot of Linux, some ARM64, a bunch of tiny ARM devices, Xamarin.
2017
2016
2015 A return to LISP via Clojure, a few deep dives into Go and Erlang, yet more Python and JavaScript Mostly Linux and ARM devices, a lot less iOS.
2014
2013
2012 A lot more Python and JavaScript, a little more Java, a little raw “C”:Wikipedia:C, some Objective-C, some Ruby, a little Lua, a fair amount of R. Macs, some Linux boxes and a plethora of ARM and mobile devices (Android, iOS, Linux).
2011
2010
2009
2008 Python (including PyObjC), JavaScript, a lot less “big iron” Java and Perl, as little PHP as humanly possible, some “C++”:Wikipedia:CXX and Erlang Macs and assorted ARM devices. A few Linux machines, the dawn of Android apps, some Qt and LiMo, Ericsson networking gear.
2007
2006
2005
2004
2003
2002 Loads and loads of Perl and PHP, very little JavaScript, some “C”:Wikipedia:C. Mostly Macs.
2001
2000 A bunch of Linux and Windows PCs, some “Sun”:Wikipedia:Sunicrosystems boxes.
1999
1998
1997 Java (I had faith). Some “C++”:Wikipedia:CXX, some Perl.
1996
1995
1994 MPW, more “680×0”:Wikipedia:68k stuff, “Object Pascal”:Wikipedia:Objectascal, “Objective-C”:Wikipedia:Objective-C, “C++”:Wikipedia:CXX (mostly MicrosoftMFC”:Wikipedia:Microsoftoundationlassibrary), a bunch of LISP, some “Prolog”:Wikipedia:Prolog, some Perl. A bunch of “68k”:Wikipedia:68k Macs, “VMS”:Wikipedia:VMS and UNIX gear, my beloved NeXTCube.
1993
1992
1991
1990 “x86”:Wikipedia:x86 assembly, “Turbo Pascal”:Wikipedia:Turboascal, a little “C”:Wikipedia:C (there was even a copy of “Brief”:Wikipedia:Brieftextditor …) A few PCs, some “68k”:Wikipedia:68k Macs
1989
1988
1987
1986 “680×0”:Wikipedia:68k assembly, “Pascal”:Wikipedia:Pascal “QL”:Wikipedia:SinclairL, an Atari ST
1985
1984
1983 BASIC”:Wikipedia:BASICrogramminganguage, “Z80”:Wikipedia:Z80 assembly Sinclair “ZX81”:Wikipedia:SinclairX81, “Spectrum”:Wikipedia:SinclairXpectrum 48K (later +3)
1982
1981

(Some dates are approximate, and could even be wrong since I had to believe the archive dates…)