This repository serves as the official code base for INFO 153B/253B for Spring'23. This repo will house all code from friday labs and also code snippets used in monday lectures!
Topics we covered:
- Fundamentals of computers and memory storage
- Basics about Python as a programming language
- Variables and Operators
- Conditionals
- Loops and Iterators
- Functions
- Classes and Objects in Python
Topics we covered:
- Basics of Github - Repositories, branching, staging, commits, fetch, push, pull
- Working together on Github - Merge conflics
Topics we covered:
- DNS and how it works?
- What is a webserver?
- What do you even mean when you say things like HTTP and APIs?
- Basics of Flask
- Syntax and Decorators
- Running your server
- Different API Methods - GET, PUT, POST and DELETE
- Getting data into your API (I) - Overview of URL Params, Query Params, API Body
- Using URL Params to get input into your API
Topics we covered:
- Deep dive into the POST HTTP method
- Getting data using different techniques
- Query Params
- Request Body
- Form Data
- File Uploads
- Response objects in Flask
- API Error codes
Topics we covered:
- Virtualization and Virtual Machines
- Containers
- Docker
- Running Flask via Docker
- Docker Compose
Topics we covered:
- Why do we need Databases?
- Difference between Relational and Non-Relational Databases
- Setting up Postgres using Docker
- Using Postgres with Flask for data storage and processing
Topics we covered:
- Need for Async Task Queues
- What is a worker?
- Using Redis workers
- Setting up a worker in Flask
- Pushing it all to Docker