From Rosetta Code
Languages I've used in some fashion
Language Proficiency
68000 Assembly Very rusty
AutoHotkey Beginner
BASIC Very rusty
C Rusty
C++ Rusty
Fortran Very rusty
JavaScript Very rusty
LabVIEW Advanced
Logo Junior high in 1983. :-)
Mathematica Advanced
MATLAB Intermediate
Pascal Very rusty
Perl Rusty
Python Beginner

My programming biography:

I taught myself how to program using Basic on a Commodore 64 in ~1982 (I was 12). It came naturally enough to me that I ended up placing second in my high school on a programming exam as a junior despite not having taken the school's programming class.

The next summer I did take my first (and only) programming class, a summer course in Pascal, and had to unlearn many of my bad habits. I learned the joys of modular programming. My next language was Fortran, learned for a summer job in 1987 (NIST).

I didn't do much programming at all in college (BYU, Physics and Mathematics), although I remember doing a homework assignment or two in Mathematica. In grad school (UC-Berkeley, Physics) I had to revisit Pascal for some equipment-based programming. I also taught myself some Perl and Javascript then, mainly in order to be able to do some amateurish website development.

As a post-doc (NRL) I started doing more extensive programming, the first in a while, mainly in C/C++. That is, I was using C++ but never really did figure out if I was doing anything that didn't exist in regular C.

When I was first hired as a professor (UW-La Crosse, Physics) I got assigned to teach the Electronics class and therefore had to learn enough 68000 Assembly to teach it to the students. In developing my own lab there, I also started using LabVIEW fairly extensively to control my equipment.

I transferred to my current university in 2007 (BYU, Physics), and got assigned first to teach a MATLAB-based class, so I had to learn MATLAB. Then I was assigned to teach a Mathematica-based class, so I had to go back to my Mathematica roots. I was surprised to learn of its vastly improved programming abilities since I had used it last. In the meantime I've continued to do extensive work in LabVIEW, finally discovering the true power of object-oriented programming. More recently, I discovered AutoHotkey as I was looking for a way to do powerful macros, and keep feeling that I should learn more of that. And after talking to some true computational physicists I decided I needed to add Python to my arsenal, so that was my summer project last year (2013).

Here's my website: