Most of my programming has been C and C++. I worked in cellphone programming for two years in Japan, and then embedded systems for another two, doing Linux kernel and other POSIX programming. My last job was at a Google-like company, so I’ve done a bunch of database work (MySQL, Oracle, and PostgreSQL), and data types for handling large amounts of data and being able to process and link it fastly, along with creating my own regular expression engine and XML parser for an configurable RSS crawler.
I built a mini 3D engine that ran on Brew phones with no hardware support or FPU, but I’ve not done any advanced 3D work.
I’m a professional scientist who programs, but wouldn’t claim to be a professional programmer, unless we count everybody who gets paid while they program.
I’m pretty expert in SAS, 20 years, and have helped teach some courses. I’ve also done a lot of FORTH.
I’ve used Assembly, Basic, C, PL1, APL, Fortran, and Scheme.
This past year I took up C# (and a little C++ and Java, and these three have much more in common than they have distinguishing them) and have distributed a few programs to co-workers.
Also, operating systems - CPM, DOS, Windows, UNIX (both BSD and SVR4).
Finally, the scripting languages that are built into many applications. I’ve done quite a lot with FlexPDE (a finite element partial differential equation solver), taught a bit of it, and suggested what has become one of its basic capabilities. Also used the scripting languages for the Semware Editor, Fluent, Gambit, EasyCAD, TKSolver, and a few others.
I’m sure other people know exactly where this is, but there was a long thread a little while back where an excel programming guru answered a lot of obscure excel questions… as a very amateur excel programmer myself, I found that thread incredibly enlightening. I don’t remember who the OP was.
The simulators I wrote weren’t nearly so interesting. The first two were of an Intel 8080 and a microcode simulator for a Lockheed Sue minicomputer. These are good so you can run software on them and debug easily. That was in grad school. At work I wrote a fault simulator - which simulates a circuit at the gate level, and inserts a set of possible manufacturing faults. You run the test, and can tell which faults get detected, thus how good your test is.
I’m our company’s “expert” for all things related to PeopleSoft and Oracle except for Java. I started as a COBOL programmer but I’ve forgotten more languages than I currently know.