Gary Bernhardt

2.7K posts

Gary Bernhardt

Gary Bernhardt

@garybernhardt

Execute Program (learn programming tools quickly); Destroy All Software (dense programming screencasts); formerly Deconstruct conference.

Seattle, WA Katılım Mart 2007
114 Takip Edilen46.1K Takipçiler
Sabitlenmiş Tweet
Gary Bernhardt
Gary Bernhardt@garybernhardt·
evergreen controversial opinion: it is good to care about the quality of your work
English
20
50
575
26.8K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
Programming was always plagued with "This practice seems like it should work, therefore I believe that it does work. Why would anyone question it?" Agents are that again, but moving so fast that no one has a chance to build experience to check against, let alone collect data.
English
2
2
49
2.4K
Gary Bernhardt retweetledi
Mitchell Hashimoto
Mitchell Hashimoto@mitchellh·
Mind boggling to me that I can make a thing faster and there's always people that ask "but why?" What kind of mentality is that? The pursuit of excellence does not need justification. Also, I find in so many cases, we can't know the impact of an improvement until we do it. For example, one I've talked about before: Ghostty's high IO throughput has enabled terminal program (emulator and TUI) fuzzing at a speed thats incomparably fast to prior solutions. This has resulted in upstream patches to resolve issues in popular projects like btop, tmux, and more. Speed enabled that anecdotally example that lifted the tides of adjacent communities that don't rely on Ghostty technology at all. I didn't predict this. Make things better because they can be better and let the results naturally play out.
English
169
450
5.7K
395K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
Imagine spending 10,000 hours of your life tediously designing a programming language to bend to the exact type of human mind that, itself, would willfully, excitedly bend to the machine. 2040 could never.
English
0
0
48
2.8K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
It feels like this moment (mid-2026, specifically June 30 2026 at 10:12 PM Pacific) will be a dividing line. Before this, humans deeply learned the machines; the most successful of us learned to think like them. After this, the machines will (sycophantically) bend to the humans.
English
3
1
32
3.1K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
I have complex feelings about Ruby and Rails. But I respect that both of them started from "We are HUMANS, with MINDS that have SPECIFIC SHAPES!" I fear we'll never see programming tools with that level of humanity again. They're organic, but still uncompromisingly software.
English
4
7
222
14.8K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
A type & test that GPT 5.5 added, without further comment: export type Root = { url: string; }; it("exports only shared docs domain types", () => { expectTypeOf<Root>().toEqualTypeOf<{ url: string; }>(); [other useless assertions here] })
English
16
3
104
24K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
"For you" shows me huge amounts of engagement farming AI slop videos. I've "not interested" several hundred of them. No change. Is there a way to make this nonsense stop?
English
18
0
40
4.4K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@jarredsumner The grip head holding your boom arm is backwards. That shotgun mic gonna boop your melon when it loosens.
English
0
0
7
1.3K
Jarred Sumner
Jarred Sumner@jarredsumner·
Bun v1.4 ships July 7th
Jarred Sumner tweet media
English
64
17
1.2K
74.4K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
doing things because you find them enjoyable: skill issue
English
0
5
75
2.4K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
"Why would you want to read and write code?" because I like programming the computer, that's why I do it
English
22
72
920
28.5K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@mikker It does this at all reasoning effort levels, and I think it's worse at lower reasoning. Last time, someone told me it was happening because I was using medium, and I should just use xhigh.
English
1
0
2
113
Mikkel Malmberg
Mikkel Malmberg@mikker·
@garybernhardt 5.5 is pretty dumb on xhigh, ironically enough. They're so tuned for development and tool use now, that low or mid is both faster and better. Feels to me like if you force it to think for too long, it will just eventually come up with bad plans to fill out the window.
English
1
0
2
413
Gary Bernhardt
Gary Bernhardt@garybernhardt·
Common refrain: "you're prompting it wrong". Here's something that GPT 5.5 xhigh just planned. It wants to special case "mail links" and "JavaScript links", but the first bullet excludes those. It planned the useless guard anyway. You can't prompt these logical errors away.
Gary Bernhardt tweet media
English
5
3
99
12.9K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@moljac024 I think that would take more time than just pipelining the changes in one session.
English
0
0
0
53
Bojan Matic
Bojan Matic@moljac024·
@garybernhardt Why not ask every agent to write out a plan to an .md file, then ask an agent to combine all .md files into one and there you go
English
1
0
0
58
Gary Bernhardt
Gary Bernhardt@garybernhardt·
I ask an agent to plan something, and as I go through it there are several things I want to clarify. Doing that serially is annoying, because either I wait (slow) or they're interleaved (confusing). I'd rather branch the conversation, then merge later. Do any agents do that?
English
23
1
76
16K
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@_ChrisCovington @dexhorthy Low for planning? Most of what I value there is finding the subtle stuff I missed, which is much more an xhigh thing vs low.
English
1
0
1
46
Chris Covington
Chris Covington@_ChrisCovington·
@dexhorthy @garybernhardt Low is really underrated. xhigh has its place, but low is a real hack. problem is, composer is a better version of low, especially in grok-build
English
1
0
1
68
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@VanTanev @willtcarey I generally do the same. In situations like this I like to explore, but normally I give the kind of direct imperative commands that I'd never give a human because it would be rude.
English
0
0
2
144
Ivan Tanev
Ivan Tanev@VanTanev·
@garybernhardt @willtcarey When it gets something wrong, I try to stay away from guiding it like a person. Instead, I say what's to be done in imperative voice. A guide is necessary to persuade a human, and what we reach for because it mimics a human conversion, but is wasted on a machine.
English
1
0
1
140
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@willtcarey That's basically what happened. It insisted that it was useful for two turns. Then I said something like "If we're already verifying against an HTTP root, and the mailto etc. links don't have HTTP protocol, then that excludes them right?" and suddenly it agreed.
English
1
0
7
865
William Carey
William Carey@willtcarey·
@garybernhardt You will then point this out and it will gaslight you with “defense in depth” or “belt and suspenders”. It’s tiresome
English
1
0
22
924
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@sat_farmer @yevhen I could do it manually like this, but the overhead would probably take as much time as the actual work.
English
1
0
0
63
Sat Farmer
Sat Farmer@sat_farmer·
@garybernhardt @yevhen you interact with them and have them write to their own folders, then open a new agent for the merge from the subdirectories
English
1
0
0
69
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@yevhen Can I fork five of them, interact with all five concurrently, then merge them all back together, without leaving my terminal or copy/pasting? If so, how does that UI work?
English
1
0
0
289
Yevhen Bobrov
Yevhen Bobrov@yevhen·
@garybernhardt pi has tree feature. You can branch then return back with summarization. One more pattern I use is Blackboard: you can do it with any of CC, Codex, Pi. Just fork conversation any time and then ask agent to extend the shared document. Go back anytime, ask to re-read, fork, repeat
English
1
0
1
347
Gary Bernhardt
Gary Bernhardt@garybernhardt·
@hakunin Oh right, I've come across that before. I'll try it, thanks.
English
0
0
0
387
Max Chernyak
Max Chernyak@hakunin·
@garybernhardt So plannotator opens your plan in a browser, there you can comment and chat about any piece of it inside the browser. Like GitHub PR comments but also can chat inline in multiple places. Then approve/send feedback. May not be 100% but take a look.
English
1
0
5
414