- Go back over socket server learnings from the chat app we made
- Build a webserver from scratch and try and understand how the server works underneath e.g. HTTP, TCP, websockets, network layer etc
- Build this in flask
- Build this in django
- Learn how flask works under the hood a little bit e.g. is it just a layer built on top of python with some additional functionality, how much additional functionality does it give i.e. is it doing a lot or it's just reallllly convenient, are route decorators just switch statements for different routing etc
- Learn about asyncio and what we can do with it. Basic assumption: it's the same as Promises in JS - lets you write async code, so you could write code like e.g. time.sleep(2), add asyncio snytax to it and it will run other code below it (just like a promise would).
- Learn about dunder/magic methods e.g. __ name __, __ file __. What are they/what is their purpose, what are the actual methods available
- Refresh/Get an understanding on decorators
- Learn more about inbuilt python libraries e.g. collections, types etc
- Learn about different general data structures e.g. heaps, stacks, queues and try and implement each one
- Build a mini app and build the app using TDD unittest i.e. writing tests first
- Build the same app using pytest