comp-think / 2024-2025

The GitHub repository containing all the material related to the Computational Thinking and Programming course of the Digital Humanities and Digital Knowledge degree at the University of Bologna (a.a. 2024/2025).
12 stars 0 forks source link

Computational Thinking and Programming

This space contains all the material related to the Computational Thinking and Programming course of the Digital Humanities and Digital Knowledge degree at the University of Bologna.

Academic year 2024/2025

Table of content

Book and notes

The official book of the course, Computational Thinking and Programming book, is available online in PDF format. Google Docs links are provided for each chapter to enable students to comment and suggest improvements. The suggested accompanying book for Python coding, How To Code in Python by Lisa Tagliaferri, is also freely available online in PDF and EPUB formats.

Material

Keys:

  1. [14/10/24, the] Introduction to the course
  2. [16/10/24, the] Introduction to Computational Thinking
  3. [18/10/24, the] Algorithms
  4. [23/10/24, lab] Laboratory: 1st Lesson
    • book chapter: HTML
  5. [25/10/24, the] Computability
  6. [11/11/24, the] Programming languages
    • book chapter: PDF, Google Docs
    • slides: HTML
    • from How To Code in Python:
      • Chapter "Understanding Data Types": introductory paragraphs and sections "Background", "Numbers", "Floating-Point Numbers", "Booleans", "Strings"
      • Chapter "How To Use Variables": introductory paragraphs and sections "Understadning Variables", "Naming Variables: Rules and Style", "Reassigning Variables", "Multiple Assignment"
      • Chapter "Understanding Boolean Logic": all content
      • Chapter "How To Write Conditional Statements": all content
      • Chapter "How To Define Functions": introductory paragraphs and sections "Defining a Function", "Working with Parameters", "Returning a Value"
    • Python: first_algorithm_empty.py, first_algorithm_no_assignments.py, first_algorithm.py
    • exercises: 1, 2, 3
    • solutions: 1, 2, 3
  7. [13/11/24, the] Organising information: ordered structures
  8. [15/11/24, lab] Laboratory: 2nd Lesson
    • book chapter: HTML
  9. [18/11/24, the] Brute-force algorithms
  10. [20/11/24, the] Organising information: unordered structures
  11. [22/11/24, lab] Laboratory: 3rd Lesson
    • book chapter: HTML
  12. [25/11/24, the] Recursion
  13. [27/11/24, the] Divide and conquer algorithms
  14. [29/11/24, lab] Laboratory: 4th Lesson
    • book chapter: HTML
  15. [2/12/24, the] Dynamic programming algorithms
  16. [4/12/24, the] Organising information: trees
  17. [6/12/24, lab] Laboratory: 5th Lesson
    • book chapter: HTML
  18. [9/12/24, lab] Laboratory: 6th Lesson
    • book chapter: HTML
  19. [11/12/24, the] Backtracking algorithms
  20. [13/12/24, the] Organising information: graphs
  21. [16/12/24, the] Greedy algorithms
  22. [17/12/24, wor] Workshop

Schedule

14/10/2409:00-11:00Introduction to the course
16/10/2409:00-11:00Introduction to Computational Thinking
18/10/2412:00-14:00Algorithms
23/10/2409:00-11:00Laboratory: 1st Lesson
25/10/2412:00-14:00Computability
11/11/2409:00-11:00Programming languages
13/11/2409:00-11:00Organising information: ordered structures
15/11/2409:00-11:00Laboratory: 2nd Lesson
18/11/2409:00-11:00Brute-force algorithms
20/11/2409:00-11:00Organising information: unordered structures
22/11/2409:00-11:00Laboratory: 3rd Lesson
25/11/2409:00-11:00Recursion
27/11/2409:00-11:00Divide and conquer algorithms
29/11/2409:00-11:00Laboratory: 4th Lesson
2/12/2409:00-11:00Dynamic programming algorithms
4/12/2409:00-11:00Organising information: trees
6/12/2409:00-11:00Laboratory: 5th Lesson
9/12/2409:00-11:00Laboratory: 6th Lesson
11/12/2409:00-11:00Backtracking algorithms
13/12/2409:00-11:00Organising information: graphs
16/12/2409:00-11:00Greedy algorithms
17/12/2409:00-12:00Workshop

Links