DevTips

Abstract Factory Pattern

Acceptance Testing

Acyclic Dependencies Principle

Adapter Pattern

Always Releasable

Andon Cord

Anemic Domain Model

Assertion Roulette

Behavior Verification

Blue Green Deployment

Boolean Arguments

Boy Scout Rule

Build For Testability

Canary Release

Capacity Testing

CI Theatre

Command-Query Separation

Commit Messages

Commit Tests

Common Closure Principle

Common Reuse Principle

Compliance with NFRs

Continuous Isolation

Continuous Refactoring

Conway's Law

Cyclomatic Complexity

Dark Launch

Dead Code

Decorator Pattern

Defect Localization

Delivering MMPs

Dependency Inversion Principle

Dependency Management

Developer or Engineer

Eager Test

Exception Handling

Extract Function

Extract Variable

Facade Pattern

Factory Method Pattern

Feature Branching vs Trunk-Based Development

Feature Envy

Feature Toggles

Fix Fast

Fragility

Frequent Check-Ins

Fresh Fixture

Function Size

Guard Assertion

Humble Object

I’ll Fix It Later

Immobility

Improving Design

Interface Segregation Principle

Isolate the SUT

Law of Demeter

Liskov Substitution Principle

London vs Chicago TDD

Monolith

Naming Conventions

Needless Complexity

Obscure Tests

Open/Closed Principle

Plug-in Architecture

Polymorphic Dispatch

Principles of Component Cohesion

Principles of Component Coupling

Readability

Refactor, Then Optimize

Refactoring

Release Candidate

Release Reuse Equivalency Principle

Repeatable Tests

Rigidity

Ring Deployment

Robust Tests

Safety Net

Separation of Concerns

Shared Fixture

Shift Left

Simple Design

Single Actor

Single Responsibility Principle

Slide Statements

Slow Tests

Small Releases

Small Stories

Software Evolution

Split Loop

Stable Abstractions Principle

Stable Dependencies Principle

State Verification

Strangler Pattern

Strategy Pattern

Structure Matters

Switch Statements

TDD ≠ ATDD

Team Silos

Team Stories

Tell, Don't Ask

Ten-Minute Build

Test First

Test Hook

Test Organization

Test Overlap

Testing in Production

Traceability

Train Wreck

Trunk-Based Development

Two Hats

Vertical Slicing

Viscosity

Working Software

You Aren't Gonna Need It

Training

Agile

The Technical Discipline of Being Agile™

How to Craft Stories of Value

Craftsmanship

Principles & Practices of Test-Driven Development

Understanding Test Doubles

Unit Testing and Beyond

DevOps

Managing Technical Debt

Links