Sign in

Robin Stocker

@nibor.org
141 followers 149 following 63 posts

Backend Dev @ Canva – ex Atlassian (Bitbucket); Java, Rust, open source, Swiss living in Australia github.com/robinst

PostsRepliesMedia
Robin Stocker @nibor.org · 24/05/2026
:itshappening:
030 0
Robin Stocker @nibor.org · 12/12/2025
Me solving 2025’s last Advent of Code puzzle
media.tenor.com
a man in a white shirt and tie with his mouth open
ALT: a man in a white shirt and tie with his mouth open
010 0
Reposted by Robin Stocker
Steve Klabnik @steveklabnik.com · 13/11/2025
“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...
security.googleblog.com
Rust in Android: move fast and fix things
Posted by Jeff Vander Stoep, Android Last year, we wrote about why a memory safety strategy that focuses on vulnerability prevention in ...
332290 0
Robin Stocker @nibor.org · 17/10/2025
Do you have a screenshot you can share? I only have "secret" stuff that I can't share.
100 0
Robin Stocker @nibor.org · 17/10/2025
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?
110 0
Robin Stocker @nibor.org · 17/10/2025
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.
100 0
Robin Stocker @nibor.org · 30/09/2025
Not sure about the annotation, but Javadoc apparently can’t be there, it has to be in a @param on the record itself.
100 0
Robin Stocker @nibor.org · 26/09/2025
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.
051 0
Robin Stocker @nibor.org · 20/09/2025
I had to implement this at work.. Thanks JavaScript/JSON/Java/UTF-16 :/
020 0
Robin Stocker @nibor.org · 21/08/2025
`jj undo`, I love you. (jj is a git-compatible git alternative. You should try it.)
020 0
Robin Stocker @nibor.org · 05/08/2025
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.
020 0
Robin Stocker @nibor.org · 05/08/2025
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.)
100 0
Robin Stocker @nibor.org · 22/07/2025
This was a really interesting episode about databases but also UX trade offs. (No prior knowledge of DB internals required.)
open.spotify.com
Implementing Hardware-Friendly Databases (with DuckDB co-creator, Hannes Mühleisen)
Developer Voices · Episode
010 0
Robin Stocker @nibor.org · 22/07/2025
It me
030 0
Robin Stocker @nibor.org · 20/06/2025
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!
central.sonatype.org
Maven
000 0
Robin Stocker @nibor.org · 20/06/2025
Released a new version of commonmark-java 🎉: github.com/commonmark/c...
github.com
Release commonmark-java 0.25.0 · commonmark/commonmark-java
Added Include OSGi metadata in jars (META-INF/MANIFEST.MF files) (#378) More documentation with examples for Node classes (#370) Changed GitHub tables: Tables are now parsed even if there's no b...
120 0
Robin Stocker @nibor.org · 20/06/2025
@gork.bluesky.bot is this true?
100 0
Robin Stocker @nibor.org · 28/05/2025
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.
000 0
Robin Stocker @nibor.org · 30/04/2025
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.
100 0
Robin Stocker @nibor.org · 30/04/2025
I like that Australia has mandatory voting -> ~90% turnout: www.aec.gov.au/Elections/fe...
120 0
Robin Stocker @nibor.org · 25/04/2025
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
000 0
Robin Stocker @nibor.org · 30/03/2025
Would be great to have it formalized, yeah! Excited for jj and other tools :)
020 0
Robin Stocker @nibor.org · 29/03/2025
I see, so it’s more like “it happens to work” than being explicitly supported at this point.
110 0
Robin Stocker @nibor.org · 29/03/2025
Oh, I didn’t know git allowed custom headers in commit objects, when did that happen?
100 0
Reposted by Robin Stocker
Raph Levien @raphlinus.bsky.social · 19/03/2025
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-...
developer.chrome.com
Memory safety for web fonts  |  Blog  |  Chrome for Developers
Learn how and why the Chrome team has replaced FreeType with Skrifa.
310726 0
Robin Stocker @nibor.org · 13/03/2025
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
010 0
Robin Stocker @nibor.org · 13/03/2025
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
010 0
Robin Stocker @nibor.org · 12/03/2025
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.
110 0
Robin Stocker @nibor.org · 23/02/2025
Contention
000 0
Robin Stocker @nibor.org · 10/02/2025
I used github.com/BurntSushi/xsv for this before which is great, but having the full power and familiarity of SQL is super useful!
100 0
Robin Stocker @nibor.org · 10/02/2025
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:
Terminal command: duckdb -csv -c 'select * from "documents.csv" natural join "users.csv"' > joined.csv
150 0
Robin Stocker @nibor.org · 05/02/2025
I meant to write *some* usages :). There are some reasons of the jj project here: github.com/jj-vcs/jj/is... Big fan of the project but it will be good for users to have a choice and hopefully good for both git and libgit2.
github.com
Tracking Issue for `git2` deprecation · Issue #5548 · jj-vcs/jj
There has been a latent sentiment amongst contributors that jj has outgrown its need to depend on libgit2, and as such we are moving to replace it and eventually deprecate it. This issue tracks the...
100 0
Robin Stocker @nibor.org · 04/02/2025
Oh nice, there's a libification project for Git, including a Rust library! It's still early days but at some point this could replace usages of libgit2.org
lore.kernel.org
[RFC PATCH 0/6] [RFC] Introduce cgit-rs, a Rust wrapper around libgit.a - Josh Steadmon
100 0
Robin Stocker @nibor.org · 25/01/2025
Nice, didn’t know that was being worked on, sorely needed. I think I like the choice of “plain” meaning without time zone. The “ISO” suffix confused me a bit until I saw it’s about the calendar.
110 0
Reposted by Robin Stocker
BNO News @bnonews.com · 16/01/2025
BREAKING: Debris seen over the Caribbean after SpaceX's Starship explodes during test flight
1905123873309 0
Robin Stocker @nibor.org · 16/01/2025
Ooh nice!
000 0
Robin Stocker @nibor.org · 11/01/2025
zsh -> fish is another one (even better now that it’s written in rust)
110 0
Reposted by Robin Stocker
European Space Agency @esa.int · 09/01/2025
Hello @bsky.app, here's to looking into more #bluesky and beyond... 😉
Image of the Moon, on a background of the blackness of space, and foreground at right of Earth's atmosphere in shades of blue, taken by ESA astronaut André Kuipers from the ISS in 2012.
1543536838 0
Robin Stocker @nibor.org · 07/01/2025
There's also a Nerd Font variant: brew install font-commit-mono-nerd-font (Source: github.com/Homebrew/hom...)
000 0
Robin Stocker @nibor.org · 07/01/2025
I've started using the "Commit Mono" font and I'm really liking it for both editor and terminal (used to use Source Code Pro, JetBrains Mono, SF Mono). Anyone else?
commitmono.com
Commit Mono. Neutral programming typeface.
Commit Mono is an anonymous and neutral programming typeface focused on creating a better reading experience.
110 0
Robin Stocker @nibor.org · 07/01/2025
Thought this ASCII art diagram for binary addition using logic gates was neat. (From #adventofcode day 24. x and y are input digits, z is result.)
050 0
Robin Stocker @nibor.org · 07/01/2025
Siri: “Foo sent a long notification, read it?” Me:
media.tenor.com
a man with a beard is touching another man 's face and says shhhh
Alt: a man with a beard is touching another man's face and says shhhh
000 0
Robin Stocker @nibor.org · 05/01/2025
Can we have Bluesky trends but less American please?
020 0
Robin Stocker @nibor.org · 31/12/2024
Surprisingly, it gets it right. But it pronounces GIF as Jif..
000 0
Robin Stocker @nibor.org · 29/12/2024
Just listened to this article using iOS Safari’s new “Listen to Page” feature. It doesn’t do a bad job, but there’s some words it gets hilariously wrong, like “codebase”, “builtin”, “unfortunately”, “github” (jittub). Also wish the playback position was synced with the page. But will use again.
fishshell.com
Fish 4.0: The Fish Of Theseus
A smart and user-friendly command line shell
100 0
Robin Stocker @nibor.org · 16/12/2024
The new Siri voice (Australian) after the latest iOS update sounds weird. Not as cheerful or friendly as the previous one. Anyone else?
000 0
Robin Stocker @nibor.org · 15/12/2024
Oh will try that, thanks!
000 0
Robin Stocker @nibor.org · 14/12/2024
So apparently the only way to delete all photos in Google Photos is to shift-select a bunch of pages, press Delete, wait, repeat.
110 0
Robin Stocker @nibor.org · 12/12/2024
+1. In commonmark-java I return both line/column and position based locations, because both can be useful depending on use case. Also note the comment about UTF-16: github.com/commonmark/c...
github.com
020 0
Robin Stocker @nibor.org · 09/12/2024
media.tenor.com
a man sits at a desk with a stack of books
ALT: a man sits at a desk with a stack of books
000 0