5 minute read
THE COMP SCI JOURNEY
from 2023-03-02
BY ANNA SONG & ROSEMARY TIMMER-HACKERT
DESIGN BY ANNA SONG
Advertisement
growth of computer science education during the 15 years he spent teaching at The Bryn Mawr School in Baltimore, Maryland. In his first year teaching there, only one AP Computer Science class existed, consisting of 15 students. In his final year, there were four sections of AP Computer Science and other course options available for all grade levels.
“Hopefully, that same kind of growth is going to continue at West as well,” Alexander said. “Right now, at West, we have three courses. And I hope that we expand way more than that, to the point [where] we can have a whole department and not just one teacher here teaching [computer science].”
The ICCSD recently introduced computer science curricula at both the junior high and elementary levels in compliance with Iowa House File 2629, signed into law in 2020. Starting this fall, the Act requires computer science to be taught in one grade in elementary school and for secondary schools to offer at least one computer science course. Now, all three ICCSD junior high schools offer the new course, Computer Science Discoveries. The ICCSD Computer Science Curriculum Coordinator, Dominic Audia, is responsible for helping implement these new changes.
West High Courses
INTRODUCTION TO COMPUTER SCIENCE
“[The district has worked] really hard at providing the foundation for a lot of teachers by applying for grants to give them training and provide on-site training,” Audia said. “[We’ll] be able to implement some really unique classes K-6 as well as diving into some really neat computer science concepts [in] fourth-grade science using robotics.”
Last year, a new course was introduced at the high school level: Introduction to Computer Science.
“It was almost too big of a leap to come from middle school and jump right into AP Computer Science. We didn’t feel like there was any bridge that would allow kids to easily take a higher college-level course like that,” Audia said.
For students looking to take more advanced computer science classes, the district enables students to take collegiate-level courses at the University of Iowa if they’ve taken AP Computer Science A. Catherine Yang ’23 is currently enrolled in three computer science courses through the post-secondary enrollment option; she took Discrete Structures during the university’s fall semester.
“[In AP] Comp Sci A, you just learn one language, Java, and that’s it. You can do different things with it, but it’s all kind of boring. You don’t really get that much freedom. But in Discrete, you learn cooler things, and it’s not isolated to one language,” Yang said.
However, the classroom environment isn’t the only place to learn computer science. There are many resources and tutorials available online.
“Computer science, being on computers, there’s really no shortage of places to go on the internet to teach yourself. And that’s the thing about most com-
Pseo Uiowa Courses
AP COMPUTER SCIENCE A
DISCRETE STRUCTURES
An
COMPUTER SCIENCE PRINCIPLES
DATA STRUCTURES
Gives
COMPUTER ORGANIZATION
Introduces puter scientists; they have taught themselves a lot of the things that they use in their jobs,” Alexander said. “It’s always changing, and so there’s always going to be new things to learn after you leave the classroom.”
Yang has gained her computer science knowledge in a variety of places, but she first got into the field using a free online program called Scratch.
“Back in third grade, my computer lab teacher started a little student tech support club called ‘The Tech-inators.’ She recruited third and fourth graders who were good at and liked the computer lab lessons,” Yang said. “That’s when I learned coding on Scratch … From there, it just kind of snowballed.”
Another beneficial learning experience for Yang was joining Iowa City Robotics, a competitive FRC robotics team for high school students across the Iowa City area. Each year in January, the FIRST Robotics Competition releases the objectives of an annual game. The team, which Yang now captains, spends three months designing a robot to best fulfill the objectives that they then bring to competitions.
“We start brainstorming and be like, ‘Okay, so first priority, we want a robot to be able to move, pick things up, move things around, etc.’ And then, [we build] really basic attachments that you attach to your robot base, which is almost the same every year. We adjust it depending on certain factors, like how much it needs to move,” Yang said. “[Programming the attachments] comes last.”
Robotics isn’t the only option for students looking to competitively exercise their computer science knowledge. Along with being the lead programmer for Trobotix, the FTC West High robotics team, Alex Yao ’24 also competes in the U.S.A. Computing Olympiad. He appreciates the chance to try different parts of computer science.
“There’s a wide variety of what you can do with software, and the skills that you need for each field [vary] a lot,” Yao said. “Some experience does carry over, like a general sense of how programming languages work and the mindset that you need to order things logically.” Audia believes people often have a smaller view of what computer science encompasses than what it actually does.
“The misconception is that computer science just involves programming. But it’s a lot more than just coding and typing on the keyboard,” Audia said. “Computer science involves networking and the understanding of computer hardware … You can specialize in data science databases, as well as ethics and appropriate use of computers. It’s a really broad field.” kids who have taken [AP Computer Science A] and done well in the class have some good job opportunities to work in the field.”
While Yang isn’t sure if she will pursue computer science or actuarial science, the science of assessing financial risks, she knows her computer science skills will help her.
This work experience is valuable because a computer science career can be quite different from the act of learning computer science.
“Whenever you take a course online or in a university, or when you’re learning on your own, usually it’s not reflective of the actual software industry,” Yao said. “You’ll need to learn how to collaborate with developers. You’ll need to learn how to use tools outside of directly programming.”
Computer science skills outside of pure programming, such as rational thinking, are also valuable.
“It’s fun when you just get to use your cognitive skills and collaborate and problem-solve, and really make a lot of mistakes without any consequences,” Audia said. “The compiler, [the program that converts the code into instructions for the computer to follow], will get angry at you and give you a really funny error that is computer talk; you don’t know what it means at all … It’s good problem-solving, like chewing on a puzzle.”
Alexander strives to create a classroom environment where students feel comfortable making these mistakes.
“It can be really frustrating to learn [computer science] because you’re going to make mistakes, and computers can be pretty unforgiving. I think you have to have the mindset that it’s okay that you’re going to mess up. And it’s okay to fail every now and then because that’s just a part of learning,” Alexander said.
“Computer science
is a very versatile field to be in right now,” Yang said. “[As an actuary, coding is] definitely [not] a need-to-have skill, but a you-should-probably-have-this skill.”
Computer science knowledge has allowed many West students to get real job experience from local companies.
“It’s not uncommon for employers in the area to reach out and say, ‘Hey, do you have a kid who is a good programmer that could maybe help do some Java for us or Icon?’” Audia said. “[West]
Yang emphasizes the importance of finding a passion for the things you want to do with computer science.
“I would definitely try to apply it to your life and be actually excited about what you can do with the programming,” Yang said. “There’s a difference between knowing how to code and knowing how to code [but] also being motivated to do things with it. And I think the latter category of people are probably the ones who stick to computer science.”