Museums
Exhibit figures that move and react when visitors walk up, so people learn by watching how something works.
I'm a freshman at MIT studying electrical engineering and computing. Right now I'm building a real, physical version of a character from my own game. I've also shipped two apps, published two physics papers, and I write horror scripts and novels on the side.
Sparkwire Studios is the company I started to make characters you can actually meet: small robots that notice you, turn toward you and react. We're starting with toys and demos, and the long-term goal is full themed attractions. Our first character is Goo, Experiment 003 from my game Rat Lab.
The first version of Goo sits on a desk. It turns toward you, leans in, and breathes. These specs are from our actual build plan.
Sparkwire Interactive is a side company. At Studios we build our own characters. At Interactive we'd build animatronics, practical effects and interactive installs for other people, like museums, film studios and venues.
Move the faders, pick an expression, or press Run to play a short performance.
Exhibit figures that move and react when visitors walk up, so people learn by watching how something works.
Animatronic puppets and rigs for shots that need a real object on set instead of CGI.
Characters for haunted houses, escape rooms, pop-ups and lines, so there's something to watch while people wait.
Rat Lab is a 3D mobile game about lab experiments racing to mutate. There are fifteen of them, and each has a basic attack and a special move. Pick one and try it.
Use the arrows or your keyboard. Experiment 100 is still locked.
Fly.io game server · RevenueCat in-app purchases · com.haxxin.ratlab
A low-cost rover for picking up park litter, built by a high school club I founded. I raised $500+ for parts, ran workshops for 15 students, and did most of the wiring, assembly and power design. Our faculty advisor wrote the code.

Two L298N drivers and the Arduino shared one AA pack, so VIN got 5 V when it needs 7–12 V, and the second driver wasn't on the battery's ground rail. The motors jittered and the Arduino kept resetting. Switch to "The original fault" above to see what that looked like.
UNIT-107 fixed it: one 12 V NiMH pack split into a motor path through a Cytron MDD20A and a 5 V logic path through a buck converter, all on one common ground.
What I'd do differently: we never recorded speed, runtime or sensor range. Next time I'd set up tests from day one and log every run.
During my Pfizer externship I built DocuRAG, a pipeline that reads pharmaceutical supplier documents and answers questions about them. I tested it on real documents from Cytiva and BASF.
Ascend is an SAT prep app I built and got onto both app stores. It has full timed tests across all four sections, a heatmap that shows where you're losing points, and a referral system that unlocks more tests.
Tap through three of the main screens. This is a mockup I made for this page, so the question and the numbers are just examples.
I started CodeForChampions in 2024 to teach coding and AI to kids who don't get it at school. About 20 of us built the lessons, quizzes and workshops, ran hackathons, and raised over $1,000 for books, Wi-Fi routers and refurbished Chromebooks.
Python · JavaScript · HTML/CSS · AI basics · hackathons
PropIQ takes a Zillow listing and turns it into an investment spreadsheet. I built it while running the numbers on a duplex in Queens, comparing an FHA loan to a conventional one, with rent from the second unit covering part of the mortgage.
| A | B | C | |
|---|---|---|---|
| 1 | Inputs | Value | |
| 2 | |||
| 3 | |||
| 4 | |||
| 5 | |||
| 6 | Results | FHA | Conventional |
| 7 | Down payment | ||
| 8 | Loan amount | ||
| 9 | Principal + interest / mo | ||
| 10 | Mortgage insurance / mo | ||
| 11 | Total housing cost / mo | ||
| 12 | After rent / mo |
Edit any blue cell and the sheet recalculates. Click a result to see its formula.
Example inputs, not a real listing. Simplified: FHA uses 3.5% down, a 1.75% upfront premium rolled into the loan and 0.55% a year; conventional uses 20% down with no PMI. Both are 30-year fixed.
PropIQ pulls listing data through RapidAPI and current rates from FRED, then writes the analysis to Excel.
In a lot of small CNC shops, the details of how a part was made live in one machinist's head. Shop Memory records how each job was quoted and made, so when a repeat order comes in, the shop can pull up exactly what they did last time.
Pick a job to see what Shop Memory saved from last time.
Example jobs written for this page to show the idea.
Formula Student team building an electric, four-wheel-drive car with autonomous systems. My first time inside a large engineering team.
A month-long team project with a physics and mechanics requirement.
Member of MAIA at MIT.
I wrote two physics papers in high school. One is about Noether's theorem, which connects symmetries to conservation laws. The other proves Bell's theorem with a game that quantum players win more often than classical ones. You can try both below.
If a system has a continuous symmetry, some quantity is conserved. Pick a symmetry to see which one.
Derives the Euler–Lagrange equation from scratch, then uses Noether's procedure for energy, momentum and angular momentum, E = mc² for a free relativistic particle, and the conserved current of scalar QED. Mentored by Dr. Surjeet Rajendran (Johns Hopkins); reviewed by faculty from Brookhaven, CCNY and Columbia.
Read the paperA proof of Bell's theorem through the CHSH game. Checking all 16 deterministic strategies shows players who can't communicate win at most 75% of rounds. With a shared Bell pair, the win rate reaches cos²(π/8) ≈ 85.4%.
Read the paperA referee sends Alice a bit x and Bob a bit y. Each answers 0 or 1 without talking. They win when their answers match, unless both got a 1; then the answers must differ.
Classical: both always answer 0.
Quantum: share |Φ⁺⟩; Alice measures at 0° or 45°, Bob at ±22.5°.
Simulated dark matter in the astrophysics track. My feature on retrocausality won the Science Writing & Communication Instructor Choice Award.
Presented my research to faculty from Adelphi, Rochester and CCNY, and gave a talk on Noether's Theorem at the National Museum of Mathematics.
Real Analysis and Complex Analysis through Stanford Online High School, AP Physics C, and ES.801 at MIT.
I went to The Kew-Forest School in Queens and graduated in 2026. Here's what I did there.
in scholarships, from the Milken Scholars program and A Better Chance
Gave the acceptance speech, on CodeForChampions.
Science Writing & Communication, for a feature on retrocausality.
Character, Courage and Commitment.
290+ hours of STEM service at MoMath.
General Committee.
Led the school's largest club, ran crisis simulations, and grew it to a quarter of the upper school.
Varsity since 8th grade, co-captain from 11th; took the team to regionals.
Explained exhibits to 100+ visitors a day and gave a talk on Noether's Theorem.
Dark matter simulations and a physics feature, presented to 50+ peers and faculty.
AI, astronomy and sustainability with Yale faculty; group project on fluid dynamics.
CMOS chips and Noether's Theorem, for the AASF and Breakthrough contests.
Helped members design experiments, present research and find competitions.
Founded both; each has its own world above.
If you're on a robotics or hardware team, work at a museum, studio or venue, or just want to talk about Sparkwire, send me an email.
hshaykat@mit.edu