I don't think I ever learned more about life in general than I did in my computer science classroom.
That might sound crazy. As a data science major learning programming for the first time, I've spent nights of tirelessly trying to produce working code, tears streaming down my face, feeling like an "idiot" and a "failure." What could I possibly be learning? A lot, actually. Entering the tech field, especially as a female, is a daunting task. Many technological concepts are difficult and unlike anything I've ever learned before. But in the midst of my pursuit, I've discovered many truths about life, truths that I can append to my list of life lessons.
First of all, it's important to speak up.
I entered my major with no background in computer programming so it was a bit overwhelming to take my first computer science class online. If I ever had questions or needed help, I had to rely on going to the TAs or other tutors to explain that I didn't understand.
As somebody who has trouble speaking up or talking to strangers, it was difficult for me to go out of my way and seek help. The TAs were always different and most of them had never seen me in their lives. However, when my grade relied on my understanding of the material, I had no choice but to speak up.
You also may be in situations that make you uncomfortable.
When you're a girl taking a load of computer science classes, you feel a little out of place in a large class that is heavily male. Sometimes, you may question yourself and your own abilities and whether you are where you are supposed to be. I've had to learn that people may look at me a little differently or doubt my ability to succeed, but I take these feelings as a driving force for me to prove them wrong. In fact, people who make history rarely blended into their surroundings.
The most rewarding victories don't come easy.
Trying to produce a working code is extremely frustrating sometimes, especially when programming is brand new to you. Coding is challenging. Sometimes it seems impossible. But all programmers, regardless of when they started or how skilled they are, will agree that no triumph surpasses that of producing a working code. Code entails complex thinking and many rounds of trial-and-error, so once the code works, you feel as though you have just conquered the world.
Nothing is too small to make a difference.
In code, if you're missing a single colon or forget to indent or add an extra space, your entire code will fail. That single punctuation mark or space makes the entire difference. Similarly, you cannot believe that any deed you do is not enough to make a difference. You cannot think to yourself, "I can't make a change. I'm just one person." If one colon is the difference between a working or a failing code, you ought to believe that anything you do can incite change.
You may need to change your way of thinking.
Many would assume that since computer science is so technical, there would only be one correct answer when coding. I am here to dispel that myth. The truth is, there are multiple different ways to code the same problem...and get the correct answer.
You need to be open to different approaches to the same problem because they offer new perspectives, even if your code is already right. Similarly, in such a politically polarized environment, we need to all consider different opinions or beliefs. Just because someone has a different perspective on an issue does not mean that either person is wrong. You can both be right.
It's okay to be wrong.
In programming, rather than trying to maximize the number of problems you can get through as you do in other math classes, you have to try to get a single problem as right as possible. In programming, you fail 99.9% of the time when you first run the code. It's hard at first to come to terms with the fact that you are usually wrong and need to fix mistakes. But you then realize that it is sometimes just as good to make mistakes and correct them than to be right the first time.
But most importantly, never give up.
Those who pursue careers in the tech field are not necessarily just those who are computer geniuses with an inherent gift to code. Those who pursue careers in the tech field are also those who do not get discouraged after experiencing failure after failure when programming.
When you program computers, you fail.
You fail often. We get about an hour to solve a single coding problem because we are expected to produce failing codes for 59 of those minutes. But just like any pursuit, you cannot let failure discourage you from practicing and persevering. Perseverance is one of the major keys to success in computer science. Perseverance is also one of the major keys to life.