On the importance of persistence in Computer Science and Engineering
Having a growth mindset will help pave the way for the important "aha" moments needed for discovery
As a freshman at UNR in the Applied Math program I was required to take the introductory computer science course – CS 135. I heard MANY things about this class, and none of them were good. This class would consume my life, and I might get a B if I shirk all my other responsibilities. As a straight-A student, I was not looking forward to this course. The fact that the “Computer Skills” section of my resume listed only “Microsoft Word” was not boosting my confidence. To say I struggled with the course would be a gross understatement.
Dr. Sushil Louis was teaching CS 135 that 2010 Spring semester. Because I was determined to get an A in the course, I spent every spare second I had in Sushil’s office getting help. When he wasn’t in his office, I would sit in the hallway and wait for him. I spent more hours waiting in the hallway of SEM than I did on work for all my other classes combined. And that doesn’t even count the time I spent in Sushil’s office, working in the ECC, at the library and at home on just this one class.
It was the middle of the semester and it seemed that no matter how hard I worked; it didn’t get any easier. I never thought of quitting, though. Fortunately for me that wasn’t an option. I wasn’t going to graduate if I couldn’t get through this class. I was paying for school out of pocket, working several jobs, and there was no way I was taking the class again. One day I was struggling with the concept of Boolean variables (true and false). The concept is quite different in computer science than in math. I was comfortable with truth in the context of logical statements, but I couldn’t quite grasp it in CS. I was waiting in the hallway as usual to get some help from Sushil when he walked by with his postdoc Chris.
“I just don’t get this Boolean variable thing,” I said.
Sushil paused and then asked, “Chris’s shirt is blue or brown?”
“Brown,” I said. Because he was wearing a brown shirt.
Almost interrupting me, Sushil replied “The answer is True.”
If you’re in CSE, you’ll get it. And I finally did. In that one moment everything clicked for me.
Years later I saw this comic and I felt that it described my experience perfectly. Both men are digging for diamonds. They don’t know where the diamonds are or if they’ll ever reach them. The man on the bottom gives up just before reaching the diamonds. The man on the top is eagerly pressing forward. This is a great metaphor for life. Most people that have achieved more than you have worked a little harder and a little longer than you have. It’s all about discipline and persistence, and eventually you will have your “Aha!” moment too.
That day in the hallway with Sushil and Chris was the day I reached the diamonds. Once I understood the concept of Boolean variables, all the other pieces fell into place and I actually started to enjoy the material. So much so that I added Computer Science and Engineering as a second major. That one experience was so powerful that I would later make a career out of CSE.
What is the moral of this story? If you want to study engineering, you need to have a growth mindset. Psychologist Carol Dweck coined the terms fixed and growth mindset. According to Dweck, a growth mindset “is based on the belief that your basic qualities are things you can cultivate through your efforts.” A fixed mindset is the opposite of that. I would bet most people believe they don’t think in the frame of a fixed mindset. Have you ever been working on something and thought, “I can’t do this,” “I’m just no good at this,” or something similar? That is a fixed mindset right there. And it probably sounds pretty familiar.
Having a growth mindset is easier said than done. It takes constant work. Do you ever have the thought that you don’t belong? You have to push that out of your mind. No one “belongs” anywhere. You can earn your place anywhere you’d like. Having a growth mindset means not quitting, even when your code isn’t working, a concept isn’t clicking, or your computer crashes. It’s an understanding that you may not get it on the first try, or the fourth, or even the tenth, but you will. Trust in the process.
A fixed mindset serves to keep people out of computer science and engineering. Break the mold by believing in yourself. It’s not easy. Get some help. Build a mentor network. Find other people who can relate to what you’re going through and seek their guidance. Often. Having a support structure is not a weakness, it’s a strength. You need people around you who believe in you when you don’t believe in yourself. The only thing standing in the way of your goals is you.
Having a growth mindset allowed me to build a career that I love. I get to teach students who are just starting out in the field of computer science and engineering and foster a growth mindset within each and every one of them. Every day I get the opportunity to work on interesting and challenging problems because I allowed myself to earn a place in the field of computer science and engineering.
Being a computer scientist isn’t necessarily about being the best gamer or being able to take a desktop apart and put it back together again. It’s about being willing to fail over and over again until it clicks. And having faith that you, too, will have your “Aha!” moment.