Twice a Week Lectures
The course focuses in teaching the distributed systems concepts through projects. The lectures prepare the students to execute the projects.
Class 1 - August 23rd
- Introduction to the class [Slides]
- Overview of class structure: projects, grading, etc.
- Student Detailed Introductions
- Discussion of programming languages, tools, etc
- Lecture Topic: Science Gateways and Apache Airavata
Class 2 - August 25th
- Lecture Topic: Getting Ready for the Project 1 Assignment [Slides]
- Lecture Topic: Apache Airavata: Enabling Science with Science Gateways [Slides]
Class 3 - August 30th
- Project ASSIGNED: Microservices and Messaging
- Lecture: Introduction to Weather Prediction [Slides]
- Motivating weather prediction use case
- Linked Environment for Atmospheric Discovery
- Personal Weather Predictor
- Advanced Track Project
Class 4 - September 1
- Project Milestone 1: Break down of Components [Slides]
- Lecture Topic: Services, SOA, and Microservices [Slides]
Class 5 - September 6th
- Lecture: Nuts and Bolts of the projects
- Git and GitHub basics [Slides]
- CICD with Travis-CI and Amazon Code Deploy [Slides]
Class 6 - September 8th
- Lecture Topic: Introduction to Apache Thrift [Slides]
- Tutorial: Creating a microservice using Apache Thrift
Class 7 - September 13th
Class 8 - September 15th
- Open project help with teaching assistants
Class 9 - September 20th
- Lecture Topic: Continuous Integration and Continuous Delivery [Slides]
Class 10 - September 22nd
- Open help session on Project Milestone 1
September 26th: Project Milestone 2 DUE
Class 11 - September 27th
Guest Lecture
- Speaker: Dr. Andrea Donnellan, NASA JPL
- Topic: GeoGateway and Earthquake Science Cyberinfrastructure
Class 12 - September 29th
Guest Lecture
- Dr. Sudhakar Pamidighantam
- Topic: The Science and Engineering Grid SEAGrid Science Gateway
- Project Milestone 2 ASSIGNED
Class 13 - October 4th
- Lecture Topic: Authentication and Authorization with OAuth2 and OpenID Connect [Slides]
Class 14 - October 6th
- Lecture Topic: Authentication and Authorization with OAuth2 and OpenID Connect, Part 2 [Slides]
- Lecture Topic: Capacity Testing [Slides]
Class 15 - October 11th
- Lecture Topic: Containerization and Docker [Slides]
Class 16 - October 13th
- Lecture Topic: Containerizatoin and Docker, Part 2 [Slides]
Class 17 - October 18th
Midterm Demos
- Project Midterm Demos and Presentations
Class 18 - October 20th
Midterm Demos
- Project Milestone 2 DUE
- Project Milestone 3 ASSIGNED
- Project Midterm Demos and Presentations
Class 19 - October 25th
- Project Midterm Demos and Presentations
Class 20 - October 27th
- Lecture Topic: Apache Zookeeper and Distributed Systems [Slides]
Class 21 - November 1st
- Lecture Topic: IU’s Jetstream and OpenStack
Class 22 - November 3rd
- Open help session for Project Milestone 3
Class 23 - November 8th
- Lecture Topic: Apache Mesos
Class 24 - November 10th
- Lecture Topic: Messaging and Microservices [Slides]
Class 25 - November 15th
- Lecture Topic: DevSecOps and Microservice Security [Slides]
Class 26 - November 17th
- Project Milestone 3 DUE
- Project Milestone 4 ASSIGNED
- Open help session for Project Milestone 3
Thanksgiving Break - November 20th to 27th
Class 27 - November 29th
- Lecture Topic: Science Gateways and Clusters [Slides]
Class 28 - December 1st
Lecture Topic: Amazon and Atmospheric sciences; Advanced Gateway Topics
Class 29 - December 6th
Final Demos
- Final presentations and demos
Class 30 - December 8th
Final Demos
- Project Milestone 4 DUE
- Final presentations and demos
Finals Week - December 12th to 16th