INSTRUCTIONS - PROFESSORS: Please print and review this form. Complete or correct the sections, as applicable, from "Supervisor's Name" to "Ethics, safety, and training". Please sign and date near the bottom ("Supervisor's signature").
INSTRUCTIONS - STUDENTS: You may receive this form by email, or you may download it after it has been posted here. Either way, print and review this form. Complete or correct the sections, from "Student's Name" to "Student's Level", and sign ("Student signature"). Ask your supervisor to sign her/his section near the bottom. Take it to the department* corresponding to the course number in Section A; this may or may not be your own department. (* EXCEPTIONS: For NSCI 396 and COGS 396, please bring it to the Interdisciplinary Programs Adviser in Dawson Hall.) Do not register for a '396' course on Minerva until you receive departmental permission. Have a discussion with your supervisor about time/work expectations, keeping in mind that this is a 3-credit course (roughly, 10 hours per week for 12 weeks). Remember that a '396' course is an elective.
INSTRUCTIONS - DEPARTMENTS: After the unit chair/director/designate approves (or not) this project, please notify student. If approved, please give student permission to register on Minerva, and send a copy of this form (with signatures) to the Office for Undergraduate Research in Science (either fax, or internal mail to Dawson Hall 408-A, or PDF scan + email).
QUESTIONS OR FEEDBACK? Contact the Office for Undergraduate Research in Science.
Supervisor's Name: Laurie Hendren
Supervisor's Email: hendren [at] cs [dot] mcgill [dot] ca
Supervisor's Website: www.sable.mcgill.ca/~hendren
Supervisor's department: Computer Science
Course number: COMP 396 (Computer Science)
Term: Summer 2014
Project start date: Thursday, May 1, 2014
Project end date: Friday, August 29, 2014
Project title: A Principled Approach to Teaching MATLAB
Project description (50-100 words suggested):
MATLAB is a popular language for scientists, engineers and students. Despite the availability of numerous "how to" tutorials and books, there remains a lack of foundational teaching materials which introduces a clean subset of MATLAB in a way consistent with good programming language semantic
The main goal of this project is to develop an online tutorial which introduces MATLAB to novice programmers in a structured and semantically correct fashion, using examples of relevance to a wide variety of science and engineering students. A key challenge will be to identify the correct subset of MATLAB, which has clean semantics, but yet is expressive enough for typical scientific computations.
We expect that the final tutorial will be of general use to students at McGill and elsewhere.
Prerequisite: 1 term completed at McGill + CGPA of 3.0 or higher; or permission of instructor.
Grading scheme (The final report must be worth at least 50% of final grade): Milestones - 10%; Presentations - 10%; Software - 30%; Final Report - 50%.
Project status: This project is taken; however students may contact the professor to discuss other possible '396' projects this term.
Ethics, safety, and training: Supervisors are responsible for the ethics and safety compliance of undergraduate students. This project involves NEITHER animal subjects, nor human subjects, nor biohazardous substances, nor radioactive materials, nor handling chemicals, nor using lasers.