As I mentioned in my last post, I am taking some time to look back on my time in grad school. A list of course titles and descriptions doesn’t really speak to what I got out of the course, or what I put into it.

4. Application of Artificial Intelligence - This was the first elective course I took in my program. Much of the course time was centered on discussion, and there was a major project of our choice. I continued to focus on natural languages, and whether a machine could “learn” language in the same way a child could.
I had initially wanted to perform some first-hand research with children, but I wasn’t sure about my ability to gather, tag and analyze the amount of data that would be required. As well, I would only be able to observe the children’s output, I would have to infer how they arrived at such input. I decided therefore to focus my attention on accepted linguistic concepts like Universal Grammar and Principles and Parameters. As it turns out, the idea of “teaching” a machine in the same ways as a child was not a novel idea, and it has seen some success. This project was intended to serve as a starting point into more detailed research, for at the time I anticipated my capstone project would be related to natural language processing.

5. System Architecture and Engineering - I had been nervous about this course prior to enrolling in it, but it ended up being one of my favorites in the program. This course was the first to introduce us to Martin Fowler’s book “Patterns of Enterprise Application Architecture”, to which we’d end up referring in several more courses through the program. Immediately, I loved the idea of patterns: identifying possible solutions for common problems, without getting into the specific implementation details. The course clearly contrasted functional and non-functional requirements, and spoke to how different requirements complemented and conflicted with each other. It was for this course that I wrote the Critique of ‘the value of a usability-supporting architectural pattern in software architecture design’ paper. At the time I was working in the Design and Usability/User Experience department at LexisNexis, and as was noted in the paper, often usability is not an initial consideration in architectural decisions. In the few months following my taking this course (and enthusiastically talking about it to everyone who would listen), I was selected as the departmental representative on the newly formed “Architectural Advisory Board” at work. We reviewed new project concepts and identified any architectural implications from the standpoint of the department or organization we were representing. I completed this course heartily acknowledging that “I want to be an architect!”.

6. Project Management of Information Systems - This was the second elective in the program. I will admit that I enrolled primarily because of the instructor, Roger Engle. On the first day of class, every student was asked what they hoped to gain from the class. I was blunt when I stated that my perception was that project managers were really baby-sitters, and I wanted to have a better sense of what they really did. Over the next twelve weeks, I gained a much better appreciation of the role of project manager, and I will admit I even toyed with the idea of PMP certification. I believe that this appreciation has made me a better individual contributor and a better team member.

7. Issues in Database Management - I’ll admit, this was one of the courses I was least looking forward to. I’ve taken database courses before, but I don’t have a particularly strong background in them. This was another case, however, where it was an ability to grasp concepts and strategies that proved to be more important than a background in a specific technology. Indeed, many of my classmates often struggled with the theoretical aspects of the class. “but how do we do this in SQL?” they often asked. We were being introduced to general concepts or best practices, and often my classmates were unable or unwilling to look beyond what they had been exposed to. We looked at object-oriented database models unlike any that current exist in the industry. Because of the lack of immediate applicability, some students resisted even learning about such. In contrast, I held no strong convictions about “how things are” (and therefore, how they are meant to be) so I was more open to the suggestion of different conceptual models.