Please allow me to set the context. I am currently enrolled at the University of Hawaii at Manoa and am taking ICS 314 Software Engineering this fall of 2020 as a junior. However, in the year before (2019 - 2020), I was taking a gap year from college due to financial and personal reasons. During this time, I taught myself web development and what you are hopefully here for, the beloved language JavaScript. I can definitely say that I have been through the ups and downs of learning the basics of JavaScript and exploring the many JavaScript frameworks. By the way, Vue.js is great. Anyways, this marks the end of my brief background. Now lets continue on to what I really want to say.
Pardon me as I stall again. So I do have prior experience with JavaScript and with that said, I must say that JavaScript is quite a versatile language which you are able to solve problems in many more ways than before. When it comes to the syntax, JavaScript is very loose in terms of how strict you have to be with this “computer dialect.” However, I will point out that when it is your first go-around learning JavaScript, the amount of ways you can go about writing something like a function can be overwhelming and make you feel like you need to know them all right now, and I mean right now. Well at least, that is how I felt when I first started to learn the language. This experience felt like the first time I learned the Chinese dialect, Mandarin. With that said, on to my experience with learning these topics a second time.
As said above, I am currently enrolled in the ICS 314 Software Engineering course this semester (as of the date this was written). Within the first week of the course, we traveled at full speed with learning the basics of JavaScript. For complete beginners, learning the basics of JavaScript through the freecodecamp course can definitely feel overwhelming especially seeing the number of lessons and the number of hours estimated for each topic. However, for someone with prior experience like me, the freecodecamp JavaScript basics course is more like a Swiffer for our coding brains, dusting off the dust on my introductory knowledge. Rather than learning new things from this JavaScript spree, I found this second go-around as a very nice refresher and reinforcer for my own knowledge of this language.
I do not have an extended amount of experience with other languages like C or Python. To answer the question, I believe that every language has their own purposes when it comes to software engineering. As I have spent the bulk of my time building in JavaScript and seeing as the language is still being widely used in the industry, I think that JavaScript is a good language for software engineering. The many tools, frameworks, and overall support for the language is what I think makes JavaScript great.
Based on how this course was explained to be run, I think that the athletic software engineering approach to learning is a good way to learn. As analogous to an athlete, I truly believe that the same thing applies to software engineering and programming in general, you have to put in the consistent time to see real results over time. In this course, I find that the WODs (Workout of the Day) is also a good way to test out what you have learned and to track your skill progress with JavaScript and problem solving. To sum up, JavaScript is a great and important language to learn, and it can be well reinforced through this course’s method of learning, and that is through the athletic pedagogy.