Mark Polyakov's Website
Hello! I'm a technology enthusiast who loves figuring out how things work. On the weekend, you might find me running along Chicago's Lake Front Trail, reading hard sci-fi, struggling to solve the latest Project Euler problem, soaring in a glider, designing a circuit board, writing spaghetti code in C++, or writing even spaghettier code in Common Lisp.
Projects
Software
You can find all of these projects and a few smaller ones on my Github Profile. All are Free and Open Source.
- (WIP) LOST: Open-source Star Tracker, a package for identifying constellations in night-sky photographs, to determine the orientation of a satellite. LOST is the first open-source implementation of a number of star-tracking-related algorithms.
- (WIP) Kreo, a reverse-engineering tool for detecting classes, class hierarchies, and methods in compiled C++ binaries, by a combination of dynamic and static analyses. Kreo uses ideas from research in programming languages and software engineering. I'm working on Kreo with a couple other folks, and we're hoping to publish a paper before too long.
- Anypaste, a smart command-line file sharing tool. It selects a hosting site automatically based on the type of file being shared.
- SpecDB, a site for viewing and comparing CPU and GPU hardware specifications.
- (Small) Remotely, a shell-scripting library that makes it really easy to write scripts that automate the setup of remote servers. I think of Remotely as the smallest possible Ansible alternative.
- (old) Sam's Serif, a recursive/fractal font renderer with HTML5 Canvas.
- (Small/old) Beat Ballot, a democratic music player. Users connect to a host's "room" then suggest or vote for which song they want to be played next. Developed with Yuyu Madigan, Cyrus Arora, and Daniel Williams in 24 hours for nwHacks 2019.
- (Small/old) Monsanto Simulator, an online multiplayer game about genetics created for a high-school biology course. Might be useful if you're teaching biology! Not hosted anywhere, but setup instructions are on Github.
Hardware
- Synchronous Digital Clock and power supply, fully custom design and assembly. Lots of info at the link!
- Motorized Cat Door, control two cat doors in the garage with a switch in the kitchen.
- (Small/old) OpenSpeedCoach, a fitness tracker/speed coach for rowers, made at nwHacks 2020. Counts strokes with an accelerometer, records distane and speed with GPS.
Other
Little games
School
I graduated from the University of Washington, where I studied Computer Science and Math. I took notes digitally for some of my classes. The first link below is the most recent. I took notes on paper for many classes, which are not listed here.
- CSE 421, Algorithms
- CSE 312, Foundations of Computing II
- CSE 351, The Hardware/Software Interface
- CSE 490Q, Quantum Computing
- MUSIC 120, Survey of Music
- CSE 444, Database System Internals
- JSIS B 357, Geopolitics of Energy
- CSE 414, Intro to Database Systems
- LING 400 Anki Flashcards (Download .apkg)
- PHIL 100, Intro to Philosophy
During the 2020-21 school year I took the Advanced Calculus sequence (Math 334/5/6). The final project for this sequence was a paper on a mathematical topic of our choice. In previous years, these papers were posted on a public-facing class website (for example, here are the 2019-20 papers). However, a new instructor taught the sequence in 2020-21, and did not maintain a public website. I make my paper publicly available here:
Abelian Sandpiles and Self-Organized Criticality (Math 336 Final Paper)