School Rubric

Please support our mission to connect and share information with educators around the world.

Computationally Thinking: Building a Computer Science Program

Entering college in 2003, I was eager to learn and eager to become a teacher. My dreams then were to become a Computer Teacher, much like the ones I had in high school, and because of my love of technology. I quickly shifted gears after falling in love with Calculus, and finding my first ever coding course in C+ was not something I really enjoyed (It is completely okay to change majors!). In 2018 I stepped into the realm of being a computer science teacher and will continue to advocate for my students to engage in computational literacy and learning. From my Geometry course to AP CS-A, using technology as a tool to learn is something that I look forward to continuing and I hope my story and shared resources can help others develop a passion for coding in the classroom.

At the start of my 2017-2018 School year, I was completing course work in a second master’s degree specializing in Informational Technology. I had been teaching High School Geometry for the past five years at William Penn Senior High School in York, Pennsylvania. inspired by my graduate classes, I decided to create a few projects using the free online coding software at Scratch.MIT.edu that I found on Edutopia (Ryder, 2014). They incorporated coding into the mathematics classroom, specifically drawing and naming shapes and fractals in Geometry. This creation of code, and trying out the Code.org One Hour of Code Initiative for the first time ever, led me down a path towards teaching Computer Science. After signing up to be a One Hour of Code classroom, I immediately was on Code.org’s email list. That helped me engage with Advanced Placement (AP) Central and the drive to create an AP Computer Science Principles class within my school.

Students in my 4th Period Honors Geometry working on their Code.org Intro and gearing up to start the Scratch Projects.
Students in my 4th Period Honors Geometry working on their Code.org Intro and gearing up to start the Scratch Projects.

The school had lost many programs involving elective courses during rough periods of financial unrest within the district and furloughs to teachers who were not deemed as important as core content teachers. So finding a way to bring back something involving direct instruction with computers and the computational thinking behind coding was a huge need. The Commonwealth of Pennsylvania also had a new PAsmart initiative to build in more Computer Science courses throughout the entire state.  The path to adding more student course options was clear, so I started to plan with our guidance team in making the course proposal, course catalog description and syllabus for the inaugural AP Computer Science Principles class. The guidance counselor and an assistant principal who shared my vision set to make this happen, and also secure the funds to purchase a laptop cart for my classroom to teach the course.

Summer Prep

While making sure we were going to have the course running the right way, I was approached to attend a full AP Computer Science Principles (CSP) Summer Institute, run by AP Central, which gave me five days in Philadelphia training with a well versed AP CSP teacher, and a cohort of 20 other teachers to lean on for support. We were given ideas on how to approach the new content on binary conversions, pseudocode and of course how to tackle preparing students to complete the Create Task and Explore Task components to the AP Exam they were about to complete.

When all staff returned to school at the start of our week-long Professional Development, we discovered new teachers were hired, including a tech-ed teacher and a position that opened up for a current social studies teacher to go back into the processing and computer classroom as well. The school had started to pave a way for students to increase their computer literacy after years of not having courses that were that content-specific.

Students in my 7th Period AP Computer Science Principles Class working on Edhesive Code.
Students in my 7th Period AP Computer Science Principles Class working on Edhesive Code.

Smoothing the Way

When the 2018-2019 school year began, I had no laptop cart and was sharing it with the Social Studies teacher down the hallway for my 7th and 8th Period courses. For my 7th period class, we were using the cart for a newly created 21st Century STEM Algebra Course that worked on solving linear inequalities and linear programming using Microsoft Excel Spreadsheets. The cart was used the other period for the the new AP Computer Science Principles (AP CSP). The AP CSP Class registered on Code.org and started working seamlessly. The curriculum came with “un-plugged” activities, coding activities and support for a teacher new to the content. A former student, Taslim Hossain,  who took the course and moved on to college stated, “I am really appreciative of the Computer Science class I was able to take in my senior year of high school! I’m not a computer science or computer engineering major, but the ability to code has helped me in my endeavors in becoming a Civil Engineer. In fact, in one of my engineering courses, I won 1st place in a course-wide competition by designing and coding a fully autonomous vehicle. This definitely would not be possible without the background experience I gained from my AP CSP Class!”

