- Lead Lab Instructor CSc 212 The Practice of Computer Science (Spring 2005)
- Information - Academic Work - Professional Work - Teaching Assistance - Background -
|
Graduate Student with Dr R.N. Horspool in the Deparment of Computer Science at the University of Victoria. Email: jmason@csc.uvic.caOffice: TEF (formerly known as DPI) 240 Office Phone: 1-250-721-8765 Department Fax: 1-250-721-7292 (Email is the best way to contact me; my office is shared and the department fax is public in the Computer Science main office.) |
Photo by Micah J Best |
My research interests are in the area of compilers and programming languages implementation.
The old summary I had up here is quite out of date. My thesis project is an enhancment of the Views system (see below), in particular making a great deal of use of Reflections which is both fairly interesting and quite powerful for this application. The project itself is nearing completion, though there is still a good bit of the Thesis left to write. It's unlikely this section of the page will get another update before the thesis is done, so now it's fairly useless. But I wanted to at least remove the old inaccurate summary.
Over the Summer of 2003 I worked for Dr Horspool as a Research Assistant for my final Coop term. My work was primarily related to the Views project. Views is the Vendor Independent Event and Windowing System and is primarily designed to provide a cross platform GUI building toolkit for C#. Microsoft provides the Windows.Forms namespace to build GUIs with, but the cross platform C# runtime environment (Rotor) does not include this namespace and you must resort to open source third party GUI toolkits, and so Views attempts to address the problem of building portable GUIs for C# in Rotor. The applications of Views are broader than this, but that is the primary focus for current work. In addition Views has significant educational applications.
Views is also a companion to the introductory textbook C# Concisely by J. Bishop and R.N. Horspool. Visit the book's web page for Views related downloads, and example code.
Here is a presentation I gave on Views in the graduate seminar in January 2004, and a sample Views program I made to show how it works (you will need the .NET Framework installed to run it, this is a free download you can find at the C# Concisely web page).
In addition to doing some minor development work on the Views 1.xx project I developed an extension to the Views project that uses Reflections to build the GUI from the XML rather than hard coded translations, this Views 2 or X-Views is an as yet unreleased beta package. Views 2 has become the focus of my Masters Thesis, more information on this project will be forthcoming.
Please feel free to browse my resume for the details of my professional background.
Through the Coop program I worked at Shell Canada for a year. I worked on AS/400s doing System Administration. And worked on a variety of Unix (AIX and Solaris) and Linux (an IBM custom variant of Redhat) boxes. I did some administration tasks on the Unix machines, but I was mostly doing web based programming and migrating a Web Server from AIX to Solaris including rebuilding a variety of compiled CGI scripts that no longer had source available. This included a fair amount of systems programming in Perl and C and some small Java programs.
Bachelor of Science with Distinction from UVic in Computer Science with Systems Emphasis and Co-op Program in the Fall 2003 Convocation.
I was born in Nanaimo, BC on October 12, 1980 and attended John Barsby Secondary School there. I have not been working on computers and programming nearly all my life as have many of my colleagues; my first computer that I really put to use was a 486/DX2 66 that my father bought me when I was in Grade 10. I also took Computer Science 10 that year and discovered that I enjoyed it and was very good at it, so I continued Computer Science in Grade 11. In my grade 12 year Computer Science was canceled in favour of Information Technology, which is a more general computer technology course with less emphasis on programming. I wanted the programming course, so I asked Mr. Bill Saffin - the Computer Science teacher - to allow me to cover the Computer Science 12 material in a directed studies fashion, and he was more than happy to do so. As a result I was one of the last students at John Barsby to take Computer Science 12. In an interesting coincidence, Mr. Bill Saffin was present at my Undergraduate Convocation.
Immediately after graduating high school, I moved to Victoria in summer of 1998. Unfortunately lacking a second language I did not meet the entrance requirements of UVic, despite excellent high school grades, so I enrolled at Camosun College and took 1 year of University Transfer Science. In September of 1999 I started at UVic and received my Bachelor of Science in the Fall 2003 Convocation. Through the Coop program, I spent September 2000 through August 2001 in Calgary working for Shell Canada, and the Summer of 2003 working as a programmer analyst for the Department of Computer Science. This last stint with Coop was an excellent opportunity, as I worked for Dr Horspool which led to me enrolling in Grad School at UVic with Dr Horspool as my supervisor.
Now I am working towards my Master of Science degree at UVic.
Last update: 2005-01-11