Course Syllabus

book cover

INFO I368 (3 CR) Introduction to network science

Description | Prerequisites | Expectations | Meetings | Instructors | Software and Tools | Books | Objectives | Grading | Policies | Academic integrity | Remarks


Friends, computers, the Web, and our brain are examples of networks that pervade our lives. Network science helps us understand complex patterns of connection, interaction, and relationships in many complex systems. Students learn essential concepts and core ideas of network literacy, and basic tools to handle social and information networks.



INFO-I 210 or CSCI-C 200 or CSCI-C 211 or CSCI-A 201 or COGS-Q 260. The courses will also be open to undergraduates in other programs with instructor permission (eg, CS, Cognitive Science, Statistics, Psychology, Biology, Sociology, Communications, Engineering, Business, and Physics). Programming experience (in Python) and exposure to probability theory, statistics, calculus, and discrete math are highly recommended.


Format and expectations

This course is in person, using the flipped-classroom model:

  • You are expected to read the assigned chapters of the textbook and watch the assigned lecture videos before class.
  • During class time, we will have spot-check quizzes based on assigned lectures and readings; discuss the material (counting toward your participation grade); answer questions and review anything that needs clarification; hold live coding tutorials; and work on coding assignments

The course is divided into Weeks, as listed in the Modules tool. Each week includes:

  • material for you to read, watch, and explore asynchronously
  • graded assignments and other activities

Health and Safety

IU is following recommended public health guidance in response to the pandemic. In recognition of all IU community members owe to each other, we expect every member of the IU community will adhere to all current policies and practices. For current information on that guidance see Most importantly: be vaccinated and mask up in class. While the university has a mask requirement, masks must be worn at all times inside, including in classrooms. Procedures outlined in the Student Code of Conduct apply for further action in case of deviations from health and safety policies. (More below.)


Attendance promotes learning (and good grades) and is therefore strongly encouraged. If you have a positive COVID-19 test, have COVID-like symptoms, or have been instructed to quarantine, you should not attend class. To ensure that you can do this, attendance in this class will not be taken. During absences due to COVID or other illnesses, you can still earn participation credit via online discussion.

Read this syllabus carefully for more details on the course requirements.


Class meetings

Tu-Th at 3:15P-4:30P in Luddy IF 1104.

Course schedule: see Weekly Modules


Instructors and Office Hours

  • Fil Menczer is the instructor. If you are interested, you can learn about Fil's research at Office Hours: after class or by appointment in LU 2028 (Luddy AI building). You can schedule an appointment by approaching Fil after class or emailing Tara Holbrook.
  • Nathan Ratkiewicz is the AI. He's a PhD student in complex networks and systems, doing research on the spread of hate speech. Office hours: Wed 3-30p and Fri 1-1:30p on this Zoom link.

Please use Canvas Discussions for all class-related questions and communications. Email instructors directly only for personal matters.


Software and Tools

We will be using Python and the NetworkX module. You can follow one or both of two approaches:

  1. There are several free services to run Jupyter notebooks in the cloud, including:
  2. If you wish to run Python locally on your laptop, and don't have Jupyter/IPython installed on your machine, we recommend installing the Anaconda Python distribution with Python 3. We do not recommend other distributions. This option requires that you are comfortable with managing software packages (i.e., using pip or conda).

Be warned: each cloud-based notebook service has pros and cons and we cannot test them all extensively, so your mileage may vary. You may have to try more than one solution, read documentation, and/or seek support from the providers to install packages. Local Python installations can present issues, especially on Windows machines. Packages are system dependent. In all cases, we are unable to provide support.

In addition, we will use NetLogo to demonstrate some of the network models and concepts presented in class. Download and install it for free on your laptop.

Finally, consider Gephi for network analysis and visualization. It has a steep learning curve but produces beautiful layouts.

IU provides lots of tech resources:

  • Free on-campus   wireless internet   (wifi) access through the “eduroam” network
  • Free software for download and for cloud-based use
  • Free 24/7 IU tech support (e.g., email, Canvas, wifi, printing, device setup, etc.)
  • Free in-person tech support at the Learning Commons in the Wells Library and in IMU room M089
  • Discounts on devices from leading technology companies, including Apple, Dell, and Microsoft



The textbook is A First Course in Network Science by Menczer, Fortunato and Davis (Cambridge University Press, 2020, ISBN 9781108471138). It is available as an IU eText (Unizin Engage link in Canvas course navigation). You may want to download the eText for offline access, using your browser or the Unizin Read app on your mobile device. Please refer to The Student Guide to IU eTexts for questions and troubleshooting. If you enjoy the book, we would really appreciate a review on Amazon!

