Interests

Math AcademyCalisthenicsMath Education in GeneralMusic ProductionScience Fair

Math Academy


Since 2019, I've developed all the quantitative software behind mathacademy.com. I've solved every problem that we have faced while constructing an educational knowledge graph for all of 4th grade through university-level mathematics and building a fully automated, fully adaptive learning system around it.

In a nutshell:
  • The system emulates the decisions of an expert tutor with regard to what tasks a student should work on at any given point in time (what should the student learn next, what do they need to review). There's a knowledge graph that encodes structural relationships between thousands of math topics (e.g. prerequisite relationships). And then there's an algorithmic reasoning system that looks at a student's answers, overlays them on the knowledge graph, figures out what the student knows (and how well they know it), and decides what learning tasks are going to move the needle most given their personal knowledge profile. The decision-making leverages numerous cognitive learning strategies including mastery learning, spaced repetition, interleaving, minimizing associative interference.
  • The system determines a student's knowledge profile through an adaptive diagnostic diagnostic test and then serves them optimal learning tasks based on that knowledge profile. Each student has a personalized knowledge profile and spaced repetition schedule, both of which continually adapt to their performance on each topic with every answer they submit. When choosing what topics a student should review or learn next, we're always trying to implicitly "knock out" as many due reviews as possible to maximize learning efficiency. (For instance, if a student is due for a review on one-step $ax=b$ equations, we can implicitly "knock out" that review by having them learn or review two-step $ax+b=c$ equations instead.)

The end result of all this optimization is that serious, focused students typically learn 4x the amount of math in the same amount of time as compared to a traditional classroom.

From a quantitative standpoint, the spaced repetition model was one of the most challenging (but equally fun) parts to build.
  • You normally think of spaced repetition in the context of independent flashcards, but in a hierarchical body of knowledge like mathematics, it gets really complicated because repetitions on advanced topics should "trickle down" to update the repetition schedules of simpler topics that are implicitly practiced. There are many devils in the details:
    • Prerequisites are not always implicitly practiced, so you really need two graphs: not only a prerequisite graph for extending students' knowledge frontiers forward using mastery learning, but also an "encompassing" graph for propagating the right amount of credit backwards using spaced repetition. (A topic "encompasses" a simpler topic if the simpler topic is implicitly practiced as a component skill.)
    • Like the prerequisite graph, the encompassing graph has to be encoded manually by a domain expert. I've personally encoded tens of thousands of encompassing records over the years. (Our curriculum director manages the prerequisite graph; I manage the encompassing graph.)
    • Implicit repetitions need to be discounted appropriately: they are often too early to count for full credit towards the encompassed topic's next repetition.
    • Ecompassings are often fractional: component skills are often practiced only in part as opposed to in full.
  • To account for these details I had to develop a novel theory of spaced repetition. It's called Fractional Implicit Repetition (FIRe). I also developed many optimizations on top of FIRe: the overall spaced repetition model not only accounts for implicit "trickle-down" repetitions, but also minimizes the number of reviews by choosing reviews whose implicit repetitions "knock out" other due reviews (like dominos), and calibrates the speed of the spaced repetition process to each individual student on each individual topic (student ability and topic difficulty are competing factors).

In addition to the above, I also developed the following:
  • the analytics tools that allow us to improve our content, without learning standards, to the point that students pass lessons over 98% of the time without remedial intervention
  • a gamified reward/penalty system to incentivize student effort, which caused most adversarial students' rates of passing learning tasks to jump from under 50% to over 90% (while ensuring that non-adversarial students rarely, if ever, experience penalties)
  • the knowledge graph tools that allow us to carry out content revisions quickly and safely in the production database, without requiring a separate staging server
  • the system-wide validations that run continuously to immediately alert us of any issues relating to the knowledge graph or the decisions of our adaptive learning algorithms
  • the initial version of our knowledge graph visualization

I also wrote hundreds of our initial lessons, and while I'm less involved on the content side nowadays, I still encode lots of domain-expert knowledge into our knowledge graph and do a final review on every single lesson that we release.

Calisthenics


