A practical security tutorial series for developers. Learn how to write secure code, prevent common attacks, and protect your users. Every article has working code examples in Go, Python, JavaScript, and Kotlin.
No fear-mongering. Just simple explanations, real attacks, and practical prevention code.
Part 1: Fundamentals (Tutorials #1–#5)
Learn the most important web security concepts and how to prevent the most common attacks.
| # | Tutorial | What You Will Learn |
|---|---|---|
| 1 | Web Security Basics — OWASP Top 10 | All 10 OWASP 2025 categories, real-world examples, prevention tips |
| 2 | Authentication — Passwords, Hashing, JWT | bcrypt, Argon2, JWT tokens, refresh tokens, secure storage |
| 3 | Authorization — RBAC, OAuth 2.0, OpenID Connect | Role-based access control, OAuth flows, PKCE, Login with Google |
| 4 | SQL Injection and XSS — How to Prevent Them | Parameterized queries, output escaping, CSP, HttpOnly cookies |
| 5 | HTTPS and TLS — How Encryption Works | TLS handshake, certificates, Let’s Encrypt, HSTS |
Coming Soon
| # | Tutorial | What You Will Learn |
|---|---|---|
| 6 | CSRF Prevention | CSRF tokens, SameSite cookies, CORS |
| 7 | API Security | Rate limiting, input validation, OWASP API Top 10 |
| 8 | Secrets Management | .env files, Vault, secret rotation, pre-commit hooks |
| 9 | Broken Access Control | IDOR, privilege escalation, RBAC middleware |
| 10 | Docker Security | Non-root containers, image scanning, secrets in Docker |
Who is This For?
- Backend developers building APIs and web applications
- Mobile developers who need to secure API calls and token storage
- Frontend developers who want to prevent XSS and understand CSP
- Anyone who wants to write more secure code without becoming a security researcher
How to Use This Series
Start from Tutorial #1 and go in order. Each tutorial builds on the previous one. The articles show the attack first, then the prevention — so you understand WHY each defense matters.
All code examples are self-contained. You can copy and run them in your language of choice.