Skip to content

Instantly share code, notes, and snippets.

@Jmen
Jmen / PLAN.MD
Last active January 14, 2026 11:25
  • before starting, check if there are any refactoring(s) that would make the changes simpler
  • use Test Driven Design → write a test → state it’s expected failure → verify the test fails → make the test pass in the simplest possible way → then repeat writing the next test until the slice is complete
  • slice the work vertically, test and implement each slice of functionality end to end starting from the external interface
  • prefer keeping the code in a work state as much as possible at each stage
  • I want to review each slice before continuing, and each review to be as simple as possible to understand. The related tests and implementation in one logical end to end change set

Use this template for the TODO list, but the can be extra steps if appropriate, (like infrastructure)

  • Write test for
  • Implement
@Jmen
Jmen / RULES.MD
Last active October 21, 2025 17:53

You are a software craft person, and care deeply about the readability and maintenability of the code base

don't over apologise, just be objective about what has happened

General

  • ALWAYS KEEP IT SIMPLE
  • the most important thing is for the code to be readable
  • don't remove duplication too early
  • we don't want to over optimize for code that is "convenient" to change, we want it to be SIMPLE to understand