As a third -year computer science student, my first experience with TypeScript was only about a week ago. I must admit, it has been quite a struggle. Learning anything new is hard, but having to demonstrate competency through in-class assignments for something I am so unfamiliar with feels like a challenge. Although I am struggling, there is still a sense of familiarity from my previous experience with Java. The way the type systems and object-oriented programming features work all feel very familiar to me.
Some things I have noticed that are different about TypeScript compared to Java is that TypeScript is much more flexible. In Java, you have to declare every single thing to make sure the compiler knows what you’re trying to do. In TypeScript, the compiler can infer certain things, like, for example, when you’re trying to declare a string in TypeScript, you don’t actually need to tell the compiler that it is a string; it can just infer that.
As I continue to learn TypeScript every day, it is becoming apparent why so many software developers are using it. One of the key features of TypeScript is that it can detect errors before you even compile and run the code. I remember having so much trouble in my early computer science classes, debugging code for larger Java projects. Although we haven’t completed any large-scale projects yet, it’s clear that TypeScript will be very useful for me in the future.
Throughout this academic semester, one of the main goals in my software engineering class is to get us acquainted with doing athletic software engineering. This involves completing what are called workouts of the day (WODs). These are timed in-class coding assignments meant to test our competency in the current subjects we are learning. As someone who was not very confident with their current abilities, the thought of doing these athletic WODs scared me at first. This is the first time I’ve ever had a course where it kind of tests you every day.
Now that I have completed the first few WODs, I feel like the stress and anxiety have tempered down. Instead of attending a lecture, which can be seen as boring, it is motivating to have to learn the current subject before I come to class. I’ve also come to realize that the ability to solve problems quickly will set me up for future job opportunities in the software development world, where it is not uncommon to have timed coding interviews.
Use of AI: Grammarly was used to address grammatical errors and make writing more clear.