I choose Code Academy to further my knowledge of HTML & CSS. I choose to use Code Academy for this task because I enjoyed using it in the past to review my knowledge of SQL. I already knew many of the basics of HTML & CSS prior to beginning my study of the platform. I believe Code Academy is a great free tool to use if someone wants to begin learning different coding languages. The learning platform goes in depth with each language and allows for many practice examples to get a new programmer use to the syntax. In each section the platform builds on the material covered, forcing a user to repeat skills to ensure that it sticks while also challenging the programmer. The repetition is extremely beneficial way to learn to code. I also thought it was a good idea that each lesson provides hints rather than providing the entire code in case a programmer gets stuck.
Coding languages is essentially learning a foreign language the more you practice the better you become. One critique I have with using Code Academy is that the sections that would be most beneficial are “Pro” features which means you must pay to access these lessons. Most of the Pro features involve the implementation of the skills learned throughout the session, they are actual project that would get a user to think critically which really helps embed the code into their minds. I believe that Code Academy covers the basics very well but users must continue to practicing after completing the course to be able to actually use the material covered. Coding isn’t like a history class where you can just memorize fact, you must practice for the skill to be relevant and usable.
Being a computer science major, I have experience different techniques to learning how to code. By far the most beneficial method to learn to code would be implementing project. When I am trying to find a solution, I tend to find out what I actually don’t know causing me to do research until I do know. I had a professor use a specialized method in which there was no due dates so that you may work at your own pace when trying to teach yourself the code. The only problem I found with this method is that students tend to procrastinate the work. There was very little lectures in this class and the majority of our time was spent practicing how to use SQL, HTML, and CSS. I felt that I learned the most from this teaching technique rather than the standard lecture class.
Another method I experienced was for my independent study, I read the iOS programming from the Big Nerd Ranch. They proudly advertised how their teaching method was different than other book. They essentially walked you through different exercises without any explanation as to why I am doing certain step. This was a huge flaw, when I went to try the methods I read about I was unable to implement them without the assistance of the book. When I finished the course in the book, I felt that I did not know the material as well as I expected to by the end of the semester. I believe this was also in part to learning to code from a book, it is hard to stay motivated and to absorb coding techniques without implementing them on your own.
As Audrey Watters stated in “Decoding ‘Everyone Should Learn to Code,'” coding is about computational thinking, it is about learning to work through problems. To learn to solve problems you rely on experiences you have already encountered, thus you must practice exercises on your own to test your knowledge and know what you don’t know. I think Code Academy does this very well, they provide you with many exercises to attempt with a variety of difficulties. All in all none of this matters if you have no desire to learn, you must be motivated to invest time and you must be patient when developing skills. You will not be a fully capable programmer on the first day you start coding, it will take hours of work to be able to do thing on your own. You should try to learn code because everyone else is learning it but because you want to, otherwise you are going to be miserable.