{"id":1975,"date":"2012-01-12T03:12:39","date_gmt":"2012-01-12T08:12:39","guid":{"rendered":"http:\/\/www.thejuliagroup.com\/blog\/?p=1975"},"modified":"2012-01-12T03:31:06","modified_gmt":"2012-01-12T08:31:06","slug":"codecademys-new-clothes","status":"publish","type":"post","link":"https:\/\/www.thejuliagroup.com\/blog\/codecademys-new-clothes\/","title":{"rendered":"Codecademy&#8217;s New Clothes"},"content":{"rendered":"<p>Seriously, someone has to say something about <a href=\"http:\/\/www.codecademy.com\/courses\">Codecademy <\/a>&#8216;s courses. I feel like the little kid in the story The Emperor&#8217;s New Clothes. You know, the one where supposedly the clothes are made from cloth only really intelligent people can see, so no one wants to point out the emperor is actually naked.<\/p>\n<p>With a week or so into the new year, 100,000, &#8211; no 500,000 &#8211; <a href=\"http:\/\/articles.businessinsider.com\/2012-01-11\/tech\/30614980_1_pledge-users-sign-ups\">no a GAZILLION<\/a> people are learning to code, and it includes the Mayor of New York, the president, the pope! Okay, well, maybe that is a bit of an exaggeration. Out of these 300,000 or <a href=\"http:\/\/www.hackeducation.com\/2011\/10\/28\/codecademy-and-the-future-of-not-learning-to-code\/\">500,000<\/a> or 800,000 users, depending on what article you read, 99% of the tweets I read on twitter said things like,<\/p>\n<p>&#8220;This is great! I&#8217;m learning to code!&#8221;<\/p>\n<p>or<\/p>\n<p>&#8220;I just unlocked badge #10. This is so wonderful!&#8221;<\/p>\n<p>I have to agree with <a href=\"http:\/\/www.hackeducation.com\/2011\/10\/28\/codecademy-and-the-future-of-not-learning-to-code\/\">Ms. Watters review in (Not) learning to code<\/a> that the people giving it rave reviews either aren&#8217;t past lesson two or already know how to code. Let me give two examples:<\/p>\n<p>This first one is from the JavaScript Quick Start Guide, which is for people who already know some other language. I saw this after I had already completed the beginning programming course and I was happy to find it because I was interested in something that moved a little quicker. This little block below is all of the explanation on Do\/While<\/p>\n<p>&nbsp;<\/p>\n<p>7. Do\/While<br \/>\nThis is similar to most other languages:<\/p>\n<p>do { \/\/ block} while(condition);<\/p>\n<p>Implement the increment one the last time.<\/p>\n<p>Then there is this exercise, which, as you can see, I did complete correctly.<\/p>\n<p>\/\/ This function should increment the start value by 1<br \/>\n\/\/ the number of times specified.<br \/>\nfunction increment(start, timesToIncrement) {<br \/>\n\/\/ Add the appropriate code here, this time using a<br \/>\n\/\/ do\/while loop. This time, you must also write in the loop<br \/>\n\/\/ body.<br \/>\nvar i = 0 ;<br \/>\ndo {<br \/>\nstart++ ;<br \/>\ni++ ;<br \/>\n} while( i &lt; timesToIncrement);<br \/>\nreturn start;<br \/>\n}<\/p>\n<p>I actually was able to do it correctly because I had done it in Javascript before and I am taking the Codecademy courses because I would like to learn Javascript better, review material and do more with it. <a href=\"http:\/\/www.thejuliagroup.com\/blog\/?p=1955\">As I said in another blog, I&#8217;m also doing a lot of other stuff to learn more.<\/a> My point is, if I didn&#8217;t already know how to do this I would be lost. There may be better ways to do this, although the little Codecademy program said it was correct. That kind of bugs me, because I would like to know if there is a better way to do this. I understand the reason for the start++ and i++ both being there because start may not always be equal to zero. This is a function, after all, and start is a parameter passed to it.<\/p>\n<p>Then there is this in lesson 2 of the Functions in JavaScript course<\/p>\n<p><em>&#8230;..To check that, run the code as is. You will see that the returned value is NaN, which stands for not a number. That happens to be the value returned when we try to multiply a string three times with itself, in the return x * x * x;statement.<\/em><\/p>\n<p>Obviously, the only thing you are expected to do in this lesson is click RUN. You then see that the returned value is NaN. Yet, this tells me it is incorrect (duh, I know, that was the point of this lesson). Yet, when I change it to a number, it tells me I am incorrect &#8211; probably because what the instructions say to do is click RUN, not change it to a number. So, I can never successfully complete this lesson and hence can never complete the course. Since I didn&#8217;t really care beyond annoyance, I just went on to the next one.<\/p>\n<p>Not surprisingly, with 3 billion users, there is no way to give feedback on this lesson other than the thumbs up or thumbs down.<\/p>\n<p>I want to say that Codecademy IS free and it IS helpful for me to spend 20 minutes on basic stuff because I don&#8217;t use javascript right now unless I force myself, while I have a project coming up where i am going to need it a lot. I would agree with Watters that you can do all of the lessons and still not be able to code anything. Applications like FizzBuzz &#8211; which I have not had a chance to do yet &#8211; are a really good addition since she wrote that article.<\/p>\n<p>Codecademy IS free and it doesn&#8217;t suck. If you are brand new to programming the beginner&#8217;s course is very good as a basic introduction. However, it is very far from perfect and is not going to be replacing the MIT Computer Science department any time soon. In fact, I would say that it&#8217;s not going to replace any really good books on Javascript, instructional videos on youtube, the<a href=\"http:\/\/blog.oreillyschool.com\/2011\/12\/my-thoughts-on-codecademy.html\"> OReilly School of Technology<\/a> or other quality resources out there that can provide a whole lot more detailed explanation.<br \/>\n<a href=\"http:\/\/www.thejuliagroup.com\/blog\/wp-content\/uploads\/2010\/12\/evadesk.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-914\" title=\"Eva Helping Grandma Work\" src=\"http:\/\/www.thejuliagroup.com\/blog\/wp-content\/uploads\/2010\/12\/evadesk-225x300.jpg\" alt=\"Small child in diaper\" width=\"225\" height=\"300\" srcset=\"https:\/\/www.thejuliagroup.com\/blog\/wp-content\/uploads\/2010\/12\/evadesk-225x300.jpg 225w, https:\/\/www.thejuliagroup.com\/blog\/wp-content\/uploads\/2010\/12\/evadesk.jpg 450w\" sizes=\"auto, (max-width: 225px) 100vw, 225px\" \/><\/a>Again, it&#8217;s free. So far, as I see it, it is good for getting people off to a beginning on basic concepts and it is okay for reviewing topics you already know. Will it develop a huge cadre of web programmers? Definitely not on its own. As others have speculated, I doubt more than 10-15% of those who sign up will complete much more than the beginner course. What it MIGHT do is encourage some people enough that they start from here and pursue some more serious study on their own, and that is a good thing. Or maybe some amazing courses will come out in the future and I will be totally wrong.<br \/>\nBut all of this cheerleading about &#8220;Hurray, I&#8217;m learning to code! This is wonderful!&#8221;<\/p>\n<p>You&#8217;re trying too hard. Cut it out. The emperor isn&#8217;t naked but he isn&#8217;t really all THAT well-dressed, either.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Seriously, someone has to say something about Codecademy &#8216;s courses. I feel like the little kid in the story The Emperor&#8217;s New Clothes. You know, the one where supposedly the clothes are made from cloth only really intelligent people can see, so no one wants to point out the emperor is actually naked. With a&#8230;<\/p>\n","protected":false},"author":5,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1,9],"tags":[],"class_list":["post-1975","post","type-post","status-publish","format-standard","hentry","category-dr-de-mars-general-life-ramblings","category-software"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/posts\/1975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/comments?post=1975"}],"version-history":[{"count":8,"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/posts\/1975\/revisions"}],"predecessor-version":[{"id":1977,"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/posts\/1975\/revisions\/1977"}],"wp:attachment":[{"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/media?parent=1975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/categories?post=1975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.thejuliagroup.com\/blog\/wp-json\/wp\/v2\/tags?post=1975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}