I will teach how to organize, transform, analyse, visualize and communicate data, as well as how to effectively communicate the outcomes of the workflow, with a strong focus on relational data.

The course will be multi-task (learn, make, use, watch, glance, read, dig, listen; see more below) and multi-teacher (I will be assisted by other real and virtual teachers). Some basics in programming, linear algebra and matrix theory, and statistics are desirable.

I will partially adopt reverse instructional design, an educational version of test-driven development for software.


  1. Teasers
  2. A hasty tour inside R
  3. A not-so-short introduction to data analytics
  4. Network science
  5. Collaborate and communicate
  6. Blockchain & IPFS

Task-tag legend

You will go through different tasks: learn, make, use, watch, glance, read, dig, listen. A legend is below:


Download the bibliography


As an academic professional, I can sign my class up for an entire semester for free via DataCamp for the Classroom. This has some benefits:

  1. you can learn by doing using DataCamp platform;
  2. I can assign particular courses or chapters, and see who finished on time and who missed the deadline;
  3. I can track student progress, grade automatically, and download reports


Data challenges

Data challenges have 3 components:

The following are examples of data challenges you are invited to try:

  1. Which is the best team ever in Italian soccer? challenge
  2. Is child mortality decreasing over time? challenge
  3. What are the qualities of diamonds? challenge
  4. In there a first-mover advantage in chess? challenge
  5. Are female dolphins more social than male dolphins? (html, Rmd)
  6. Which are the most powerful countries in the European natural gas market? (html, markdown)
  7. Detect the most dangerous terrorists involved in Madrid train bombing attack of 2011 (html, markdown)
  8. Discover the most interdisciplinary and autarchic disciplines in science (html, markdown)
  9. Detect communities in a Karate club friendship network (html, markdown)
  10. Attack the resilience of the Madrid train bombing terror network (html, markdown)
  11. Are relationships among dolphins assortative by sex? And by degree? (html, markdown)


The exam consists of a written exam and a project with oral presentation.

The written part consists of a list of questions, either open questions or exercises, over all the covered syllabus, for a duration of 90 minutes. During the written exam students are allowed to use only sheets covering the syntax of languages (such as dplyr cheatsheet).

The project consists of one significant data challenge chosen by the student. It is done individually and must use methods, languages and software tools seen during the course (not necessarily all, but most of them) in an integrated and fluent way. The student must deliver:

At least one week before the date of the oral exam load all material on GitHub and send to the teacher an e-mail with the link of the repository.

During the oral examination of the project, students will discuss, in a maximum time of 30 minutes, the project using a presentation on a personal laptop (bring adapters). The presentation is open to the public. Both the project and the presentation skills will be evaluated.

The final mark will be a weighted average of the written and project parts of the exam. The weight of the project is \(\varphi^{-1}\), where \(\varphi\) is the golden ratio. Passable marks are between 18 and 30. Excellent projects will be awarded with a praise bonus from 1 to 3 points to be summed to the result of the weighted average. The final mark is rounded to the closest integer.

The written and oral (project) parts of the exam can be done in different moments and in any order. The dates of the exams are set as per the academic calendar and will take place in Udine (typically in “Sala Riunioni” of Department of Mathematics, Computer Science and Physics). Enroll only for the last (second) part of the exam.