4,359 karma · joined December 1, 2011
I have the logo tattooed on myself (along with Babylon 5). First played it around 16 pre-spoiler-filled internet and was blown away by my friend and I having completely different outcomes to pivotal moments of the game related to Paul Denton (no spoilers: if you know, you know).
Never worked in games (bar a bit of voice acting in The Nameless Mod for Deus Ex) but I think were it not for that era of gaming I’d never have ended up working on Homebrew or at GitHub.
Sadly the graphics have not aged well but if you can handle them: the writing and non-linear/branching plot and dialogue is still probably second to none.
We also offer a .pkg installer and other installation options so curl | bash not needed for install that either.
`brew install agentide minmaxcal` if you want to try either out.
Happy to answer any questions here!
That said, yes we have already moved away from our DSL being Turing Complete. This release drops for official taps the ability for packages to run arbitrary postinstall/uninstall/etc. Ruby in favour of DSLs and our JSON API.
This will likely get extended over time to eventually allow package definitions to themselves be in JSON.
Homebrew has never been better performant, secure, tested, linted and typed. I understand the LLM dubiousness (I used to share it myself) but we’re the type of project where it’s very easy to get agents to do sensible end-to-end testing and review a nice language (Ruby). Just us on our outputs, not just our inputs.
One of our former maintainers was in high school when working on Homebrew. I’m sure many people would have found that worrying. His code was great, though (I reviewed most of it) and he made the project better. Same ultimately with LLMs. Your mileage may vary.
I used to do these all by hand and they took me multiple hours. I still probably spent over an hour, including a bunch of time on a family holiday today. Comments like this make me wonder why I bother sometimes.
Supporting macOS Intel has been significantly harder, slower and more expensive for us the last few years than adding ARM Linux support. If it was easy and free we’d have kept it for longer (until Apple and GitHub killed theirs at least which is coming in less than a year).
We hope to allow all prefixes under 64 bytes in future.
Were using Bubblewrap on Linux and moved to Landlock this release.
P.S. HUGE fan of your blog and writing Simon, keep up the great work. It’s the #1 resource I recommend to anyone in the industry wanting to learn more about LLMs (and pelicans).
https://github.com/MikeMcQuaid/AgentIDE
I actually wrote my own “Agent IDE” to make this prompt/review/push flow easier.
Our model is very different to those where cooldowns exist and make sense. As-is if would just delay security updates too.
From the release notes:
> The Intel support decision reflects the limits of a volunteer-run project: Apple have dropped Intel x86_64 support from macOS 27 Golden Gate and GitHub Actions will retire Intel macOS runners in autumn 2027. If Apple and Microsoft’s GitHub, two of the world’s largest technology companies, cannot continue supporting macOS Intel x86_64, sadly neither can Homebrew. MacPorts still supports macOS Intel x86_64 and is likely to provide better results on this platform.
The lessons learned were instead used to make the Ruby frontend much faster.
We take supply chain security very seriously, moreso than many package managers.
The weird flip side is that the average good AI contribution is better than the average “I used no AI” contribution. Perhaps it’s because Homebrew has so many declarative guardrails and is so easy for agents to test.
This had pros and cons:
- it was nice to have a bit more of a gradual build
- this would probably avoid some of the issues here
- if you are lazy like me: you do bare minimum effort first and second year and then get crushed by both workload and lack of foundational knowledge in third year
- if you apply to a US company, some will want to see your “full transcript” and don’t accept “I was too busy playing CS (Counterstrike) to study CS (Computer Science)”
It's nice to think about how your work affects others!
It's important, though, to "put on your own oxygen mask first" :)
Alternatively, to go people-first: attend meetups or conferences related to a project or technology you’re interested in.
Thoughts?
The biggest mistake most sources make when teaching about history rewriting is omitting these two lessons first:
- it’s easy to lose uncommitted data in Git and hard to lose committed data
- given this, learn how to use ‘git reflog’ to see what you’ve done and how to undo/redo it (as this post recommends but, even then, a little too late)
If you just get in the habit of constant committing and checking reflog: you’ll never lose data.
(Related lesson from my 10 years employed by GitHub: they almost never do the git gc you’d expect to remove commits so once you push a commit: it’s likely there forever and identifiable by that same hash from anywhere in the fork network. This can be bad/scary so be aware).