Sy Brand

@TartanLlama
5K Followers
197 Following
986 Posts
bit wrangler ~ poet ~ film/noisemaker ~ mask enthusiast
Arthttps://sybrand.ink
Pronounsthey/them

I wrote a blog post on WebAssembly Components!

https://tartanllama.xyz/posts/wasm-plugins/

Building Native Plugin Systems with WebAssembly Components | Sy Brand

Sandboxed plugins with well-defined interfaces

Today I'm joining Fastly to work on WebAssembly tooling! Back to a full-time engineering role after being in DevRel for nearly 7 years

I made a new short film called Will O' the Wisp!

It features many trees. Trees are pretty.

You can watch it free here:

https://vimeo.com/1106705802

Will be working on WebAssembly tooling after a bit of a break
Today is my last day at Microsoft!
Headed to the Scotland Card Show!
Ah, now I remember why I stopped making joke posts here
Them: Alright, so first you write a test that fails
Me: Yes, I'm nailing this
Them: Then you write code that makes it pass
Me: ...you've lost me

If you'd like to follow along as i build a debugger in Rust with @TartanLlama's book, all the code is at https://github.com/drmorr0/drbug

I'm marking with git tags as I finish each chapter (starting with chapter 3, which i just finished last night!)

I also stayed up wayyyyyy too damn late trying to understand how pipes work, but oh well thems the breaks.

#rust #software #debugging

If you're generating WebAssembly components from C, you might enjoy the documentation I wrote for wit-bindgen's C generator

https://github.com/bytecodealliance/wit-bindgen/blob/main/crates/c/README.md

wit-bindgen/crates/c/README.md at main · bytecodealliance/wit-bindgen

A language binding generator for WebAssembly interface types - bytecodealliance/wit-bindgen

GitHub
×

If you'd like to follow along as i build a debugger in Rust with @TartanLlama's book, all the code is at https://github.com/drmorr0/drbug

I'm marking with git tags as I finish each chapter (starting with chapter 3, which i just finished last night!)

I also stayed up wayyyyyy too damn late trying to understand how pipes work, but oh well thems the breaks.

#rust #software #debugging

Ok, chapter 4 (Pipes, Procfs, and Automated Testing) of "Build a Debugger" is done. We're just writing some tests here.

It took me wayyyyyy too long to realize that calling `Process::attach(pid)` (with no `let` binding) immediately drops the result, which I studiously coded up a destructor for that resumes the process. Couldn't understand why my "attach" tests were failing.   

I find it interesting that we're just running tests against the local file system (i.e., we're using the real Linux procfs to test that our code is doing what it's supposed to). I think it makes sense in this case, since mocking all that shit out would be, if not impossible, extremely not worth the effort, but it makes me scared about flaky tests and non-reproducibility.

Code here: https://github.com/drmorr0/drbug/tree/chapter-04

#rust #linux #debugging

GitHub - drmorr0/drbug: x86 debugger written in Rust

x86 debugger written in Rust. Contribute to drmorr0/drbug development by creating an account on GitHub.

GitHub
@drmorr how TF did I not know @TartanLlama wrote a book?