Halfway There


College. Times of fun, frolic, and of course, learning. For a couple days now, I’ve been thinking about the past 2 years of my life, focusing on the most meaningful aspects. I needed a place to write my reflections down, so I thought perhaps this would make for a fitting first blog post. So here’s a couple shoddily jotted down thoughts on what I think have been my most significant takeaways from school, so far.

School still sucks, but less #

I used to absolutely despise highschool. Part of it was because I was a lazy slob who wanted to play RuneScape every waking hour but mostly because I didn’t like what I was meant to do in school in order to do well. For example, the Computer Science curriculum tested us on some pretty jank stuff. We’re talking definitions, case studies, and the most basic OOP. I’d spend hours the morning of the exam rote learning the names of 7 layers of the OSI model, but not what they actually were useful for.

When I got to college, I was hoping that I would be, for the most part, doing things that I enjoyed, and those things would directly correlate to how well I was doing. This turned out to be initially true! I felt pretty academically satisfied after my first year of school, but (to my unfortunate realization) it just happened to be that intro classes at Penn are run especially well. Not only do they teach you real CS fundamentals, but they also have fun, knowledgeable folks on staff and run a great curriculum that kept me engaged with the material. (aside: I was pleasantly surprised to learn early freshman year that CIS 1xx staff are pretty tight-knit. They even do BYOs – I know, not what you’d think when I mention CS course staff)

As I progressed to some of the upper division classes, I was still learning interesting things, but it felt like I was increasingly falling into the habit of autodidactism. For example, I took CIS 521: Artificial Intelligence sophomore fall. The class was, by all metrics, good, but there was no sense of community or engagement as in the intro classes. Crucially, it could be done async and had annoying assignments. The in-person equivalent just didn’t seem valuable enough to go to. I could just Google any questions I had and, well, kind of figure things out as I go. This left me thinking – if I really cared about the material, I could have just as easily put my head down and grinded out the class (which was basically a bunch of videos) in a couple weeks, skipping over the poorly designed bits. I ended up attending zero (0) live lectures for the class – I don’t even know what room it was in.

Is that the way I like learning? I’m not sure. But one thing is for sure: it’s convenient. Since Fall 2021, I’ve been going to almost no classes, because it is simply more convenient to learn material at home, at my own pace. There’s probably some joke out there about 1.5x lectures being the new norm, but at this point it’s reality. I have been living on 1.5x and lecture notes.

While the convenience is certainly nice, it’s unfulfilling. I had hoped college would be more of the interactive, community-oriented experience I had in my intro classes. For the few upper division classes that do offer this, great. But for the others, if someone were to download the Canvas page and send it over to me to cherry-pick modules, I think I’d have a better time than having to go through administrative nonsense, annoying homeworks, and even more annoying exams – I’m taking most of this upper level stuff for fun anyways.

For the most part, school isn’t the one “teaching” me, I’m learning things myself. But with the added overhead of whatever the course staff decides is going to make up my grade. Let me do this stuff on my own, or run classes better and make people want to show up!

I actually like what I do now #

I don’t like the question: what are your hobbies? A hobby sounds far too casual for me. I’m the type of person who finds one thing and then does it obsessively. In highschool, I played a lot of RuneScape. Like a lot. ~300 full days worth of RuneScape. You can do the math yourself, but that’s a large number of hours. (fun fact: I only told my mother this number after I got into college, she still wasn’t amused). RuneScape was, truly, what I did – the thing I would think about on the hour long bus ride back from school, and often sneak late at night to do instead of whatever homework I had due.

But it wasn’t the most practical or interesting (to most people). Indeed, it’s pretty difficult to sit down at dinner with someone and explain why a game that’s older than I am and not very well known was so captivating to me. So, well, if someone asked me my hobbies were or what I did, I’d look them in the eye, lie through my teeth, and say that I was into Computer Science. But, at the time (in highschool) that wasn’t really true.

For context, my first legitimate introduction to real-world programming was the summer after sophomore year. I was unquestioningly forced to go make use of myself at my mother’s hospital’s IT department, where I was tasked with building some nonsense webapp using everyone’s favourite web framework: Django. I didn’t know the first thing about web programming so I began prowling through Django documentation. I didn’t really understand everything, but I understood enough to combine with code from GitHub and StackOverFlow and piece together something that just about worked.

The problem was: I didn’t really care about understanding more, or learning about the things I was working with. For example, I didn’t know what HTTP was, just that you could do a bunch of operations with it, like GET and POST, and those operations did exactly what you’d think they did. Instead, I wanted to play RuneScape, or laze around, or watch some show, or eat Indian McDonald’s Mexican Cheesy Fries (I miss this a lot). Coding was alright, I could do it if I was really asked to, and I wasn’t terrible at it, but it didn’t really make me tick.

Flash-forward to freshman fall at Penn. I come in as a Cognitive Science major. I mean, brains seemed cool. I half-assed a Coursera course on ML sometime senior year of highschool, so AI also seemed cool. I’d also worked with computers. It seemed natural to study Cognitive Science, but I wasn’t the guy with a plan. On a whim, I saw that Penn Labs used Django, and it seemed somewhat interesting, so I thought I’d give it a shot. By some miracle, things work out and I get in. In a week’s time, I realize that I’ve been lying to myself.

Everyone at the club seemed so genuinely passionate about computers, it was nuts – they actually cared about how things worked. The folks I worked with actually knew what HTTP was, and that was the least of the things they knew about. Strange words like DevOps, Docker, Kubernetes would float around in Slack, and I’d have no idea what they meant. Debugging wasn’t just Googling and copypasting on loop, but actually trying things meaningfully. I felt pretty out of place – a small fish in a big pond – but I liked it!

Not only was I learning a lot, but the enthusiasm for programming was rubbing off on me. Experiencing this alongside the intro CS classes I talked about above, I actually began to enjoy computer science. I found myself Googling random things about Django in my free time, searching up about tools like pipenv, and doing things that the younger me would never have done. I was experiencing a shift in the thing I did: from RuneScape to coding.

Things end up panning out after: I transfer to NETS, get more involved with Labs, learn about those strange words I mentioned above through CIS 188, and generally immerse myself in the programming world. However, looking back, it’s funny how things work out sometimes – I’ve often reflected on the fact that the 10 person IT department in a hospital in Bangalore, India just happened to use Django as their backend, which is perhaps the only reason I thought I’d have a shot at Penn Labs, and consequently end up growing as much as I did.

To conclude, I’d like to note that the title is a little misleading, I’ve always liked what I really did, but I definitely did fake it for a bit. Now, when I’m at a dinner, and I’m prompted about my hobbies, it’s a little more gratifying to say that I like programming – because I know it is for real.