Future of Work in computing

The most frequent questions any student asks in high school are:

Why am I learning this concept and doing mountains of worksheets?

When am I ever going to use this in the real world?

This guide is designed to answer those questions and connect them with the Future of Work.

The biggest difference between high performers and low performers in high school is an issue of motivation and relevance. (Of course, there are also other well-known factors like lack of support at home and role models, but they are related)

High performers don’t always need the answer to the

Why?

question

school itself is important to these students

or

they already have found out (through sources outside of school) where they can use what they learn

I’ve designed this guide to hide extra details until you want to dig deeper. If you’re interested in learning more about a specific topic, click the ▶ to see more details.

Learn how things they use every day are designed and structured

Learn computer science (how computers store and calculate things, break problems down into smaller pieces, how to efficiently order steps)

Learn the ethical implications of coding algorithms and design decisions

Make school feel more interesting, engaging, and relevant

Make meaningful outputs (such as a real-world website or electronic device, or game)

Students should learn coding in:

Useful for a lot of applications.

Easiest for students to get started with because it doesn't require weird symbols like

;

or

{}

.

Especially useful for data science, computer vision, simulations, and machine learning using libraries such as Numpy and Pandas.

AP Computer Science will not teach the skills required for any of these usecases.

Used everywhere on the Web and Cloud and also on iOS, Android, and desktop apps.

Specifically learn React for UI development. No need to explicitly teach HTML and CSS - they will be learned automatically.

Used everywhere, but especially on microcontrollers/electronics, in Video games / VR, and robotics

Probably the most complicated language to learn deeply.

Students should learn the following math by end of high school:

If they’re interested in

Algebra 2 and geometry are enough for 90% of usecases.

Precalculus may help for 7%.

Calculus, linear algebra, and statistics probably cover the remaining 3% of usecases.

If they’re interested in

If someone wants to be in one of these fields after graduating from high school, Precalculus is the bare minimum.

To get to strong understanding, vectors are really important. Linear algebra and matrices are pretty essential. A high schooler doesn’t need to formally know linear algebra to use a technique, but they should be comfortable with matrices and have a rough idea how the technique works.

(Multivariable) Calculus is also really important, but it is more important to understand the conceptual theory and meaning. Very very few people will be modeling and calculating equations by hand.

Learn more about each application: