
I have just started to learn JavaScript and TypeScript in my software engineering class, ICS 314. Before beginning to learn JavaScript and TypeScript, I knew languages such as Java, Python, C and C++. I had no prior experience with JavaScript or TypeScript but as I started learning these languages, I actually found that I enjoyed them. Since I have some experience coding, the introduction came naturally to me. But what intrigued me the most was that the notation for giving types to variables somehow itches my brain in the right way. It looks good to me and it makes sense.
For example, as shown below:
function example(example1: number, example2: string): string | number {
}
Compared to other languages that I have experience in which would use “int example1;”, I enjoy TypeScript’s notation with the colon. One other big thing that I enjoy about TypeScript is that a function can return more than one type. I learned that very recently and it is extremely helpful.
From a software engineering perspective, I definitely do think that TypeScript is a great language. I think that it allows programmers to have more options with their code. I also think that some aspects of TypeScript allows for safer and more efficient code.
ICS 314 is an introduction to software engineering class. It follows a pedagogy called, “Athletic Software Engineering”. Athletic Software Engineering includes a “high intensity, time-constrained, and often stress-inducing approach to acquiring competency with software engineering skills”. With my short experience with the class so far, it definitely meets all of those qualities. However, I actually really do enjoy it. It urges me to think on the spot, forcing my inner computer programmer to come out.
“WODs” are workouts of the day which are timed and test our coding proficiency. These put us in high pressure environments and really test our individual abilities. Practice WODs are done in groups and while allowing us to hone in our skills, we are also improving our teamwork skills by working together. This way of teaching is definitely difficult and stressful but the methods really do push all of us to improve as software engineers.