Skip to content

Math Training App Sample Proposal

The Math Training App is an SRS that covers a wide variety of Mathematics concepts.

Overview

SRS (Spaced Repetition Software) is a class of learning software that uses spaced repetition to allow for a time-efficient learning strategy aimed at long-term retention.

The app will be used by students of Mathematics (both self-learning and enrolled) as a secondary learning tool. It does not need to have its own references for teaching mathematics; the app should be lightweight and only focus on the SRS part of learning. Students using this app will need to source their own primary references based on their own preferred method of learning.

The current article will cover the following topics:

  • A quick description on the concept of SRS
  • Structure of the Math Training App
  • Business model related to the app

Context (aka a Literature Review)

Mathematics is best learned by commiting to practice.

In the Philippines, the use of "window cards" is a traditional way to teach children how to solve arithmetic operations. These are punched cards in which young pupils can write their answers on a piece of paper sitting directly under the card. Hence the name "window" cards; the punched areas resemble open windows(5).

Because pupils do not write directly on the cards, these cards can be used and reused as needed. Following spaced repetition schedules, pupils can get better at arithmetic operations by focusing on the things they need more practice on.

What Is Spaced Repetition?

Spaced repetition is a learning technique in which learning materials are repeated until properly mastered (consolidated into long term memory). The "spaced" part comes from the repetition schedule; learners repeat their exposure to the learning materials after a set amount of time, normally in days, increasing the spacing between intervals as the learner demonstrates competency on the learning material(3). The difficulty of the material does not need to change in spaced repetition; the difficulty of recall and reduced efficiency of the practice effect are generally enough in most cases.

In the context of flashcard-based SRS like Anki and the supposed Math Training App, the things that undergo spaced repetition are "cards" that contain questions. When the learner answers the card correctly, the card gets pushed to a longer review interval. On the other hand, upon answering the card incorrectly, the card's interval is typically reset to 0 so that it may be repeated the next day.

Practice Effect and Misuse of Repetition

In most flashcard-based SRS apps, the practice effect becomes a problem because it inflates the user's perceived score from their true score. The practice effect is when a person taking a "test" of sorts gets a higher score the second time they take it. The same goes for test items, having a higher chance at getting it right the next time they see it.

Furthermore, repetition-based learning focuses on repeating the thinking patterns related to the thing being studied. This repetition induces lasting physiological change in the human brain, in a process called memory consolidation(1).

With these two effects in mind, the flashcard-based, repetition-based learning might not be ideal for mathematics practice because users will get used to answering the specific kind of questions in the practice set and not on the mental processes required to solve them.

Significance

