Andrew's Digital Garden

Topic - concepts

For general engineering concepts, not for principles.

Related: [[engineering]] [[principles]] [[smells]]

#topic-page

Referred in

Dependency Injection
Stable Dependency Principle
Topic - principles
Contract testing
Feature flags
Lava layers
Semantic versioning
Mocks vs Stubs vs Fakes
True but useless
Libraries vs Frameworks
Dynamic dispatch
Imperative & declarative APIs
Shim
Topic - writing
Sorting and Searching
Pit of success
Ideas
Monkey patching
Keeping things closer to the web platform
Centralising patterns in a design system
Scope creep
SOLID
Vendoring
Wrapping external dependencies
How I use Obsidian
Innersource
Throttle vs Debounce
Software Development Life Cycle (SDLC)
Explicit Dependencies Principle
Choose boring technology
Strangler pattern
Shared state and concurrency
What is a code smell?
Fail fast
Marshalling
The flywheel effect
Automate code styling
The wrong abstraction
Group by domain, rather than type
Rewriting code from scratch
Concurrency vs parallelism
Software Delivery
Ponyfills vs Polyfills
Mixing FP and OOP
Final decisions
Known knowns, unknown knowns, and unknown unknowns
Andy Hunt & Dave Thomas - Pragmatic programmer
Topic - product
Coupling and Cohesion
Impossible states
Domain driven design
Event-Driven Architecture
The cost of convenience
Dogfooding
Infrastructure as Code
Indirection
The Boy Scout Rule
What is a predicate?
Bitwise operators
No feigning surprise
Dogmatic, idiomatic, and pragmatic
Tracer bullets
Existing code
Colocation
Topic - concepts