During the first few weeks of class, students are strongly encouraged to read either Linked by A-L Barabasi (paperback 2003, ISBN 0452284392), or Six Degrees by D Watts (paperback 2004, ISBN 0393325423), or both.

If you want to review your Python:

  • A Byte of Python is a concise guide for those of you for whom Python is your first programming language.
  • If you're more experienced in a different language than Python, we recommend Writing Idiomatic Python. By learning and using Python's idioms, one is able to write cleaner code, spend less time on the code and more time on your problem, and earn higher scores on graded assignments.


Course description and learning objectives

Networks pervade all aspects of our lives: networks of friends, communication, computers, the Web, and transportation are examples we experience, while our brain cells and the proteins in our body form networks that determine our survival and intelligence. The network is a general yet powerful way to represent and study relationships. In this course, students are introduced to the study of networks and how they help us understand the complex patterns of connections that shape our lives. Through examples from popular social and information networks, students learn about key aspects of networks and basic tools to analyze and visualize them. Students will be evaluated on the basis of hands-on assignments and exams.

Students will:

  • Learn essential concepts and core ideas of network literacy
  • Acquire skills to load, manipulate, export, and visualize networks using tools and programming languages such as Python/NetworkX, NetLogo, and Gephi
  • Recognize and describe a network's structural components and properties (nodes, links, degree, connectivity, sparsity, paths, etc.)
  • Analyze social networks and inspect their small-world properties
  • Measure various centrality measures and their distributions, and apply them to detect important nodes and characterize their roles in the network
  • Understand the friendship paradox, according to which your friends have more friends than you do, on average
  • Quantify network homophily and clustering and explain how they arise in different systems
  • Describe dynamic processes on networks, such as the spread of diseases and rumors
  • Demonstrate the networks algorithms used by search engines to crawl and rank Web pages
  • Appreciate the broad relevance of network science to many domains and applications, including biology, business, AI, search, recommendation, and social media

Additional topics may be covered based on student needs and interests.


Tentative grading

Component Weight Notes
Participation 20% Daily review spot checks based on assigned readings and lectures
Homework 40% Weekly assignments, MC + code
Midterm exam 20% MC questions, problems, and coding exercises
Final exam 20% MC questions, problems, and coding exercises; cumulative
Extra credit 5% Exercises and fun activities


