Jean Boussier

Jean Boussier

@byroot.bsky.social

Rails core, Ruby committer, Senior Principal Engineer at Intercom.

1.8K followers177 following491 posts

Jean Boussier reposted

Welp... Got laid off from Podia today. Kinda a lot to process for a Thursday. I'll have something more coherent to say eventually. For now, send Ruby/Rails leads. Or dog pictures.... Both are good.

I realized it has been ~1.5 years since I concluded my series of post on JSON optimization. So I got curious how much faster it became since then. 2.7.2 was the last version before I took over maintainership. 2.9.0 was the version I released at the end of the blog series.

Not sure if something changed recently, but I've received a stream of much higher quality security reports in the last few days, but there' still something off with them. I suspect they're AI assisted, but can't be certain. Unlike before, they're easy to read, concise, well explained etc. 1/3

However it's clear the authors or tools still don't understand the context of the code, they're just searching for patterns. Typically I got reports of overflows and other not properly sanitized inputs in APIs that should never receive untrusted input. 2/3

e.g. it's like getting a security vulnerability report for a buffer overflow in `eval`. Yes it's a bug and it will be fixed, but if an attacker is able to call `eval` with arbitrary input, that overflow doesn't really matter... 3/3

Jean Boussier reposted

Jean Boussier reposted

Something I'm not yet clear on how to handle these days is what to do with obvious LLM PRs on Open Source projects. When a human submit a PR that needs some work, often enough I'll go through rounds of review to progressively get the PR in a mergeable state.

View full thread

But nowadays I get some PRs that are clearly LLM generated, even the feedback I give is clearly directly pasted in the LLM and then sent back to me. It's basically LLM coding by proxy, which begs the question of what to do?

So far I think reviewing these normally is a waste of my time, if the person on the other end isn't gonna learn anything, why bother? I might as well do it myself. No? But then what about attribution? Does the LLM wrangler deserve any credit on the final patch? I'm a bit lost...

Something I'm not yet clear on how to handle these days is what to do with obvious LLM PRs on Open Source projects. When a human submit a PR that needs some work, often enough I'll go through rounds of review to progressively get the PR in a mergeable state.

I'm not even sure why I do that, I guess it's a teaching opportunity? Sometimes it just needs a quick touch up, and I do it myself, as it's not worth the back and forth.

Looks like I can procrastinate some more, I found a way to debug it without rr: github.com/ruby/json/pu...

github.comEnsure `Generator::State` is kept on the stack by byroot · Pull Request #930 · ruby/jsonFix: #929 I don't know how it's possible, but somehow the self reference is optimized out of the stack. Perhaps because we inline so aggressively that the compiler end up spilling it on the...
Jean Boussier@byroot.bsky.social

I need to stop procrastinating and buy myself a proper development machine that run on Linux, and learn how to use the rr debugger. I keep running into issues that would be way easier to debug that way...

I need to stop procrastinating and buy myself a proper development machine that run on Linux, and learn how to use the rr debugger. I keep running into issues that would be way easier to debug that way...