Notes about the Computer Programming of William L. Chapin

W. Chapin thinks of computer programming as a life skill for anyone born after 1960, akind to learning to drive.  It is not a required skill, but it makes living in the computer age a lot more convenient.  The conventional view of computer programming is of an occupational skill. 

W. Chapin does not consider himself a computer programmer or computer scientist.  He is an engineer who has exceptional skills for coding solutions to support his engineering work. 

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
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
The proficiency values are gross, approximate rankings on a 0-5 scale. 

The wide variety of languages represented here demonstrates the ability to pickup languages quickly and become very proficient as necessary. 

Return to WLC