The animation doesn't work for me with Firefox on Android. The laptop is totally missing and instead it just shows a static image of a logon screen. I was very confused until I tried it in Chrome.
Yeah, I had my suspicion whether it would work universally. It uses WebGPU, fallbacks to WebGL2, and if that fails too it should fallback to a fixed image. Thanks for the heads up, I'll check it out over the weekend!
There is another important reason not to store the vtable pointer in the object: performance! In C++ if you want to make a virtual method call you have a double indirection where you must first load the object and only then can you load the vtable. Having a fat pointer like Rust does means that both loads can be in flight at once. If you are using enough dyn references to care about the extra memory then you'll likely care about the performance impact of those extra indirections even more.
Maybe not 10, but my company (in the US) has relationships with several machine shops nearby (some within walking distance of our office) that do custom metal fabrication for us, and sendcutsend and xometry can handle more exotic stuff without having to ship it from Shenzhen.
I think the bigger advantage of Shenzen is more for actually manufacturing at production volumes cheaply, although maybe if you need something really exotic? Custom metal fabrication is not a good example here, I have a neighbor who runs a custom CNC parts business out of his garage (said garage is largely taken up by his CNC mill).