Skip to content

Commit

Permalink
new version of README for 2020
Browse files Browse the repository at this point in the history
  • Loading branch information
monperrus committed Sep 9, 2019
1 parent 25143ea commit 9b6630c
Showing 1 changed file with 38 additions and 56 deletions.
94 changes: 38 additions & 56 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,21 @@

This repository contains the material and content of the DevOps course at KTH Royal Institute of Technology

Pull-requests are welcome! (and even necessary to register a work item).
Registration: You must register to this course through the Swedish registration system <https://antagning.se>.

Next course start: March 2020 (Academic Period 4).

Past edition:
* [KTH DevOps Course 2019](https://github.com/KTH/devops-course/blob/master/README-2019.md)

## Schedule

The date, time and rooms are at <https://cloud.timeedit.net/kth/web/public01/ri105v5y1850Z6QY3QQ49YgXZQ000397Y4703.html> ([ICS version](https://www.kth.se/social/course/DD2482/subgroup/vt-2019-devops19/calendar/ical/?lang=en)). The schedule and content may change over time. Lab slots do not require mandatory presence.
The date, time and rooms are at <https://cloud.timeedit.net/kth/web/public01/ri105v5y1850Z6QY3QQ49YgXZQ000397Y4703.html> ([ICS version](https://www.kth.se/social/course/DD2482/subgroup/vt-2019-devops19/calendar/ical/?lang=en)). The schedule and content may change over time.

### Week 1: March 20 13h
### Week 1: Introduction

* Preparatory reading: <https://youtu.be/qcm0rG8EKXI>
* Course introduction (Martin Monperrus, KTH)
* Course introduction [Martin Monperrus](https://www.monperrus.net/martin/)
* Your/Our expectations
* Teaching philosophy, teaching values
* Team
Expand All @@ -28,61 +33,47 @@ The date, time and rooms are at <https://cloud.timeedit.net/kth/web/public01/ri1
* Goal: Full planning for March 25


### Week 2: March 25 13h
### Week 2: Automatic Testing
* Preparatory reading: [Mutation analysis](https://medium.com/@almyre/short-circuiting-method-executions-to-assess-test-quality-2d3fda45bc7f), [Clean unit tests](https://blog.usejournal.com/3-easy-ways-to-write-cleaner-unit-tests-2ec04ca6b9df)
* Lecture: automatic testing, CI (Benoit Baudry, KTH). The wrap-up [video](https://archive.org/details/devops-dylan).
* Introduction to the Grand Fuzzing Challenge (Martin Monperrus, KTH)
* Reference material: [The Fuzzing Book](https://www.fuzzingbook.org/)
* Student presentations (Panel: Martin Monperrus, Benoit Baudry)
* [Topic suggestions](https://github.com/KTH/devops-course/issues/9)
* [Presentation Agenda](https://github.com/KTH/devops-course/blob/master/contributions/presentation/week2/README.md)

### Week 3: April 1st 8h
* Lecture: Benoit Baudry, KTH.
* Student presentations

### Week 3: Container, microservice and orchestration
* Preparatory reading: <https://medium.com/@nagarwal/understanding-the-docker-internals-7ccb052ce9fe>
* Lecture: Container, microservice and orchestration ([Julien Bisconti](https://www.linkedin.com/in/julienbisconti/))
* Student presentations (Panel: Julien Bisconti, [Jens Tinglev, Lead DevOps Engineer at KTH](https://www.kth.se/profile/tinglev)):
* [Topic suggestions](https://github.com/KTH/devops-course/issues/6)
* Add title / name in a pull-request
* Lecture: [Julien Bisconti?](https://www.linkedin.com/in/julienbisconti/)
* Student presentations

### Week 4: April 8 13h
### Week 4: Pipelines
* Preparatory reading: [XWiki: a use case for advanced CI](https://www.slideshare.net/vmassol/developing-xwiki-75667041)
* Introduction to research and collaborative projects (Benoit Baudry)
* Lecture: Pipelines and Jenkins ([Vincent Massol - XWiki](http://massol.myxwiki.org))
* Student presentations (Panel: [Vincent Massol - XWiki](http://massol.myxwiki.org), [Laurent Ploix - Spotify](https://www.linkedin.com/in/laurentploix)):
* [Topic suggestion CI](https://github.com/KTH/devops-course/issues/3), [Topic suggestion CD](https://github.com/KTH/devops-course/issues/12)
* [Presentation Agenda](https://github.com/KTH/devops-course/blob/master/contributions/presentation/week4/README.md)
* Lecture: [Vincent Massol?](http://massol.myxwiki.org)
* Student presentations

### Week 5: April 25 13h
### Week 5: Human and organizational Aspects of Devops
* Preparatory reading:
* [An Exploratory Study of DevOps Extending the Dimensions of DevOps with Practices](https://jira.dimecc.com/secure/attachment/14989/ICSEA_Lwakatare_Final.pdf)
* [Towards DevOps in the Embedded Systems Domain: Why is It so Hard?](https://ieeexplore.ieee.org/document/7427859/) (accessible at KTH or through KTH's VPN)
* Lecture 13h15-14h: Human and organizational Aspects of Devops [Jaana Nyfjord, SAAB](https://se.linkedin.com/in/jaananyfjord)
* Student presentations for the Grand Fuzzing Challenge (Panel: Amir Gaber (SAAB), Musard Balliu (KTH))
* Recall: the competition submissions must be sent before April 23, 23:59, Stockholm time, to [email protected]

### Week 6: May 2 13h
* Preparatory reading: [Course notes](https://www.monperrus.net/martin/monitoring.pdf)
* Lecture: Monitoring, tracing, fault injection (Martin Monperrus) + [Monitoring and tracing in Kubernetes](https://docs.google.com/presentation/d/1BKhdIU8aXJB7qE2CRn6RjmXKxd0J1N4B2-DTU9OtQPs/edit?usp=sharing) (Long Zhang)
* Student presentations (Panel: Martin Monperrus, Benoit Baudry)
* Topic suggestions: [#8](https://github.com/KTH/devops-course/issues/8) [#21](https://github.com/KTH/devops-course/issues/21)
* [Presentation Agenda](https://github.com/KTH/devops-course/tree/master/contributions/presentation/week6)
* Lecture: [Jaana Nyfjord, SAAB](https://se.linkedin.com/in/jaananyfjord)
* Student presentations

### Week 7: May 6 8h
### Week 6: Monitoring, tracing, fault injection
* Preparatory reading: [Notes on monitoring](https://www.monperrus.net/martin/monitoring.pdf)
* Lecture: [Martin Monperrus](https://www.monperrus.net/martin/)
* Demo: [Monitoring and tracing in Kubernetes](https://docs.google.com/presentation/d/1BKhdIU8aXJB7qE2CRn6RjmXKxd0J1N4B2-DTU9OtQPs/edit?usp=sharing) (Long Zhang)
* Student presentations

* Location: [Room U21](https://www.kth.se/places/room/id/de8a7fa7-90dc-4ae7-ab75-282b6020d8a5)
### Week 7: Michelin Devops Demo Day
* Location: TBA
* Preparatory reading: [Volvo Trucks - The Epic Split](https://www.youtube.com/watch?v=M7FIvfx5J10)
* MDDD: [Michelin Devops Demo Day](https://github.com/KTH/devops-course/tree/master/contributions/demo)
* Location: [Room U21](https://www.kth.se/places/room/id/de8a7fa7-90dc-4ae7-ab75-282b6020d8a5), [U21 Break-out](https://www.kth.se/places/room/id/b7f34dc7-be16-4e37-a339-1e9f048b1772) and [U-Utställningssal](https://www.kth.se/places/room/id/cc4a63e9-62f9-4181-9e4d-c44a21c18c73)
* Make sure you have a screen and a power outlet
* [Session 1 / Session 2](announcement/README.md) (presenters / attendees switch)

### Week 8: May 13 9h

### Week 8: Wrap-up, feedback and potluck
* 9h15 Wrap-up & Feedback
* 10h15 Lecture: [Massive-Scale QA for multi-player video games](https://youtu.be/ffgphqKrb2M) ([David King - DICE](https://www.linkedin.com/in/david-king-83b9765b), [Mark Baker - DICE](https://www.linkedin.com/in/markltbaker/))
* Final Course [Potluck](https://en.wikipedia.org/wiki/Potluck)
* 10h15 Final Guest Lecture
* [Final Course Potluck](https://en.wikipedia.org/wiki/Potluck)

## Grading
## Rules

Lab slots do not require mandatory presence.

To pass the course, the student has to collect 4 grades:
* the grades are in category: "presentation", "demo", "essay", "competition entry", "open" (choose four out of them, at most one in the same category, it is not necessary to cover everything)
Expand All @@ -94,24 +85,16 @@ To pass the course, the student has to collect 4 grades:
* Group work is encouraged (max 3 persons) but you cannot be with the same persons for more than 2 projects. You can do a work alone for one or at most two projects.
* A failed task requires to pass it again at the end of the course, based on the feedback from the failure. A repeated task cannot be passed with distinction. A task can only be repeated once.

## Group Rules
Group Rules
* The pre-generated group sheets are the suggestion instead of the mandatory.
* We have decided to drop the numbering of the groups due to poor maintainable. So there is no need to create an issue to update the group sheet.
* When you send a pull for registration, please follow the name convention of using email addresses of two members: email-email instead of the group number.
* We recommend 2 students. Three is also possible for ambitious essays, demos or development.


## Material

Books:

* [Effective DevOps : Building a Culture of Collaboration, Affinity, and Tooling at Scale (Jennifer Davis and Katherine Daniels)](https://ebookcentral-proquest-com.focus.lib.kth.se/lib/kth/detail.action?docID=4537261)
* [The DevOps Handbook (Gene Kim, Jez Humble, Patrick Debois, John Willis, and John Allspaw)](https://ebookcentral-proquest-com.focus.lib.kth.se/lib/kth/detail.action?docID=4717635)
* [Site Reliability Engineering : How Google Runs Production Systems (Betsy Beyer, Chris Jones, Jennifer Petoff, and Niall Richard Murphy)](https://ebookcentral-proquest-com.focus.lib.kth.se/lib/kth/detail.action?docID=4543978)

## Communication

All communication for the course DD2482 should be sent to [email protected] You are also welcome to create issues here if you think the question is good to be discussed publicly. Check the announcement [here](https://github.com/KTH/devops-course/tree/master/announcement).
All communication for the course DD2482 should be sent to <[email protected]> You are also welcome to create issues here if you think the question is good to be discussed publicly.

## Team

Expand All @@ -124,7 +107,6 @@ All communication for the course DD2482 should be sent to [email protected] You

* KTH Social URL: <https://www.kth.se/social/course/DD2482/>
* Kopps URL: <https://www.kth.se/student/kurser/kurs/DD2482?l=en>
* [Devops Course at North Carolina State University, by Chris Parnin](https://github.com/CSC-DevOps/Course)

## Prerequisites

Expand All @@ -133,4 +115,4 @@ All communication for the course DD2482 should be sent to [email protected] You

## Acknowledgements

This course is designed with great inputs from Julien Bisconti, Simone Stefani, Jaana Nyfjord, Amir Gaber, Göran Paues, Lowe Schmidt, Laurent Ploix, Diarmuid Corcoran, Jonathan Grahl, Mattias Wildeman, Tomas Ekholm, Vincent Massol, David King and others. We are very grateful for their contributions!
This course is designed with great inputs from [Chris Parnin](https://github.com/CSC-DevOps/Course), Julien Bisconti, Simone Stefani, Jaana Nyfjord, Amir Gaber, Göran Paues, Lowe Schmidt, Laurent Ploix, Diarmuid Corcoran, Jonathan Grahl, Mattias Wildeman, Tomas Ekholm, Vincent Massol, David King and others. We are very grateful for their contributions!

0 comments on commit 9b6630c

Please sign in to comment.