pragmatic-programmer

Apply Pragmatic Programmer principles to architecture reviews, code reviews, and estimation.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/paulalarosa/lumihub --skill pragmatic-programmer-paulalarosa
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: pragmatic-programmer
Source: https://github.com/paulalarosa/lumihub/tree/main/skills/.agents/skills/_all_skills/pragmatic-programmer
Command: npx skills add https://github.com/paulalarosa/lumihub --skill pragmatic-programmer-paulalarosa

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

The Pragmatic Programmer Framework provides a meta-guide for turning software craftsmanship principles into actionable practices, aligning teams around durable, maintainable design.

Core Features & Use Cases

  • Clear guidance on DRY, orthogonality, tracer bullets, and design by contract to improve system quality.
  • Concrete patterns for estimation, reversibility, and knowledge portfolio management to reduce risk and increase learning.
  • Real-world scenarios include architecture reviews, refactoring decisions, and long-term planning for scalable systems.

Quick Start

Outline a one-page plan applying the Pragmatic Programmer framework to a project, highlighting a tracer bullet, orthogonality, and a simple estimation approach.

Frequently Asked Questions about pragmatic-programmer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I apply DRY and orthogonality principles during a software architecture review?

Apply DRY and orthogonality during architecture reviews by evaluating system designs for duplicated knowledge and decoupled modules to ensure durable and maintainable software. The framework provides concrete patterns to assess these quality attributes.

What is the tracer bullet approach for software design and when should I use it?

The tracer bullet approach builds a thin, end-to-end functional slice of your architecture early to validate integration points. Use it to discover structural risks and validate reversible designs before committing to full-scale implementation.

How do I estimate software project timelines using pragmatic craftsmanship techniques?

Estimate software timelines using concrete pragmatic patterns that reduce risk and increase learning. The framework guides estimation through knowledge portfolio management, helping teams provide realistic schedules for long-term planning and scalable systems.

Does the pragmatic programmer framework require specific dependencies or platforms for code reviews?

The framework requires no specific platform dependencies for code reviews. It functions as a meta-guide using structured YAML frontmatter metadata and reference materials to align teams around maintainable design principles.

When should I not use design by contract for refactoring decisions?

Avoid design by contract when refactoring decisions lack clear boundary definitions or when system modules cannot enforce strict preconditions and postconditions. The framework prioritizes reversible designs over rigid contract enforcement in such contexts.