How Password Hashing Works
3 min readThoughts & Theory
Websites don’t store your password, they store a hash. How hashing works, why that’s the reason password reset exists, and why storing less is safer.
Category
How software actually gets built: web development concepts, trade-offs and habits, written from doing the work rather than reading about it.
3 min readThoughts & Theory
Websites don’t store your password, they store a hash. How hashing works, why that’s the reason password reset exists, and why storing less is safer.
3 min readThoughts & Theory
Payment forms reject invalid card numbers instantly thanks to the Luhn algorithm — a 1954 checksum your browser runs before contacting anyone at all.
4 min readThoughts & Theory
The junior role is changing rather than disappearing. Why the first job gets harder, and which developers end up with the advantage as AI spreads.
3 min readThoughts & Theory
Forgetting Docker commands isn’t a sign you’re failing. Why experienced developers look things up, and why a personal cheat sheet beats memorization.
7 min readThoughts & Theory
The honest case for and against remote work as a developer — the freedom and flexibility against distraction, isolation and blurred hours.
4 min readThoughts & Theory
The unglamorous half of programming — reading other people's code, naming things well, chasing bugs, and keeping a codebase alive.
9 min readThoughts & Theory
Am I too old to learn coding? A developer who started late on why age is rarely the real obstacle, what the learning curve looks like, and where to begin.
4 min readThoughts & Theory
Why are internet cookies called cookies? The name traces back to magic cookies in Unix, Lou Montulli, and a piece of early 1990s browser history.
5 min readThoughts & Theory
What transform, transition, animation and @keyframes each do in CSS, and every value they take, explained in plain English without code.
7 min readThoughts & Theory
Express.js interview questions on middleware, routes and app.use, with clear answers on req.params vs req.query vs req.body and express.Router().
2 min readThoughts & Theory
How CSS went from decorating static pages to driving motion — and why animation is a way of communicating state, not just decoration.
1 min readThoughts & Theory
No — CSS is a style sheet language, not a programming language. What separates the two, and what CSS does instead, with an example.
2 min readThoughts & Theory
No — HTML is a markup language, not a programming language. Here is what that distinction actually means, and why it matters.
7 min readThoughts & Theory
The Javascript double question mark (??) is the nullish coalescing operator. How it works, how it differs from ||, and how to chain it safely.
12 min readThoughts & Theory
The best job sites for web developers: remote boards, junior-friendly listings, freelance platforms, and the filters worth using on each one.
6 min readThoughts & Theory
How burnout shows up for developers — falling productivity, lost motivation, exhaustion, isolation — and four practical ways back out.
6 min readThoughts & Theory
Impostor syndrome in tech: four signs you are experiencing it, and five practical ways to quiet the voice saying you do not belong.
5 min readThoughts & Theory
Three habits that make a pull request easier to review: screenshots for UI changes, proactive comments, and a title that says what actually changed.
1 min readThoughts & Theory
gray and grey are the same CSS keyword — browsers treat them identically. The same goes for lightgray/lightgrey and darkgray/darkgrey.
7 min readThoughts & Theory
An honest list of what makes programming a great career and what makes it hard — opportunity and creativity against bugs, burnout and doubt.
8 min readThoughts & Theory
Scrum explained for new developers: sprints, backlog, standups, sprint planning, planning poker and retros — the jargon your first job assumes you know.
6 min readThoughts & Theory
Split a large feature into reviewable pull requests using prerequisite changes and well-scoped commits, worked through on a real full-stack example.
2 min readThoughts & Theory
A moth in a Harvard relay, a 1947 logbook entry, and why the note says the first *actual* case of a bug — the word was already decades old.