Practical Programming in Python (esc-info2)

Professor: Prof. Kévin Huguenin

Teaching Assistants (TAs)

  • Amro Abdrabo (Lead TA)
  • Eva Luvison
  • Frank Ressat

Course Objective

The aim of this course is to enable students to acquire the concepts, techniques, and experience to produce robust, efficient, and powerful programs in Python (version 3.14+). By the end of the semester, students will be able to produce programs based on existing libraries to perform various tasks useful for digital investigation, such as use of databases, use of web APIs and local third-party software libraries, creation of graphical interfaces and data visualization, (e.g., geolocation, etc.) automatically.

Course Content

  • Hands-on project involving real map-based API access in the field of digital investigations
  • Advanced manipulation of basic data structures
  • Command line interfaces, input/output
  • Object-oriented programming
  • UML and design patterns
  • Lexical analysis
  • Relational databases (SQL and SQLite)
  • Networking and web (webpage retrieval and web APIs)
  • Graphical user interfaces

Available on moodle.