The Past, Present, and Future of Computer Science Education in Virginian High Schools

Before we start, let me ask you a question: For the public high schools of Fairfax County in Virginia, approximately what percentage of them do not have any computer science related courses?

You might guess it would be around 15% or 25%, but what if I told you that half of the FCPS high school students can’t learn programming at school? With the introduction of self-driving automobiles and all the developments in machine learning and artificial intelligence, the availability of these related courses should be front and center. Not only because some students may want to learn how to write those apps, but also the requirement for more and more employees in various sectors to have computer skills.

Therefore, Virginian high schools should prioritize funding for computer science programs of cutting-edge technologies by updating current curriculums, supplementing new courses, and training more competent teachers to best meet the job market demands.

A Sneak Peak at the History

The first computer was invented in the United States, but do you know what’s more fascinating? The growth of computer-related jobs. According to the report from the Bureau of Labor Statistics of the U.S. Department of Labor, there has been a continuously rising demand for computer scientists, even during the recession period between 2007 and 2009. Not only is it independent of the current economic trends, the job outlook for these fields predicted by the report is very promising. In the upcoming 10 years, there will be 24% more jobs for software developers and 28% more for information security analysts. That is 3 or even 4 times the 7% average increase of all jobs.

So do we not have any CS courses offered at high schools? Well, we do. The AP Computer Science A class regulated by the College Board is one of them. Unlike the other courses designed by high schools, APCSA has been updated several times to reflect the changes in the current trends. Initially, back in 1984, this class teaches students Pascal. Then in 1999, they decided to switch to C++, and later in 2003, they switched to Java, the top language used across all computer programs. However, they did not update the curriculum since 2014 to reflect the major changes in the Java programming languages, and basically, the students are now learning the wrong “facts.” The outdated materials frustrate students and require students to do much more work than they need if they know about the recent changes. It’s like you could get your hands on an iPhone X, but you have to stick with a slow iPhone 6 without even your battery replaced.

Indeed, some of the high schools already have a variety of programming classes offered for students of different levels. For example, Oakton High School, a typical public high schools in Fairfax County, Virginia, teaches Information Systems, Programming, Webpage Development, APCS A and Principles, and the advanced variants for some of these classes. They provide students with many choices, but none of them teach students the new skills that tech companies are looking for.

Let’s look at the web development class. Its textbook teaches students how to use XHTML, which is known for its poor compatibility and had been abandoned a long time ago. The current industrial standard is HTML 5, with much more powerful features and straightforward “grammar.” Concerned, I asked the teacher how the county plans to update the course curriculum. The teacher — Larson — gave me an unexpected answer. They are taking it away sooner rather than later, for they believe students are not interested in it and the class itself is too hard. I think the county doesn’t really understand why the students are not signing up for that class. While the difficulty might be one of the reasons, the main cause is likely that the class really is not sufficient to prepare them for their future jobs.

Even worse, around 50% of the FCPS high schools don’t offer a single computer science class. Sharon Wu is a current member of the Career and Technical Education Advisory Committee. She said, in fact, FCPS has no budget to hire more CS professionals or offer more classes. Even at Thomas Jefferson High School for Science and Technology, one of the top-ranked high schools in Virginia, students are seeking summer programs because “school is too easy and no advanced stuff is taught in class.”

What’s Happening Now?

Maybe these issues aren’t important in the first place — students do not realize how important it is for them to be able to use a computer. Many high school students these days are obsessed with smartphones, but at the same time, they don’t know how to use a computer. The school libraries have to teach them how to find the most relevant sources in the databases, the tech office has to help them connect to the school Wi-Fi, and some even need help with using word processing softwares to complete their assignments.That’s because they don’t know what they can do with computers and programming. Students who do know are taking classes on their own to acquire knowledge for brighter futures. These motivated students are willing to do regardless of the consequences, whether it means traveling to a local college on a regular basis or giving up some of their homework time. I do the same, and for me, the motivation came from Masako Wakamiya. She is an 82-year-old Japanese woman who learned programming on her own after retirement. She made several apps to teach people traditional culture and handkerchief making. She proved to me — and the world — that everyone, no matter their gender, age, or race, can master programming. Then could we utilize the skills as our “wings” in daily life, exploring a wider world that we could not have imagined before.

However, we do want to have support from our schools. Students were really excited when Oakton (for example) announced the new Cyber Security elective.

Students trying to penetrate into the classroom.

The information session was crowded with students of all grade levels. The room couldn’t fit them all, so many just stood outside, trying to grasp any information they could hear. This is an exciting change, but with it comes more problems to solve. Too many students sign up for this class and the teacher, Mr. Larson, will need to balance out his schedule with all other programming classes. Even after taking out the webpage development class, he still needs help from another teacher. Without an increase in funding qualified teachers, some students will need to take their alternative instead.

#warning(TODO)

We could do nothing, but what we can at least try to resolve these issues?

The most apparent solution is to use up-to-date materials in class. This will not be as easy as it sounds. Textbooks might need to be replaced more frequently than those for other subjects, teachers need to spend more time planning their classes to incorporate the new materials. In case there isn’t a textbook ready for use, teachers can consult other free, but at the same time professional, resources online. For example, the authors of The Swift Programming Language ebook are constantly updating it to demonstrate the new features and replacing examples used in the book with more relevant ones. Is this too hard? Maybe, but the AP US History exam was modified almost immediately after the 2017 AP Exam. If the history teachers can handle the changes, I believe our Computer Science teachers can do the same.

A map from code.org showing the states that require all high schools to have CS classes.

Virginia already allows rigorous computer science courses to satisfy core high school graduation requirement and allocates funding specifically to computer science, but we can push this further. The state can make computer science fundamental to K-12 education. Congress’ 2018 budget has dedicated $50 million per year for STEM and the new grant guidelines prioritize funding for computer science in schools. With that and the state standards for computer science education, we can require all schools to teach computer science in Virginia.

If all of our future generations can learn how to use the state-of-the-art technologies, they’ll be able to use programming to

Create a world like no one has seen before.

Danielle Feinberg, Director of Photography for Lighting at Pixar


Side Notes/References

Danielle Feinberg and her team use programming to generate the astonishing scenes we see in Pixar movies, such as the Marigold Bridge in Coco and the Scottish forests in Brave. For more, see WWDC18 lunch session The Art of Science: Bringing Pixar’s Imagined Worlds to Life.

Code.org is always trying to expand CS education to more students. Their email directed me to a solution.

Dr. Wu really helped me a lot, and I’m looking forward to continue working with her. And thanks to Mr. Lau and Mr. Larson of Oakton High School in giving me insights of the difficulties and realities the teachers face, allowing me to analyze the issues from a different perspective.

I highly recommend you to check out the YouTube video “Now Is the Time to Get Your Own Wings” by Wasako Wakamiya. It’s definitely not a story you can hear about every day.

Other information is from the National Science Foundation (College Board), and the US Department of Labor.

Thanks to editor Jiachen Sun for revising my crappy first draft posted on Medium. This polished version is also available through Wuz Up!, a multi-cultural group aimed at teaching newcomers about American culture, values, and lifestyle.