Coding Under Pressure: Surviving TypeScript

23 Jan 2025

As a newbie to Typescript, I have noticed that while it is a new concept for me, there are quite a few similarities from languages I’ve learned; such as C, C++, and Java. For example, both Java and Typescript share the same primitive types: boolean, number, and string. Similarly, C and C++ have almost the same concept as Typescript when it comes to function declaration; but they are slightly different in their syntax. One noticeable difference off the bat is the use of colons and brackets in Typescript, especially when declaring variable types. I was more accustomed to using the assignment operator for variable than colons to specify the type. After finishing the introduction to Javascript and Typescript, I realized that there are many syntax and rules I need to learn, as I often find myself confused. However, I plan to continue practing and improving my understanding of the language by doing more exercises to get more experienced with this concept.

Good or Bad?

Putting my shoe in a software engineer’s perspective, I would say that Typescript is an extremely useful programming language. Typescript is a strict superset of Javascript, meaning it extends Javascrpt by adding additional features, such as static type checking, while still allowing Javascript syntax to work seamlessly. This feature is particularly important, because, unlike Javascript, Typescript can prevent runtime errors by providing instant feedback during the development process. It ensures that variables and methods are properly declared and exist in the code, which enhances code readability and reduces time to debug an entire project. Knowing that a programming language was designed to make JavaScript easier and more reliable motivates me to learn more about it.

Athletic Software Engineering

Being athletic is something entirely new to me—I’m not the type to run a marathon even if my life depended on it. So, the concept of Athletic Software Engineering has my brain running 10 miles a day, at least metaphorically. This has been one of the most fast-paced courses I have ever taken, but I completely understand why it needs to be this way. Coding is just like learning any verbal language: to become proficient, you have to practice almost every day, or you risk losing the skills. The more you practice, the more naturally it will come to you. Although the past two weeks have been stressful, I believe this approach will make me a stronger and a more efficient coder in the future.

WODS

WODs are something I am extremely terrified of—even the monsters under my bed cannot compare. The time constraint adds so much stress that I sometimes find myself frozen, unable to remember even small things, like the purpose of a for loop. However, I am grateful that we are allowed to use resources when we get stuck, as it provides a safety net and helps me push through the challenges. I hope to improve at WODs over time, though I understand it will require a lot of practice, trial, and error. Despite the stress, I can see how this exercise will be valuable in the real world, where managing multiple projects under tight deadlines is often the norm.

ChatGPT was used to refine the grammar and the clarity of my writing, however, all ideas and contents are entirely my own.