Overview

This course introduces the foundations of computing and computational thinking. Students examine computer hardware and software, operating systems, files and processes, binary and hexadecimal representation, data types, memory, text and media encoding, abstraction, and the social, ethical, and professional implications of computing.

Practical programming develops competence with variables, expressions, input and output, conditionals, loops, functions, parameters, scope, basic collections, strings, debugging, testing, and readable code. Students apply decomposition, pattern recognition, pseudocode, flowcharts, and informal complexity analysis to design algorithms and solve authentic problems. The course also introduces version control, documentation, secure computing, privacy, accessibility, collaboration, and evaluation of computational solutions for correctness, clarity, efficiency, and ethical impact.

Learning Outcomes

  • Explain the fundamental components and functions of contemporary computing systems, including hardware, software, operating systems, files, and processes.
  • Represent and manipulate numerical, textual, and media data using binary, hexadecimal, and appropriate encoding schemes.
  • Design, implement, test, and debug small programs using variables, control structures, functions, parameters, collections, and strings.
  • Decompose computational problems into reusable procedures and express solutions using pseudocode, flowcharts, and readable program code.
  • Trace program execution and diagnose errors involving control flow, data, scope, and function calls.
  • Select and apply suitable basic data structures and algorithms for introductory computational tasks.
  • Collaborate on a programming project using version control, documentation, testing practices, and development tools.
  • Evaluate computational solutions for correctness, clarity, efficiency, security, accessibility, privacy, and ethical implications.

Timetable

TypeLengthFrequencyPeriod
Lecture2 hoursWeeklyAll semester
Lab2 hoursWeeklyAll semester
Tutorial1 hourFortnightlyAll semester

Assessment Schedule

TypeDescriptionWeighting
QuizWeekly quizzes (10 × 1%), assessing foundational concepts.10.00%
DeliverablePractical lab submissions (10 × 1.5%), demonstrating programming and development skills.15.00%
AssignmentAlgorithm design assignment.10.00%
CapstoneProgramming project, including documentation, testing, and version control.20.00%
TestMid-semester written test.20.00%
ExamEnd-of-semester examination.25.00%

Prerequisites

  • Requirement 14 NCEA Level 2 Mathematics credits, externally assessed

Teaching Staff & Programs

This course is delivered jointly by faculty from the participating programs listed below. In line with the Douchewater Way, the University of Sexology tailors core instruction directly to each cohort's specific discipline — adapting curriculum to program needs rather than forcing students into a one-size-fits-all model. Learn more about our approach at The Douchewater Way.