Life Update v. 2.4.2001 Lessons Learned, or How I Spent My Spring Vacation Recently I made the decision to transfer to the University of California at Irvine, there to complete my Ph.D. The purpose of this essay is to describe the impacts that the various stages of my education have had on my decision. * * * In the beginning there was the Thomas Jefferson High School for Science and Technology. It was relatively small. It had good-to-excellent teachers, and fantastic funding and facilities. It also had many highly and idiosyncratically intelligent students. This was also the first school in which I had a significant degree of freedom in choosing my classes. Here I learned about the importance of having--and choosing--good teachers and interesting classes. Then, after a great deal of sound and fury, came the University of Oregon. It had professors which ranged in quality from excellent to execrable, and had an equally broad spectrum of students. It had (I thought) an incredible array of classes. And it had a moderate amount of funding, which dipped dramatically when property taxes were slashed. Here I learned a number of things, some of which I would not come to recognize for some years afterwards: * it is possible for a professor to know his subject cold and nevertheless be unable to teach it effectively * not all professors appreciate--or even tolerate--independent thinking on the part of their students. (Laugh if you like, but this was the first time that I could recall meeting teachers that seemed to actually resent my disagreements with them even when I could back up my point of view.) * despite my love of reading and talking about books, I would be at best a highly frustrated literature major: I like playing with words and interpretations, but people that take such things seriously are often space aliens * I had some real problems with motivation, time management, and study habits * I had unreasonably high expectations of my performance given the problems just mentioned, and * it was possible for me to get burned out on academics. Oh, yes, and... * just because a class is listed in the catalog does _not_ mean that it's ever actually offered (grrr...). So, degrees in CIS and math in hand, I entered the job market in Portland. Here I learned that * some companies defraud their employees to the extent of writing paychecks written on nonexistent accounts * some employees are inexplicably willing to work for such companies anyway * there exist companies that are willing to hire intelligent people with little "industry" experience, and such companies can be good to work for, but they appear to be few and far between * companies that allow product development to be driven by marketroids may make more money, but tend to lose any committment to design quality or coherency * people that point out others' unrealistic expectations, or problems with quality control, tend to be either ignored or resented * some companies, when confronted with a consistent quality control problem, will refuse to either fix the product or revise the specification * I am willing to leave a job for reasons of principle, and * money doesn't really matter to me very much beyond a certain point: thus, I was able to leave my moderately lucrative software engineering job without any real concerns about the fact that graduate students don't get paid much. Sometime during this period, due in part to conversations that I had with my friends Alex West and Jeff Lassahn, I also realized why it was that I liked mathematical modelling and certain sorts of programming. If you can construct a mathematical model of some phenomenon, and you can describe this model in sufficient detail to be able to write a program to simulate the behavior of this model, and this simulation gives you good predictive power for its phenomenon, then you can fairly say that you understand the original phenomenon pretty well. This kind of understanding, when I can achieve it, gives me a wonderfully satisfying feeling of solidity and connectedness...and contributes to my impression that at least on some level and in some domains, I can know What's Going On. After a few years of software engineering and related jobs in Portland, I left Portland in the fall of 1997 for Vancouver, BC, to get a Master's degree in applied mathematics at the University of British Columbia. (Parenthetically speaking, I finally hooked up with Megan in November of 1996, after about a year and a half of sporadic pining, thus unexpectedly fulfilling my hope that I would be in an established relationship before going back to school. Since Megan remained in Oregon, clearly I should have hoped for a *mobile* established relationship. :) UBC was fundamentally similar to the U of Oregon in many respects, although it had different strengths and weaknesses. By a peculiar sort of quasi-accident, I ended up being admitted by the mathematics department rather than the department to which I had applied (computer science). Since I was getting my degree through an interdisciplinary program (the Institute of Applied Mathematics) it might seem that it wouldn't make a difference...but more about that in a moment. Here, I learned that * I enjoy teaching * it is important, as a graduate student supported by a RA/TA position, to make sure that you can line up either funding or some other kind of job for the summer: you don't make enough money during the school year to live off it during the summer, and such funding is often not guaranteed by your department * computer science departments tend to have much better funding than mathematics departments, and consequently better facilities * my success in CS classes can be seriously influenced by whether I am a student in the CS department; as a non-CS student, I didn't have access to their labs or to other CS graduate students when I got stuck * I really dislike being in a department in which I'm the only person working in my area besides my advisor * I much prefer to have a proactive advisor that checks up on me to see how things are going on a regular basis, and doesn't let me slack off too much, and * it's just a heck of a lot of fun to be in an environment in which I am encouraged to spend a lot of time thinking about abstract problems. During this time I came to realize that I was specifically interested in problems related to the use of artificial intelligence in problems of information retrieval (which I occasionally refer to as "building a better librarian") and of decision-making (i.e., how to help people make intelligently informed decisions). Once I was done with my Master's degree, I returned to Eugene and the University of Oregon to start work on my PhD in computer science. At UBC, I had had an introduction to both AI and operations research, and noticed that some of the same kinds of problems were addressed in both fields. I then discovered that the UO computer science department had an affiliated institute (the Computational Intelligence Research Laboratory, or CIRL) that worked on those problems with those tools. Since Megan had already started working on her second bachelor's degree in CS at the UO, I decided that I should return to the UO to get my PhD, by doing work with CIRL. I knew that the UO CS department didn't have really anyone working in AI, but CIRL seemed well enough established that I wasn't worried about that. Unfortunately, CIRL never saw their way clear to actually bringing me into their research group, at least in part due to a Catch-22: since they were unsure of whether I would actually do the necessary work to realize my potential, they wanted me to produce some useful work on a problem they found interesting; if I did, they would bring me in and give me a funded research position. Unfortunately, in order to have enough available time, I needed the funded research position. The fact that CIRL acknowledged that it was a Catch-22 did not help. While at the UO, and after I decided that CIRL was a lost cause, I did some work with a couple of different professors in areas peripherally related to AI (reputation and peer-to-peer computing) in an unsuccessful effort to find an advisor with whom I could work. Here, I learned that * it's a bad sign when the group that you want to work with starts putting contingencies on your inclusion * I take an incredible amount of time to handle a teaching load, in part because I try to be extremely meticulous in preparation and grading * I have considerably higher standards for grading assignments-- programming assignments in particular--than most UO CS professors and students * it enrages me when professors let their standards slip (e.g., don't bother to follow up on substantiated reports of cheating, let people pass that clearly haven't got a clue, don't properly prepare for their class, or generally make their class easier than they believe it should be due to laziness) * generally speaking, the quality of the UO CIS department appeared to me to be in a slow decline: the requirements are becoming less rigorous, it has lost some of its best professors (and thus far has been unable to replace them, much less fulfill its hopes of hiring additional new professors), it seems to have trouble attracting good graduate students, and there seems to be a higher emphasis on increasing enrollment at the expense of the program's quality * in sum, this was not a good place for me to finish my PhD. On the positive side, while I was at the UO, Megan and I became engaged on 1 July 2000, were dissuaded from getting married that fall, and eventually married on 8 July 2001. While my graduate experience at the UO was certainly not all that I had hoped, on balance I'm glad that I went there, if for no other reason than that our time in Eugene gave us the opportunity to "settle our few remaining differences" [DOG: 4800 :) ] in person, which otherwise might have taken considerably longer. So in December of 2000, I sent a flurry of applications out to graduate schools: Cornell, and the Universities of Washington, Michigan, and California at Irvine. All of these had good-to-excellent programs in artificial intelligence as used in information retrieval. When the dust settled, I had an offers of admission from UM and UCI, and of two years' worth of support from UCI. Megan and I visited UCI (at the invitation of the computer science department and with its financial assistance) at the end of March 2001. We came away with a pretty good impression of the university, the department, and the professors in my area of interest--and a distinct sense that I was actually wanted here. So eventually I decided to attend UCI. There are a few flies in the ointment, of course: the department here is physically divided among something like 4.5 buildings, the housing situation is terrible ($1200 for a one-bedroom non-campus apartment is the norm), and, well, it's in southern California. (I like seasonal change and rain, OK? :) Besides, my close friends are now a minimum of 6 hours' away, and most of them are much farther.) The most significant problem is that I found out in July that the person at the top of my personal list of prospective advisors will be transferring to the U of Washington after fall term. Deciding not to try to follow her up there was a very difficult decision: she would have been an excellent match for me both stylistically and in area of interest. However, for several reasons (another long-winded essay on that subject is available for those who might want more of my blatherings), including the fact that she was going to their medical informatics program and not computer science, I decided that sticking with my original plan to attend UCI was best. So here I am: I have arrived in Irvine, and thus far things still look pretty good. The department has, on the basis of my past work, waived the general course requirements, which means I only have to take the required courses in AI; they've even waived the teaching requirement. I even managed to get on-campus housing (and thus save myself probably about $700 a month). Unfortunately, Megan's still in Eugene, finishing her computer science degree, but if all goes well she should be here in December. We'll see how it works out. Joshua O'Madadhain (begun 2 April 2001; completed 16 September 2001)