I was born three weeks late, 9 pounds, 6 ounces on February 2, 1977. My parents were living in the redwood forests of southern California, owning only an old blue truck. In that truck, we came to Alaska when I was two. Immediately after crossing the border into Alaska, we stopped at a gravel turnout. Crawling out of the back of our pickup, I fell 4 feet onto the ground and broke my leg. After a short (60 miles) drive back to Dawson city, my leg was set. About all I gained from the experience was a fear of heights and doctors.
We settled in Glennallen, a town equidistant from Anchorage, Fairbanks, and Valdez. Hence 150 miles away from the nearest stoplight, I spent my formative years (2-18) in the bitterly cold, dry arctic desert of central Alaska. It was a nice place to grow up- quiet, conservative, and safe. The weather was a great boon to my academic career- when it's 40 below and your nearest neighbor is two miles away, you need something to do. For a while, I built plastic models; I learned everything I could about particle physics; but then, in the fifth grade, my school was given 30 Mac Pluses. I enjoyed them so much I decided to buy a Mac of my very own. I purchased my first computer that summer (1988) with lawn mowing money-- a Macintosh 512K.
Having greatly enjoyed my first Mac, I purchased a second, a Macintosh Classic, in 1990. I began paying for my computer habit by doing computer consulting for my school and a few local people. For the remainder of my high school career, I made several hundred dollars a year by consulting (fixing HW/SW, desktop publishing, etc). The Classic was a new class of computer-- it had a hard drive and enough RAM to run a compiler. I taught myself to program HyperCard (a hypertext program with an English-like language). After about a year, I switched to MS QuickBASIC for better speed (about 100x improvement!) and access to the Mac system traps. After enduring the Microsoft development environment for a year, I switched to THINK Pascal.
THINK Pascal was another 10x faster than QuickBASIC, and as I became more skilled at Macintosh programming, I realized object-oriented software is the way to go for GUI software development. Luckily, THINK Pascal had an excellent system for object oriented software development, allowing not only data encapsulation but dynamic linking and virtual functions.
I shunned the included object oriented GUI framework in favor of doing much more work and developing my own interface classes. The most rational reason I can come up with for why I did this is that I started programming because it was the most difficult to do thing I'd ever seen that had a point (it was because of this challenge that I liked programming)-- I wasn't about to do anything to make it easier.
Taking calculus (AP, via satellite) in my Sophomore year of high school improved my programming skill immensely, but not in any direct way-- it was simply good practice at the purely logical thinking that both math and programming require. That year, I began to manipulate objects in 3D.
So I continued developing Mac software in THINK Pascal, purchasing a Mac IIsi in 1993 so I could dabble in color graphics. I was developing a small 3D program with a rather complex interface (it was essentially a 2D drawing program with a 3D converter and polygon filler). You citizens of cyberspace may, someday, be able to sample the results of my years of effort in the task of creating an easy-to-use, fast 3D program.
In the summer of 1994, I was selected by the US Dept. of Energy to attend a two-week supercomputing camp at Lawrence Livermore National Laboratory. In those two weeks I made many friends, learned both UNIX and C++, and got my first taste of the WWW. Until that point, I had been an isolated Mac user in the middle of no where who had never met another programmer (though I had played with the internet in years previous (1991), it had been a Byzantine network of UNIX commands and had nothing resembling the polish or extent it currently enjoys). A few friends and I wrote a small 3D program that computed a plasma fractal, shaded it, and drew it on the screen. The most impressive part was the speed--Sun Microsystems hardware+good C code+hours of refinement=fast (for 1994). I managed to pump 30,000 shaded, scan-converted polygons to the screen per second--at the time, this was very impressive.
Regardless of my positive experience with XWindows on the occasion, I remained righteously convinced that all computers other than Macs were tools of evil. It wasn't for several more years that I was fully turned to the Dark Side.
I started my Senior year (1994-95) by taking the SATs and receiving 760 Math/700 Verbal. This, by the end of the year, had gotten me a National Merit Scholarship and thus a full tuition waiver and $1,000/semester scholarship at the school of my choice, UAF. As I worked on five high school credits and nine college, I filled out as many Scholarship application forms as I possibly could. I became a National Science Scholar, only to later discover that the funding for the program (which would have been $5,000/year for four years) had been canceled in the "Improving America's Schools Act" of 1994. As such, I only received a signed letter from Bill Clinton and a onetime payment of $952. But one would do well to refrain from examining the teeth of a gift horse (or something like that :-)
UAF, the University of Alaska at Fairbanks, is where I got my undergraduate degrees. I came to UAF with 29 college credits already under my belt. I declared as a CS major upon enrollment and later added a Math major. I graduated with Math and Computer Science degrees in the spring of 1999.
UAF, although a low-profile school, was a great place to get my undergraduate degree-- they have tiny classes, interested and intersting professors, lots of research going on (although it's well hidden!), and a supercomputing center. UAF was also close to home, making it easier (and less expensive) to keep in touch. There isn't much of a graduate program in computer science, though; which is why I left.
It at UAF that I met the love of my life, one Layla Borchardt-Wier. You can download an old picture or a new one.
At UAF, I also enjoyed my car, the Turismo, a product of Detroit in the early 1980's. This car is the reason American manufacturing had a bad name. It is so poorly manufactured, so badly designed, so completely unfit for human habilitation that I keep it around mainly for amusement and car repair practice (if I mess it up a little, it doesn't matter; it I really screw it up, I don't lose a lot). I was given the car after changing out its clutch (a mess: front wheel drive, power brakes, small car, etc.).
Eventually, I bought a better car, a 1984 Oldsmobile Cutlass Supreme. It's big, doesn't get great mileage, and (with a little V-6) doesn't accellerate worth beans. But compared to the Turismo, it's a dream. For example, it idles on its own, without even pumping the gas.
At UAF, I found myself lucky enough to be employed by NASA's ground station segment here in Fairbanks, ASF (the Alaska SAR [Synthetic Aperture RADAR {Radio Automated Detection And Ranging}] Facility [ick! a sub-sub acronym! {like this comment withing a comment within a comment}]).
I wrote ASF image processing code for UNIX workstations. I loved the terrifying complexity of the job-- satellite RADAR image processing draws heavily from physics, signal processing, geometry, and computer programming. It's a satisfyingly integrative experience to begin with the physics of signal scattering on Earth's surface, compute a slanting echo path to an orbiting satellite, figure out how to extract (in the freqency domain) the appropriately doppler-shifted signal, and finally write a computer program that takes real data recorded from space and extracts a recognizable image of the ground!
Since UAF's graduate program in computer science is so small, I chose to switch schools for my Master's and PhD. I selected the University of Illinois at Urbana-Champaign in 1999 because:
So it's April 2004. I'm at least eight months away from getting my PhD in Illinois. Layla is so sick of Illinois she breaks out in a rash at the mere mention of the word "corn". That's when I got a phone call from Kara Nance, one of my old professors at UAF. The Computer Science department back in Fairbanks is hiring. Would I like to apply? Layla danced at the thought of returning to Alaska. I was more indifferent (until I came back!), but I do like my wife, so I applied. We began planning the return process--it was not simple: