Info
Foto sezione
Logo Bocconi

Course 2021-2022 a.y.

30590 - ADVANCED PYTHON PROGRAMMING FOR ECONOMICS, MANAGEMENT AND FINANCE

Department of Decision Sciences

Course taught in English

Go to class group/s: 31

CLEAM (6 credits - II sem. - OP  |  INF/01) - CLEF (6 credits - II sem. - OP  |  INF/01) - CLEACC (6 credits - II sem. - OP  |  INF/01) - BESS-CLES (6 credits - II sem. - OP  |  INF/01) - WBB (6 credits - II sem. - OP  |  INF/01) - BIEF (6 credits - II sem. - OP  |  INF/01) - BIEM (6 credits - II sem. - OP  |  INF/01) - BIG (6 credits - II sem. - OP  |  INF/01)
Course Director:
FABRIZIO IOZZI

Classes: 31 (II sem.)
Instructors:
Class 31: FABRIZIO IOZZI


Class-group lessons delivered  on campus

Suggested background knowledge

This is an advanced course in python computer programming. Students attending the course are recommended to have already taken an introductory course on python programming. If they already had a course about programming in another language (e.g. Java, C, etc.) that's fine. Some videos and references will be provided for a quick introduction to the python syntax.


Mission & Content Summary
MISSION

The primary goal of this course is to give students an advanced understanding to the python programming language and its main features. Most models and examples are taken from Economics, Management and Finance.

CONTENT SUMMARY
  • Pythonic Thinking.
  • LIsts and Dictionaries.
  • Functions.
  • Comprehensions, Iterators and Generators.
  • Classes
  • Databases Management with Python.
  • Testing and Debugging.
  • Applications.

Intended Learning Outcomes (ILO)
KNOWLEDGE AND UNDERSTANDING
At the end of the course student will be able to...
  • Define procedural programming language concepts.
  • Describe and explain the working of the programs presented in the course.
  • Recognise the relationship between a problem description and program design.
  • Decompose problems into simpler problems.
APPLYING KNOWLEDGE AND UNDERSTANDING
At the end of the course student will be able to...
  • Use procedural programming language concepts in real programs.
  • Combine programming techniques to solve problems of varying degrees of difficulty in applied fields
  • Find and understand programming language documentation to learn new information needed to solve programming problems.
  • Implement problem solving strategies.

Teaching methods
  • Face-to-face lectures
  • Exercises (exercises, database, software etc.)
  • Case studies /Incidents (traditional, online)
  • Individual assignments
  • Group assignments
DETAILS
  • Programming exercises are assigned to have students practice the language.
  • Some case studies are analyzed through discussion online and in class.
  • Individual assignments consist of readings and programming exercises, through possibly an external platform.

Assessment methods
  Continuous assessment Partial exams General exam
  • Individual assignment (report, exercise, presentation, project work etc.)
  • x    
  • Group assignment (report, exercise, presentation, project work etc.)
  •     x
    ATTENDING STUDENTS

    The assessment is based on
    - a number of individual programming assignments delivered during the semester (80% of the final grade). Each assignment tests the students' skills in correctly use procedural programming language concepts in real programs and combine various programming techniques to get the required output.
    - an end of semester group programming project to be discussed in an oral presentation (20% of the final grade). The final project tests the students' ability to find and understand programming language documentation and to implement clever problem solving strategies to write a full application.

    Any student who has turned in at least half of the assignments is considered as "attending", unless they explicitly opt for the written exam

    NOT ATTENDING STUDENTS

    The assessment is based on a written examination. The written exam tests the students' ability to:
    - correctly use procedural programming language concepts in real programs
    - apply the various programming techniques learnt in the course
    - understand the language documentation
    - implement clever problem solving strategies to write a full application.


    Teaching materials
    ATTENDING AND NOT ATTENDING STUDENTS

    Online textbooks and references are given through the Bboard platform.

    Last change 23/06/2021 17:45