Course syllabus

DIT009 Fundamentals of Programming, Fall term 2025, 7.5 credits

Course is offered by the department of Computer Science and Engineering. Course activities (examination, lectures and exercise sessions) will happen on campus. More details about course (e.g., examination and schedule) and content is shared in the course Canvas pages section.

Programming (or development or coding) is the act of realising solutions to computing problem, i.e., programs, using a programming language. It involves the design, realisation, testing, troubleshooting, and maintenance of program code, in a programming language, on top of of some programming platform, by the help of a development environment.

Contact details

Examiner / Teacher: Francisco Gomes de Oliveira Neto (francisco.gomes@cse.gu.se)

Teaching Assistants:

  • Caroline Grand-Clement
  • Aisha Attar
  • Omar Moussa
  • Ulyana Dranitsa
  • Shiping Wan
  • Ionel Pop
  • Razvan Albu
  • Ville Vikingsson
  • Makan Ajdadi Salekdeh
  • Artemis Mokhtari
  • Tomas Zajic
  • Aupra Orlowski
  • Ulyana Dranitsa

Administration

Student representatives

  • TBA

Course purpose

The course introduces the student to a the fundamental concepts of programming with associated platforms and environments, in addition to essential practices such as error handling, code quality, and refactoring . For this version, we will use Python as the main programming language during lectures, exercises, assignments and exam. 

 

Schedule and Literature

A detailed schedule is available in the main course page.

Each lecture has a mandatory reading material created by the teachers that is made available to the students before each lecture once the course begins.  We do not use a specific course book. Extra material (slides, assignments, video tutorials, etc.) will be made available through Canvas during the course.

 

Learning objectives and syllabus

On successful completion of the course the student will be able to: 

Knowledge and understanding:

  • explain basic programming language concepts, e.g., statements, expressions, operators, types, control flow constructs, argument passing, method calls and exception handling,
  • explain the meaning and use of elementary data structures, e.g., strings and arrays,

Skills and abilities:

  • develop small (up to 5000 lines of code) software applications in an object-oriented programming language using a modern development environment,
  • structure the program into separate parts that can be implemented independently in a practicable way, 

Judgement and approach:

  • evaluate the comprehensibility of a program, e.g., following code quality guidelines
  • assess the impact of errors in software development.

Course summary:

Course Summary
Date Details Due