# Karpathy Coding GuideLines
## 원문
https://x.com/karpathy/status/2015883857489522876
A few random notes from claude coding quite a bit last few weeks.
**Coding workflow.** Given the latest lift in LLM coding capability, like many others I rapidly went from about 80% manual+autocomplete coding and 20% agents in November to 80% agent coding and 20% edits+touchups in December. i.e. I really am mostly programming in English now, a bit sheepishly telling the LLM what code to write... in words. It hurts the ego a bit but the power to operate over software in large "code actions" is just too net useful, especially once you adapt to it, configure it, learn to use it, and wrap your head around what it can and cannot do. This is easily the biggest change to my basic coding workflow in ~2 decades of programming and it happened over the course of a few weeks. I'd expect something similar to be happening to well into double digit percent of engineers out there, while the awareness of it in the general population feels well into low single digit percent.
**IDEs/agent swarms/fallability.** Both the "no need for IDE anymore" hype and the "agent swarm" hype is imo too much for right now. The models definitely still make mistakes and if you have any code you actually care about I would watch them like a hawk, in a nice large IDE on the side. The mistakes have changed a lot - they are not simple syntax errors anymore, they are subtle conceptual errors that a slightly sloppy, hasty junior dev might do. The most common category is that the models make wrong assumptions on your behalf and just run along with them without checking. They also don't manage their confusion, they don't seek clarifications, they don't surface inconsistencies, they don't present tradeoffs, they don't push back when they should, and they are still a little too sycophantic. Things get better in plan mode, but there is some need for a lightweight inline plan mode. They also really like to overcomplicate code and APIs, they bloat abstractions, they don't clean up dead code after themselves, etc. They will implement an inefficient, bloated, brittle construction over 1000 lines of code and it's up to you to be like "umm couldn't you just do this instead?" and they will be like "of course!" and immediately cut it down to 100 lines. They still sometimes change/remove comments and code they don't like or don't sufficiently understand as side effects, even if it is orthogonal to the task at hand. All of this happens despite a few simple attempts to fix it via instructions in CLAUDE . md. Despite all these issues, it is still a net huge improvement and it's very difficult to imagine going back to manual coding. TLDR everyone has their developing flow, my current is a small few CC sessions on the left in ghostty windows/tabs and an IDE on the right for viewing the code + manual edits.
**Tenacity.** It's so interesting to watch an agent relentlessly work at something. They never get tired, they never get demoralized, they just keep going and trying things where a person would have given up long ago to fight another day. It's a "feel the AGI" moment to watch it struggle with something for a long time just to come out victorious 30 minutes later. You realize that stamina is a core bottleneck to work and that with LLMs in hand it has been dramatically increased.
**Speedups.** It's not clear how to measure the "speedup" of LLM assistance. Certainly I feel net way faster at what I was going to do, but the main effect is that I do a lot more than I was going to do because 1) I can code up all kinds of things that just wouldn't have been worth coding before and 2) I can approach code that I couldn't work on before because of knowledge/skill issue. So certainly it's speedup, but it's possibly a lot more an expansion.
**Leverage.** LLMs are exceptionally good at looping until they meet specific goals and this is where most of the "feel the AGI" magic is to be found. Don't tell it what to do, give it success criteria and watch it go. Get it to write tests first and then pass them. Put it in the loop with a browser MCP. Write the naive algorithm that is very likely correct first, then ask it to optimize it while preserving correctness. Change your approach from imperative to declarative to get the agents looping longer and gain leverage.
**Fun.** I didn't anticipate that with agents programming feels *more* fun because a lot of the fill in the blanks drudgery is removed and what remains is the creative part. I also feel less blocked/stuck (which is not fun) and I experience a lot more courage because there's almost always a way to work hand in hand with it to make some positive progress. I have seen the opposite sentiment from other people too; LLM coding will split up engineers based on those who primarily liked coding and those who primarily liked building.
**Atrophy.** I've already noticed that I am slowly starting to atrophy my ability to write code manually. Generation (writing code) and discrimination (reading code) are different capabilities in the brain. Largely due to all the little mostly syntactic details involved in programming, you can review code just fine even if you struggle to write it.
**Slopacolypse.** I am bracing for 2026 as the year of the slopacolypse across all of github, substack, arxiv, X/instagram, and generally all digital media. We're also going to see a lot more AI hype productivity theater (is that even possible?), on the side of actual, real improvements.
**Questions.** A few of the questions on my mind:
- What happens to the "10X engineer" - the ratio of productivity between the mean and the max engineer? It's quite possible that this grows *a lot*.
- Armed with LLMs, do generalists increasingly outperform specialists? LLMs are a lot better at fill in the blanks (the micro) than grand strategy (the macro).
- What does LLM coding feel like in the future? Is it like playing StarCraft? Playing Factorio? Playing music?
- How much of society is bottlenecked by digital knowledge work?
**TLDR** Where does this leave us? LLM agent capabilities (Claude & Codex especially) have crossed some kind of threshold of coherence around December 2025 and caused a phase shift in software engineering and closely related. The intelligence part suddenly feels quite a bit ahead of all the rest of it - integrations (tools, knowledge), the necessity for new organizational workflows, processes, diffusion more generally. 2026 is going to be a high energy year as the industry metabolizes the new capability.
## 번역
(구글번역)
지난 몇 주 동안 코딩을 꽤 많이 하면서 몇 가지 생각나는 점들을 적어봤습니다.
**코딩 워크플로.** LLM 코딩 기능이 최근 크게 향상되면서, 저를 포함한 많은 사람들이 11월에는 수동 코딩과 자동 완성 기능을 80% 정도 사용하고 에이전트 코딩을 20% 정도 하던 방식이 12월에는 에이전트 코딩을 80%, 수정 및 마무리 작업을 20% 정도로 빠르게 바꿨습니다. 즉, 이제는 거의 영어로 프로그래밍을 하고 있고, LLM에게 어떤 코드를 작성해야 하는지 말로 지시하는 상황이 되었습니다. 자존심이 좀 상하긴 하지만, 소프트웨어를 대규모 "코드 작업"으로 제어할 수 있는 능력은 정말 유용합니다. 특히 일단 적응하고, 설정하고, 사용법을 배우고, 기능의 한계를 파악하면 더욱 그렇습니다. 이는 제가 20년 넘게 프로그래밍을 해오면서 기본적인 코딩 워크플로에 생긴 가장 큰 변화이며, 불과 몇 주 만에 일어난 일입니다. 아마 많은 엔지니어들이 비슷한 변화를 겪고 있을 거라고 생각하지만, 일반인들은 아직 이를 인지하지 못하는 것 같습니다.
**IDE/에이전트 스웜/오류 가능성.** "IDE가 더 이상 필요 없다"는 주장과 "에이전트 스웜"에 대한 과대광고는 제 생각에는 지금 시점에서는 지나친 것 같습니다. 모델은 여전히 오류를 범할 수 있으며, 정말 중요한 코드가 있다면 크고 안정적인 IDE에서 매의 눈으로 지켜봐야 합니다. 오류의 양상도 많이 바뀌었습니다. 더 이상 단순한 구문 오류가 아니라, 약간 부주의하고 성급한 초보 개발자가 저지를 법한 미묘한 개념적 오류입니다. 가장 흔한 오류 유형은 모델이 사용자를 대신하여 잘못된 가정을 하고 검증 없이 그대로 실행하는 것입니다. 또한 모델은 혼란을 관리하지 못하고, 명확한 설명을 요구하지 않으며, 불일치를 드러내지 않고, 장단점을 제시하지 않고, 필요할 때 반박하지 않으며, 여전히 지나치게 아첨하는 경향이 있습니다. 계획 모드에서는 이러한 문제가 개선되지만, 가볍고 간편한 인라인 계획 모드가 필요합니다. 그들은 코드와 API를 지나치게 복잡하게 만들고, 추상화를 과도하게 늘리고, 사용하지 않는 코드를 정리하지 않는 등 여러 가지 문제점을 안고 있습니다. 비효율적이고, 과도하게 복잡하며, 취약한 구조를 1000줄이 넘는 코드로 구현해 놓고는 "음, 이렇게 하면 안 될까요?"라고 물어보면 "당연하죠!"라고 대답하며 바로 100줄로 줄여버립니다. 심지어는 마음에 들지 않거나 충분히 이해하지 못하는 주석이나 코드를, 당면한 작업과 무관한 부작용을 이유로 삭제하거나 수정하기도 합니다. 이 모든 문제는 CLAUDE.md 문서에 나와 있는 간단한 수정 지침을 따라 해봐도 해결되지 않습니다. 이러한 문제점들에도 불구하고, 전반적으로는 엄청난 발전이며 수동 코딩으로 돌아가는 것은 상상하기 어렵습니다. 요약하자면, 모든 개발자는 자신만의 작업 흐름이 있는데, 저는 현재 왼쪽 창/탭에 몇 개의 CC 세션을 띄워놓고, 오른쪽 IDE에서 코드를 보고 수동으로 수정하는 방식을 사용하고 있습니다.
**끈기.** 에이전트가 끊임없이 무언가를 해내는 모습을 보는 것은 정말 흥미롭습니다. 지치지도 않고, 의욕을 잃지도 않고, 사람이면 진작 포기하고 다음 기회를 노렸을 상황에서도 계속해서 새로운 시도를 합니다. 인공지능이 오랜 시간 고군분투하다가 30분 만에 마침내 승리하는 모습을 보면, 인공지능의 힘을 실감하게 됩니다. 지구력이 업무 효율을 좌우하는 핵심 요소라는 것을 깨닫게 되고, LLM을 활용하면 이 지구력이 극적으로 향상된다는 것을 알게 됩니다.
**속도 향상.** LLM 지원으로 인한 "속도 향상"을 정확히 측정하기는 어렵습니다. 물론 제가 하려던 작업을 훨씬 빠르게 처리할 수 있게 된 것은 사실이지만, 가장 큰 효과는 제가 하려던 것보다 훨씬 더 많은 일을 해낼 수 있게 되었다는 것입니다. 그 이유는 1) 이전에는 코딩할 가치가 없다고 생각했던 다양한 기능들을 구현할 수 있게 되었고, 2) 지식이나 기술 부족으로 이전에는 작업할 수 없었던 코드까지 다룰 수 있게 되었기 때문입니다. 따라서 속도 향상도 있지만, 어쩌면 작업 범위가 확장되었다는 의미에 더 가까울지도 모릅니다.
**레버리지.** LLM은 특정 목표를 달성할 때까지 반복하는 데 매우 능숙하며, 바로 이 부분에서 "AGI의 마법"을 느낄 수 있습니다. 무엇을 해야 할지 직접 지시하지 말고, 성공 기준을 제시하고 결과를 지켜보세요. 먼저 테스트를 작성하게 하고, 그 테스트를 통과하도록 하세요. 브라우저 기반의 MCP(Markov Control Program)를 사용하여 반복 작업을 수행하게 하세요. 먼저 정확도가 매우 높은 기본적인 알고리즘을 작성한 다음, 정확성을 유지하면서 최적화하도록 요청하세요. 명령형 방식에서 선언형 방식으로 접근 방식을 변경하여 에이전트가 더 오랫동안 반복 작업을 수행하도록 하고, 이를 통해 레버리지를 확보하세요.
**재미.** 에이전트를 사용하면 프로그래밍이 훨씬 재밌어질 거라고는 예상 못 했어요. 빈칸 채우기 같은 지루한 작업이 많이 줄어들고 창의적인 부분만 남으니까요. 막히거나 꼼짝 못하는 상황(정말 재미없죠)도 줄어들고, 항상 해결책을 찾아서 긍정적인 방향으로 나아갈 수 있다는 생각에 용기가 더 많이 생겨요. 다른 사람들은 정반대의 의견을 가지고 있는 것 같더라고요. LLM 코딩은 코딩 자체를 좋아하는 사람과 무언가를 만드는 걸 좋아하는 사람으로 엔지니어를 나눌 거예요.
**퇴화.** 이미 직접 코드를 작성하는 능력이 서서히 퇴화하고 있다는 걸 느끼고 있어요. 코드 생성(작성)과 코드 판독(판별)은 뇌에서 서로 다른 기능이에요. 프로그래밍에는 주로 구문적인 세부 사항들이 많기 때문에, 직접 코드를 작성하는 데 어려움을 겪더라도 코드를 검토하는 건 아주 잘할 수 있죠.
**슬로카콜립스.** 2026년은 깃허브, 서브스택, arXiv, X/인스타그램, 그리고 전반적인 모든 디지털 미디어 전반에 걸쳐 슬로파콜립스의 해가 될 것 같습니다. 실제적인 개선보다는 AI를 이용한 생산성 과장 광고(과연 이게 가능할까요?)가 훨씬 더 많아질 것 같네요.
**질문** 몇 가지 궁금한 점은 다음과 같습니다.
- 평균 엔지니어와 최고 생산성 엔지니어의 비율인 "10배 생산성 엔지니어"는 어떻게 될까요? 이 비율이 크게 증가할 가능성이 높습니다.
- LLM(Learning Leadership Model)을 활용하면 제너럴리스트가 스페셜리스트를 점점 더 능가하게 될까요? LLM은 거시적인 전략보다는 미시적인 문제 해결에 훨씬 더 능숙하니까요.
- 미래의 LLM 코딩은 어떤 느낌일까요? 스타크래프트, 팩토리오, 음악 연주와 비슷할까요?
- 디지털 지식 노동으로 인해 사회 전체가 얼마나 병목 현상을 겪고 있을까요?
**요약** 이 모든 상황에서 우리는 어떻게 해야 할까요? LLM 에이전트 기능(특히 Claude와 Codex)은 2025년 12월경에 일정 수준의 일관성을 확보하며 소프트웨어 엔지니어링 및 관련 분야에 큰 변화를 가져왔습니다. 지능형 기능은 통합(도구, 지식), 새로운 조직 워크플로 및 프로세스, 전반적인 확산 등 다른 모든 분야보다 훨씬 앞서 나가는 것처럼 느껴집니다. 2026년은 업계가 이러한 새로운 기능을 적극적으로 도입하는 매우 역동적인 한 해가 될 것입니다.