Overview

This introductory course develops computational problem-solving skills for engineering applications. Students learn algorithm design, pseudocode, programming syntax, data structures, modular program design, file processing, debugging, testing, documentation, and version control using a language and development environment suited to numerical and technical work.

Engineering applications include unit conversion, numerical calculations, equation evaluation, data processing, plotting, curve fitting, simulation, and introductory numerical methods such as iteration and root finding. Emphasis is placed on reliable floating-point computation, input validation, error analysis, reproducibility, responsible use of computational tools, and communication of assumptions, methods, code, and results to technical audiences.

Learning Outcomes

  • Decompose engineering problems into clear algorithms and structured pseudocode.
  • Construct readable, reusable programs using variables, data types, operators, conditional logic, loops, functions, and appropriate scope.
  • Select and implement suitable data structures, including arrays or lists, strings, dictionaries, and structured data.
  • Apply file input and output, plotting, curve fitting, simulation, and basic numerical methods to engineering problems.
  • Test and debug programs systematically using validation, test cases, error analysis, and reproducible workflows.
  • Evaluate the reliability and limitations of floating-point calculations and computational results.
  • Document program structure, assumptions, methods, and results using appropriate technical conventions and version-control practices.
  • Interpret and visualize computational results and explain code, conclusions, and limitations to technical audiences.

Timetable

TypeLengthFrequencyPeriod
Lecture2 hoursWeeklyAll semester
Lab2 hoursWeeklyAll semester
Tutorial1 hourWeeklyAll semester
Workshop2 hoursFortnightlySecond term

Assessment Schedule

TypeDescriptionWeighting
QuizWeekly programming quizzes (5 × 2%).10.00%
AssignmentAlgorithm design and pseudocode assignment.15.00%
AssignmentProgramming and data-processing assignment.15.00%
TestMid-semester practical programming test.20.00%
DeliverableTechnical documentation and version-control submission.10.00%
CapstoneEngineering computation project.15.00%
ExamFinal written and computational examination.15.00%

Prerequisites

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.