A living list. Tools earn their place here by surviving real work, not by being new.
// Engineering, by day
- Eleven languages, one lesson C, C++, Java, Object Pascal, C#, JavaScript, Ruby, Scala, Kotlin, Python, Go – collected since a teenager met a computer in Lahore. The lesson: syntax is not the point. The love letter.
- Java & the JVM Twenty-five years and counting – from university assignments to payment platforms processing real money. Still learning the same language; it is still teaching me. The long story.
- Microservices & DDD A loud advocate – bounded contexts, domain events, and well-scoped services that are self-sufficient, self-deployable, self-healing. You build it, you run it. The architecture only works when the team culture does.
- AWS, deeply EC2, EKS, RDS, API Gateway, S3, CloudFront – composed into compliant (GDPR, PCI/DSS, DORA), cost-modelled platforms for payments and FinTech. Docker, Kubernetes, and Terraform underneath. Designed for the day they degrade, not just the day they demo.
- The Spring & JVM stack Spring Boot and Kafka at the core, Netflix OSS from the microservices trenches (Hystrix, Eureka, Zuul, Feign) – the battle-tested middle of the Java universe, held together by Sagas when distributed truth gets messy.
- The data layer Postgres as the system of record, Elasticsearch for search and the NoSQL work, Redis for the cache layer, Neo4j when relationships are the data. Choose the store by the shape of the question, not by habit.
- API craft Contracts before code: Swagger/OpenAPI so the docs and the console live with the API, GraphQL where clients deserve to choose their shape, OAuth2 for who-may-do-what. An endpoint is a promise – version it like one.
- Hardening Security and threat profiling before launch, performance and load testing before scale – attack your own system before customers and strangers do it for free. SonarQube keeps the everyday honest.
- Observability & the pipeline Prometheus to know the system, Grafana to know the business – a platform you cannot watch degrade is a platform you do not own. GitLab, Jenkins, Maven, and SonarQube keep the road to production boring – the highest compliment a pipeline can earn.
- Think to Deliver A phased method for working a system from inception to operations – vision, KPIs, architecture, build, release, run. Two decades of SDLC distilled into one discipline; a future Learn. Excel. Lead. series.
- IntelliJ IDEA & VS Code IntelliJ for the JVM work – it thinks in Java the way I do. VS Code for the web, the scripts, and everything this site is made of.
- Go & Python The current apprenticeship – Go for its ruthless simplicity, Python for its reach into data. Tools earn permanent residence here by shipping something; these two are on probation. Followed live on Now.
- The whiteboard Still the highest-bandwidth architecture tool ever shipped. Every system I trust started as a drawing – of an architecture that can accommodate decisions not yet made.
// AI in the loop
- Claude Code & Cursor The daily collaborators – including on this very site. Tests first, then agents implement until they pass; the judgment stays human. Months of directing code instead of typing it – a code director, not a code writer. Findings become the AI in Practice series.
- A healthy scepticism The most important AI tool. Twenty years of fundamentals are what make machine output reviewable – we learned to code so that others could type a prompt.
// This site
- Hand-written HTML, CSS & JS No framework, no build step. Sixty-odd pages of deliberate craftsmanship – every line readable, every dependency explainable.
- Vercel + GitHub Push to main, live in a minute. Static files, sensible headers, privacy-friendly analytics.
- Buttondown Runs the Field Notes newsletter – an owned list, exportable any day, no algorithm in between.
- Cormorant, Lora & JetBrains Mono The typographic trio of the Craftsman's Study – literary headings, readable body, monospaced labels. Amber #C89B3C is the only logo this site needs.
// The desk
- Asus ZenBook 16 The personal bench – AMD Ryzen 9 AI, 32 GB RAM, 1 TB. Where this site, the essays, and the experiments live.
- Asus VivoBook 14 AMD Ryzen 5, 8 GB, 512 GB – now in the hands of Danish, my eldest. The first machine passed to the next generation. Somewhere in Lahore, a father once did the same for me.
- A MacBook, by day The office issue. Architecture renders the same on every OS – a craftsman adapts to the bench he is given.
- Coffee, candlelight, rain The optimal reading configuration, perfected in a cosy corner in Bavaria. Non-negotiable.