Class policy

  • Students are responsible and will be quizzed for assigned readings and lectures PRIOR to class sessions.
  • Start working on homework early, so you can get help in class (don't procrastinate until the last minute! We cannot provide help during the weekend :)
  • Late assignments cannot be accepted or graded.
  • If your cell phone rings during class, you owe $1 to the charity fund. Proceeds will be donated to a charity at the end of the semester.
  • Attendance is strongly encouraged. It is your responsibility to find out about any announcements or assignments you may have missed during class sessions.
  • The main communication medium outside of class is Canvas Discussions. Students are expected to post their questions, answer other students' questions, post pointers to relevant news (do NOT copy and paste entire news articles! Links are ok), and check Canvas daily for announcements. Email to instructors is to be used only for confidential matters.
  • Instructors cannot debug code via email. If you need help debugging, the best option is to ask in class or during office hours. Alternatively, if you can narrow down the bug to a small snippet (say 2-3 lines) of code, you can post a question on Canvas Discussions. But one should never post an entire script or extended code, not provide coding solutions for assignments (see academic integrity).
  • Students are responsible for making backups of all of their work! This includes any assignment and other materials you produce.
  • Students are responsible for the safe and ethical use of class accounts on shared servers, according to university policy and copyright law, and for the sole purpose of carrying out class assignments. Accounts will be monitored and any abuse will be reflected in the grades.
  • Grades will be given out via Canvas, not email. Note that some grade components, like participation, will not appear on Canvas until the final grades are calculated. Feel free to ask the instructor about your participation grade after class or during office hours.
  • The instructor may take into account class trends in the assignment of final grades, but only to increase grades.


Academic integrity

The principles of academic honesty and professional ethics will be vigorously enforced in this course, following the Student Code of Conduct.

This includes the usual standards on acknowledgment of help, contributions and joint work, even when you are encouraged to build on libraries and other software written by other people. Any code or other assignment you turn in for grading and credit must be your individual work. If we have group projects with different rules, they will be clearly announced. Even if you work with a study group (which is encouraged), the work you turn in must be exclusively your own. If you turn in work done together with, or with the assistance of, anyone else other than the instructors, this is an instance of cheating.

Several commercial services have approached students regarding selling class notes/study guides to their classmates. Please be advised that selling a faculty member's notes/study guides individually or on behalf of one of these services using IU email or Canvas violates both IU information technology and IU intellectual property policy. Selling notes/study guides to fellow students in this course is not permitted. Violations of this policy will be considered violations of the Student Code of Conduct and will be reported to the Dean of Students as a violation of course rules (academic misconduct).

Cases of academic misconduct (including cheating, fabrication, plagiarism, interference, or facilitating academic dishonesty) will be reported to the Dean of Students. The typical consequence will be an automatic F grade in the course.

Your submission of work to be graded in this class implies acknowledgement of this policy. If you need clarification or have any questions, please see the instructor during office hours.


Final remarks

Indiana University Luddy School has partnered with Knack to provide students with access to campus tutors. Students looking for additional assistance outside of the classroom are advised to consider working with a peer tutor through Knack. To view available tutors, visit and sign in with your student account.

Students in this class are invited to use Boost, a free smartphone app developed at IU that provides notifications and reminders about schoolwork in Canvas. It is designed to help students keep track of assignment deadlines, important announcements, and course events all in one easy-to-use app. More information here.

As your instructor, one of my responsibilities is to help create a safe learning environment for all students:

  • Please know that help is available from the Dean of Students’ Office regarding care referrals, mental health services offered by CAPS, disability accommodations, and other support services that are available to students. Note that DSS accommodations require a formal request to DSS; please submit the request, and once you get a letter from DSS, see the instructor after class or during office hours to formalize the agreement.
  • Title IX and IU's Sexual Misconduct Policy prohibit sexual misconduct in any form, including sexual harassment, sexual assault, stalking, and dating and domestic violence. If you have experienced sexual misconduct, or know someone who has, the University can help. If you are seeking help and would like to speak to someone confidentially, you can make an appointment with the IU Sexual Assault Crisis Services at 812-855-5711, or contact a Confidential Victim Advocate at 812-856-2469 or It is also important that you know that Title IX and University policy require me to share any information brought to my attention about potential sexual misconduct with the campus Deputy Title IX Coordinator or IU's Title IX Coordinator. In that event, those individuals will work to ensure that appropriate measures are taken and resources are made available. Protecting student privacy is of utmost concern, and information will only be shared with those that need to know to ensure the University can respond and assist. I encourage you to visit to learn more.
  • Bias-based incidents (events or comments that target an individual or group based on race, ethnicity, religious affiliation, gender, gender identity, sexual orientation, or disability) are not appropriate in our classroom or on campus. They can be reported by email ( or, phone (812-855-8188), or the IU mobile App. Reports can be made anonymously.
  • Students missing class for a religious observance can find the officially approved accommodation form by going to the Vice Provost for Faculty and Academic Affairs webpage for religious accommodations. The form must be submitted at least 2 weeks prior to the anticipated absence.
  • COVID-19: We are all in this together, and need to work together to keep each other healthy.
    • Indiana University currently requires all students, faculty, and staff to be vaccinated and to wear a mask that fully covers the wearer’s nose and mouth inside all IU buildings. Both requirements are necessary for us to protect each other. Everyone who participates in this course is expected to follow the University policies on face masks. Masks are available at the entrance of university buildings. There will be no exceptions to the mask rules. Violation of the mask rule is a threat to public safety within the meaning of the Summary Suspension Policy.
      • If a student is present in class without a mask, they will be asked to put on a mask. 
      • If a student refuses to put a mask on after being instructed to do so, the instructor may end the class immediately, and contact the Office of Student Conduct.
      • If a student comes to class without a mask twice, the student’s final grade will be reduced by one letter (for example, from a B to a C).
      • If the student comes to class without a mask three times, the student will be withdrawn from the class without refund of tuition and reported to the Office of Student Conduct.
      • If Student Conduct receives three cumulative reports from any combination of instructors or staff members that a student is not complying with health requirements, the student will be summarily suspended from the university for the semester.
    • Student Rights. Any student who believes another person in a class is threatening the safety of the class by not wearing a mask may leave the class without consequence.
    • Attendance. Refrain from attending class if you have a temperature above 100.4 or other symptoms of illness, have tested positive for COVID-19, or have been instructed to quarantine. In order to ensure that you can do this, attendance will not be a factor in the final grade on in-person courses.
    • Summary Suspension Policy. “A student may be summarily suspended from the university and summarily excluded from university property and programs by the Provost or designee of a university campus. The Provost or designee may act summarily without following the hearing procedures established by this section if the officer is satisfied that the student's continued presence on the campus constitutes a serious threat of harm to the student or to any other person on the campus or to the property of the university or property of other persons on the university campus.”

We welcome feedback on class organization, material, lectures, assignments, and exams. You can provide us with constructive criticism during office hours or via the discussion forum. Please share your comments and suggestions so that we can improve the course.