19 karma · joined March 31, 2023
And thinking out loud, they could be really horrible and embed by using unicode characters instead of ascii, which would give a lot of flexibility, but would make the result almost unusable (but easy to defeat).
I've also been building a harness that maintains my apps which I'm hoping to open source.
Hard agree that these things don't have personal ROI, and are actually quite hard to build reliably.
But it's really fun! And having a bot fix a live error is pretty exciting.
I've not had any problems with auto-mode so far.
But overall, it's quite a task, and you really have to decide what you are prioritizing for. Do I want my agents doing lots of work, or (in my case), leaving some of my subscriptions available for me to do work.
And the other side is: where does the agent run
And the third side ;-): security.
Well done on this bit. I like the smooth onboarding.
And later:
"There are very strict guidelines on LLM-generated code changes:
Pre-arranged, non-critical, high-quality, well-tested, and well-reviewed code changes that are originally created by an LLM are allowed, with disclosure."
That's a pretty limited wedge of allowed cases in my opinion.
The future: SWEs will no longer write code by hand. The era of hand coding is over. We only saw that for sure in the last 6 - 9 months. But it's over.
Many coders have not yet made this transition, true, but it's happening regardless. You may not like it, but as a coder, you will not be hired if you refuse these tools. You will look as ridiculous as an accountant that refuses to use spreadsheets.
For now, we're not there yet.
As a profession, we are learning how to deal with the massive influx of review work that occurs because of LLMs. The bottleneck has moved. And as of now, there aren't good answers. But there will be. We will figure it out, like we figured out CI/CD and agile.
So personally, I'd focus my policies much more on dealing with the issues that this new era presents, and how to make LLM contributions work, and I'd avoid banning LLMs.
It feels like the big thing they are touting here is the shared company brain. Not clear to me though, how that brain is developed when each person has their own harness. (I did only skim the docs.)
And it still has the issue of: if the agent is acting as me, then security wise it can do anything I can do. Maybe that's why they are recommending for startups.
But yes, comparison would be helpful.
That self-hosting bit is definitely something I'm interested in, but it still seems very fiddly (in general).
I've had good results just plugging in models into Claude Code, however (though not self-hosted).
As some have said, easy enough to build yourself, but I think it' nice not to have to test it and make sure it works.
I've done a bunch of optimizing of the agent since then, like not running in peak times and throttling. But without controls and optimization, the agent will chew through all the tokens you can throw at it.
Put another way: people who say they have agents coding 24/7 are on higher budgets than me.
1. human code reviews are dead. We don't yet know what's next. Two reasons they are dead: too much code to review, and code reviewing sucks (who wants to spend their days reviewing code?) 2. Not knowing how to review LLM code is a big barrier to adoption, but bigger regression test suites (testability/evals) is almost certainly the direction. 3. There are a lot of projects that haven't moved to more modern infra because it was too hard. Now it's much easier. Sure stuff will go wrong. Sure it all has to be tested. What's new here? 4. Programming languages for LLMs are coming. 5. Projects that don't allow AI coding will be forced to come around or fade.
Separately, bit off topic:
New projects will often have LLMs built in, so non-determinism will be inherent in the project. No amount of code review will be able to eliminate that.
I've wondered if it would be possible for there to be two input streams: 1, for prompt, 2 for untrusted data. But I suspect that transformers would still only optionally decide what each one was for. So it would still be a prompt level suggestion, rather than a hard and fast rule.
I've written a small tool to query Github to see if a particular feature has been released for an open source project. I had to use an API token to not get immediately blocked. But I don't think rate limits are new for Github.
OK, here's a few (with a MacOS slant): - compilers (gcc, clang, and their many versions) - libc (and friends) compatibility (I can't say I even ever delved into this one, but it's bit me) - package manager (macports, homebrew) - building for backward compatibility; what's the earliest MacOS version to support (the package managers either like to build for the OS they are running on, or force you -- yes I'm looking at you homebrew) - dependency and dependency version management (love you pkgconfig) - build system for each package (cmake, autotools, meson, ...) - bundling everything into an application - turning that application into a Mac application - code signing and notarization - creating the DMG - debug symbols - crash detection and notification Like right now, libheif on 26 can't be built for 11 and it's not clear why (or maybe they just fixed it...but it's been weeks)