New Language, New Experiences

30 Aug 2018

My Programming Experience

The first programming language I learned is C++. My high school introductory programming course allowed me to find my interest in coding. I immediately decided I wanted to major in Computer Science. When I entered University of Hawaii at Manoa, I panicked when I realized we will be coding in Java, not C++. I was really attached to C++ since it was the only language I knew at the time. Eventually, I got more comfortable with Java. After taking ICS 111 and ICS 211, it is now my new favorite language. Now in ICS 314, Javascript is introduced to me. Since the word “Java” is in Javascript, I assumed it will be similar to Java. There will just be some minor syntax differences. I was delightfully surprised after programming with Javascript for the first time.

Javascript First Impressions

After only two weeks of working with Javascript, I can see the amazing benefits of this language. Creation of variables is much different from languages such as Java and C++. I was pleasantly surprised when I found out that I can create a variable without specifying the data type. This creates a kind of flexibility in coding that I would have never imagined. I can declare a variable, which will be returned, without worrying about the data type. I can return an integer or string using the same variable. I was also amazed that I can put integers and strings into the same array. The flexibility of Javascript is astounding. However, I do not think Javascript would be the best language for someone who is completely new to the world of programming. It is important to understand different data types first. From my experience, C++ and Java is a great place to start. Javascript should come after learning either of those languages. That is exactly where I am at. Thus, learning Javascript in ICS 314 after Java in ICS 111 and ICS 211 is a good path for ICS students.

Athletic Software Engineering and WODs

“Athletic Software Engineering” is a style of teaching that I find very useful when it comes to programming. A problem ICS students, including me, initially run into is their unfamiliarity with the coding language. They may be able to understand code that is presented to them, but they lack practice in utilizing it. They complete assignments by referring to class notes and older assignments, rather than attempting to formulate their own code from their knowledge and understanding first. To break from that mentality of relying on older assignments or notes, practicing for the Workout of the Day (WOD) allows each student to truly familiarize and understand the code they are typing. A programmer should be able to code away, not slowly scroll through some resources they should already know. As a result, better programming practices is reinforced and students learn how to code efficiently. That is what practice WODs given to students to prepare for the graded WODs do. The WODs require students to extensively practice their coding in order to perform well in class. This type of learning may be stressful, but it is useful. It is a great way to enforce a better understanding of the code being written.

Looking Forward

I look forward to coding more with Javascript. I do find the WODs stressful, though it will only motivate me to practice more and improve my coding skills. After all, this course will turn me into a lean, mean, coding machine.