INFO I368 (3 CR) Introduction to network science
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, 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 online, with a blend of synchronous and asynchronous content. The course is divided into Weeks, as listed in the Modules tool. Each week will include:
- material for you to read, watch, and explore asynchronously
- a discussion board
- graded assignments and other activities
Each week, you are expected to read the assigned chapters of the textbook, watch the lecture videos, participate on the discussion board, and do the homework.
In addition, you are required to attend the synchronous Zoom sessions during the regular class time. We will take attendance and use this time to answer questions about the material and review anything that needs clarification, conduct additional discussion (including spot-check quizzes based on assigned readings) that counts toward your participation grade, and hold office hours to go over homework questions. We will also hold live coding tutorials during these sessions.
Read this syllabus carefully for more details on the course requirements.
TR at 3:15P-4:30P on Zoom.
Attendance is required, but we may not use the full period. The sessions will be used for participation (Q&A, review, discussion, spot-check quizzes), tutorials, and optional office hours.
To prevent Zoom bombing, you must register for our synchronous Zoom sessions following the instructions in the "Getting Started" module. Be sure to save the Zoom link/Meeting ID and passcode, which will be used for all meetings, including exams. You must be logged in to IU Zoom to join the meetings. Let us know if you do not have a reliable Internet connection and need to call in.
- Fil Menczer is the instructor. If you are interested, you can learn about Fil's research at truth.iu.edu.
- Nathan Ratkiewicz is the AI. He's a PhD student in complex networks and systems, doing research on the spread of hate speech.
Our office hours will be held during the synchronous Zoom meetings (see above).
Please use Canvas Discussions for all class-related questions and communications. Email instructors directly only for personal matters.
Software and Tools
- There are several free services to run Jupyter notebooks in the cloud, including:
- 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
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 concept 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.
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 (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 tutorials and questions. 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.
- 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.
|Participation||20%||Attendance promotes learning and is therefore mandatory; online discussion; spot-check quizzes based on assigned readings and review of class notes|
|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|
- Students are responsible and will be quizzed for assigned readings and lectures PRIOR to class sessions.
- Start working on homework early, so you can ask questions during office hours (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.
- Use of laptops in class is allowed only during programming tutorials and exercises. Use of laptops, tablets, or other mobile devices in class is otherwise provided, given increasing evidence that it is distracting. You are strongly encouraged to take notes on paper. If you seek an exemption from this policy, you will be asked to provide a request from the Office of Disability Services. Otherwise, if you use laptops, tablets, or other mobile devices during class, you owe $1 to the charity fund. Repeat offenders will be asked to leave the class and will miss attendance credit.
- Attendance of the synchronous sessions is required. A couple of absences will not affect the participation grade. Beyond that, extenuating circumstances will only include serious emergencies or illness. Traveling to job interviews or attending the Job Fair are not excuses for missing class. 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 use 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 (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.
- The instructor may take into account class trends in the assignment of final grades, but only to increase grades.
The principles of academic honesty and professional ethics will be vigorously enforced in this course, following the IU Code of Student Rights, Responsibilities, and 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 Code of Student Rights, Responsibilities, and 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.
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 indiana.joinknack.com 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:
- One thing to always keep in mind when taking any course is that the others with whom you interact throughout the semester - including your instructors - are human beings. The first rule of netiquette is to "remember the human" when you are communicating with instructors or peers. The second rule is to "adhere to the same standards of behavior online that you follow in real life." It's not likely that you would yell at, mock, or belittle another student in a face to face class so don't do it here. The feeling of anonymity that some people have when they are online can lead to those sorts of behaviors but they are not acceptable here or in any other online class. Please take a few minutes and review all the Core Rules of Netiquette and these considerations for when you are attending class remotely.
- We would like to hear from anyone who has a disability or other issues that may require some accommodations to be made. The offices of Disability Services for Students and CAPS are available for assistance to students. Please see the instructor after class or during office hours.
- 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: (i) The Sexual Assault Crisis Services (SACS) at (812) 855-8900 (counseling services); (ii) Confidential Victim Advocates (CVA) at (812) 856-2469 (advocacy and advice services); (iii) IU Health Center at (812) 855-4011 (health and medical services). 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 stopsexualviolence.iu.edu 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 (email@example.com or firstname.lastname@example.org), phone (812-855-8188), or the IU mobile App. Reports can be made anonymously if desired.
COVID-19: We are all in this together, and need to work together to keep each other healthy. The following notes do not apply to this online course, but apply to any in-person classes you may be taking.
Masks and Physical Distancing Requirements. All students signed the Community Responsibility Acknowledgement (CRA). Your agreement to the public health measures in the CRA is a condition of physical presence on the campus this fall. Included in that commitment were requirements for wearing masks in all IU buildings and maintaining social distancing in all IU buildings. Both are classroom requirements. Both requirements are necessary for us to protect each other. Therefore, if a student is present in a class without a mask, the student will be asked to put on a mask and the instructor will report the student to the Division of Student Affairs: Office of Student Conduct.
- 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. Violation of the mask rule is a threat to public safety within the meaning of the Summary Suspension Policy.
- If a student comes to class without a mask twice, the student’s final grade will be reduced by one letter (e.g., from an A to a B, for instance).
- 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 the requirements of masking and physical distancing, 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 or observing physical distancing requirements may leave the class without consequence.
- Attendance. The CRA requires that you take your temperature every morning and that you refrain from attending class if you have a temperature of 100.4 or other symptoms of illness. In order to ensure that you can do this, attendance will not be a factor in the final grade on in-person courses. Attendance may still be taken to comply with accreditation requirements.
- 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.”
- Masks and Physical Distancing Requirements. All students signed the Community Responsibility Acknowledgement (CRA). Your agreement to the public health measures in the CRA is a condition of physical presence on the campus this fall. Included in that commitment were requirements for wearing masks in all IU buildings and maintaining social distancing in all IU buildings. Both are classroom requirements. Both requirements are necessary for us to protect each other. Therefore, if a student is present in a class without a mask, the student will be asked to put on a mask and the instructor will report the student to the Division of Student Affairs: Office of Student Conduct.
We welcome feedback on the class organization, material, lectures, assignments and exams. You can provide us with constructive criticism via the discussion forum. Please share your comments and suggestions so that we can improve the class.
The syllabus page shows a table-oriented view of the course schedule, and the basics of course grading. You can add any other comments, notes, or thoughts you have about the course structure, course policies or anything else.
To add some comments, click the "Edit" link at the top.