RU beehive logo ITEC dept promo banner
ITEC 120

Principles of Computer Science I
ITEC120 archive

ITEC Peer Tutor hours

ITEC120 is an introduction to programming. It approaches programming as problem-solving, emphasizing:

Prerequisites and expectations

Pre-requisite: College-level pre-calculus (Math 168 or similar). (Equivalently: able to register for Math 171 or Math 169.)

Most students find the course demanding, but also rewarding. It tends to require 8-12hrs/wk outside of class, to be successful. Those who want a preparatory course in programming find it helpful to take ITEC 109 before taking ITEC 120.

Note: A students may not attempt to take ITEC 120 more than two times (a "W" counts as an attempt). After two attempts, credit cannot be transferred in from another university. Contact Jeff Pittges (jpittges@) if you want to petition to get credit based on mastery of the material.

Although the course currently teaches the above concepts by using Java, the content transcends a particular languages or environment. From high school algebra (a pre-req for applying to RU at all), a critical concept is a function: something which takes an input and returns a value. Learning to program reinforces the distinction between calling a function and defining a function. While this is easy to say, it sometimes takes a while before this concept is ingrained.


More concretely, here is a partial list of topics; see also a more complete list.

Course pages, past and present

Can't find (much) info for a particular semester? This might be due to that particular section using a course management system such as Desire2Learn, available only to enrolled students.

1 This is similar to Extreme Programming's “test-driven design”. Although one purpose of stressing testing early in CS1 could be to ingrain this methodology early, the actual reason it is used here is more practical: writing two to three test cases helps clarify both (a) the problem statement (what the function is supposed to compute), and (b) what steps are involved in computing the answer. Both of these result in students completing their assignments more easily.      

logo for creative commons by-attribution license
This page licensed CC-BY 4.0 Ian Barland
Page last generated
Please mail any suggestions
(incl. typos, broken links)
Rendered by Racket.