# Blog

[https://chemaclass.com/blog/](https://chemaclass.com/blog/)

---

- `2026-08-10` [The Human Bottleneck](/blog/the-human-bottleneck/index.md)
  AI agents ship faster than you can review. The answer isn't speeding up. It's choosing where your attention actually matters.
- `2026-07-14` [Working With the Garage Door Open](/blog/working-with-the-garage-door-open/index.md)
  Working in the open lets people help while the work is still shapeable. The real skill is pushing the right signal to the right room.
- `2026-07-05` [Laissez Faire, Laissez Passer](/blog/laissez-faire-laissez-passer/index.md)
  Let people act, let goods pass. No planner knows what the market knows, and freedom, not control, should be the default.
- `2026-06-26` [Cut the Token Bill on Both Ends](/blog/cut-the-token-bill-on-both-ends/index.md)
  Caveman shrinks what the agent says back, RTK shrinks what your terminal pipes in. More room in the same context window.
- `2026-06-01` [The Eternal Return](/blog/the-eternal-return/index.md)
  Nietzsche used eternal return as a test. Life uses it as a mirror. Patterns rhyme not to predict the future, but to reveal who you become under pressure.
- `2026-05-19` [Skills Over Agents](/blog/skills-over-agents/index.md)
  Why Claude Code skills beat specialized agents. On-demand context, not the model, decides quality. Build a skill library that travels with your code.
- `2026-05-01` [The Levels of AI Adoption](/blog/the-levels-of-ai-adoption/index.md)
  A six-level ladder of AI adoption, from copy-paste prompts to agentic teams and AI-native workflows. Where most companies stall, and how to climb.
- `2026-04-17` [Inside the .claude Folder](/blog/inside-the-claude-folder/index.md)
  A hands-on tour of Claude Code's project folder. What rules, skills, agents, hooks, and settings each do, and how they fit together.
- `2026-04-05` [Building a Game in Two Days](/blog/building-a-game-in-two-days/index.md)
  A Telegram message turned into a nine-level Lord of the Rings browser game. Code by an AI agent, every creative decision by a human.
- `2026-03-01` [Idealism vs Pragmatism](/blog/idealism-vs-pragmatism/index.md)
  Doing things right against getting things done. TDD, pair programming, AI: the best results hold both ends of the rope.
- `2026-02-07` [Build Your Own Team of Agents](/blog/build-your-own-team-of-agents/index.md)
  Stop using AI as a single assistant. Organize agents into specialized teams with roles, docs, and parallel execution for real leverage.
- `2026-01-11` [MCP: Giving Your AI Agent the Right Context](/blog/mcp-giving-your-ai-agent-the-right-context/index.md)
  MCP connects AI agents to your dev tools, databases, and APIs through a standard protocol. Give your agent the context it actually needs.
- `2025-12-22` [How Bitcoin Works](/blog/how-bitcoin-works/index.md)
  Transactions, blocks, mining, the UTXO model, and Lightning Network: how Bitcoin actually works under the hood, explained in plain terms.
- `2025-11-21` [Bitcoin Fundamentals](/blog/bitcoin-fundamentals/index.md)
  21 million cap, no central authority, permissionless and censorship-resistant. Bitcoin is digital money you truly own. No bank required.
- `2025-10-10` [AI Gives You Speed, Not Quality](/blog/ai-gives-you-speed-not-quality/index.md)
  AI accelerates your output but doesn't ensure quality. You're responsible for every line you commit. Speed without direction is chaos.
- `2025-09-15` [What Success Means to Me](/blog/what-success-means-to-me/index.md)
  Success is waking up knowing that what you do makes the people around you, and yourself, happier. Consistency over perfection.
- `2025-04-12` [Ship, Show, Ask](/blog/ship-show-ask/index.md)
  Not every change needs the same review. Ship, Show, Ask matches the process to the risk, without losing quality or collaboration.
- `2025-02-17` [Run Your LN Node on a Raspberry Pi](/blog/run-your-ln-node/index.md)
  How to set up a self-custodial Lightning node with Alby Hub on a Raspberry Pi. Full control over your funds, 100% open source.
- `2025-01-02` [Understanding Taxes](/blog/understanding-taxes/index.md)
  Your paycheck, your coffee, the house you just bought: taxes are everywhere. Where your money actually goes after payday.
- `2024-12-11` [The Cypherpunks](/blog/the-cypherpunks/index.md)
  In the early '90s the Cypherpunks set out to defend digital privacy. Their encryption and their ideals shaped the world we live in.
- `2024-11-17` [Verified Git Commits](/blog/verified-git-commits/index.md)
  Sign your Git commits with GPG to prove they are really yours. Without a signature, anyone can fake a commit using your email.
- `2024-10-30` [bashunit](/blog/bashunit/index.md)
  bashunit: a testing framework for Bash with parallel and snapshot testing, test doubles and data providers. From dev frustration to open source.
- `2024-09-02` [People Skills](/blog/people-skills/index.md)
  You have mastered the code, but technical skill alone will not carry you. If you cannot work with others, nobody wants to work with you.
- `2024-08-01` [What Is Waterfall?](/blog/what-is-waterfall/index.md)
  Waterfall moves through fixed stages and gives no feedback until each one ends. Why that clashes with how software really evolves.
- `2024-07-13` [Pretty Good Privacy](/blog/pretty-good-privacy/index.md)
  PGP signs, encrypts and decrypts text, email, files and whole partitions. What it is, how it works, and how to actually use it.
- `2024-07-06` [Programmable Money](/blog/programmable-money/index.md)
  Bitcoin is called programmable money because Script lets you embed conditions into a transaction. How that scripting language works.
- `2024-06-27` [Prisoner's Dilemma](/blog/prisoners-dilemma/index.md)
  The Prisoner's Dilemma, where cooperation and betrayal collide, and what it reveals about self-interest against collective benefit.
- `2024-05-30` [What Kills Agility?](/blog/what-kills-agility/index.md)
  Why Agile if you already do Scrum, Kanban or SAFe? How you manage an organization defines its quality, and what really kills it.
- `2024-04-02` [Learning Concurrency in Golang](/blog/learning-concurrency-in-golang/index.md)
  Learning Go for its simplicity, and meeting again things I had not used in years: multithreading, goroutines and concurrency.
- `2024-03-28` [Effective Pair Programming](/blog/effective-pair-programming/index.md)
  A practical guide to pair programming that works: roles, rotation, when to pair, common pitfalls, and how to make sessions productive.
- `2024-02-25` [Deployments on Fridays](/blog/deployments-on-fridays/index.md)
  The panic around deploying on Fridays. Does banning a whole day of delivering value to your customers actually make sense?
- `2023-12-30` [Great Engineering](/blog/great-engineering/index.md)
  Coding is not just another job. In the right environment it is fun, and even a hobby. On levelling up your craft on purpose.
- `2023-11-25` [Forming, Storming, Norming and Performing](/blog/forming-storming-norming-performing/index.md)
  Tuckman's five stages, and practical strategies for each one: forming, storming, norming, performing and adjourning.
- `2023-10-20` [How to Test Private Methods?](/blog/how-to-test-private-methods/index.md)
  From time to time I have had to face this question: how to test private methods? I have put together in an article the techniques that I usually use.
- `2023-10-11` [Unhealthy Working Environment](/blog/unhealthy-working-environment/index.md)
  An unhealthy working environment can have various symptoms that negatively impact both the physical and mental well-being of employees.
- `2023-09-30` [The Peter Principle](/blog/the-peter-principle/index.md)
  The Peter principle: people get promoted until they land in a role they are not competent for, and then stop being promoted.
- `2023-08-02` [How Do You Get Everyone on Board?](/blog/how-do-you-get-everyone-on-board/index.md)
  From my talk at the WeAreDevelopers World Congress: my experience with Extreme Programming and the benefits of embracing change.
- `2023-07-05` [Never Ending Loop](/blog/never-ending-loop/index.md)
  It is hard to get to bed with a blank mind when you are already on the next reading, talk or post. On the never ending loop.
- `2023-06-08` [Learned Helplessness](/blog/learned-helplessness/index.md)
  Learned helplessness sets in when someone accepts their powerlessness and stops trying to escape. What it is, and how it breaks.
- `2023-05-17` [Dedicated QA Teams in Software?](/blog/dedicated-qa-teams/index.md)
  Let's talk about the QA position. The hidden truth behind poor software quality, and why it concerns you if you write code.
- `2023-04-14` [Introducing a New Tech Stack](/blog/introducing-a-new-tech-stack/index.md)
  Introducing a new tech stack affects everyone, so it needs a clear why and a strategy the whole team can get behind.
- `2023-03-16` [Have You Always Been Like This?](/blog/have-you-always-been-like-this/index.md)
  Always reading, writing and speaking? The short answer is no. How I ended up here, and what changed along the way.
- `2023-02-27` [Great Leadership](/blog/great-leadership/index.md)
  As organizations grow, leaders must shift focus from customers to employees. Key principles for scaling leadership effectively.
- `2023-01-09` [Interview About XP and Agile](/blog/interview-about-xp-and-agile/index.md)
  My interview with devm.io regarding Agile and Extreme Programming. Agile is more about HOW you do certain things, rather than WHAT things you do.
- `2022-12-06` [Ignoring Scrum to Get More Agile?](/blog/ignoring-scrum-to-get-more-agile/index.md)
  Boring meetings are killing agile. When the process stops helping the team and starts owning it instead.
- `2022-11-11` [Working Agile with Non-Agile Teams](/blog/working-agile-with-non-agile-teams/index.md)
  You apply the extreme programming values and practices. So how do you work with the teams around you that are not agile?
- `2022-10-08` [Different Beliefs About Software Quality](/blog/different-beliefs-about-software-quality/index.md)
  What to do when working on \
- `2022-09-25` [The Beauty of Leadership](/blog/the-beauty-of-leadership/index.md)
  Leadership is action, not a title. It has nothing to do with management or hierarchy. What it really means and how anyone can lead.
- `2022-08-22` [Understanding People](/blog/understanding-people/index.md)
  One of the most complicated challenges for everyone is avoiding misunderstandings and being aware that other people don't think the same way as you do.
- `2022-07-25` [The Project Management Triangle](/blog/the-project-management-triangle/index.md)
  A triangle of time, quality and cost. it's an indicator that these three parameters are interconnected. You can fix one or two of them, but not three.
- `2022-06-08` [The Path to Seniority in Software](/blog/the-path-to-seniority-in-software/index.md)
  Real seniority goes beyond job titles. It's about impact, mentoring others, owning outcomes, and raising the bar for your entire team.
- `2022-05-27` [Bikeshedding](/blog/bikeshedding/index.md)
  Bikeshedding explains why teams waste time on trivial decisions while ignoring complex, important ones. Learn to recognize and avoid it.
- `2022-04-02` [Dunbar Number](/blog/dunbar-number/index.md)
  Dunbar's number is a suggested cognitive limit to the number of people with whom one can maintain stable social relationships.
- `2022-02-26` [Update Your Team to Be More Extreme](/blog/update-your-team-to-be-more-extreme/index.md)
  Software demands non-stop learning. How to create the spaces your team needs to leave the comfort zone and embrace change.
- `2022-01-24` [The Power of Authority and Obedience](/blog/the-power-of-authority-and-obedience/index.md)
  Milgram wanted to know how far people obey an order that means harming someone else. What he found, and why it still matters.
- `2021-11-20` [London vs Chicago](/blog/london-vs-chicago/index.md)
  There are two known schools in TDD: the mockist school (aka Outside-in) and the classicist school (aka Inside-out).
- `2021-10-21` [Red Work vs Blue Work](/blog/red-work-blue-work/index.md)
  Blue Work and Red Work, the two modes David Marquet describes in Leadership is Language. Different mindsets, and different languages.
- `2021-09-25` [TDD vs BDD](/blog/tdd-vs-bdd/index.md)
  These are two different techniques. The key to each of them is about the mindset and context of what you want to achieve.
- `2021-08-01` [Test-Driven (Development)](/blog/test-driven-development/index.md)
  TDD is a design practice, not just a testing technique. Writing tests first changes how you think about code and shape its structure.
- `2021-07-01` [Responsibilities of a Tech Lead](/blog/tech-lead/index.md)
  The Trident Career Model by Patrick Kua has three tracks. Each track represents where people spend most of their time or energy.
- `2021-06-01` [Conformity Experiments](/blog/conformity-experiments/index.md)
  How far do social forces bend your opinion? What matters more: the size of the majority or its unanimity. Asch's experiments, explained.
- `2021-05-03` [Open-Source Software](/blog/open-source-software/index.md)
  A practical guide to open-source software: its benefits, how to start contributing, and why sharing code accelerates your career growth.
- `2021-04-01` [Pull Requests vs Pair Programming](/blog/pull-request-vs-pair-prog/index.md)
  Let's talk about the benefits of Pull Requests and Pair Programming, and my thoughts on these after some years of experience with them.
- `2021-03-01` [Embrace the Change](/blog/embrace-the-change/index.md)
  The tale is a beautiful metaphor of the different attitudes that people adopt as part of their identity in life when they have to confront any change.
- `2021-02-01` [Phel: The Lisp That Compiles to PHP](/blog/phel-first-release/index.md)
  The new Functional Programming language build-in for PHP.
- `2021-01-11` [To Mock or Not to Mock](/blog/to-mock-or-not-to-mock/index.md)
  Mocking is useful, but 'what to mock' usually turns out to be a more complicated than expected if you don't treat this carefully.
- `2020-12-01` [Sharing Your Git Patches](/blog/sharing-git-patches/index.md)
  Discover another way of sharing suggestions with your development team.
- `2020-11-10` [Never Use array_merge in a Loop](/blog/array-merge-in-loop/index.md)
  Using array_merge inside a loop is a performance killer. The spread operator will help you to improve this by flatting the array.
- `2020-10-13` [Typed Arrays in PHP](/blog/typed-arrays-php/index.md)
  Argument unpacking, function variable argument list, and variadics function.
- `2020-09-08` [The Process Itself Is the Goal](/blog/the-process-itself-is-the-goal/index.md)
  No goal should be an achievement on its own, but the process itself that helps us to go in the direction of these goals.
- `2020-08-17` [Testing Effectively Legacy Code](/blog/testing-effectively-legacy-code/index.md)
  How to write characterization tests for legacy code to safely refactor without breaking existing behavior.
- `2020-08-09` [Strict Types in PHP](/blog/strict-types/index.md)
  Why declaring strict_types in PHP improves code readability and prevents silent type coercion bugs.
- `2020-06-28` [The Art of Refactoring](/blog/the-art-of-refactoring/index.md)
  If you see something, in the scope of your current task, that can be easily improved, improve it. And if you have any questions about it, ask.
- `2020-06-06` [Final Classes in PHP | Java | Any](/blog/final-classes/index.md)
  Clear contracts, isolated side effects, testability, low complexity and cognitive load, code fluidity, and confidence in yourself.
- `2020-04-07` [The Art of Testing: Where Design Meets Quality](/blog/the-art-of-testing/index.md)
  Why you should consider testing as part of your daily development habit and how it's directly linked to the software quality.
- `2019-11-18` [How to Improve Your Tech-Talk (or Any Other Presentation)](/blog/improve-your-tech-talk/index.md)
  We have all sat through a talk that was hard to follow. How to prepare and deliver a tech talk people actually want to hear.

