It’s been 192 days since I’ve become a computer scientist.
And it’s been 192 days since I stepped into my computer science class.
Or really, logged in — zoom meetings are the norm these days after all.
But that first day was pretty strange — our teacher went down the list of names, and asked us each a question. Of all the questions he could ask, he asked each of us what our favorite car was. I honestly don’t know much about cars; two of my friends talk about them all the time, but I never felt the need to listen to their critiques about Teslas, BMWs, and some trucks and jeeps. Recently, one of them got a Tesla. So when my turn came, I said Tesla, Model Y. I still don’t know what that is, but that’s okay. After the first class about cars, I was let down. I thought we’d learn about computer science and start with some code. Instead, we had talked about cars for an hour.
Eventually, we got into teams, and he set us on some coding projects. This was more of a self driven thing. We used repl.it, which is a coding environment. Then after the first trimester of the course, we finally switched to another platform — IntelliJ. This was a bit better; a platform I stuck with since I didn’t know much about coding. Someone from my team didn’t like it at all, and used Visual Studio instead. I might switch, but at this point, IntelliJ is working pretty well, and it’s a big hassle to switch and set up a new coding environment.
Each day entailed me sitting at my computer and trying to put some code together to make something. Whenever I got stuck, I searched the internet and tried to find some code that I could copy. Then I just copied and pasted it into my file, feeling unsure of whether this was plagiarism. My English teachers despised plagiarism, and cited everything that wasn’t theirs, so I felt inclined to at least keep some type of record of it.
But the real spark for coding never really hit me in the first 160 days. I just coded because I had to — I picked up some HTML, some CSS, and some Python. I copied some code, and tried to make it work with what I had. When it eventually did work, I moved on to finding more code. I didn’t set time everyday to code either; it was just another class, and just another assignment to complete.
Around day 135 or so, I got stuck. I had to figure out how to code a database, specifically CRUD. I knew how it worked, but didn’t get how to code it. When we saw a demo and had a tech talk about it, the code looked puzzling. My eyes were getting lost in each line. So I kinda gave up, and sat back on the project. Until my grade become endangered.
So I sought the help of a teacher, and throughout the next few weeks, I finally got my project rolling. It was hard, and it’s especially difficult in coding sometimes, mainly because your code can be working perfectly one minute, but fail the next. And you won’t have any idea what went wrong. But when you finally do get it, and the code works perfectly, it’s fantastic.
And fantastic it was. Those weeks were critical in the development of the project — a website called Arcade Smash (repository) — and helped me get a boost in my coding skills; at least, that was how I felt. But that sense of achievement led me to get more into code, and since then, I’ve achieved some key skills and coded some cool new features into my next project.
Here’s what I’ve learned, and what I’d recommend so far:
- Create an account on Github
Github is a site where you can upload your code. You want to start off by creating a repository, a place where you’ll store code for a project. In addition to keeping the code you’ve done, Github allows you to see how much coding you’ve done. It tracks your contributions by the number of commits you’ve made.
- Code everyday
You want to get into the habit of coding everyday, at least a little bit. Whether it’s learning to code a new project or idea, or simply fixing a problem in your project, you’ll want to spend time and effort into coding each day. You can track this progress on Github, as mentioned above.
- Work on meaningful projects
I know when you’re first starting off, you’ll be dipping your toes in the water a lot. This could mean figuring out which language to start with (choose python!) or looking at potential projects. For beginners, there’s a lot of projects on simple things like Madlibs, number generators, and etc. But if you really want to get deep into coding, start with a meaningful project that has areas to expand. My first project was learning how to code with Flask. With it, I learned Python, HTML, and CSS, so it’s a helpful way to get more into code, as well as see the applications of computer science.
- Eat one piece of the watermelon at a time
When I first started out in computer science, I tried to do everything at once. I had to fix the database, but I also had to create a new file for another page in website, and fix some errors in the main python file. My teacher took note of that, and told me this:
Don’t eat the watermelon in one bite; instead, eat it one piece at a time.
I took note of that, and now try to work on one task at a time. I haven’t mastered this one completely yet, but acknowledging that took me in the right direction, and I’m getting more things done when I give my focus to one task at a time. Plus, I learn about the error and how to fix it a lot better.
Getting into computer science was something I never imagined I’d do. I love biology (still do) and hated the thought of sitting around and coding all day. But now, I’ve gotten a lot more into it, although it’s taken me around 192 days to completely come to realize the fact.