# | lecture date | title | category | description |
---|---|---|---|---|
Web Apps + Sinatra | ||||
1 | Jan 18 | Welcome | general | Introductions and logistics |
2 | Jan 20 | What is Scalability? | scale | There are technical and non-technical factors |
3 | Jan 25 | Cosi166 Quick Bullets | programming | Remind ourselves about Ruby and the web |
4 | Jan 27 | Intro to Sinatra | web | Sinatra is a ruby application server |
5 | Feb 1 | Sinatra and Twitter | nt | Introduction to Twitter and nanoTwitter |
6 | Feb 3 | NanoTwitter introduced | web | Get explanation of what nanoTwitter is and how it will work. |
nano Twitter | ||||
7 | Feb 8 | Starting to think about scaling | web | Sinatra, Service Oriented Architectures and scaling |
8 | Feb 10 | Scaling at Hubspot | general | Guest Speaker Osamah Mandawi |
9 | Feb 15 | Service Oriented Architecture | nt | We start going in to more complicated core architectures |
10 | Feb 17 | Deploying to the Cloud | scale | How is the cloud a central part of modern software engineering? |
11 | Mar 1 | Scalable Service design | scale | What does scalability mean? What do scalability problems look like? |
12 | Mar 3 | Scalability, continued | scale | Examining what scalability means |
13 | Mar 8 | Testing in the world of SOA | scale | Testing, Unit Testing and special cases in SOA |
Scaling Patterns | ||||
14 | Mar 10 | Testing Scalability | How to approach the analysis of scaling, in particular for nanoTwitter | |
15 | Mar 15 | Tuning for Scale | scale | What are some of the key ways in which a system can fail to scale? |
16 | Mar 17 | Logging | scale | Consider the role of system wide logging |
17 | Mar 22 | Caching | scale | Caching is one of the first, simplest ways of attacking scale |
18 | Mar 24 | Database Tuning 1 | scale | How database architecture affects performance and scale and how to improve it. |
19 | Mar 29 | Database Tuning 2 | scale | How database architecture affects performance and scale and how to improve it |
20 | Mar 31 | Concurrency 1 | scale | Synchronous and asynchronous processing, threads and processes |
21 | Apr 5 | Concurrency 2 | scale | Continuing the discussion on this critical aspect of scaling |
22 | Apr 7 | Queueing | scale | Queuing and message passing are basic techniques in scaling |
23 | Apr 12 | SOA + µservices | scale | Look at applications of microservices and SOA in building scalable systems. Consider risks and benefits. |
24 | Apr 14 | Software Engineering | general | We look Computer Science and Software Engineering |
25 | Apr 26 | Scalability Runoff 1 | general | First Try |
26 | Apr 28 | Last class! | Scalability Runoff |