Michael Muré's Avatar

Michael Muré

@michaelmure

28
Followers
22
Following
42
Posts
14.11.2024
Joined
Posts Following

Latest posts by Michael Muré @michaelmure

Do you also think that the go crypto packages are a bit hard to use? What about my attempt at a thin ergonomic layer? github.com/MetaMask/go-...

Details and rationals in the Readme.

05.01.2026 16:08 👍 1 🔁 0 💬 0 📌 0
Onshape Sign in to Onshape, the #1 fastest growing CAD system in the world.

It's public if you want to play with it: cad.onshape.com/documents/04...

04.01.2026 22:03 👍 0 🔁 0 💬 0 📌 0
exploded view of the tenons/mortises of a shoji

exploded view of the tenons/mortises of a shoji

full view of a shoji in CAD

full view of a shoji in CAD

I'm opening a new personal tech tree!

Today, some CAD for a shoji (japanese sliding door). It's all parametric so I can adjust the global parameters (dimensions, kumiko counts, ...) and all the cuts, mortises, tenons are recomputed.

Now the questions will be: can I make it for real?

04.01.2026 21:55 👍 2 🔁 0 💬 1 📌 0
Preview
GitHub - MichaelMure/go-iblite: Invertible Bloom Lookup Tables in go Invertible Bloom Lookup Tables in go. Contribute to MichaelMure/go-iblite development by creating an account on GitHub.

For fun and giggles, I wrote an implementation of IBLTs, for set reconciliation: github.com/MichaelMure/...

Feedback welcome.

16.12.2025 18:56 👍 1 🔁 0 💬 0 📌 0

Cool list :-)

I'll take the occasion to ask a slightly different question: what do you think is the paper (recent or not) with the most practical potential, to do something better or novel? In particular in the realm of protocols, but feel free to extend further.

11.12.2025 12:59 👍 0 🔁 0 💬 1 📌 0

Hey @expede.wtf @b5.bsky.social, I enjoyed the Rateless IBLT reconciliation paper. Any suggestion for a mind-bending christmas paper read?

10.12.2025 11:40 👍 4 🔁 0 💬 1 📌 0

I wrote maybe half of the decoding of an #automerge document in go, as an exercice in performance and database-like internals (column storage, RLE..).
It's sitting in a private repo until I come back to it, but happy to share with a foss license if there is interest. Just ping me.

02.10.2025 01:16 👍 0 🔁 0 💬 0 📌 0

Another cool thing is that because all the crypto and DID verification methods included, it's quite easy to add more DID types. Implementing did:web took 2h.

The hard part was to figure out that the examples in the spec are invalid.

05.08.2025 14:42 👍 2 🔁 0 💬 0 📌 0

This crypto package could be split into its own thing if there is interest. Do you think that's useful standalone?

05.08.2025 14:40 👍 0 🔁 0 💬 0 📌 0

In particular, it contains all the cryptographic handling to make it dead easy to consume DIDs, validate signatures and so on.

If you tried to use different key types with the go standard crypto library, you know it's a minefield of mismatched API.

github.com/MetaMask/go-... fix it.

05.08.2025 14:39 👍 0 🔁 0 💬 0 📌 0
GitHub - MetaMask/go-did-it: Decentralized Identifiers (DIDs), fast and simple Decentralized Identifiers (DIDs), fast and simple. Contribute to MetaMask/go-did-it development by creating an account on GitHub.

Another new thing: github.com/MetaMask/go-...

It's a fast and simple (battery included) Decentralized Identifier implementation in go.

Currently it supports did:key, did:web and did:plc.

05.08.2025 14:36 👍 5 🔁 2 💬 3 📌 0
Preview
GitHub - ucan-wg/go-varsig: Multiformat for cryptographic signatures Multiformat for cryptographic signatures. Contribute to ucan-wg/go-varsig development by creating an account on GitHub.

It's time to announce properly some new things!

I just published v1.0.0 of github.com/ucan-wg/go-v..., the multiformat for cryptographic signatures. It's notably used in UCAN.

05.08.2025 14:18 👍 4 🔁 3 💬 0 📌 0

This could also be used to explain a codebase:
- start from some entry point question
- get a break down of the data flow or call graph
- click around to get more details
- asks more about language feature, pattern, capability, dependencies ...

26.07.2025 07:57 👍 0 🔁 0 💬 0 📌 0

