Well, it’s official. Today, I handed in my acceptance form for Graduate Studies here at the University of Toronto in the Computer Science Department!
Now I just need to keep my cGPA above 3.2…
Assuming that I get my B.Sc. without incident (because who knows, maybe the University will fight me for it…citing missing courses, insufficient credits, etc. I’ve checked all of this with New College and the Drama/CS departments, but I’ve been here too long not to be ready for bureaucratic tom-foolery…), I think I’ve got an interesting year or so ahead of me.
This summer is already looking quite busy, but here’s what I’m looking forward to next year:
Interesting Courses
I’ve been leafing through the Graduate course calendar, looking for courses that sound good and fulfill my breadth requirement. Here are the courses I’ve underlined as “interesting”. Note that I haven’t checked the timetable at all to see if these conflict with one another. They just sound interesting:
- 2125H – Software Development Tools and Practices:
This course is an introduction to software consulting practices. Students will be paired with clients whose problems require advanced knowledge of computer science to solve, and will then work under the direction of the course instructor to develop and deliver useful results. Topics will include requirements elicitation, scope negotiations, deployment concerns, and disaster recovery.
- 2412H – Computer Algebra
Algebraic theory that underlies symbolic and algebraic manipulation by computer. Chinese Remainder and interpolation theory, fast algorithms for computations with integers, polynomials and power series. Newton and Hensel iteration, polynomial and integer gcd algorithms, factorization of polynomials, the fast Fourier transform, solving systems of polynomial equations, Gröbner bases. The Maple computer algebra system.
- 2426H – Fundamentals of Cryptography
Rigorous definitions of security for pseudo-random generators, digital signature schemes, secure hash families, and public-key encryption.. Methods (including number-theoretic conjectures) for constructing these secure cryptographic primitives. Methods for using secure primitives to achieve secure session-key exchange and secure sessions.
- 2511H – Natural Language Computing
Introduction to techniques involving natural language and speech in applications such as information retrieval, extraction, and filtering; intelligent Web searching; spelling and grammar checking; speech recognition and synthesis; and multi-lingual systems including machine translation. N-grams, POS-tagging, semantic distance metrics, indexing, on-line lexicons and thesauri, markup languages, collections of on-line documents, corpus analysis. Python software.
- 2529H – Computer Animation
The primary focus of this course is on kinematic and dynamic techniques for character animation. Topics include physical modeling and simulation, motion planning, control and learning algorithms, locomotion, motion trajectory optimization, scripting languages, motion capture, and motion editing. Students will implement algorithms and interactive animation tools and then use these to produce motion for animations.
- KMDI1001 – Fundamental Concepts in Knowledge Media Design
Knowledge media are systems incorporating computer and communications technology that enhance human thinking, creativity, communication, collaboration, and learning. Examples include the Web, email, instant messaging, knowledge management systems, digital libraries, collaborative virtual environments, video conferencing environments, and webcasting systems.
This course reviews the emerging field of knowledge media design, and the use of digital media for communications, collaboration, and learning.
I’m also looking into the possibility of hopping (back) over to the Computer Engineering Department to see if I can take ECE568H1 – Computer Security. My general dislike for engineering courses notwithstanding, this still sounds like an interesting possibility.
(Note to self: the word “notwithstanding” just felt right to put there, but is that correct usage? I have no idea…)
Thesis
Well, it’s no surprise – a Master’s student is expected to produce a paper in order to graduate. I have absolutely no idea what I’ll be doing my thesis on, but the number of possibilities is exciting.
It’d be nice to somehow merge Drama and Computer Science into a thesis – and I think it’d be an appropriate finale for my career here at UofT. It’s something to mull over while I have time, anyhow.
Launching OLM
OLM is going up in the fall. Whether or not I work on it this summer, as a TA, I’ll probably be using the software to mark and return student code. “Eating one’s own dog-food” might be appropriate here – though I prefer, “eating the sandwich I just helped to make”.
Drama
A lot of my friends from the Drama department are either graduating in June, or staying on for one more year. A bunch who are graduating are staying in the city, and the prospect of doing some work with them outside of school is exciting.
We’re all very spoiled here at the UCDP – modest budget, multiple rehearsal spaces, etc… working on our own stuff outside of school might be a very humbling experience. Humbling as in, rehearsing in alley ways or rooftops, and using an audience holding flashlights instead of our own lighting grid. Cool.
Operation: Party Mansion
This one is still in the works. Some buddies of mine from highschool (who are also my roommates) are looking to buy some property in, or around downtown Toronto.
This may sound ambitious, foolhardy, and naive, but we’re serious, and a lot of legwork has already been done in order to get this moving.
Ideal scenario? Next year, I’ll be living in a big house with my highschool buddies. And isn’t that living the dream?
Anyhow, as I was saying, my Grad school papers are in, so my brain is going to put that on the backburner for a while. Now I have to focus on my CSC301 midterm for this Wednesday, and an evidentiary analysis on CIA/JFK Assassination links for INI304.