CS105BKK
Intro to Programming 2: Python
Faculty Profiles

Giorgi Kurtanidze
Software Engineer at Autopilot

Irakli Kereleishvili
Software Engineer at Autopilot
Course length
Duration
Total hours
Credits
Language
Course type
Fee for single course
Fee for degree students
Skills you’ll learn
Overview
This course builds on the programming foundations developed in Intro to Programming 1 and introduces students to practices for developing larger, more maintainable Python programmes.
Students will learn how to design programmes using object-oriented programming, organise code into modules and packages, handle errors and exceptions, work with files and external data, and interact with APIs.
By the end of the course, students will be able to design and implement a small Python application using professional development practices and will have a foundation for further study in software engineering, data science, artificial intelligence, and backend development.
Learning highlights
- Develop a deeper understanding of Python and its programming model.
- Use object-oriented programming to structure and organise programmes.
- Write reusable, readable, and maintainable code.
- Work with files, external data, and Python libraries.
- Handle errors and debug programmes systematically.
- Understand basic testing and code quality practices.
- Use Git and development tools as part of a programming workflow.
- Apply programming concepts to practical problems and projects.
Course outline
15 classes
Session 1
Introduction to Intermediate Python
Session 2
OOP I – Classes, Objects, and Encapsulation
Session 3
OOP II – Inheritance and Composition
Session 4
OOP III – Object-Oriented Design
Session 5
Modules, Packages, and Libraries
Session 6
Exceptions and Error Handling
Session 7
Files and External Data
Session 8
Midterm Exam
Session 9
Advanced Python Concepts
Session 10
Testing and Debugging
Session 11
Code Quality and Development Practices
Session 12
Working with APIs
Session 13
Oral Exam
Session 14
Final Project Preparation
Session 15
Final Project Presentations
Prerequisites
Students should have a basic understanding of Python programming, including variables, conditions, loops, functions, and common data structures.
Methodology
The course combines lectures, live coding demonstrations, guided exercises, individual practice, discussions, and project work. Each session introduces new concepts through practical examples, followed by exercises that encourage students to apply them in code.
Students will progressively move from individual programming exercises towards larger and more structured programming tasks. They will regularly analyse problems, discuss different approaches, write and improve their solutions, and practise debugging and code review.
The final part of the course will focus on a practical project in which students apply the concepts covered throughout the course. Students will be expected to explain their solutions and the reasoning behind their implementation.
Grading
Apply for this course
Intro to Programming 2: Python
by Giorgi Kurtanidze, Irakli Kereleishvili
Total hours
45 Hours
Dates
Nov 09 - Nov 27, 2026
Fee for single course
€1500
Fee for degree students
€750
How to secure your spot
Complete the form below to kickstart your application
Schedule your Harbour.Space interview
If successful, get ready to join us on campus
FAQ
Will I receive a certificate after completion?
Yes. Upon completion of the course, you will receive a certificate signed by the director of the program your course belonged to.
Do I need a visa?
This depends on your case. Please check with the Spanish or Thai consulate in your country of residence about visa requirements. We will do our part to provide you with the necessary documents, such as the Certificate of Enrollment.
Can I get a discount?
Yes. The easiest way to enroll in a course at a discounted price is to register for multiple courses. Registering for multiple courses will reduce the cost per individual course. Please ask the Admissions Office for more information about the other kinds of discounts we offer and what you can do to receive one.