Recursive hierarchical explainer for LLMs: starts with a high level concept ("explain database") and get a breakdown. From there you get an UX to expand as deep as you like on sub-topics ("LSM trees") in various ways: more explainers, implementation, connective question...

Does that exists?

26.07.2025 07:46 👍 0 🔁 0 💬 1 📌 0

Disclaimer: no idea if that actually makes sense.

17.06.2025 23:17 👍 0 🔁 0 💬 1 📌 0

I suppose the high dimentionality would make the index less compact, but maybe techniques like principal component analysis could compress that space, yet retain enough information for full-text search?

17.06.2025 23:16 👍 0 🔁 0 💬 0 📌 0

Random thought: full text search engine use word transformation, canonicalisation to map the input text to some internal index (my understanding).

Could a LLM vector space be used instead? That would remove the need for the transformations, and make it work cross-language.

17.06.2025 23:12 👍 0 🔁 0 💬 2 📌 0

Don't tell anyone, but my secret endeavor is to one day teach something to @expede.wtf instead of being schooled every time (which I enjoy dearly).

29.05.2025 13:39 👍 3 🔁 0 💬 1 📌 0

Funny that we reconnect like that. Thanks @bmann.ca for being that social catalyst once again!

15.05.2025 16:17 👍 1 🔁 0 💬 0 📌 0

> Excited to try this.
> This is incredibly cool. I love seeing local first software starting to make a comeback.
> I've been yelling 'omg why doesn't someone build [...] for YEARS. This is wildly exciting.

More than coffee, those are what feed an open source project.

15.05.2025 06:47 👍 1 🔁 0 💬 0 📌 0
Git Bug: Distributed, Offline-First Bug Tracker Embedded in Git, with Bridges | Hacker News

Hehe, git-bug making some waves again on hacker news: news.ycombinator.com/item?id=4397...

14.05.2025 23:58 👍 2 🔁 0 💬 1 📌 0

I'm not too familiar with it (yet), but why not use Verifiable Credentials, that comes often in DID systems and is heavily standardized, instead of rolling your own format? As I understand it's more or less the same thing: a signed claim.

20.04.2025 20:34 👍 0 🔁 0 💬 0 📌 0

There is also a token container (with a spec) that abstract the encoding and optional compression. Great to fit into a HTTP header or other medium.

20.04.2025 11:32 👍 2 🔁 0 💬 0 📌 0

FYI, I have some tooling around go-ucan to apply UCAN policies on HTTP request parameters (host, path, query ...) or JSON-RPC ... that I plan to migrate into go-ucan. The idea is to have a somewhat standard way to apply UCAN on pre-existing HTTP APIs. It'd be great to be all on the same page.

20.04.2025 11:31 👍 2 🔁 0 💬 1 📌 0

Definitely agree on the "centralized" aspect.

About the certificate logs, as did:plc has a chain of signed operations containing all the data ... isn't that already a certificate log? Could you expand your thought?

07.04.2025 08:51 👍 0 🔁 0 💬 1 📌 0

Very interesting :-)
I'm on a slow quest to figure out a better DID system + social graph (if there is such a thing to begin with). As you are deep in there, is there something you would do differently?

02.04.2025 07:28 👍 1 🔁 0 💬 1 📌 0

You wouldn't nees those external scope definitions. You also get delegation for free, which enable some cool use cases.
A very different design for sure though, with different tradeoffs.

20.03.2025 20:33 👍 0 🔁 0 💬 0 📌 0

I found that a regular first leg of OAuth (social login up to getting the identity token) with a token exchange giving a UCAN token (instead of JWT) is a pretty powerful pattern.
Then you can apply the UCAN policies on HTTP parameters (path, arguments...).

20.03.2025 20:31 👍 0 🔁 0 💬 0 📌 0

Not necessarily a question for you but I'm wondering .. how much of that is portable beyond ATProto or Bluesky? The ideal identity system should be an agnostic base layer that works everywhere.

16.03.2025 19:46 👍 0 🔁 0 💬 1 📌 0

About the reputation, it seems that @cred.blue compute a score based on public data. I was more thinking about a reputation system where user actively vet others, or report bad behavior.
Ideally in a distributed fashion, where the score is "local" (your contact weight more on the score).

16.03.2025 17:43 👍 1 🔁 0 💬 1 📌 0