
poteto@poteto
계속 신경 쓰이는 건, slop을 자기에게 일어나는 일처럼 보는 사람들이 있다는 거예요. 마치 아무것도 할 수 없는 무력한 방관자처럼 잠깐만요, 당신 소프트웨어 엔지니어잖아요. 모래한테 생각하게 만들고 컴퓨터를 부리는 법을 literally 배운 사람이?! 그런데 지금은 아무것도 못 한다고요? 제발 이 소음들을 뚫으려면 알아야 할 건 두 가지예요: 1. agent가 자기 작업을 검증할 방법을 줘야 해요 (방금 올려서 반복은 안 할게요) 2. 당신의 코드베이스가 곧 기억이에요 두 번째도 새삼스러운 얘기는 아니죠. 더 나은 코드를 쓰도록 lint 규칙, 진단이 좋은 컴파일러와 강한 타입 시스템, LSP 같은 건 항상 있었으니까요. 코드를 agent가 쓰든 다를 게 없어요, 그냥 더 많이, 더 강하게 필요할 뿐. rules랑 skills는 잊어버리세요. 그건 나중에 붙이면 돼요. 맞아요, 당신의 코드베이스는 agent에게 일종의 기억이에요! agent는 이미 있는 걸 확장하는 걸 정말 좋아하거든요. 그래서 당신이 본 자잘한 불편함, agent에게서 본 모든 실수와 나쁜 패턴이 제약이 되어야 해요. 안 그러면 agent는 바이러스처럼 같은 실수를 코드에서 계속 반복할 거예요. 그러고 나서 계속 관찰하고 이 과정을 반복해서, 컨텍스트가 적은 agent도 한 번에 고품질 PR을 낼 수 있을 만큼 코드베이스를 단단히 잠그는 거죠. 더 나은 방향은 agent의 안티패턴이 범주적으로 불가능해지도록 코드를 리팩터링/다시 쓰는 거예요. 타입 시스템을 활용하고, 아키텍처 탐색 공간을 줄여주는 라이브러리/프레임워크를 쓰고, 아니면 우리가 grok bot에서 했던 것처럼 직접 프레임워크를 만들어서 고품질 프리미티브와 잘 설계된 API를 만드는 거죠
something that keeps bothering me is how some people see slop as something that is happening to them, like they're some kind of helpless bystander powerless to do anything about it
excuse me but you are a software engineer, you literally learned how to make sand think and make computers do your bidding?! and now you can't do anything about it? please
the 2 things you should know to cut through all the noise:
1. you need to give your agent a way to verify its own work (i just posted about this so won't rehash)
2. your codebase is memory
the 2nd is not new either, we have always had lint rules, compilers with good diagnostics and strong type systems, LSPs, etc to help us write better code. there is no difference when agents write the code instead, you just need more of them, and stronger ones.
forget rules and skills. you can add those later.
yes, your codebase is a form of memory to agents! agents love extending what already exists. so every nit and every annoyance you've ever seen, every mistake and bad pattern you observe from agents, needs to turn into a constraint, or the agents will just keep repeating those same mistakes like a virus in your code. then you keep observing and repeating this process until your codebase is locked down enough that even agents with little context can one shot a high quality PR.
an even better direction is to refactor/rewrite your code such that agent anti-patterns become categorically impossible. use type systems to your advantage, use libraries/frameworks that reduce the architectural search space, or heck, create your own framework like we did for grok bot and design high quality primitives and well thought out APIs