This course deals with computer science (CS) aspects of social network analysis (SNA), and is open to all students in the master computer science programme at Leiden University.
Lectures: Fridays from 9:00 to 10:45 in Gorlaeus lecture room BM1.33
Lab sessions: Fridays from 11:00 to 12:45 in Gorlaeus lab room DM0.09 and DM0.17
Prerequisites: a CS bachelor with courses on Algorithms, Data Structures and Data Mining
Literature: provided papers and book chapters (free and digitally available)
Examination: based on presentation, paper, programming, peer review and participation (no exam)
Brightspace link: 2526-S1 Social Network Analysis for Computer Scientists
Study guide link: Social Network Analysis for Computer Scientists
Study points: 6 ECTS
Course staff: dr. Frank Takes (f.w.takes@liacs.leidenuniv.nl, room BE 3.07), Rachel de Jong MSc (room BE 3.03)
Assistants:
Gamal Adel Elgamal MSc (room BE 2.23),
Bart Holterman, Thanos Kalligeris and Bart Westhoff
Network with 1458 nodes and 1948 edges.
Date | Lecture (9:00-10:45) | Lab session (11:00-12:45) | ||
1. | Fri Sep 5, 2025 |
Lecture 0: Course information Lecture 1: Introduction and small world phenomenon |
Instruction: Introduction to Gephi Work on Assignment 1 |
|
2. | Fri Sep 12, 2025 | Lecture 2: Advanced concepts and centrality Lecture 2.5: Course project |
Instruction: Introduction to NetworkX Work on Assignment 1 |
|
3. | Fri Sep 19, 2025 | Lecture 3: Network projection and propagation-based centrality Example presentation |
Work on Assignment 1 | |
4. | Fri Sep 26, 2025 | Lecture 4: Community detection | Work on Assignment 1 | |
Mon Sep 29, 2025 | Deadline for Assignment 1 (AoE; hand in via Brightspace) | |||
Fri Oct 3, 2025 | No lecture (university closed; 3 October) | No lab session | ||
... | ... | ... | ... | |
... | ... | ... | ... | |
Mon Oct 27, 2025 | Deadline for Assignment 2 (AoE; hand in via Brightspace) | |||
... | ... | ... | ... | |
Thu Nov 13, 2025 | "Deadline" for a draft of the first half of the Course project paper (bring 2 printed copies to tomorrow's peer review session) | |||
10. | Fri Nov 14, 2025 | Peer review session (in team pairs) | ... | |
... | ... | ... | ... | |
Thu Dec 4, 2025 | "Deadline" for a substantial part of the Course project code and experimental pipeline (have it available digitally for review tomorrow) | |||
13. | Fri Dec 5, 2025 | Code review session (in team pairs) | ... | |
... | ... | ... | ... | |
Dec 14, 2025 | Deadline for final Course project paper and accompanying code (AoE; hand in via Brightspace) | |||
Dec 17, 2025 | Deadline for retake assignment to replace failed assignment(s) (AoE; hand in via Brightspace on top of failed assignment) | |||
Dec 19, 2025 | Course end. Grades are sent to student administration. | |||
Jan 31, 2026 | Course project retake deadline |
The main goal of this lab session is to become familiar with
NetworkX (a Python package to analyze networks for research purposes).
All relevant information on NetworkX can be found in the NetworkX online documentation.
Your Python environment
For this lab session, you need a working Python environment. For this, there are two options:
Instructions for today: Lab session on NetworkX
Done? Proceed with Exercise 2 of Assignment 1.
Looking for a challenge? Check out these three alternatives (that you
can also use instead of NetworkX throughout the course, if you prefer
(but for which there is less help available)):
Running intro problems regarding prior knowledge on python programming? See the reading material at the bottom of this course website.
About social network analysis tools and packages. There exist different tools and packages for social network analysis. In this course, we cover two of them in this course, with complementary advantages:
Learning goals. The main goal of this lab session is to become familiar with Gephi (experimental beta-software to visualize networks for research purposes) and its input format. At the end of this session you should be able to:
There is no deliverable for this lab session, but you are assumed to know the tool afterwards. Practice more at home if needed.
Note that the tutorial briefly covers topic such as centrality and communities, that will not be covered extensively until Lecture 2.
Done? Get started with the practical part of Assignment 1. You can download the datafiles here. If you want to analyze huge.tsv, you will have to get it from the shared folder in the ISSC Linux or LIACS DS lab environment, as stated in the assignment.
In the past, students have expressed interest in additional reading material to help freshen up on skills and knowledge required for this course.