CSI1390 – Introduction to Computing

Prof. Liam Peyton is the instructor for CSI1390 this year (2013).

Office Hours: Monday/Lundi, 14:00 – 15:30 in SITE 5074

TA: Martin Scaiano, mscai056@uottawa.ca, Office hours: SITE 3032, Monday 11:00-2:00, Tuesday 12:00-3:00

Abbas Javadtalab, javadtalab@gmail.com, Office Hourse: SITE 5000D, Friday 10-12:00

Prof. Ivan Stojmenovic normally teaches CSI13909, but is on sabbatical.  His course website can be viewed at http://www.site.uottawa.ca/~ivan/CSI%201390%20outline%20IS.html

Course Description

Computing and computers; Problem solving and algorithm development; Introduction to
programming. Use of application, communication, and database software
Courses ITI 1120, ITI 1121, CSI 1306, CSI 1308, and CSI 1390 cannot be combined for credits.

Lectures: Friday/Vendredi, 08:00 – 10:00 in CBY B-002, (Yellowish building beside SITE Building, in the basement)

Labs: Monday/lundi, 08:00 – 10:00 in SITE 2052

Students are encouraged to download and use the DR. Java toolkit we will be using in the lab on their own machines as well.  It is available at http://www.drjava.org/


Course Schedule








Friday, 13 September

Section 1 - Introduction

Lab 0 – Running your first Java program


Monday, 16 September


Friday, 20 September

Section 2 – Introduction to Java

Lab 1 – Introduction to Java

Quiz 1


Monday, 23 September


Friday, 27 September

Section 3 – Algorithms and Translating them to Java

Lab 2 – Translating Algorithms to Java

Quiz 2

Assignment 1

Due: Sun, Sept 29, 10pm

Monday, 30 September

Section 4 - Tracing and Debugging


Friday, 04 September

Section 5 - Branching

Lab 3 – Branching

Quiz 3


Monday, 7 September

Section 6 – Loops and Arrays


Friday, 11 October


Section 6 – Loops and Arrays and   Program Structure

Lab 4 – Loops

Quiz 4

Assignment 2

Due:Sun Oct 13, 10pm


Monday, 14 October

Study Week



Thursday, 17 October


Monday, 21 October

Section 8 - Recursion

Lab 5 – Arrays

Monday, 21 October

Friday or Thursday

Test #1




Will Be updated soon




Course is primarily based on lectures and tutorials.

There are also excellent on-line tutorials for learning Java (see other material below for one suggestion)

There are plenty of books on the market to help one learn Java, and any of them will do.

Here is one:

·          “Introduction to JAVA Programming”, Daniel Liang, Seventh Edition, Brief Edition (recommended, but not required).

·         The text may be obtained from the Agora Bookstore (www.agorabookstore.ca), 145 Besserer St.


Other Material:

·         Workbook”, G. Arbez and M. Eid, available from the Blackboard Learn.

·         USB so that you can have secure backup copies of your programs

·         There are plenty of online resources including discussion groups, tutorials, example code. Google “learn to program java”.

·         online tutorials and online tests to receive certification as a Java developer at Oracle-Sun.

These are worth looking at:

Java Tutorials Home page:    http://docs.oracle.com/javase/tutorial/index.html

Get Started: http://docs.oracle.com/javase/tutorial/getStarted/index.html

Learning Java: http://docs.oracle.com/javase/tutorial/java/index.html  (but skip Interfaces and Inheritance, Generics and Packages)

JDBC (database access): http://docs.oracle.com/javase/tutorial/jdbc/index.html (just the introduction)



v  In-Class Tests 40%  (2 tests worth 20% each)

v  Assignments 30% (3 assignments worth 10% each)

v  Programming Project 30% (that will be done in groups.


·         Please review the lab manual for explanation about how to submit the assignments



-10% for any part of the project that is handed in after the due date

-20% if it is handed in more than 1 week after the due date

No deliverables will be accepted that are handed in more than 2 weeks after the due date.

Only in very rare circumstances will extensions be given. AND only if the request is made in a timely fashion. E.g. if you want a 1 week extension, you must ask me at least 1 week before the due date AND have a valid reason for needing one.

Lab sessions

The labs are designed in the form of programming tutorials that help you practice what we discuss in the lecture room. The lab starts by a short presentation given by the TAs, followed by a set of exercises to be solved/tried during the lab time. At the end of each lab session, there will be a 15-minutes quiz. As for grading for the quizzes, the best 5 out of 8 will be worth up to 5% extra marks for your final grade.


Plagiarism (copying and handing in for credit someone else’s work) is a serious academic offence that will not be tolerated.  It is expected that students will help each other on assignments.  The key aspect is that if you have copied someone’s work, you must declare what work you have copied and give them full credit for helping you. Please refer to the section on academic offences in the Undergraduate Calendar and the notice on plagiarism on the University of Ottawa website for additional information: www.uottawa.ca/academic/info/regist/crs/0305/home_5_ENG.htm.