Rick Giles

Teaching

I have been involved in teaching first-year programming courses at Acadia for many years. My greatest satisfaction in these courses is guiding students from those first weeks of "I don't know anything about programming." or "I can program, what can I learn from this course?", to completing the year with a firm foundation in problem solving through computer programming. My courses are challenging and rewarding to the capable student.

Quotes From Former First-Year Programming Students

I am a Music major that had no prior programming experience. Though COMP 1113/1123 seemed over-whelming at first, the Java programming courses provided a solid and comprehensible introduction to object-oriented programming, going beyond the basics. It remained challenging throughout, providing strategies for dealing with frustrating issues that often arise in coding, and also the help necessary to fully comprehend the subject. Be careful not to think too hard about recursion, it can cause brain damage!

—Jean-Marc Giffin

COMP 1113/23 was my first experience at full-fledged computer programming. The basis it gave me was very useful for math and physics work (particularly anything involving numerical or physical simulations), as well as giving me a jumpstart to learning other languages such as PHP, a highly useful internet language.

—Gus Webb

Scholarly Activity

Writing well-documented, properly-styled source code is an important skill of a professional computer programmer since such code is less error-prone, and is easier to read, understand, use and maintain. However, it can be frustrating for a student to learn documentation and coding standards, especially in the first year when they are concentrating on other important programming skills, including problem solving, algorithm development, implementation, debugging, and testing.

In my search for tools for that assist students with documentation and style issues, I found Checkstyle, an open-source development tool to help programmers write Java code that adheres to a coding standard. I joined the project as a developer and have contributed useful checks, components and bug-fixes to the project. Some of those checks were motivated by errors that I frequently observed in student code. Students in my programming course now use Checkstyle to improve their source code before submitting it for an assignment or project. I endeavour to transfer general programming skills that I learned from working on the Checkstyle project to my students. I have supervised several Acadia students who completed projects and Honours theses related to Checkstyle. It has been rewarding work on a quality, open-source tool used by students and professional programmers.

Mobile Computing

One of my passions outside of teaching and programming is bicycling. My wife and I are mountain bikers and fair-weather bicycle commuters. We enjoy bicycle vacations and toured the interior of B.C. for the third time in July, 2005. Here we are having some fun on that trip:

vacation1.png

vacation2.png

We cross-country ski during the winter. Don't expect my class to be cancelled due to a snow storm - I have been known to ski to class.