June 23, 2013
June 23, 2013
June 26, 2013
Electrical and Computer
23.624.1 - 23.624.15
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. https://peer.asee.org/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