
My journey learning learning Javascript was not a particularly difficult one or all that notable. As a language, it follows in line with C and Java and all the like, just as its name would imply. Overall, just as Java is a more simplified version of C and Python is made to be a simpler experience to learn and use overall, to me, it seems that Javascript just seems to be another level of simplification for code. Of course, for its purposes that is completely fine, as from what I gather it is mostly used for website development and all that jazz where this kind of simpler style would be more convenient since getting into the nitty gritty of everything doesn’t matter as much. Though of course, the basic bones of everything is practically so it is just minor things like variable declarations which are formatted and made simpler that cause minor uncomfort. It could just be that this is just a surface level observation by me after only really dipping my toes into the language.
This really was just my first forray into the language, so the freeCodeCamp course was a nice introduction to the language that really helped me learn the language, even if it felt a little repetitive due to my prior experience with languages like Java, C, C++, and Python. Though I talked about my feelings towards the simplicity of the language, it is just a few minor things, such as variables not really necessitating type declarations, the clumping together of numerical variable types, and so on and so forth. As a beginning language, this simplicity makes it quite a bit more accessible to learn in the same vein as languages like Python, though of course it does depend on what you feel is most important when learning programming. A simpler language like Javascript and Python, and to a certain extent Java, makes it easier to try out and be able to do a lot of things without having to know and remember a lot of information, so it isn’t as daunting. On the other hand, you can easily argue for learning C first as many languages build off of the base of C, and learning the more tedious ways of C to begin before allowing yourself the easier shortcuts of other languages is a good way to start off. C i also quite simple at face value, but with C you do have to build everything you use from the ground up and learn how to use libraries to be able to really do anything. You need to know how C works because it won’t really handhold you through the process and can often seem to work properly, but really just be giving a false positive. Order and structure become very important to pay attention to. Of course that isn’t to say you can just stumble your way through Javascript because you do need to know what you’re doing at least at a surface level to be able to parse through your code and see what is and isn’t working if it isn’t giving the correct output.
As a tool Javascript is proficient at what it does. The simplicity doesn’t really take away from its functionality, though I am not familiar with the functionality of different languages, such as the speed of different languages. Regardless, what I mean to say is that, you can still choose to do a myriad of things with Javascript. In my opinion, however, Javascript might not be the first choice for more precise projects, where it would be handier to have more specific labeling and increasingly complex situations. I feel that I do not have a good enough understanding of software engineering to give my opinion on whether Javascript proves to be more efficient for it, but I feel that for general maintenance of websites and such, this simplicity works more for it, as we arent trying to overcomplicate things, but rather display information in a secure and sometimes flashy way.
Athletic Software Engineering has been a somewhat interesting concept, but rather time consuming. It focuses a lot on personal responsibility, which admittedly is something I need to work on more. Whether it is effective will have to be seen, though it will be influenced by my own personal growth as well. The practice WODs work theoretically, but the real difficulty with the WODs is taking in the instructions and figuring out how to do them within the time limit, and these first couple homework ones were quite a bit simple, which didn’t really help me in that aspect. The in-class practice, however, did show me that what I should focus on is just getting the general idea done first and then ironing out details later. Even then, when the actual WOD came, I still was struggling on time. I think this style of teaching is rather effective on reinforcing and learning topics. The focus on personal responsibility, while an important lesson does hinge on the student being responsive to such a work ethic. I do feel the focus on time could maybe cause a few issues, but realistically is a skill that people will have to learn for jobs because the world is rough and slow and steady isn’t always appreciated.
This class certainly seems interesting and Javascript will be another tool in my toolbox that I can use later. I might not fully enjoy the language, but over time the sense of incongruence will fade. Simplicity is not a sin, sometimes it is (though that could be said about anything in excess), but Javascript is not one of times, it simply just has its own use in its own places. I look forward to seeing what the semester brings and hope to come out of it for the better.