Skip to content

codessintheclassroom/classroom-material

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Codess In The Classroom

Welcome! This repository contains the Codess In The Classroom course materials. From here you will be able to find (and contribute to!) the materials we use in our hands-on workshops.

Introduction

The course is going to be structured as a series of workshops, during which you will learn about various technologies and practices used in modern software development.

In each workshop, you and your peers will be the development team working on part of a web application for an animal shelter. You will learn about front-end web development, APIs, testing and continuous integration, as well as how to deploy web applications to the cloud, and how to collaborate in a modern software team.

During the workshop, you will have access to a group of mentors who will be there to help supplement the course materials and answer any questions you may have.

Learning goals

Our goal is to give you a chance to learn about modern software development practices, and especially to learn about how web applications are designed, built, tested, and deployed.

Over the duration of the course, you will build all the important parts of a web application that allows users to find and adopt adorable furry companions. Each workshop will focus on a different part of the application, and will draw on a different set of skills.

Below, you'll find out what to expect in each workshop.

Course outline

Workshop 1: Modern front-end web development

In this workshop, we're going to build a frontend of a website for the pet adoption center. In doing this, you'll learn:

  • What is a single-page application (SPA)?
  • What is an API (application programming interface)?
  • How to talk to an API from a SPA built with React.
  • How to use GitHub to submit a pull request (PR).
  • How to use pull requests as part of a code review process.

Please review the list of prerequisites for this workshop before you join us on the day.

If you're ready, go to the course notes for Workshop 1.

Workshop 2: APIs and back-end web development

In the first workshop, you built a single-page application that talked to an API service that returned information about pets up for adoption. In this workshop, you're going to build the pet adoption API yourselves, and host it in the cloud. You'll learn:

  • How is an API application different from other web applications?
  • How to pick between different options for building and hosting web applications.
  • How to design and build an API for listing pets available for adoption.
  • How to host your API application in Azure.

The notes for Workshop 2 aren't quite ready yet. We'll add them here when they are.

Workshop 3: Automated testing, continuous integration, continuous deployment

So far, you've built both a front-end and a back-end for the pet adoption center's website. In this workshop, we're going to look at how you can automatically test the changes you make to your software, and how you can integrate those tests into a pipeline to help you release software quickly and easily. We hope you'll learn:

  • How to run tests automatically after every change.
  • How to use tests to provide automatic code review.
  • How to automatically deploy changes to your code after they pass the tests.

The notes for Workshop 3 aren't quite ready yet. We'll add them here when they are.

Workshop 4: Logs, metrics, and observability

You have now built, tested, and deployed a web application to the cloud! Now you want to know whether it's doing the right thing. In this workshop, we're going to look at how to use logs and metrics to understand what your application is really doing in production, and gain insight into whether your users are having the experience you want them to. By adding instrumentation to your own application, you'll learn:

  • What we mean when we say "observability."
  • What are the differences between logs, metrics, and traces?
  • How to log useful data from your application.
  • How to emit metrics from your application.
  • Limitations and challenges of monitoring applications in production.

The notes for Workshop 4 aren't quite ready yet. We'll add them here when they are.

Contributions

All of our course notes are open-source, and we invite corrections and contributions and corrections from anyone. Find a typo? Send us a pull request. Want to contribute a new module? Open an issue to discuss your idea.

About

Course materials for Codess in the Classroom.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published