INTRODUCTION TO CODING AND DATA MANAGEMENT-1

Academic year
2021/2022 Syllabus of previous years
Official course title
INTRODUCTION TO CODING AND DATA MANAGEMENT-1
Course code
ET7006 (AF:358356 AR:189945)
Modality
On campus classes
ECTS credits
6 out of 12 of INTRODUCTION TO CODING AND DATA MANAGEMENT
Degree level
Bachelor's Degree Programme
Educational sector code
ING-INF/05
Period
3rd Term
Course year
1
Moodle
Go to Moodle page
The goal of this course is to teach students how to solve problems with an algorithmic approach.
Students will learn some basic techniques for problem solving and how to use a programming language to provide a sound and formal description of a designed problem solution.
The course provides an introduction to the basics of computer science and to programming.
Programming is intended as a way to model real-world problems and to design algorithmic solutions to solve them.

The students will achieve the following objectives:

Knowledge:
- algorithms and data structures
- Python programming language

Skills:
- learn basic problem solving techniques.
- understand and realize computer programs written in the Python programming language.
- generate basic data visualizations for preliminary analysis.
Having achieved the learning outcomes of the course "Mathematics For Decision Sciences", with focus on logic, combinatorics, functions, vectors and matrices.
These are the themes of the course (not necessarily in the orders of the lessons)

1. Introduction to Coding and to Python
- Computational Thinking, a Python "computational machine"
- Information binary representation
- Introduction to the Python programming language
2. Python Data Types
- Variables, values and types
- Integer, Float, String, Boolean data types and their operators
3. Simple programs
4. Functions and Conditional Statements
- Function definition
- Variable's scope
- Conditional Statements
5. Iterative Computation
- The while loop
- The for loop
6. Iterative Computation II
- Nested loops
7. Python Lists
- Creating and manipulating lists
- Iterating through lists
8. Introduction to matplotlib
- Plotting functions with matplotlib
- Customizing appearance
9. Python Lists II
- Time-series analysis through list processing
10. Python Lists III
- List comprehensions
- List sorting
- Mutable and Immutable types
11. Python Strings
- String slicing, concatenation and traversal
- String manipulation methods
12. Python Strings II
- Text processing, string manipulation and sub-string search
13. Python Dictionaries
- Dictionaries, keys and values
- Dictionary creation and access
14. Python Dictionaries II
- Iterating through dictionaries
- Python Sets
15. Problem Solving
- Binary search
Textbook:
- Think Python. How to Think Like a Computer Scientist. Green Tea Press. Allen Downey. Second Edition.

Additional resources may be provided during the course.
Evaluation is achieved through a written exam.
The written exam assess the capability of the student to apply problem solving techniques to simple problems. The exam consists in a set of programming exercises, where the student is asked to write a small program to solve a given simple problem. After the written test a correction with the professor follows, and an optional oral exam.
Lectures and hands-on sessions. The frequent interleaving of exercises allows students to immediately apply abstract knowledge to practical problems and to self-evaluate their skills.
written
Definitive programme.
Last update of the programme: 31/05/2021