Presented by:

Devin Jean
When making distributed projects with NetsBlox (a fork of Snap which adds networking features), such as a multi-computer orchestra or animation with each computer playing different parts, we sometimes need a way to synchronize all the projects in time. With a small number of computers in close proximity, it is tempting to invite a friend and manually do a countdown before pressing all the green flag buttons. However, even this has too high of variance for the millisecond-precision needed for many time-sensitive tasks. Because of this, we have created a new extension for NetsBlox that allows users to get the time difference between your computer and the NetsBlox server. This gives all NetsBlox projects a single ground truth for the current time, allowing for high-precision synchronized scheduling. For instance, one primary project could get the NetsBlox server’s time, add 3 seconds, and send that start time to all the other projects. The other projects then simply wait until that server time before continuing with the rest of their code. This allows users to have high-precision multi-computer time synchronization over the internet, all with only two new blocks (one to calculate the clock difference and another to predict the server time using the pre-computed difference).
- Duration:
- 5 min
- Room:
- Auditorium (Online)
- Conference:
- Snap!Con 2023
- Type:
- Lightning Talk
- Presented via:
- Online
This session is a part of:
Round 2 of lightning talks!