Privacy
Last updated October 29, 2026
I'm Mr. Keye, and I run this site as a personal project. The short version: it doesn't collect personal information. There are no accounts, ads, or cookies. I can see how many times each page is opened, but not who opened it. Your progress and your work are saved in your own browser, not sent to me. The one exception is Arduino code you compile in class, described below.
What stays on your device
Your practice progress, the code and files you write in the editors, and your settings (like an editor's color theme) are saved in your browser's storage on the device you're using. They aren't sent to me or to anyone else. They don't follow you to another device or browser, and clearing your browser's data for this site deletes them, so download a copy of any work you want to keep.
Hosting
The site is hosted by GitHub Pages. Like most web hosts, GitHub records the IP address of every visitor for security purposes. That's covered by GitHub's privacy statement, and I don't see those records.
Counting page views
To see how much the site gets used, each page loads a small script from Cloudflare Web Analytics. It tells Cloudflare which page you opened, the site that linked you to it (if any), your browser, operating system, and type of device, and how fast the page loaded. Cloudflare also works out your country from your network (IP) address. I see only totals, like how many times each page was opened. The script doesn't use cookies or save anything on your device, and Cloudflare says it doesn't use your IP address or browser details to tell visitors apart. How Cloudflare handles this is covered by its privacy policy.
Videos
Videos come from Vimeo or YouTube, and nothing from either one loads until you press play. When you do, Vimeo videos play with Vimeo's do-not-track setting on, and YouTube videos play in YouTube's privacy-enhanced mode. From then on, that company's privacy policy (Vimeo, Google) covers the video, including any cookies it sets.
Sensors, boards, and Python
The lab pages talk to sensors and microcontroller boards directly from your browser, over USB, serial, or Bluetooth, and only after you pick a device. Readings and code pass between your browser and the device, and none of it is sent to me.
The Python editors run entirely in your browser. If you write code that downloads something from the internet, the request goes wherever your code sends it.
Compiling Arduino code
The Compile button on the Arduino page is for my in-person classes, and it only works while I have the compiler running during class. When you press it, your sketch goes through Cloudflare, which connects the compiler to the internet, to a computer of mine that builds it and sends the result back.
While the compiler runs, its log shows me the time, your network (IP) address, and the code you sent, so I can check that the compiler is working. I don't keep the log: it's cleared each time I restart the compiler. So that a repeated sketch builds instantly, the compiler does keep each compiled result and any error messages, which can quote lines of your code, but not who sent them. Don't put private information in your code.
Students and children
This site is made mainly for high school and college students, and for anyone who wants to learn physics. It doesn't ask for personal information from anyone, including children under 13.
There are no ads, and I never sell or share information about students or use it to build profiles of them. That's also what California's student privacy law (SOPIPA) requires of sites made for school use. If a school or a parent asks me to delete something, I will.
Changes
If anything here changes, for example if I ever add sign-ins, I'll update this page first and change the date at the top.