While window cards can be used with spaced repetition, these topics tend to be limited to the arithmetic operations on real numerical coefficients. It is nigh impossible to find window cards (or similar practice tools) for algebraic concepts like matrix operations and operations on quadratic equations. And while some apps, such as Magoosh Mental Math Practice, share a similar style, these applications tend to lack in the kind of learning metrics that Anki supports right out of the box. They also feature pre-made questions which largely reduces the variety of questions and causes an inflated sense of easiness due to the practice effect (all of these problems remain unverified, since I haven't looked at a lot of other options yet).

The Math Training App will add to these by using randomly-generated test sets and locally-stored user metrics.

Furthermore, Daedalus can use this as a practicing tool for training mathematical concepts to learners interested in Data Science, Deep Learning, and Machine Learning.

Conceptual Framework

The Math Training App is a temporary name for a multi-platform spaced repetition software designed to automatically generate mathematics problems and set repetition intervals based on data gleaned from user metrics. This makes the repetition intervals as personalized as that of Anki but adds variety to the items being studied, hence avoiding the practice effect.

Components of the Math Trainign App: Spaced Repetition Scheduler, Random Question Generator, and Metrics Analyzer.Figure 1. Components of the Math Training App.

The Math Training App has three main components, as shown in Figure 1. These are the Spaced Repetition Scheduler, Random Question Generator, and Metrics Analyzer.

Spaced Repetition Scheduler

The Spaced Repetition Scheduler works as a simple SRS scheduler using a similar method to Anki. As the user correctly answers the questions in their problem set, the scheduler will take note of two things:

  1. The user's total correct answers.
  2. Feedback from the user's perceived difficulty.

Both will add weight as to when the user will be advised to study the same concept again. Suppose the user were to study a topic like a Hadamard products for 3D matrices, for example. If the user were to answer 8 out of 10 questions correctly, the user's next practice day will be based on the percentage of correctly answered questions (80%) divided by its difficulty value (suppose easy = 3) on the set's difficulty and multiplied by a correction value (to translate the value into days).

Random Question Generator

The random question generator creates mathematical problems for specific topics. Basically, it only generates the givens and computes the correct answer beforehand. If the user answers the exact same value as that of the computed value, the question is marked as correct and continues to the next question.

It should have a difficulty-checking system to gauge whether the problem sets might become more difficult than it normally will.

One way to implement this difficulty-checking system is by assigning a thing I would like to refer to as a pseudo difficulty index. Normal difficulty indexes are taken as the percentage of people who got the item wrong during analysis. However, since we lack the sufficient resources to get this value by ourselves, the pseudo difficulty index will be taken as the standard deviation between each given, multiplied by the average number of digits.

However, a simpler way might be to get rid of this and just tell the generator to create givens that don't reach higher than two or three digits.

Metrics Analyzer

The metrics analyzer is a data visualization of the user's progress. It has a UI that creates the graphs for their usage history as well as a method of analyzing their metrics.

To predict a person's future progress, the simplest we can do would be a linear regression based on their progress from a specific timeframe. A linear regression, in the simplest terms, is finding the straight line that best describes the direction of a given set of items in a dataset.

Linear Regression ExampleFigure 2. Linear regression.

The least square method is the simplest one we could make, which is finding the linear configuration that leads to the smallest differences between each data points when their distance from the line has been squared.

Business Model

The Math Training App will use a freemium model similar to that used in Obsidian. All of the app will be free for use. Users can pay a supporter fee to gain access to supporter-only features. Should the user want to sync their data to another device over the cloud or save their data in our servers, they will need to pay a monthly subscription fee.

The supporter fee provides more analytics conversion and a "supporter" UI skin and a badge that shows our team's gratitude toward their willingness to financially contribute at least once to our team. We can also add their names to the list of supporters on the product website, which should be an opt-in feature. Users can pay for this without having to pay for the monthly subscription.

Meanwhile, the subscription fee will only cover the syncing and data-saving/recovery features. This will not only cover our infrastructure costs, but also provide us with funding to continue our operations. The users are free to move their files around and use other syncing services if they choose not to opt in.

Lastly, the app should not try to monetize through advertisements as it this will distract users from their study sessions. I also suggest that we add an opt-in "let us know your user metrics" option so we could further understand how users do when they use the app. This option should have a sort of a reward for the users, such as extra metrics data that they can look at for their analyzing their progress.

Methods

Team Composition

The project will require five teams working side-by-side to complete the app. These are:

  • Question design team
  • UX/UI team
  • Backend team
  • Documentation team
  • Metrics team

Question Design Team

The question design team is in charge of creating the algorithms that the Random Question Generator will use for generating givens and answers. We might need a proper mathematician to explain the concepts and algorithms to programmers involved in this team.

UX/UI Team

The UX/UI team will focus on the looks and functionalities of the app. The app should be usable in the following platforms:

  • Android
  • iOS
  • Website Application
  • Windows
  • Linux
  • MacOS

Backend Team

The backend team will create the syncing feature and the servers for the website application. They are also in charge of maintaining cross-compatibility with other Daedalus services, should we plan to add this in a suite as part of a microservice.

Documentation Team

The documentation team is in charge of the user guides, manuals, legal policies, wiki entries, and developer notes for using, creating, and maintaining the app.

Metrics Team

The metrics team will design the ways that user information can be analyzed and visualized. Preferably, we will need at least one person who is adept at Statistics in this team. Work for this team borders close to data science and analytics territory.

Project Phases

The project will be divided into separate stages, aka phases. Until we reach the sixth phase, we will need to focus on the Windows and Android versions which should have the largest potential for buyers.

We can start working on the web application upon reaching the sixth phase and then MacOS, Linux, and iOS after that.

First Phase: Prototyping Phase

During the first phase, we will need to create a basic SRS that outputs hardcoded questions. The output during this phase can be used in the next phase as we look for investors for our project.

The phase will be marked complete as soon as we create a properly-working SRS application that:

  • Has a working Spaced Repetition Scheduler
  • Suggests topics to study based on the scheduler's recommendations

Furthermore, during this phase, we will need to lay low on the UI/UX side. To save on manpower, we can just have the UI/UX team create a basic workable design that just works.

Second Phase: Random Question Generator

The second phase is when we will shift our focus toward building the random question generator. I advise that we only hire a mathematician right after we get to this phase to reduce hourly payment costs.

In this phase, we can also start looking for investors or government funding as soon as we have parts of the random question generator working for a couple of mathematical concepts and techniques.

This phase will be marked complete as soon as we have:

  • Identified key concepts to generate problems and answers.
  • Covered at least 80% of these concepts.

Third Phase: UI/UX Phase

This phase is when we would create a public alpha version of the app. The UI/UX should be good enough to be useable by most users. We will also need basic user metrics during this phase, possibly on the things related to the pseudo difficulty index and popularity of certain topics.

This phase is marked complete as soon as we have released the public alpha.

Fourth Phase: Metrics Phase

The user metrics acquired during the public alpha will be used as the initial dataset for working with user metrics. In accordance with the Data Protection Act of 2012(6), we will also need to be careful with whom we allow access to this data.

The phase will be marked complete once we have made the metrics part of the system.

We can also announce our plans for a paid version at this point, hinting at user metrics which "will take time and resources to develop".

Fifth Phase: Testing Phase

The fifth phase is when we could start to announce the release of our public beta.

This phase will be marked complete once we have:

  • Finished 100% Random Question Generator
  • Finished all of the metrics
  • Released a public beta featuring the 80% Random Question Generator, a better UI, and data visualization for basic user metrics

Sixth Phase: Public Release and Backend Integration Phase

The sixth phase is when we would release the app with the full 100% Random Question Generator and most of the user metrics we plan to give for non-supporter users.

During this phase, we will need to set up a payment scheme for the supporter role, a network system for online syncing, a server for the web application version, and databases for the backup service.

Seventh Phase: Paid Services and Branching to other Platforms

During the seventh phase, we will release our paid versions and metrics upgrade for non-supporter users so they won't feel left out. This will be the last of our major updates to the main app and we will need to start porting the app into other operating systems, starting with whichever has the highest potential for users (probably Windows).

References

  1. Dela Cruz, T.J.B. (2023). A Theory on Learning. Frostzeichen Private Library. (Unpublished Manuscript).
  2. Wikipedia. Category: Spaced repetition software. (Online directory, Archive.). Retrieved: October 1, 2023; 17:43 PHT.
  3. Wikipedia. Spaced repetition. (Online encyclopedia, Archive). Retrieved: October 1, 2023; 19:13 PHT.
  4. Kasirajan, A. (2020). Linear Regression using Sum of Least Squares. (Online Article).
  5. Batucan, J. (2024). Windows Cards in the Philippines. Daedalus Archives. II. (Printed Encyclopedia).
  6. RA 10173. (2012). Data Privacy Act of 2012. National Privacy Commission, Republic of the Philippines. (Legal Code)