Blog Post #1: The Story So Far


Hi! I’m Arvin, a PostBacc student enrolled at Oregon State University. Over the next few months, I’ll be chronicling my journey through CS467, the final course needed to earn my bachelor’s degree in computer science. I’ll share the ups and downs of the Capstone, what I’m learning, and how it’s helping me to become a better programmer.

Before I start, I’d like to take some time to look back on the progress I’ve made so far. Like many of my fellow students, I started this program in the middle of the pandemic, hoping to find a more stable path forward. COVID-19 had thrown a wrench in my plans, bringing my office and school supply business to a halt.

At that point, my programming experience was mostly limited to building a Raspberry Pi bot to farm shiny Pokémon while I slept. I was also in the middle of an Augmented Reality phase, where I tried to build a basic headset based on the schematics provided by a group of DIY AR enthusiasts known as Project Northstar. It didn’t take long for me to realize that I was in way over my head and that I’d need more than self-study to do the kind of work that excited me. Long story short, after psyching myself up over the next few months, I finally mustered up the courage to go back to school.

Smash cut to 2 years later and here I am, still feeling a bit out of my depth, but so much further than I would’ve been had I not gone down this path. I was planning on writing a little something about each class in the program (and someday I might) but for now I’ll focus on the courses and experiences I found most valuable. And so, in no particular order:

CS261: Data Structures & CS325: Analysis of Algorithms

These foundational classes provided me with what Professor Scovil called the “keys to the kingdom.” In Data Structures, I filled my programming toolbox with common design patterns. In Algorithms, I acquired a framework by which I could evaluate my work. With these keys in hand, I was able to move beyond merely brute-forcing problems to writing clean, efficient code.

ULA-ing for CS261: Data Structures & CS325: Analysis of Algorithms

There’s no better way to reinforce your knowledge than by trying to teach what you’ve learned to someone else. My role as an Undergraduate Learning Assistant (ULA) offered me ample opportunity to do just that during weekly office hours. What’s more, these hours often involved debugging sessions for tricky assignments, which gave me a chance to practice perspective taking. By seeing code through other students’ eyes, I identified blind spots in my own thinking and learned to stay open to different problem-solving strategies.

CS344: Operating Systems

This class humbled me. As part of the Python cohort, this course in C felt like learning to swim by being thrown into the deep end. That said, the early struggles just made succeeding in this course all the sweeter. By forcing me to rely on documentation, it also taught me to be a more self-sufficient problem solver.


Until this post, I hadn’t considered how far I’d come since I began this program. It’s easy to look at the path ahead and get discouraged by how much further there is to go, or by how much more there is to know. It’s important to pause and reflect on one’s journey from time to time in order to find inspiration and motivation for the road ahead.

Print Friendly, PDF & Email