My first experience as an engineer was when I disassembled my grandmother's dishwasher to see how the soap dispenser worked. It didn't work after I had disassembled it, so I felt the first pressures of a deadline as I scramble to get things into a demo-able state before my grandmother returned from shopping. The demo failed, but my career as an engineer took off. I was about 5 years old. And I eventually learned how to put back together the things that I took apart.
I started programming when I was in 5th or 6th grade. One of my father's friends was a FORTRAN jocky and started teaching me how to do it. Before that, I used to play with the punch card machines that my father had used to write the code for his dissertation. And the computer room at the university was always a cool place to hang out in the humid Indiana summers.
The first time I got paid for my programming services was in 8th grade. An insurance company needed some data entry programs for their Apple II computers. First you do it for fun, then you do it for friends, then you do it for money...
Although I have a knack for getting computers to cooperate, I prefer mechanical design. Systems that require the integration of both difficult mechanical design problems and non-trivial analysis/simulation are very attractive to me.
I never worked at a fast food restaurant, movie theatre, or gas station. But I have done various construction jobs (commercial and residential) and destruction jobs (commercial). And some small-time electrician work. I like tools.
My first year at MIT was in the Navy ROTC program. For my summer cruise I worked on a minesweep near Charlestown, South Carolina. I worked on the engines. They were being rebuilt when I arrived, but we did put to sea before my summer tour of duty was over. When we put to sea I became horribly seasick and spent most of my time in the navigation center (it was closer to the railing and didn't have the nauseating smells of the engine room).
After the mission for the LDS church, I returned to MIT and began a series of UROPs. I had taken 6.001 (MIT's LISP programming course) as a freshman, but decided that I needed to learn C if I was going to do any practical programming. So I signed on for some UROP work with the 'No Recuerdo' project in the foreign languages department. With Hugo Ayala I wrote some of the first sentence recognition software for that project.
I spent two summers working at the Center for Engineering Design at the University of Utah. There I designed wrists for exoskeletal teleoperated masters, cable and tendon routing systems, the interface for a dextrouse master, and the pelvis and torso for anthropomorphic entertainment robots. Steve Jacobson was my mentor. While there I also worked with doctor Wilhelm Kolff.
The MIT UROP program was very good to me. For the next year or two I worked under the direction of Will Durfee to write XWindows software for teaching dynamics and classical control theory. Eventually one of these projects became my undergraduate thesis.
My senior year I was looking for another project and met Marc Shafer. That started me on the human-powered vehicle path.
At various times along the way I did contract programming jobs. Although I speak a bit of Ada, FORTRAN, Pascal, and LISP, I am fluent in C, C++, and PERL. I picked up HTML, some applescript, hypertalk, and visual basic/C++ too.
© Matthew Wall, all rights reserved