The Work Was Always About Understanding
Writing code used to build some understanding along the way. AI can now produce the diff without producing that understanding.
Loading...
Topic
Theory, judgment, design, and reflective notes about building software that survives contact with reality.
Writing code used to build some understanding along the way. AI can now produce the diff without producing that understanding.
A number from agricultural history made the AI analogy click: farming did not vanish when labor shrank, and software may be entering a similar turn.
AI lowered the cost of generating code. The expensive parts moved into understanding, verification, maintenance, and trust.
Ad lazy loading is not just "load when visible". A useful implementation separates layout reservation, bid requests, rendering, and refresh policy, then tunes each step around real latency and viewability goals.
The official Prebid.js bidder adapter path is registerBidder. This article covers the narrower, reverse-engineered path: registering a runtime adapter with registerBidAdapter and returning bid objects that Prebid can actually match to ad units.
A practical TypeScript pattern for chatbot message parsing: small predicates decide when a parser runs, parser functions emit domain events, and the dispatcher stops only when a command asks it to.
Git uses the words ours and theirs from the point of view of the operation it is currently performing. That is why they mean one thing during merge and can feel reversed during rebase.
Well, it's plain and simple to express: Err and err and err again, but less and less and less. - Piet Hein
Reducer composition is still the core Redux idea, even though modern Redux code usually starts with Redux Toolkit, configureStore, and createSlice.
A practical guide to application configuration: keep deploy-specific values out of code, parse and validate configuration at startup, make precedence explicit, and treat secrets as secrets.