Wrap-up and resources
Key Takeaways
- 1. Performance: measure before you optimise: Do not optimise what you have not measured. Look at p95, not the average, and check first for N+1 and missing indexes, the two most common causes of slowness.
- 2. Application security: Trust no input, check permissions on the server for every request, store passwords with a slow salted hash, and keep your dependencies updated.
- 3. Continuous integration and delivery (CI/CD): A machine runs the same checks on every change, and the main branch accepts only what passed. Deploying becomes a boring button, not a scary event.
- 4. Observability: logs, metrics and traces: Structured logs with a request id, four metrics (latency, traffic, errors, saturation), and alerts on what users feel, not on everything.
Glossary
| Term | Definition | Part |
|---|---|---|
| p95 | 95% of requests are faster than this number. | 1 |
| N+1 | One query for the list, then one per item. | 1 |
| Profiler | A tool measuring where a program spends its time. | 1 |
| OWASP Top 10 | The list of the ten most critical web app risk categories. | 2 |
| IDOR | Reaching someone else's resource by changing its id. | 2 |
| Salt | A random per-user value added before hashing. | 2 |
| CI | Automatic integration and checking of every change. | 3 |
| CD | Delivering what passed to production automatically. | 3 |
| Job | A set of steps running on one machine. | 3 |
| Structured log | A JSON line with fixed, searchable fields. | 4 |
| SLO | A service level objective, like 99.9% success within 300ms. | 4 |
| Span | One step in a trace with its start and end time. | 4 |
Resources for this lesson
Grouped by type. Start with the official docs for precision, or an article or video for the explanation.
Official docs6
Python docs: The Python ProfilerscProfile and reading its output.docs.python.orgOWASP Top TenThe official list explaining each category.owasp.orgOWASP Password Storage Cheat SheetThe recommended algorithms and parameters.cheatsheetseries.owasp.orgGitHub Actions quickstartYour first workflow in minutes.docs.github.comWorkflow syntax for GitHub ActionsThe full reference for the file syntax.docs.github.comOpenTelemetry: PythonAdding traces and metrics to a Python app.opentelemetry.io
Done with this lesson?
Sign in to save your progress.