Ben Segall @bentekkie.com · 21/05/2025In the example on the repo I have gemini generate a terminal snake game and have bazel treat the output as a python binary. This can have no negative security implications /s 000
Ben Segall @bentekkie.com · 21/05/2025Making Bazel non-deterministic again In the spirit of the Gemini era, we find ourselves in I have made the perfect Bazel ruleset to take advantage of this in our builds. rules_gemini allows you to prompt gemini as a step in your build. See github.com/bentekkie/ru.... Use at your own risk!github.comGitHub - bentekkie/rules_geminiContribute to bentekkie/rules_gemini development by creating an account on GitHub. 100
Ben Segall @bentekkie.com · 14/01/2025Similar to the recommendations around generated code, you probably need to check in the compiled libraries :( 100
Ben Segall @bentekkie.com · 14/01/2025As an example look at how bazel compiles go. Instead of using `go build` for a full project it compiles each package separately into `.a` files and calls the internal go linker directly. This allows for much better cache hit rates than if the native tooling was used. 000
Ben Segall @bentekkie.com · 14/01/2025But at the end of the day a build system that has the most complete information about the build will perform better. 100
Ben Segall @bentekkie.com · 14/01/2025I think ninja and cmake fill that gap. You can add a caching layer like ccache, or (shameless self plug) github.com/bazelbuild/r....github.comGitHub - bazelbuild/reclientContribute to bazelbuild/reclient development by creating an account on GitHub. 100
Ben Segall @bentekkie.com · 13/01/2025If you are linking against the c code using cgo then you usually can have the go compiler compile the code with gcc, in that way it should work with go get I think pkg.go.dev/cmd/cgopkg.go.devcgo command - cmd/cgo - Go Packages 100
Ben Segall @bentekkie.com · 13/01/2025We implicitly trust code written by us more than others and it's hard to separate real criticism of third party code from ego based criticism 000
Ben Segall @bentekkie.com · 13/01/2025Comparing the engineering effort of reimplementing correctly is hard to compare against the burden of reviewing third party code is hard 100
Ben Segall @bentekkie.com · 13/01/2025The "not built here" bias is real and hard to correct for IMO. I am running into it right now at work and just wanted to expand on a few of the reasons I think it is such a hard bias to correct for. I don't have solutions, only observations. Any suggestions are welcome. #swe #softwaredev #coding 100
Ben Segall @bentekkie.com · 13/01/2025I hit this the most when trying to add a `type` field to a struct 100
Ben Segall @bentekkie.com · 13/01/2025The only way I have ever got that to work was to use a fully fledged build system like ninja or Bazel 100
Ben Segall @bentekkie.com · 10/01/2025Right my question is why can't: seeker(func(data P) bool { return yield(data) }) Just be: seeker(yield) 100
Ben Segall @bentekkie.com · 10/01/2025Why can't yield be passed directly to the `seeker(...)` calls instead of wrapping in another function? 100
Ben Segall @bentekkie.com · 10/01/2025This is a reminder that the only difference between security software and a virus is that you install it on purpose 😂 110
Ben Segall @bentekkie.com · 10/01/2025Today's coding frustration: The AI code review comment gas lit me into thinking I missed copying one of my struct fields. Turns out the field did not exist and it just made it up. #coding #ai 000
Ben Segall @bentekkie.com · 10/01/2025I will probably use this as a place to shout my coding frustrations into the void 010