I achieved an extreme physique transformation from 2021-23 using only calisthenics and have continued training advanced calisthenics including 1-arm pullups/pushups, no-leg pushups, and various gymnastic ring holds. It turns out that, like math, calisthenics involves building hierarchical skills over a long period of time, and you can be super efficient if you work strategically. More info here.

Math Education in General

(inactive)

I worked hands-on with 300+ students over the course of a decade (2013-23) and have seen just about every single success/failure mode when it comes to learning math. After 2018 I focused on radically accelerated students studying high school and college math far above their grade level, e.g. AP Calculus BC in 8th grade.

My teaching years culminated in developing what was, during its operation from 2020-23, the most advanced high school math/CS sequence in the USA. Within a radically accelerated math program, I developed a quantitative computer science track that scaffolded high school students up to doing masters/PhD-level coursework (reproducing academic research papers in artificial intelligence, building everything from scratch in Python). I worked with a handful of these students from 8th grade all the way until high school graduation, and it was incredibly rewarding helping them grow up and skill up.

At the same time, I've also had first-hand experience with general dysfunction surrounding education including misaligned students, cheating rings, confused/unreasonable parents, grade inflation & no-fail policies, and teacher credentialing & professional development that is centered around political ideology rather than the science of learning. I don't teach or tutor anymore, but more info is available here.

During my teaching years, I simultaneously wrote math books for fun. Despite no intentional search optimization, this content ranks in the top results for many common search queries across various subfields of math. I also wrote hundreds of mathacademy.com's first lessons, which are admittedly much better scaffolded than anything I've written independently, and later developed the adaptive learning engine that turned us into a fully automated and personalized learning system.

These days, I'm focused entirely on Math Academy. My goal is to help serious students take advantage of the greatest educational life hack: learning advanced math (and coding) rigorously at a young age and benefitting wildly from the resulting skills and opportunities. This life hack can rocket students into some of the most interesting, meaningful, and lucrative careers, and yet it remains unknown to most students who have the potential to capitalize on it.

Music Production

(inactive)

I taught myself guitar in high school and generally enjoyed making up my own stuff as opposed to playing existing songs. Things started to get interesting once I started recording many layers with a looper and arranging & adding effects in Audacity.

During college I experimented with computer music production and created a bunch of pieces including some melodic EDM, a cool beat, and an orchestral album.

While I enjoyed creating music, I ended up dropping it and leaning into math instead, which I personally found to be easier, just as much fun, and far more marketable. I don't create music anymore, but more info is available here.

Science Fair

(inactive)

Two science teachers at my high school (Mr. Andrzejewski & Dr. Sisk) ran a research class that helped students connect with local university labs for science fair projects. To date, it remains the most worthwhile class I ever took, because it taught me how to put myself out there and find opportunities. (There were high expectations with little hand-holding: students had to cold-email professors, schedule meetings with positive respondents, match up with a professor whose laboratory needs could be turned into a science project, execute the project within 6 months, and then present the results at science fairs across the state.)

In this class, I got the opportunity to work on two projects:
  • 2013-14: experimentally assessing the performance of materials to improve optical data transmission within a particle detector at CERN (poster)
  • 2012-13: creating a material to improve acoustic data transmission within a dark matter detector at Fermilab (poster; international finalist at ISEF)

Looking back, the most important things I learned from these projects had nothing to do with physics or even academics. My main takeaways (realized years later) were actually related to business -- in particular, sales and marketing.

During this time and until my sophomore year of college, I also worked on plenty of toy research projects that were more theoretical in nature, such as the following:
  • 2013: finding/proving a formula for the partial fractions decomposition of $x^n/(x+a)^k$ (writeup)
  • 2014-15: understanding how cycles of neurons ought to change connectivity in response to periodic stimulation (slides)
  • 2015: solving a special case of how to periodically stimulate a biological neural network to obtain a desired connectivity (writeup)
  • 2016: investigating the (game-theoretical) usefulness of limiting the number of social connections per person during an epidemic (writeup)

These projects were a lot of fun and really helped me move from "karate" to "street-fighting" in the mathematical sense. But since then I've made a serious effort to work on more impactful/rewarding problems.