Curriculum

The curriculum will be constantly evolving as we develop this course. The first unit will be an overview of what students will need to know in order to understand the deeper technical concepts which will be covered later.

Here’s what we’re hoping to mentor and teach students about:

  1. Linux Basics
  2. Basic System Administration
  3. Basic FOSS Development Methodologies
  4. Base infrastructure services for any organization (DNS, Email, etc)
  5. Building a mock infrastructure for a mock company from top to bottom

Note

Note that the curriculum for future weeks is constantly under development. Lesson titles are included to provide an overview of what we’ll cover, but specific content is likely to get moved around between lessons as we refine the curriculum. Slide content will be linked here as soon as it’s drafted, but only finalized 1-2 weeks before the lessons when it’s presented.

Lesson 1: The Very Basics

Shell, virtualbox+vagrant, IRC.

Lesson 2: Single System Fundamentals

File permissions, users, groups, and package management

Lesson 3: Editors & Git

Vim, Emacs, and Git for version control

Lesson 4: Scripting & Troubleshooting

Python and Bash. Overview of troubleshooting/debugging skills.

Lesson 5: Services & Deploying a Web App

Lesson 6: Boot Process & Filesystem Hierarchy

Lesson 7: Databases

Review of VM and App Setup

  • 6pm 2/20/2014
  • No video, hands-on... 14 people showed up
  • Review Slides

Lesson 8: Security & Authentication

Lesson 9: Networking overview

Lesson 10: DNS

Lesson 11: Automation and DevOps

Lesson 12: Configuration Management

Lesson 13: Open Source & Hands-On