Language
|
1stYr
|
LstYr
|
Notes
|
Profcy
|
High School and College
|
Assembler
|
1977
|
2012
|
Learned on a TI SR-56 electronic slide-rule, subsequently on a TI-59 programmable calculator.
Since the 1970's, ASM code has been reviewed, debugged, edited, and embedded
from compilations than written from scratch.
Platforms include VAX-11 (MACRO-11), TI-99, DOS 2 thru 6, TMS320C20, 56001, Linux, Windows
|
1
|
BASIC
|
1979
|
1983
|
Teaching assistant for three quarters, writing quizzes and grading assignments.
Platform was VAX-11 (Carleton College was very enlightened to have a 32-bit
Soul of a New Machine.)
|
1
|
Pascal
|
1980
|
1987
|
Computer science coursework.
Platform VAX-11, later Borland Turbo Pascal on DOS
|
1
|
COBOL-74
|
1981
|
1981
|
Coursework to write a statistical application.
Platform VAX-11
|
0
|
LISP
Logo
|
1982
|
1983
|
Supported professor's research in developing Logo as a broad consumer language.
Platform TI-99
Note: Prof. Roger Kirchner's TI-99/4A
inspired me to get one for myself.
Mine was the first personal computer in a dorm room (Dec 1982) in the history
of this computer-centric liberal arts college
which now sports the largest per capita computer science department among liberal arts colleges.
|
1
|
Prolog
|
1982
|
1987
|
Employed in an Artificial Intelligence and Logic course in college.
Later, dabbled with expert systems with Borlands Turbo Prolog.
|
1
|
Entering Engineering
|
Extended BASIC
|
1983
|
1991
|
Extended BASIC delivered the functionality to support a wide array of applications.
Began with TI BASIC on the TI-99.
Then upgraded to Borland Turbo BASIC on DOS.
|
2
|
FORTRAN
|
1986
|
2002
|
Was told it was the "language of engineering".
Wrote several dynamic vehicle models at UIUC to run its ILLIAC IV super-computer.
Been porting away from of it ever since.
|
2
|
AutoLISP
|
1986
|
Current
|
AutoCAD customization.
Built many applications to run within the AutoCAD environment, including a real-time vehicle simulator.
In 1989, would have challenged the best AutoLISP programmers in the world, including
John Walker. ...
Why AutoLISP
Platforms: Sun, DOS, HPUX, Windows, MacOS
|
3
|
Core Skill Development
|
C
|
1987
|
Current
|
Began editing existing C-code managing the Engineering Graphics program at University of Illinois.
Peaked writing GL and X/Motif code on Silicon Graphics systems in the early 90's.
Occasionally still write "straight-C" for embedded applications.
Platforms: DOS, Sun Solaris, SGI IRIX, Windows, micro-controllers
|
5
|
MATLAB
|
1987
|
Current
|
Began writing M-scripts in a UIUC structural engineering class.
Assumed maintanence and re-development of a MATLAB product on v4.2 in 1996.
Been waist-deep in MATLAB ever since.
Platform: DOS, Windows
Examples of MATLAB coding at AuSIM,
include a lot of user interfaces with integrated data analysis.
|
5
|
C/C++
|
1987
|
Current
|
Purchased Borland Turbo C++ for DOS.
Preferred Borland compilers until MSVC6 finally displaced Borland.
Because the majority of experience is writing performance-bound, real-time sensor/actuator loops,
an optimal form or C/C++ is employed finding a balance between
structure, elegance, code-reuse, and performance.
|
5
|
Stanford
|
perl
|
1991
|
1995
|
Minor scripting to maintain Unix systems. Platforms Sun Solaris and SGI Irix
|
1
|
Objective-C
|
1992
|
1993
|
Projects on NeXt computers
|
1
|
Java
|
1995
|
2016
|
Began exploring Java pre-release at Stanford's Center for Design Research,
which had a strong Sun relationship.
Subsequently, maintained a JNI API client for AuSIM3D from 1999 through present.
Built Android apps and other platform-independent client apps more recently.
|
2
|
AuSIM
|
LabView
|
1999
|
2006
|
Supported research access to 3D audio, motion-trackers, and multi-channel signal processing.
Platform Windows
|
2
|
JavaScript
|
2000
|
Current
|
Employed in AuSIM webpages and scripts for various tools.
|
2
|
Python 2
|
2003
|
2003
|
Built several WorldViz Vizard demonstrations.
Platform Windows
|
2
|
Max/MSP
|
2011
|
2013
|
Built a toolbox and demos interfacing a machine control API.
The machine physically changed room acoustics.
The Max implementation allowed room acoustic adaptation to be integrated into music-related work.
Platform Windows
|
2
|
C#
|
2012
|
Current
|
Managed code and .NET assembly API's.
Primary interface for industrial control projects.
Platform MSVS and MATLAB on Windows
|
4
|
C++11
|
2014
|
Current
|
Base language of the NASA Auralization Framework.
Platform MSVS
|
4
|
Python 3
|
2016
|
Current
|
Ramped-up to support a college intern project.
Platform MSVS on Windows
|
2
|