COS 120 Introduction to Programming: Computing that Matters

Course Description
Development of programming skills in the novice with instruction in one or more sample programming languages. Does not count towards the computer science major. Credits: 3
Prerequisites: none
Satisfies the General Education Quantitative Literacy Requirement.

Extended Description for Special Section of the Course in Spring 2017: Computing that Matters
This section incorporates evidence-based best methods for the learning of introductory programming. Course development and initial implementation is funded by a grant from the University of Maine System.

Goals/Objectives/Outcomes: Most class time is devoted to work on incremental projects that matter to students, society or science.

  • Students are introduced to programming through self-paced tutorials and hands-on project assignments with both student and faculty mentor support.
  • Students gain project experience in programming (Scratch and Python) and then one or more of programming robots, programming sensors and data analysis, programming drones, GIS database development or virtual reality visualizations.
  • Students learn to work by themselves and in groups gaining confidence in their ability to acquire problem-solving and coding skills on their own and in teams.

Student responsibilities: Attend classes, be on time, maintain an active blog (submission at least once per week), provide feedback via the blog and via discussions with student peers and instructors, read the assigned reading materials, submit assignments on time, and present your results to your peers.

Methods and Assignments: Students complete tutorials and readings to prepare themselves to complete assignments. Assignments consist of projects accomplished about every two weeks. Each assignment comes with a clear rubric detailing what is expected of students for a given grade. Extra credit is awarded to student projects that go above and beyond the rubric expectation.

Laptop Requirement: Bring your laptop to class every class period. You should have a laptop appropriate for accessing the Internet over the campus wireless network. If not working actively on an online exercise with a teammate and/or with a CLA/instructor during class time, you will be engaged in reading material online or listening to tutorials. As a result, please always bring earbuds or headphones. If you forget your laptop, a computer lab is available across the hall from our primary workspace.

Meeting Times: Tuesday and Thursday at 3:30-4:45

Location: 136 Boardman (classroom), 137 Boardman (iRoom) and 138 Boardman (computer lab) For evening and weekend access, obtain room punch codes from Karen Kidder in Room 348. Your MaineCard is being activated to allow you to enter the building when locked during the semester.

Prerequisites: Presumption is that students have no or little programming experience prior to entering the course, A laptop computer is required and permission of instructor is required (see next paragraph)

Enrolling: As a condition for receiving funding to support this course, a diverse student population across majors, gender and other factors is required. This class section is limited to about 20 students. Apply for permission to enroll at http://umaine.edu/scis/ctm/ Students are advised of acceptance or not into the non-traditional section, on or before their registration period ends. If accepted, you will be transferred automatically into this non-traditional section of COS 120 offered at the time listed above.

URL for Syllabus and Course Materials: http://umaine.edu/computingcoursesonline/cos120/

Faculty Information

Name Phone E-mail Address Office
Harlan Onsrud 581-2175 harlan.onsrud@maine.edu 340 Boardman
Rick Corey 581-2151 richard.r.corey@maine.edu Carnegie Hall
Torsten Hahmann 581-3943 torsten.hahmann@maine.edu 344 Boardman
Connie Holden 262-7894 cholden@maine.edu 134 Boardman
Reinhard Moratz 581-2195 reinhard.moratz@gmail.com 333 Boardman
Silvia Nittel 581-3681 silvia.nittel@maine.edu 334 Boardman
Mike Scott 581-4330 mike.scott@umit.maine.edu  403 Chadbourne
Roy Turner 581-3909 rturner@maine.edu 240 Boardman

Computing Learning Assistants (CLA’s)

Name E-mail Address
Timothy Bruce timothy.bruce@maine.edu
Elizabeth Demin elizabeth.demin@maine.edu
Toni Kaplan toni.kaplan@maine.edu
Evan Kellough evan.kellough@maine.edu
Katelyn Manzo kjmanzo@gmail.com
Nathan Moore nathan.w.moore@maine.edu
Timothy Thomas timothy.thomas@maine.edu

Instructional Materials: Tutorials and readings are listed under Class Sessions and Assignments. Equipment needed for accomplishing tutorials and projects are provided (e.g. Arduino kits, robots, drones, etc.) Software and app downloads are typically free.

Class Participation: 15% – points taken off for (a) not coming to class and (b) coming to class late
Project Assignments: 70%
Blog Submissions: 15%

University of Maine Policy Statements

For further reference, consult Required Syllabus Statements (https://umaine.edu/upcc/forms/), the University of Maine Student Handbook (http://www.umaine.edu/handbook/) and
the UMS Student Conduct Code (http://www.maine.edu/pdf/conductcode.pdf)

Creative Commons License
COS 120 Introduction to Programming by School of Computing and Information Science is licensed under a Creative Commons Attribution 4.0 International License.