Welcome to Structured Programming 2020!

You should find all the information you need on this web site, and on the Piazza forum, which you’ll be invited to join in Week One.

This course has three broad foci:

  • introductory core computer science, such as data structures, programming language fundamentals, complexity, as well as some history;
  • software development skills, including learning the Java programming language, learning to use a distributed version control system and an integrated development environment;
  • introductory software engineering, including classic concepts in software engineering and exposure to current practice.

The course is fast-paced, particularly during the first five weeks; please carefully read the notes on Week One below. I hope that you find this course to be very rewarding, notwithstanding the fast start. Each student who completes this course should walk away with a great sense of satisfaction in completing a major project, having learned a lot, and having mastered some important software development skills along the way.

COVID-19 and Online Study

Due to COVID-19, the University has decided that for Semester 2 2020, all large group learning activities and all lectures will be conducted remotely. Consequently, all aspects of this course will be delivered online until and unless the University’s policy changes. Lectures will be live, online, via Microsoft Teams, with live streaming through services including Microsoft Stream. Likewise, labs will be live and will also use Microsoft Teams.

You will receive an invitation to Microsoft Teams on Monday 27/7 (please do not request early access :-)).

If you will have difficulty engaging in online study, please contact CECS Student Services so that they can offer you the best support. For more details on the University’s response, please see ANU coronavirus advice.

Lectures

Our lectures are scheduled as follows:

  • Monday 10:00-12:00 AEST
  • Friday 13:00-14:00 AEST Lectures will be streamed via Microsoft Stream (iOS, Android) via the COMP1110 channel. To find the lectures, go to Microsoft Teams (you should recieve an invite), and go to the “Lectures” channel, and from there you should find a “COMP1110 Lectures” tab at the top (it may be hidden, check if there’s a small item that says ‘2 More’).

I structure lectures in well-defined modules.

For each module, I start by presenting the high-level ideas, then I run an in-class quizz, and then usually I move to live coding, where I illustrate the concepts with concrete coding examples built up from first principles.

For each module, I provide you with a wide range of resources including lecture slides, lecture recordings, and typically homework questions and related lab exercises.

It is up to you to make the most of the resources I am delivering to you. Unless you engage well with this material, you will probably struggle. The best approach is to be an active participant in the lectures and the labs.

Assessment and Administrative Overview

The course’s administrative overview is available here.

Individual Assignment

Early in the semester, you will complete a small individual assignment. All students should be able to complete four out of five parts of the assignment. The fifth part is more advanced. You should not feel disappointed if you decide not to spend time on the fifth stage.

Group Assignment

At the centre of the course is a large group project, which you will complete in groups of three. The lecture and lab materials are paced to ensure you have the skills to complete the project on schedule.

Mid-Semester Exam

There will be a one-hour mid-semester exam on Monday Week 6 at 18:00. The exam will be electronic. Details will be available in Week 5.

Engagement

Your success in this class depends entirely on engagement from you. You will profit because you’ll enjoy the class a great deal more, and you’ll undoubtedly see your engagement reflected in your final mark. Some students need a nudge, and in deference to them, this course has 5% of the marks attached to class engagement (this comes from participation in your lab, engagement on the Piazza forum and engagement in in-lecture quizzes).

Practitioner Cameos

In this class, you will have the opportunity to meet and interact with guest lecturers. Make the most of these opportunities.

Week One

Week one is particularly important in this course. Please be sure to complete the following by the end of week one:

  • Attend both lectures.
    • Monday 10:00-12:00 AEST
    • Friday 13:00-14:00 AEST Lectures will be streamed via Microsoft Stream (iOS, Android) via the COMP1110 channel. To find the lectures, go to Microsoft Teams (you should recieve an invite), and go to the “Lectures” channel, and from there you should find a “COMP1110 Lectures” tab at the top (it may be hidden, check if there’s a small item that says ‘2 More’).
  • Browse this web site. Be sure to read policies on deadlines, academic integrity and email.
  • Enrol in a lab class (enrolment will be open from 09:00 Monday 27 July).
  • Sign up to the Piazza forum (available from 09:00 Monday 27 July)
  • Attend at least one lab session (in Week One, you may attend any session):
    • Tuesday 11:00-13:00 AEST
    • Tuesday 13:00-15:00 AEST
    • Tuesday 15:00-17:00 AEST
    • Wednesday 09:00-11:00 AEST
    • Wednesday 11:00-13:00 AEST
    • Wednesday 13:00-15:00 AEST
    • Wednesday 15:00-17:00 AEST Labs will be held on the labs channel of Teams.
  • Complete Lab 1 on your own computer, and get it marked off at one of the scheduled labs (if you plan to use your own computer during the semester).

A step-by-step video shows you how to complete lab 1.

Updated:    12 Jan 2021 / Responsible Officer:    Head of School / Page Contact:    Steve Blackburn