Picking up JavaScript again felt like a much needed break from my addiction to writing web scraping scripts in Python. I’ve had some prior experience with JavaScript, but never got very deep into really understanding the language. Even so, I found the language to be quite intuitive and somewhat innovative as well. I’ll admit, I’m somewhat of a sucker for weakly typed programming languages. I think how JavaScript treats functions differently than other languages is also very interesting. I haven’t had much use for this knowledge yet, but I’m sure I will eventually be using that to my advantage. From my experience so far, I think JavaScript is a great language for software engineering, but obviously might not be the best choice depending on one’s needs or preferences.
In my college software engineering course (ICS 314), I was introduced to the concept of “athletic software engineering.” You would not believe how relieved I was when I learned athletic software engineering does not mean exercising while your code compiles. Jokes aside though, I think the idea of athletic software engineering is great. For context, athletic software engineering is essentially a high-intensity pedagogy with limited time to improve software engineering skills under pressure. Every week, we have a WOD, or workout of the day, where we are to complete a short assignment in the given time limit. I’d much rather do a WOD than listen to a lecture during class time. There’s no point in being told about concepts or skills if you never actually put them into practice frequently enough. The WODs are a great opportunity to solve a problem on a time limit, somewhat similar to what I’ve seen on LeetCode and in coding interviews. I’m also glad there are practice WODs not only to help prepare for the real deal, but to be able to practice communicating and collaborating with groupmates. Although, I will admit that it can be a bit stressful due to the time limit. I am sure that this style of learning will benefit me in the long run, and I’ll enjoy it more once I get more comfortable.
Computer science is a field filled with seemingly endless opportunities. My favorite part about it is that it can be combined with any other interest I have. Not only that, there are so many fields within computer science to dive into, from web development to malware analysis. Computer science to me is like getting into Linux as a desktop. How will I know what I like if I don’t try a bunch of different things? As a former distro-hopper, I’ve come to realize that I’d rather be able to experience a bit of every different field in computer science, than chain myself to one. I’m still very young, and I want to take every advantage I can to find what I am truly passionate about, while still keeping life interesting. In addition to learning JavaScript and learning more about software engineering, I’ve been taking opportunities to explore malware analysis and cloud security. I’d like to continue learning new skills and trying new things for as long as I live.