I would like to preface this by expressing my aversion towards JavaScript. Many years of game modding and robotics have shown me how incomprehensible and problematic JavaSript can be. It can be slow and disorganized. Perhaps that's my natural bias towards my beloved engineering courses speaking (a land of wonder where everything is coded in C and C++), but JavaScript classes become a nightmare of serial access operators and member variables that could scramble an egg faster than a sheetmetal shack in the middle of the Mojave. To be fair, it could be worse. At least it isn't Java.
str.split(' ').sort();
Is a crime that should have been outlawed by the Geneva Convention. However, that's also what makes JavaScript (and by extension, Typescript) so convenient—it allows for simple code that, to quote Todd Howard, "Just works". Grievances aside, Typescript is a good language for beginners. Unlike the double-egded sword that is C, Typescript is less likely to segment fault and brick your script. It has native class support which is very helpful in regards to Object Oriented Programming. The Type extension is very usefull for programmers who like to keep their functions organized, but to be honnest, it sort of just feels like an extra layer added to JavaScript to make it more like languages like C (where every variable and function has to have a type).
In regards to athletic software engineering, I actively despise it. That's just my personal opinion. I'm sure it works for some people, and if it does then I'm glad they found something that works for them. Personally, I do not believe good quality programming could come from forcing programmers to conform to a timelimit. Stress aside, I tend to write and simulate code in my head several times before I actually start coding. It's essential to my coding process and removing that would be akin to kicking the crutch out from beneath a limping patient. Sure, I could use a naive implementation of the WOD, but at that point, I'm not really practicing my coding skills or critical thinking. I'm just brute forcing a program without regard to dynamic programming or cost functions. I think WODs would be useful for programmers who are still developing their programming skill set and are a fun way to keep your skills sharp, but it ends there. To borrow horse racing terms, I am an "end closer". That is, I spend majority of my time thinking, researching, planning, and then complete projects in a flurry of energy and activity. WODs are inherently antithetical to my work routine, but that's just my personal opinion.
</html>