You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: ace-fca.md
+12-12Lines changed: 12 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -98,23 +98,23 @@ I'll dive into:
98
98
99
99
Most of us start by using a coding agent like a chatbot. You talk (or [drunkenly shout](https://ghuntley.com/six-month-recap/#:~:text=Last%20week%2C%20over%20Zoom%20margaritas%2C%20a%20friend%20and%20I%20reminisced%20about%20COBOL.)) back and forth with it, vibing your way through a problem until you either run out of context, give up, or the agent starts apologizing.
100
100
101
-
<imgwidth="1328"height="741"alt="Screenshot 2025-08-29 at 11 08 34 AM"src="https://github.com/user-attachments/assets/51a46854-c542-4515-afbb-a2fe26970809" />
A slightly smarter way is to just start over when you get off track, discarding your session and starting a new one, perhaps with a little more steering in the prompt.
104
105
105
106
> [original prompt], but make sure you use XYZ approach, because ABC approach won't work
106
107
107
-
108
-
<imgwidth="1331"height="744"alt="Screenshot 2025-08-29 at 11 08 55 AM"src="https://github.com/user-attachments/assets/c96f9b42-0801-428a-b366-af871d1f97af" />
You have probably done something I've come to call "intentional compaction". Whether you're on track or not, as your context starts to fill up, you probably want to pause your work and start over with a fresh context window. To do this, you might use a prompt like
114
113
115
114
> "Write everything we did so far to progress.md, ensure to note the end goal, the approach we're taking, the steps we've done so far, and the current failure we're working on"
116
115
117
-
<imgwidth="1326"height="736"alt="Screenshot 2025-08-29 at 11 09 29 AM"src="https://github.com/user-attachments/assets/db22fe14-1010-47f4-9080-b132e4851f8c" />
### What works even better: Frequent Intentional Compaction
@@ -305,7 +305,7 @@ There's a certain type of person who is always looking for the one magic prompt
305
305
306
306
Frequent Intentional Compaction via a research/plan/implement flow will make your performance **better**, but what makes it **good enough for hard problems** is that you build high-leverage human review into your pipeline.
307
307
308
-
<imgwidth="1331"height="748"alt="Screenshot 2025-08-29 at 11 16 08 AM"src="https://github.com/user-attachments/assets/f12a10e2-7ffe-44c5-9d9a-b6e42ff5251e" />
@@ -321,11 +321,11 @@ A bad line of code is… a bad line of code.
321
321
But a bad line of a **plan** could lead to hundreds of bad lines of code.
322
322
And a bad line of **research**, a misunderstanding of how the codebase works or where certain functionality is located, could land you with thousands of bad lines of code.
323
323
324
-
<imgwidth="1333"height="746"alt="Screenshot 2025-08-29 at 11 17 00 AM"src="https://github.com/user-attachments/assets/54a09c99-b177-41b2-a43d-04d6b94bc56e" />
When you review the research and the plans, you get more leverage than you do when you review the code. (By the way, one of our primary focuses @ [humanlayer](https://hlyr.dev/code) is helping teams build and leverage high-quality workflow prompts and crafting great collaboration workflows for ai-generated code and specs).
@@ -336,7 +336,7 @@ People have a lot of different opinions on what code review is for.
336
336
337
337
I prefer [Blake Smith's framing in Code Review Essentials for Software Teams](https://blakesmith.me/2015/02/09/code-review-essentials-for-software-teams.html), where he says the most important part of code review is mental alignment - keeping members of the team on the page as to how the code is changing and why.
Remember those 2k line golang PRs? I cared about them being correct and well designed, but the biggest source of internal unrest and frustration on the team was the lack of mental alignment. **I was starting to lose touch with what our product was and how it worked.**
0 commit comments