Asee peer logo

From Robots to Gorillas: Computer Programming for Engineers

Download Paper |


2013 ASEE Annual Conference & Exposition


Atlanta, Georgia

Publication Date

June 23, 2013

Start Date

June 23, 2013

End Date

June 26, 2013



Conference Session

Software and Web-based Learning in ECE

Tagged Division

Electrical and Computer

Page Count


Page Numbers

23.624.1 - 23.624.15



Permanent URL

Download Count


Request a correction

Paper Authors


Dileepan Joseph P.Eng. University of Alberta

visit author page

Dileepan Joseph received the Bachelor of Science degree in Computer Engineering from the University of Manitoba, Winnipeg, MB, Canada, in 1997 and the Doctor of Philosophy degree in Engineering Science from the University of Oxford, Oxford, UK, in 2003. Since 2004, Dr. Joseph has been with the Faculty of Engineering at the University of Alberta, Edmonton, AB, Canada, where he has specialized in the team teaching of computer programming and where he has developed a research program in electronic imaging. From 2012 to 2013, Dr. Joseph was a Visiting Professor at McGill University, Montreal, QC, Canada.

visit author page

Download Paper |


From Robots to Gorillas: Computer Programming for EngineersAt the University of Withheld, all 1st-year engineers take a 12-week course, offered by theDepartment of Electrical and Computer Engineering (ECE), called Computer Programming forEngineers. This course, which has consolidated lecture notes, lab assignments, and exams, istaught by 5 lecture instructors, 1 lab instructor, and about 20 teaching assistants to almost 1000students per year. In the last 4 years, during which the author was a lecture instructor, the coursehas undergone major changes, prompted by student dissatisfaction as expressed in 4th-year exitsurveys. This paper describes the strategies taken in this complex scenario to improve thelearning experience for all students and to improve the author's teaching evaluations.The first change, 4 years ago, was the ECE Department Chair decided to assign tenure-trackand/or tenured faculty, especially professional engineers, to teach the course. At the same time,"Karel the Robot", a pedagogical tool by Pattis, was introduced as a stepping stone, in the first 2weeks, to the C programming language. Karel was popular, as evidenced by classroom surveysand interest in an optional programming contest the author organized. Nevertheless, the author'srating on instructor effectiveness was lower than his rating in other courses for which he hadcomplete instructional control, something impractical and undesirable with this course.Effective 2 years ago, a task force composed of an Associate Dean, Department Chairs, and otherfaculty from Chemical and Materials, Civil and Environmental, Electrical and Computer, andMechanical Engineering changed the programming language from C to MATLAB. The rationalewas that MATLAB was relevant to all departments, whereas C was mainly relevant to ECE. Atthe same time, 3 new instructors were assigned to the course due to instructor retirement.While the author was busy with a tenure application, the rest of the team developed the newcourse, based on established textbooks. While it was technically possible to port Karel the Robotfrom C to MATLAB, they decided not to for sound pedagogical reasons. First, they wanted toavoid syllabus duplication, where concepts taught with the educational programming languagewere then re-taught with another programming language. Moreover, unlike with the C course, aMATLAB course enabled visual examples easily enough without Karel the Robot.The new course was short 2–3 weeks of lecture material, as all instructors, including the author,discovered during the semester. To fill the gap, the author compared and contrasted the newcourse with the old one. What Karel the Robot had provided, via the programming contest, was away to unify multiple knowledge parts into a single creative whole. Also, having mentored Karelcontestants, the author understood the practical advantages of the iterative-and-incrementaldevelopment (IID) model of programming over the waterfall model being taught.With Karel the Robot, over 40% of student-led contest entries were games. Therefore, the authordecided to teach students how to program a game in 6 versions using the IID model. Each time asyllabus part was completed, the game was revisited and an improved version created. Entitled"Gorillas in MATLAB", the game was based on "Gorillas", a 1991 game by IBM. As evidencedby instructor effectiveness ratings and written student comments over the past 2 years, "Gorillasin MATLAB" was a success. Moreover, it has been adopted by all instructors in the past 1 year.Recently, the material has been released online under a permissive free software licence.

Joseph, D. (2013, June), From Robots to Gorillas: Computer Programming for Engineers Paper presented at 2013 ASEE Annual Conference & Exposition, Atlanta, Georgia. 10.18260/1-2--19638

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2013 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015