Software Engineer since '79

First language: Algol 60. Then FORTRAN, 6502 Assembly, various languages supported at college, Pascal, C, C++, x86 assembly, JavaScript, Java, MIPS Assembly, ARM Assembly, C#, Scheme, Lisp, a bit of Haskell, Perl, bash, Python.

Industry: Gambling machines, Arcade games, various desktop publishing products, games for Windows and DOS. VxWorks, PowerTV, Linux.

Technologies+APIs: Small embedded systems, slightly larger ones, PCs with DOS or Windows, early Macintosh, Windows multimedia including DirectX, DirectShow, Direct X Script Host, IP network stack, L2TP, PPP, UPnP, DLNA, Linux device drivers, buildroot, Linux boot firmware, MySQL, ODBC (ADO), CGI(-bin), CGI (raytracing), WebKit, HTML parsing and rendering, various GUI toolkits including MFC, XCB, TrueType (including interpreting hints) PostScript (including an interpreter), compilers and interpreters for various languages, a parser generator just to build a CSS parser. Graph-reducing lazy functional language implementation (SASL-ish, my first 700 toy functional languages).

Recently, porting WebKit to slightly-too-old embedded system compilers, writing UI's to run on said WebKit using Angular.

The motto of Cardiff is "The red dragon will lead the way." Therefore, the red dragon tile from mahjong.