Since this post is going to be going up after the holidays, Merry Christmas! And if you don’t celebrate Christmas, then Happy Nonspecific Winter Holiday! (Rooster Teeth.com inspired that one.) Now that I’m on winter break, I have plenty of time to reflect on my first semester as a computer science/computer engineering (CSCE) major. Yes, I did say first semester. I actually changed my major to CSCE at the end of my freshman year. So come sophomore year, I was a total fish out of water. Not only did I not know anybody in my classes, but I had never coded a day in my life. Talk about a nerve-racking situation.
However, despite all of that, I managed to my first semester. Yay! I won’t lie to you, there were up, downs, wins and other difficulties, but overall, it was pretty enjoyable. And since I have officially shed my title of Coding Noob, I have decided to make a guide to coding for all the computer science newcomers. This way you will know what to expect and you won’t make the same mistakes that I did. And trust me, there were a lot.
1. There is no such thing as an expert.
Just because the title says I’m a former noob, doesn’t mean I’m an expert. In fact I still consider myself a beginner or at least comfortable with coding in C++. I probably won’t ever consider myself an expert and you probably won’t either. Being an expert programmer suggests that a person can solve of the problems they come across in a certain language, which is an unrealistic goal. Now this isn’t a bad thing. There are tons and tons of computer languages out there and trying to master all of them will just lead you into a rabbit hole that you may never recover from. If you want to aim for something, work on comprehending code and solving for errors may occur.
2. Prepare to Put in the Work & And Even More After That
When I got into my intro to programming class, my initial thought was that it was going to easy. Seriously. My exact thought was, “It’s not as hard as it looks”. I was quickly proven wrong. I put in the most hours for this class by far. I would stay up for hours running, editing, and fixing my codes for class. I can’t tell you how many times I was worried I wouldn’t finish my programming project before the due date. I would search through my book searching for that one piece that I was always missing. However, once I found that missing puzzle piece and my code worked, it was the biggest relief you can imagine. I could finally relax. And then I had to do it over again. For a coding noob like me, it was a bit of a culture shock, but over time I got used to the long coding hours. It no longer seemed like a chore, but instead I couldn’t wait to see my finished project and that made me work even harder. Prepare yourselves guys, the coding addiction is real.
3. Patience is Your Only Choice
If you have coded for any small period of time, you have probably felt like the person above. Coding can be frustrating and stressful, but you have to keep going. You can’t just give up, because that’s not how the world works. Think about this. Let’s say Apple hires you personally to fix a software problem with their newest product. Of course you’re excited, because it’s Apple. However, once you start working you realize the error is taking up a lot of time. You can’t just throw your hands up and leave because it’s too hard. Not only would you not get paid, but it would cost Apple a lot of money to find somebody else and your reputation would shot. Long story short, there are no temper tantrums allowed in coding. Keep calm and keep coding.
4.Code After Hours
Okay, I know this one seems kind of obvious, but hear me out. During the last half of my first semester I was feeling less than stellar about my coding abilities. While learning and doing projects in C++ had been interesting, I felt like I wasn’t understanding the material as fast as my classmates. That’s when I turned to the internet to see if anyone else could relate and boy was I not prepared. It turns out a lot of programmers felt the same way that I was feeling at some point. In fact, a survey done by Codecademy said that only 10 percent of students are happy learning coding in a traditional university setting. Another software developer said that she only enjoyed coding when she was doing it on her own, not in class.
All this time I had been thinking that I was the only person who experienced this. This revelation not only shocked me, but reignited my passion. She also went on to recommend something that I still keep with me to this day. Learn other computer languages on your own. Outside learning is the key to your success. From that day on, I’ve been using online resources to learn different computer languages that I happen to enjoy working with. It’s made me realize that coding is not one size fits all and you don’t have to be good at all of them to be successful. If you want, I can do an article on the websites I use to help me with programming.
5.Coders aren’t lone wolves
When people think of a programmer, they think of a nerd sitting alone in front of a computer. And while the geek culture in programming is true, we don’t work alone. For more than half of my computer science projects, I worked with a group or partner. And it makes sense. Apps, games, even this blog you’re on now contains hundreds if not thousands of lines of code. It would be near impossible for one person to do it alone. That’s why being able to work with others and communicate with others is key. Don’t worry fellow introverts out there. If I was able to get through it, then you can too.
6. Remember Programming is a Language
This tip I actually got from one of the members of my engineering class. When asked what chapters we were working on for programming class, he said that you can’t look at it chapter by chapter. It’s a language and you have to view it as such. And that makes sense. A computer language is just like any other language. It’s a way of communication whether it’s person to person or coder to computer. If you miss an accent or curly brace, it’s going to get confusing. So if you want to improve your coding skills, do it like you would do any language- practice.
7. Start a Project Now
This is something my programming teacher told us on the first day of class. He told us that we should work on a coding project as soon as possible, that way we would have something impressive to present to job recruiters come graduation time. It would set us apart from the crowd of applicants and we’d be ahead of the game experience wise. Even if you have little to no experience, you have plenty of time to learn and if you are willing to work for it, you can make something incredible.
Question of the day: What’s the first coding language you ever learned( or would like to learn)?