Skip to content
>devspeak
← glossary
level 7Architecture

Abstraction

also: abstractions, abstracted, abstract away

Hiding complicated details behind a simple way to use them. You call "send email" without needing to know how email delivery actually works.

a bit more technical

A simplified interface over more complex implementation details: a function, class or module that exposes what something does while hiding how. Good abstractions reduce what you need to know; premature or leaky ones add layers without simplifying anything.

picture it

A car's pedals and steering wheel. You drive without understanding fuel injection. If every car made you control the engine directly, driving would be much harder.

why it matters

Agents love adding abstractions: wrappers, base classes, generic helpers. Some make code simpler; some just add layers to dig through. Knowing the word lets you ask, "Does this simplify, or just hide?"

what your agent might say
agent
I created a StorageProvider abstraction so we can switch from local files to S3 cloud storage later without changing the upload code.
how you might use it
you → your agent
Don't add a new abstraction layer for a single use. Keep it simple and direct until we actually need a second payment provider.
common mistake

Thinking more abstraction is always better design. An abstraction with only one user often adds complexity without benefit.

builds on