An IOS app designed to teach circuitry and coding to low-income communities

Problem Statement

Circuitry and electricity, while important principles to learn for any self-sufficient person, are being under-taught in the education system. As the technology sector grows, the gap between the amount of jobs and the amount of educated workers to do them grows with it. In fact, while there are approximately 1.4 million computer-based jobs in the US, there are less than 400,000 educated students that have the potential to fill these jobs. A lack of accessibility and education for technology causes this. In fact, only 10% of schools nation-wide offer computer science classes. In addition, only 1.4% of advanced placements students took the AP computer science exam compared to the 40% who took the AP English exam. Despite attending a vocational pre-engineering academy, we still see this same problem occurring in our school every day. Even in our school, the number one STEM school in the entire country, only one-third of our class ends up taking a class that teaches students to use microcontrollers. Our team saw the need for a cost-effective solution that is accessible to people of all ages and socioeconomic backgrounds. To accomplish this, we created Spark.


Our solution is Spark, a free mobile app that can revolutionize the way schools teach technology. It simulates a microcontroller and gives students lessons on coding, wiring, soldering, and many other skills required to be a successful electrical engineer. Since everything in the app is virtually interactive, the entire price of teaching from Spark is based on the app’s price - free. Spark eliminates and risk involved with traditional electrical education such as electrocution and fire. This gives all students the ability to learn technology in a safe, inexpensive, and readily accessible environment. Due to its accessibility, Spark will also allow schools that previously were not able to teach electronics to do so, especially in poverty-stricken and minority-dense areas. Using Spark, teachers can bring their old hazardous methods of teaching electronics into the 21st century. People may argue that Spark is not useful, as many people will not use microcontrollers and coding in their career. However, as technology progresses, many jobs become more interrelated with what Spark teaches, creating the ever-increasing need for this type of education. As well as this, coding and working with electronics are shown to increase logic and creativity, therefore making Spark useful for all careers.

Uniqueness of Spark

There is a variety of technology education apps currently on the market, but as of now, there is no app that combines simplicity, accessibility, and user-friendliness to educate a user about digital electronics. Spark provides a user with a complete virtual toolbox, without the requirement of spending hundreds of dollars on materials that are not easily accessible in public schools. In comparison to current solutions, Spark stands out in several ways. Firstly, there are no mainstream applications that teach digital electronics and microcontroller coding. As well as this, Spark is far more customizable than any similar applications. Instead of doing predetermined assignments, a user can simply ‘play’ with Spark to gain understanding and knowledge. However, Spark combines all viable methods of learning into one environment - something no other app currently available has done. Studies show that circuitry is one of the hardest concepts for the average student to grasp, which is due there being no solution for a complete novice to learn the basics of microcontroller-programing. Spark can be used to bridge the gap between beginner and expert, allowing students to learn and comprehend digital electronics.

Spark's Features

To add to its uniqueness, Spark is full of features that separate it from its competitors. Firstly, to complement its “jack-of-all-trades” theme, we included coding, circuitry, and hardware all into one simple and coherent interface. A click on a menu item will bring a user to their chosen destination, allowing them to interact with whatever that specific sub-app feature has to offer. For example, clicking the coding menu item will bring the user to an IDE where they can code exactly what they want to happen on the microcontroller. Hardware will present all of an engineer’s needed tools, and the circuitry menu-item will allow the user to virtually interact with a microcontroller, which is functioning based on code inputted in its respective menu-item. A final app version would employ a greater magnitude of educational involvement, with challenges and quizzes for a student to test their skills, and possibly an app-teacher interface that would allow for a greater degree of in-school incorporation. As a result of its many features, Spark is versatile and applicable for all educational purposes - whether it be a user learning for a class, a job, or personal enjoyment.

Built With

Share this project: