Summary
This blog post discusses the concept of coding as a series of nested decisions, ranging from high-level architectural choices to low-level syntax decisions. The author reflects on how modern tools, including LLMs and IDE features, allow developers to abstract away many decisions, letting them focus on what their programs should accomplish rather than how to implement them. The article contrasts different coding approaches, from vibe coding with AI to traditional development practices, and emphasizes the importance of remaining engaged in the decision-making process.