Ben Visness

Handmade Network lead. Mentor for FIRST Robotics Competition Team 2175, The Fighting Calculators. WebAssembly engineer at Mozilla.

2025-07-03

Inspiring words from the Handmade Network Discord today

2025-07-02

the one time git asks for my permission first is the one time it absolutely does not matter

2025-06-16

A larger write-up on the project can be found here, with background info about mDNS and DNS-SD: handmade.network/p/688/buongio

2025-06-16

Oh also I forgot to post my jam project here on Mastodon - here's Buongiorno, my tool for mapping out mDNS and DNS-SD services. It captures mDNS packets to show a graph of services being requested and advertised, e.g. printers, AirPlay, Handoff, and more.

2025-06-16

The X-Ray Jam is complete! I had a great time and we have 10 lovely submissions you can look through: handmade.network/jam/x-ray-202

We're planning a recap live show in the near future, so stay tuned for that.

2025-06-12

Behold! A list of mDNS services in my house. (This is basically just the output of `avahi-browse`, so nothing too novel yet, but it's a start.)

2025-06-11

The things you learn from reading specs

The DNS-SD spec with the following highlighted: “a web server typically has multiple pages”
2025-06-09

The X-Ray Jam is underway (handmade.network/jam/x-ray-202) and I am exploring mDNS.

First step: testing if mDNS works on my printer. It does.

Highlighted printouts of mDNS-related articles and specs.
2025-06-02

I'm tackling mDNS, hopefully making a tool that maps out the state of all my network devices so I can see why devices only seem to show up like 60% of the time 😃

2025-06-02

The Handmade Network X-Ray Jam is just a week away! If you are interested in tools that dig into software internals then you should participate or at least follow along.

handmade.network/jam/x-ray-202

2025-05-19

I have started to go down the compression rabbit hole. The compressor and decompressor are handwritten WASM.

Uncompressed: 52MB
Very stupid RLE: 182KB
Slightly smarter RLE: 65KB

This is for a WASM record/replay tool I'm building for work. It instruments arbitrary WASM modules to record specific function calls to a log, then can recreate the module state to replay them.

"Very stupid RLE", where runs of zeroes are collapsed but individual letters are spaced out by four bytes each"Slightly smarter RLE", where long runs of unique characters are contiguous
2025-04-26
Tweet from Fabian Giesen (@rygorous):

look, I'm sorry, but the rule is simple:
if you made something 2x faster, you might have done something smart
if you made something 100x faster, you definitely just stopped doing something stupid
2025-04-26

Sometimes you spend weeks on a performance optimization to get 0.5% faster. Other times you spend a day tweaking your GC code and get 15%+ faster.

Spreadsheet showing results from a Flutter benchmark, showcasing a 15%+ performance improvement.
2025-03-08

We're doing a Handmade podcast again!

Our first episode of 2025 is an interview with aolo2, a web dev turned CPU engineer, about several apps he has made from scratch: a collaborative whiteboard, a Handmade Slack alternative, and a CPU trace viewer.

youtube.com/watch?v=b74IVD-KNL

You can subscribe on podcast platforms at handmade.network/podcast/, and video versions are available on both YouTube and Spotify.

I'm so excited to be doing this again 😄

2025-02-19

A file explorer called File Pilot was just released in open beta yesterday: filepilot.tech/

It is so insanely fast that it makes you question how all other software is developed. The Handmade community does good work.

2025-01-28

@Mendy To be precise, any time the bit width of your pointers is larger than the amount of memory you can freely reserve, you will need bounds checks. Of course, our hardware doesn’t give us a register size in between 32 and 64.

This also means you can’t do the virtual memory strategy on 32-bit platforms if you can’t reserve 4GB of memory, which is sometimes the case.

2025-01-15

After working hard to get 64-bit WebAssembly released in browsers, I would now like to discourage most people from using it 😛

(My first post on the SpiderMonkey website btw, which is a fun milestone)

spidermonkey.dev/blog/2025/01/

2024-10-29

@capital @wryl As cool as it is, it definitely highlighted for me how awkward it is to hold your phone and look through it to interact. But in a collaborative setting, with the right apps, I think it could be worth it.

2024-10-01

The cheeky title is because Victor has often stated his disdain for AR and VR and wants people to engage with each other directly. I agree with that vision…but I also don’t have a bunch of cameras and projectors. I wanted to see what was possible with common devices today.

2024-10-01

Programs live inside physical tracking codes, so everyone can easily participate, no invites or sessions. You can easily keep a notebook full of apps and bring them anywhere. And the system is fundamentally collaborative; anyone can interact with what’s on the table.

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst