Foyle: You build it, AI should run it(future.mozilla.org) |
Foyle: You build it, AI should run it(future.mozilla.org) |
In my experience, no developers don't know what they need to do. They have an app that does stuff on their laptop. Between that and production they often have no clue.
Infra is plumbing, and plumbing is contextual details. These details are the very specific things that an LLM doesn't have access to.
The fact that there is a Palo firewall between two subnets means deploying your app isn't a kubectl away. The fact that DNS goes through another team means routing myapp.mycompany.com requires a jira ticket. Heck the fact that you use istio means ingress works completely differently.
How does foyle address these kinds of issues?
> ...
> As developers today, we often know what we need to do but struggle with the how; [deplyment commands, permissioning commands] ... Foyle solves this problem by turning your intent into executable commands.
Honestly, this seems like the wrong solution to badly designed UIs. Either foundational UIs should be improved so people can actually use them, or a restricted but easier-to-use UI designed with a straightforward translation layer onto the foundational ones. "I don't know what I'm doing, so I'll use an LLM to give me commands I lack the competence to review," seems like a massive footgun.
There are some good ideas like here, like "Self-Documenting Operations: By capturing the intent (in markdown) and the actions (in code cells), Foyle creates comprehensive, executable documentation of your infrastructure operations," but they seem more like good commenting practice rather than what this is.
>Foyle relies on VSCode and RunMe.dev to provide the frontend.
Well that’s a lot to take in, especially from a Mozilla project.
Especially when tools like git, ffmpeg, podman etc. each require separate degree in writing correct command line invocations?
Because a free product someone else built with good intentions should work as well and easily as a product built by a multi-billion tech company, which steals your data and privacy in the background. Duh.
If a scenario is new, the sysadmins should handle that by changing the scripts or hide it in the CI. Again: approved and reviewed.
And if it hasn’t been approved AND you don’t know what you’re doing, you shouldn’t experiment on the infrastructure of the company and let professionals do their job. I don’t see the added value of Foyle here.
Also:
> As developers today, we often know what we need to do but struggle with the how
It’s false. I struggle with what I need to do, and that’s why I talk to product owners, bosses, architects, and employees. Once everything has been clearly defined, the solution is easier to implement. Engineering is about understanding what needs to be done and that’s the hard part.
I think Foyle is complementary. Creating a script/tool/higher level abstraction is valuable when you do the same exact task over and over. This is creating a so called "paved path". However, paved paths often limit flexibility. To optimize flexibility we often divide a task into composable tool chains. Foyle can help you compose these chains. So it can help you in instances where it doesn't make sense to create a bespoke tool because it wouldn't be used frequently enough.
(I'm the creator of Foyle)