Skip to content

Commit

Permalink
update learning objectives for prep and sprint 1 projects (#126)
Browse files Browse the repository at this point in the history
* update http-auth objectives

testable actions
servers and databases

understand is a banned word as it's a state of being not an act of doing
multiple servers


formatting


docker cloud


grPC

* Apply suggestions from code review

Co-authored-by: Daniel Wagner-Hall <dawagner@gmail.com>

* Update projects/multiple-servers/README.md

---------

Co-authored-by: Daniel Wagner-Hall <dawagner@gmail.com>
  • Loading branch information
SallyMcGrath and illicitonion authored Apr 23, 2023
1 parent ed6fa7a commit 713aa94
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 14 deletions.
2 changes: 1 addition & 1 deletion projects/docker-cloud/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ In this project, you'll build a simple Go server application and Dockerise it to
## Learning objectives:

- Set up Docker locally
- `Dockerfile` syntax & how to containerise an application
- Containerise an application using Docker syntax
- Run applications locally using Docker
- Push container images to a repository ([ECR](https://aws.amazon.com/ecr/))
- Deploy images to Elastic Cloud resources using Elastic Container Service
Expand Down
10 changes: 7 additions & 3 deletions projects/grpc-client-server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,13 @@ Timebox: 3 days

## Learning objectives:

- Learn what gRPC is and how it differs from HTTP
- Understand what kinds of issues can occur in a real system and how to defend against them
- Learn what observability is, and what are some kinds of observability you'd find in use in production?
- Define gRPC and how this differs from HTTP
- Install gRPC tools and complete HelloWorld
- Build a gRPC based prober
- Describe what kinds of issues can occur in a real system and how to defend against them
- Define observability
- List some kinds of observability you’d find in use in production
- Serve and collect Prometheus Metrics

## What is gRPC?

Expand Down
6 changes: 3 additions & 3 deletions projects/http-auth/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ Timebox: 6 days

## Learning objectives:

- Use Go's net/http package to build start a simple server that responds to local requests
- Get to know HTTP GET and response codes
- Get familiar with cURL
- Use Go's net/http package to build start a server that responds to local requests
- Make HTTP GET requests using cURL
- Respond to HTTP get requests with relevant response codes from a Go server
- Define URL, header, body and content-type
- Accept parameters in via GET in the query string
- Accept data via a POST request
Expand Down
13 changes: 8 additions & 5 deletions projects/multiple-servers/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,14 @@ Timebox: 5 days

## Learning objectives:

- Basic microservices ideas, separating concerns of services
- Describe microservices
- Separate concerns of microservices
- Replicate a local setup in the cloud on a virtual machine
- Configure nginx to talk to 2-3 copies of the API server
- Some web security ideas (CORS)
- Reverse proxy configuration, routing on path
- Health checks
- Resolve CORS issues
- Configure a reverse proxy, routing on path

In future:
### In future:

- Running applications in the cloud
- Using a cloud-hosted databases
Expand Down Expand Up @@ -109,11 +110,13 @@ Specifically, the `cmd/` files will import functionality from `api` and `static`
In reality, starting each will look like this:

API server:

```console
> DATABASE_URL='postgres://localhost:5432/go-server-database' go run ./cmd/api-server --port 8081
```

Static server:

```console
> go run ./cmd/static-server --path assets --port 8082
```
Expand Down
4 changes: 2 additions & 2 deletions projects/server-database/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ Timebox: 6 days
## Learning objectives:

- Build a simple API server that talks JSON
- Understand how a server and a database work together
- Use SQL to read data from a database
- Describe how a server and a database work together
- Read data from a database with SQL
- Accept data over a POST request and write it to the database

## Project
Expand Down

0 comments on commit 713aa94

Please sign in to comment.