My Experiences as a CS Student
I didn’t decide to major in Computer Science until the end of my sophomore year in college. It was one of those decisions that was so blatantly obvious, it makes you wonder why you never thought of it in the first place. For me, majoring in Computer Science felt so right, and I never second-guessed my decision or considered dropping out of the department.
But it wasn’t all a walk in the park–despite having taken some CS classes in high school, my experience in the CS department was sometimes rough. There were definitely a few times when I had this overwhelming feeling that everyone else was smarter and more experienced than me. I had a few bad experiences as well. In general, I did pretty well, but there was initially an underlying insecurity, the fear that someone would find out how little I knew. Slowly, as I took more advanced classes, especially in areas in which students started off on more equal footing (Operating Systems) or of more theoretical nature (Discrete Math, Data Mining), I started to realize that that just wasn’t true. In fact, many of my classmates avoided taking some classes I chose to take, because they were too “math-y.”
I mostly kept to myself and didn’t really socialize with many of my classmates, and in retrospect, I think my seclusion closed me off from what was going on with everyone else. It was when I did a few group projects and spoke with other classmates that I realized, I’m not the only who is struggling in this class–it’s just a hard class. I’m not the only one for whom this project took an entire 5 day marathon, running on just a few hours of sleep each night. If I could do it all over, I would try to get to know more of my classmates in a social and academic setting, fostering a support network for everyone going through the same difficult projects and classes.
At Princeton, Intro to Computer Science (COS 126) is a prerequisite for all engineering students. I would occasionally hear from friends that they really liked the class, and thought it was fun, but Computer Science was just too hard for them, and therefore they weren’t going to major in it. I dismissed it as personal preference back then, but now it just makes me really sad. I think a part of me was also proud that I was doing something that was “too hard” for others. Now I wish I had said something encouraging like, “It was really difficult for me too…but it gets better.” As a software engineer, occasionally getting stuck on a tricky bug is expected, but as a first-timer to programming, you might not realize that getting stuck is the norm. Unless you make it over that learning hump, you don’t know that you’ll eventually spend less time stuck on stupid bugs and more time building awesome stuff. You may think you just don’t have what it takes.
Debugging is sometimes a pain in the ass, but getting something from a non-working state to a fully-working state is so incredibly fulfilling. One of the things that I miss about college assignments is that there is a point at which they are done. When your code is working as expected, and the planets are orbiting the sun and not spinning off wildly, you can breathe a huge sigh of relief and finally get some sleep.
Some of my fondest memories from college are of discovering the joy of coding–I would start in the evening, and Blair Cafe (it wasn’t really a cafe but a study space) would be filled with other students chatting and studying. Slowly, they would trickle out, and by 2am, it would be just me, James Blunt on repeat, and my laptop. Maybe it was partly the euphoria from not sleeping, but there was something so blissful about having that time alone to code.
I sleep more normal hours now, as I don’t quite have the stamina I had in my youth, but I still look forward to meeting-free afternoons (which is, thankfully, most afternoons) when I can put on my sweet headphones and lose myself in some code. Once I’m wired in, all I need are some groupies, and I can die happy.
- My Experiences as a Female Software Engineer
- Thoughts about School and Work
- Why Chinese Mothers are Not Superior
- GWT History Management