Learning TypeScript From Zero

21 Jan 2026

Initial Experience

After using Typescript for around a week, I can say my experience has been pretty positive. Even with the very little amount of exposure we had with Javascript, the transition to Typescript actually felt way smoother than I ever thought it would. Having dabbled in some other languages like Java, C, and C++, I really like how much less restrictive TypeScript feels while still providing helpful structure. It really allows for flexibility when writing code, but at the same time encourages these better habits through its type system and compiler checks.

Strengths of TypeScript

I personally think that overall, TypeScript is a good, if not, a great programming language. It encourages writing clearer, more intentional code by making types explicit, which helps catch errors early and reduces bugs at runtime. I can see this being very valuable in bigger projects where readability, and collaboration are key. These attributes already make TypeScript excellent for stuff like software development and engineering.

Learning Through Practice WODs and Overall Reflection

I found the practice WODs to be very useful. It’s nice they push you to actively apply concepts instead of just reading about them, which helps reinforce learning much more effectively and efficiently. The problem-solving aspect really makes the material stick better and helps build confidence over time. I will say though, this style of learning can definitely be very stressful at times, especially when you don’t immediately know how to approach a problem and there is a time limit.

Overall, my experience so far I found to be educational and rewarding, even in such a short time span. I believe TypeScript offers a strong balance between flexibility and structure, making it much more approachable for beginners, while still pushing for better habits in software engineering. While the process can be challenging at times, the combination of in-person WODs and at home WODs has been a very efficient way to develop a better understanding of programming concepts of TypeScript.