Sharing the laptop cart worked for the time being but was not ideal.  Having to constantly walk the cart back and forth from the shared room, and make sure the laptops were always charged over-extended use of my time. The classroom needed its own laptop cart and it needed it fast as we continued the year. When I asked for support, the assistant principal stepped up and got 32 laptops working and delivered within a few weeks. Apparently our district had been purchasing more laptops to increase the amount of technology in the classroom. All content courses were to get a new cart the next year as they phased them into the building over the summer, but I got my set early. The students were impressed that we had new technology to help them with their computer science exploration.  The newly hired tech-ed teacher also found a great opportunity for our building to join the Amazon Future Engineers program, and gain more curriculum for coding and computer literacy courses. The courses would be mostly online and come with free courseware, involve teacher training, discussion opportunities, and additional resources from Amazon’s online education tools through Edhesive.com.

Student in my 8th Period AP Computer Science A Class coding in Dr. Java.
Student in my 8th Period AP Computer Science A Class coding in Dr. Java.

Continued Growth

The first year I taught Computer Science went pretty well. Of 24 total students, 17 took the Advanced Placement Exam. Five students passed the exam with a 3 or higher, and only two had a score of 1. One guidance counselor, Bill Goodyear, stated, “This program opened our student’s eyes to discover Computer Science. The creation of this class was the creation of a new department in York City that is equally as important and beneficial to the students as English, Math, Science, and Social Studies.” The statistics were not great, but the additional passing scores and the number of students who took the course, along with our team of teachers bringing another AP course in Spanish, earned us the 10th Annual AP Central Honor Roll Award. This shocked a lot of other schools in our county who did not think the local urban school was up to par (VanAsdalan, 2019).

The second year of teaching computer science (2019-2020) saw AP Computer Science A (AP CS-A) added to the roster, and when students who were interested in the course could not fit it into their schedule, I made sure that they had the opportunity to still take it in an independent study fashion. I currently have five young coders in the AP CS-A course, and now 24 students in my AP CSP. The program has grown, adding more AP opportunities, time to learn to code and practice computer literacy skills. Lucas is quoted as taking the AP CS-A course because he enjoyed the previous course AP CSP, and said, “Some benefits (to taking AP CS-A) are: strengthening my critical thinking, writing and mathematical skills.”

As a technology team we have also been approached to build a possible internship program with a local robotics company. As well as a student led IT Internship within the William Penn SHS building.  Of course, I cannot say that I did all of this alone, and no one person should have to bear the weight of all of these decisions alone. I had a team of eight other AP teachers to pull expertise from, training from an awesome expert, a guidance counselor in my corner, and an assistant principal willing to go to bat for me.  Now there is a whole technology department, and a STEAM Academy within our building committed to continuing and building the computer science program.

When asked why they take my AP Course, and what benefits they have in taking a computer science course a lot of them talked about their future and the future of our technology. In my AP CSP course Jhosean stated, “I wanted to take this AP Course because I believe this will help me for the future, as technology is advancing, I will understand the deeper meanings and structures coming to me soon.”  Another student, Brian said, “The benefits I can have from taking a course in computer science is the opportunity in jobs in a growing industry.” Nathaniel’s reasoning was, “Taking a course in computer science gives a clearer view of the capabilities of computers. This course is also a beginning for my future.”

This article is available and can be accessed in Spanish here.


Ryder, D. (2014). Easy Projects to Get Started With Scratch: Drawing 2-D Shapes. Retrieved from https://www.edutopia.org/blog/scratch-programming-drawing-2d-shapes-dylan-ryder.

Ryder, D. (2014). Intermediate Level Projects with Scratch: Random Shapes on Demand. Retrieved from https://www.edutopia.org/blog/scratch-programming-intermediate-proiects-dylan-ryder.

Ryder, D. (2014).  Advanced Level Projects with Scratch: Fun with Fractals. Retrieved from https://www.edutopia.org/blog/scratch-programming-intermediate-proiects-dylan-ryder.

VanAdasan, L. (2019) Surprising Results for York County districts on AP Honor Roll. Retrieved from https://www.yorkdispatch.com/story/news/education/2019/12/20/surprising-results-york-county-districts-ap-honor-roll/2675776001/.

Share it
Alexander Gibson
I am a High School Geometry and Computer Science Teacher. This year I am working on building an eSports Club and finished a second Masters as an IT Specialist. In my spare time, I enjoy the moments I spend with my wife and two little girls.

Categories
Tags: , , , , ,