Me solving 2025’s last Advent of Code puzzle
“We adopted #rustlang for its security and are seeing a 1000x reduction in memory safety vulnerability density ... with Rust changes having a 4x lower rollback rate and spending 25% less time in code review, the safer path is now also the faster one.”
security.googleblog.com/2025/11/rust...
Do you have a screenshot you can share? I only have "secret" stuff that I can't share.
If the tooltip is over a certain length, it could instead start to pretty print it and format it over multiple lines, with indentation and line breaks (like real code getting formatted).
That would be so good for readability! Am I missing a setting somewhere that does this?
So in Java, sometimes you can have pretty long/deeply nested type signatures (yes, I'm doing something complicated :P).
In @intellijidea.com, when you look at the types using Cmd+hover, why does the tooltip show everything on one super long line? Same question for Cmd+P to show arguments.
Not sure about the annotation, but Javadoc apparently can’t be there, it has to be in a @param on the record itself.
A tool I helped create a few years ago. It was pretty straightforward to write (~one week with a few devs) but apparently it’s really useful for certain types of research!
A great collaboration between @atlassian.bsky.social and @victorchang.edu.au.
I had to implement this at work.. Thanks JavaScript/JSON/Java/UTF-16 :/
`jj undo`, I love you.
(jj is a git-compatible git alternative. You should try it.)
What I like about fooToBar is that it lines up with the types and e.g. put(foo, bar) (and in general how a map is a foo -> bar).
What I like about bar(s)ByFoo is that it puts the more important thing first. And sometimes the "ByFoo" doesn't need to be explicit if it's clear enough without it.
For a field with type Map<Foo, Bar>, do you prefer naming it fooToBar, or barsByFoo? (Assuming that e.g. just bars is not clear enough.)
This was a really interesting episode about databases but also UX trade offs. (No prior knowledge of DB internals required.)
It me
Was the first time using the new Maven Central Publisher Portal, which is the replacement for OSSRH. Followed this guide: central.sonatype.org/publish/publ...
... and it worked on the first try! Seems better than the old system, kudos to the team!
Released a new version of commonmark-java 🎉: github.com/commonmark/c...
@gork.bluesky.bot is this true?
One of my favorite little tricks to copy some git changes to another checkout is `git diff | pbcopy` in the source followed by `pbpaste | git apply` in the destination.
It doesn’t prevent anyone from handing in a blank vote (i.e. an “informal vote”). But yeah, compared to Switzerland, Australia has much less frequent voting, so maybe that helps.
I like that Australia has mandatory voting -> ~90% turnout: www.aec.gov.au/Elections/fe...
It was a great tool the few times I’ve used it, thanks!
Recently I’ve discovered @duckdb.org for this. While not a direct replacement, it allows processing CSV using SQL, e.g. see
Would be great to have it formalized, yeah! Excited for jj and other tools :)
I see, so it’s more like “it happens to work” than being explicitly supported at this point.
Oh, I didn’t know git allowed custom headers in commit objects, when did that happen?
New blog post up on the Rust font loader now shipping in Chrome. I only had a small part in this personally but am proud of the team's work. developer.chrome.com/blog/memory-...
Like:
- Conflicts can be resolved later, nice markers (with diff)
- Stable change IDs (and surprisingly short, no need to copy paste)
- jj new (with e.g. --after). Very convenient to work on stacked things in general
- rebase without having to check out
- push doesn’t need force
- log nice and short
I’m using it in one out of three of my checkouts (of the same repo).
Most of the initial issues I had have been solved (e.g. pushing and pulling works). Some that remain:
- LFS files need a workaround (just initially, not actively working with them)
- No indication of branch/status in IntelliJ
Used `jj absorb` recently and it’s so good!
I had some work that was already in PR, and some work on top for later PRs. I needed to address some feedback for the PR. So just made the changes on top, then absorb -> changes are automatically put into the right commits.
Contention
I used github.com/BurntSushi/xsv for this before which is great, but having the full power and familiarity of SQL is super useful!
Terminal command: duckdb -csv -c 'select * from "documents.csv" natural join "users.csv"' > joined.csv
Used duckdb.org for the first time today. Just to do an inner join of two CSV files, but I'll try it again next time for some ad-hoc data processing.
This is a single command, but it also has an interactive mode with syntax highlighting and completion: