Slashdot Mirror


Code.org Stats: 507MM LOC, 6.8MM Kids, 2K YouTube Views

theodp writes "On the final day of Computer Science Education Week, the Hour of Code bravado continues. Around 12:30 a.m. Sunday (ET), Code.org was boasting that in just 6 days, students of its tutorials have "written" more than 10x the number of lines of code in Microsoft Windows. "Students of the Code.org tutorials have written 507,152,775 lines of code. Is this a lot? By comparison, the Microsoft Windows operating system has roughly 50 million lines of code." Code.org adds, "In total, 15,481,846 students have participated in the Hour of Code. Of this group, 6,872,757 of them used the tutorials by Code.org, and within the Code.org tutorial, they've written 507,152,775 lines of code." On YouTube, however, a playlist of the Code.org tutorial videos has distinctly lower numbers, with only 2,246 views of the Code.org Wrap Up video reported as of this writing. So, any thoughts on why the big disconnect, and how close the stats might reflect reality? Code.org does explain that an 'Hour of Code' is not necessarily an 'hour of code' ("Not everybody finishes an Hour of Code tutorial. Some students spend one hour. Some spend 10 minutes. Some spend days. Instead of counting how many students 'finish one hour'; or how much time they spent, this [LOC] is our simplest measure of progress"). So, with millions being spent on efforts to get Code.org into the nation's schools — New York and Chicago have already committed their 1.5 million K-12 students — is it important to get a better understanding of what the Hour of Code usage stats actually represent — and what their limitations might be — and not just accept as gospel reports like AllThingsD's 15 Million Students Learned to Program This Week, Thanks to Hour of Code ("every other school family in the U.S. has a child that has done the Hour of Code")?"

123 comments

  1. well... by smash · · Score: 5, Interesting

    500 million (or whatever) lines of code worth of "hello world" is not exactly the same as a working, profitable commercial OS family, is it?

    --
    I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    1. Re:well... by Anonymous Coward · · Score: 0

      Working?

    2. Re:well... by kthreadd · · Score: 1

      Probably less bugs though.

    3. Re:well... by marcello_dl · · Score: 1

      I'll take the hello world, thx.

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
    4. Re:well... by marcello_dl · · Score: 1

      Working.
      For THEM.

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
    5. Re:well... by elashish14 · · Score: 1

      Of course not - a well-engineered product could never be profitable. They were being taught how to code, not how to be a lawyer, MBA, marketer...

      --
      I have left slashdot and am now on Soylent News. FUCK YOU DICE.
    6. Re:well... by alanwarrick4 · · Score: 1

      True but you are not fully realizing the potential new market of child labor programming camps. We will have to call it a school or something. Then we will have to make continuing educational "unpaid internships" for the ones who show expertise. Meanwhile this will also help to devalue the programmers as a resource and thus further increasing profitability.

    7. Re:well... by smash · · Score: 1

      Yes, contrary to /. groupthink, there are plenty of businesses out there who run on windows.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    8. Re:well... by smash · · Score: 0

      Not really. Learning to code hello world by rote doesn't make you suddenly capable of writing an SMP aware scheduler, for example.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
    9. Re:well... by Anonymous Coward · · Score: 1

      Probably less bugs though.

      Fewer. Don't make fun of Microsoft until your grammar improves.

    10. Re:well... by Anonymous Coward · · Score: 2, Interesting

      Fewer.

      'Less' is correct, unless you are able to count all the bugs in Windows.

      There are fewer legs on an ant than a spider. There is less sand in the desert than bugs in Windows.

    11. Re: well... by aaronb1138 · · Score: 1

      What exactly is the 10x commentary about? Makes it sound like Windows is relatively efficiently coded.

    12. Re:well... by Anonymous Coward · · Score: 0

      True. The students' code probably had fewer bugs, and almost certainly no hidden backdoors for assorted spy agencies...

    13. Re:well... by Half-pint+HAL · · Score: 3, Funny

      Fewer. Don't make fun of Microsoft until your grammar improves.

      Knowst thou not that verily doth language change?

      --
      Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
  2. 507MM lines of the same code by Anonymous Coward · · Score: 0

    According to my MBA, it says we're done. Print it and ship it!

  3. Yes, when I started, my code was shit too by Anonymous Coward · · Score: 0

    Simple metrics are usually useless.

    1. Re:Yes, when I started, my code was shit too by Anonymous Coward · · Score: 0

      Simple metrics are great.
      Stupid and useless metrics are useless (and supid).

    2. Re:Yes, when I started, my code was shit too by Anonymous Coward · · Score: 0

      eh, stupid.

  4. How many of those were actually students? by boldtbanan · · Score: 4, Interesting

    I ran through some of the lessons to see what it was about and I'm a developer. I expect that is a pretty common occurrence for this type of site.

    1. Re:How many of those were actually students? by Anonymous Coward · · Score: 1

      Did you learn how to code?

    2. Re:How many of those were actually students? by Anonymous Coward · · Score: 1

      i learned alot from the lessons, however i am a php developer so this was to be expected.

    3. Re:How many of those were actually students? by Anonymous Coward · · Score: 0

      Is PHP case sensitive, you drooling fucktard?

  5. So 33 lines per person? by NeverWorker1 · · Score: 2

    Again, this isn't a bad thing, but getting somebody to bash out 30-odd lines doesn't make them a programmer, or even given them a taste a programming. That's enough for maybe some basic flow control.

  6. Worth it. by Anonymous Coward · · Score: 5, Informative

    At least 50% of the kids who came to my HoC event didn't want to be there and were forced to come by a parent/sibling/teacher/other. 100% of them engaged for an entire HoC activity and most stayed beyond an hour. That's success in my book.

    I don't actually give a damn if it's considered hype/bullshit/grandstanding...it's input into the kids' perspectives and experiences. Nothing bad will come from it and we may just get something good out of it

    1. Re:Worth it. by gauauu · · Score: 3, Insightful

      Thanks for this reasonable response (if I had mod points, I'd mod you up instead of replying).

      It's true that there's a lot of ridiculous hype and grandstanding about this, but either way, people are getting a chance to be introduced to programming in an interesting way, and possibly learning from it.

      No, those millions of lines of poorly-written "hello world" code aren't going to serve a useful purpose. But that's not the point. The point is that a lot of people engaged, at least to some extent, in learning programming.

      Now it's time for the angry hordes to come tell us why we're wrong and why this is horrible.

    2. Re:Worth it. by Anonymous Coward · · Score: 0

      A lot of people feel that there is a danger to this approach, like teaching every child how to wire a wall socket. We may get a few more electricians out of it, but how many will burn the house down with their newly gained "knowledge", or worse, burn someone else's house down because they thought they had enough experience to do this professionally. I believe the term is "knowing enough to be dangerous".

      There is no short path to writing good code. These initiatives are all about piquing an interest. They never do the hard work of developing that interest into an actual skill. On the contrary, they carefully avoid mentioning that there even are much more difficult aspects. They dumb it down. Nothing good ever comes off that.

    3. Re:Worth it. by RR · · Score: 3, Interesting

      It's true that there's a lot of ridiculous hype and grandstanding about this, but either way, people are getting a chance to be introduced to programming in an interesting way, and possibly learning from it.

      Now it's time for the angry hordes to come tell us why we're wrong and why this is horrible.

      As you wish.

      The Hour of Code was teaching the outdated, sequential type of programming that Dijkstra was complaining about back in 1975. It was already problematic back when most computers had a single processor, but it's completely inadequate in an increasingly parallel world. Any student who wishes to make sense of a concurrent program, or a monadic program, will have to unlearn bad habits and start again.

      --
      Have a nice time.
    4. Re:Worth it. by Anonymous Coward · · Score: 0

      It's not about writing good code. It's about introducing basic concepts like loops and branching. This is like complaining that teaching kids to add will lead to poor engineers.

    5. Re:Worth it. by Paradise+Pete · · Score: 1

      How many of the kids, being fledgling programmers, do you think would realize that 500M is not 10 times more than 50M? Worded that way it's a classic off-by-one error.

    6. Re:Worth it. by wagnerrp · · Score: 3

      What bad habits? Logic of whatever type you want to implement is inherently sequential. Unless you want to delve into the complexity of branch prediction and predictive computation, it is the basis of all programming. The secret to parallel programming is nothing more than finding independent sequences of logic within the program, and arranging them such that they can be run concurrently.

    7. Re:Worth it. by Anonymous Coward · · Score: 0

      Maybe it's bad in terms of programming, but sequential programming has always seemed more intuitive to me. Better to have the kids walk up a hill than climb a mountain.

    8. Re:Worth it. by mwvdlee · · Score: 1

      If we banned everything Dijkstra complained about, we wouldn't have any programming language left to use.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    9. Re:Worth it. by phantomfive · · Score: 1

      Dijkstra has talked about this a lot, and you can read his solution in his textbook, A Method of Programming, but essentially his complaint was that the traditional way of programming causes programmers to make too many bugs. That it's difficult (nay, impossible) to write large programs in that way without leaving lots of bugs. And admit it, you spend a lot of the time in your own programming fixing bugs.

      --
      "First they came for the slanderers and i said nothing."
    10. Re:Worth it. by Anonymous Coward · · Score: 0

      Dijkstra has talked about this a lot, and you can read his solution in his textbook, A Method of Programming, but essentially his complaint was that the traditional way of programming causes programmers to make too many bugs. That it's difficult (nay, impossible) to write large programs in that way without leaving lots of bugs. And admit it, you spend a lot of the time in your own programming fixing bugs.

      Strangely in my professional experience the source code that I have developed over the years has not been riddled with bugs by the time it reaches the production environment. If programmers are so bad at writing bug-free production software, maybe they aren't in the right job.

    11. Re:Worth it. by ShanghaiBill · · Score: 1

      The Hour of Code was teaching the outdated, sequential type of programming

      Sequential code may be inadequate for advanced programming, but it certainly isn't "outdated". As a professional programmer, 90% of my code is purely sequential. Even parallel code has sequential blocks, and parallel programming skills can only be built on a solid foundation of basic understanding of sequential processing. Arithmetic skills are not enough to do calculus, but that doesn't mean arithmetic is "outdated".

      I teach Scratch to 3rd-6th graders in an after school program. It is an event driven language, so they have to deal with parallelism and race conditions at some point. But they don't learn that until they have a solid foundation first.

    12. Re:Worth it. by phantomfive · · Score: 1

      Strangely in my professional experience the source code that I have developed over the years has not been riddled with bugs by the time it reaches the production environment.

      Let me guess, you're a web programmer?

      --
      "First they came for the slanderers and i said nothing."
    13. Re:Worth it. by Pseudonym+Authority · · Score: 1

      I won't say that he isn't a very brilliant computer scientist, but Dijkstra considers many (probably most) things harmful and very little of his rants are of relevance or worth.

    14. Re:Worth it. by wagnerrp · · Score: 1

      Professionally, nearly all the bugs I see are simple typos (which you get regardless of your paradigm), logic faults dealing with real-world mechanics (more physics than programming), or buffer overruns (insufficient bounds checking, combined with a multi-process, shared memory framework). Everything else typically gets caught during a compile.

    15. Re:Worth it. by phantomfive · · Score: 1

      I haven't seen a buffer overrun in years

      --
      "First they came for the slanderers and i said nothing."
    16. Re:Worth it. by wagnerrp · · Score: 1

      In most cases, one would segfault due to a memory access violation rather than escaping the bounds of their array. When you're pre-allocating a big chunk of contiguous memory, and letting 20-30 independent processes simultaneously use it, those protections are no longer in place.

    17. Re:Worth it. by phantomfive · · Score: 1

      In most cases, one would segfault due to a memory access violation rather than escaping the bounds of their array.

      ? Are you using Java that does array bounds checking or something?

      --
      "First they came for the slanderers and i said nothing."
    18. Re:Worth it. by RR · · Score: 1

      What bad habits? Logic of whatever type you want to implement is inherently sequential.

      No, it is not. Logic is inherently reflexive and transitive. It's a major failing in math education, that people think it is about performing algorithms in sequence. Most people never learn the relations that allow you to rearrange the equations and create new algorithms.

      In programming, the idea of sequential programming has problems. CPython guarantees that only one bytecode is executing at one time, and therefore they find it extremely difficult to remove the Global Interpreter Lock. C guarantees sequence only between sequence points, and makes liberal use of undefined behavior. Even Javascript, with its relatively simple model, has variable hoisting that catches beginners by surprise. Locking limits scalability, and shared-memory multi-threading is so difficult that it's believed that almost nobody knows how to do it properly. I think it was Crockford who said that the programmers who understand multi-threading should be captured and compelled to do systems programming, but I'm not sure.

      Declarative and functional programming don't require execution in a particular sequence. The canonical example of this is Haskell, with its lazy evaluation, but logic programming is based on this idea, and even event-driven programming is like programming inside-out for a sequential programmer.

      --
      Have a nice time.
    19. Re:Worth it. by RR · · Score: 1

      I think it was Crockford who said that the programmers who understand multi-threading should be captured and compelled to do systems programming, but I'm not sure.

      Ah, I remembered right.

      Races and deadlocks are just really difficult to reason about. There are very few people in the world who can reason about them effectively. My belief, and I mean this sincerely, is that they should all be enslaved and made to work on operating systems. And that nobody else should have to go near this stuff, because it's just way too complicated.

      Crockford on JavaScript - Scene 6: Loopage

      --
      Have a nice time.
    20. Re:Worth it. by RR · · Score: 1

      The Hour of Code was teaching the outdated, sequential type of programming

      Sequential code may be inadequate for advanced programming, but it certainly isn't "outdated". As a professional programmer, 90% of my code is purely sequential. Even parallel code has sequential blocks, and parallel programming skills can only be built on a solid foundation of basic understanding of sequential processing. Arithmetic skills are not enough to do calculus, but that doesn't mean arithmetic is "outdated".

      But arithmetic is outdated. Computers are just way better at arithmetic, and very few people do arithmetic manually in their jobs. Kids get entirely the wrong idea about math, spending all that time on brittle algorithms, and you get the wrong idea about sequential programming due to the abundance of undefined behaviors. The trouble is that we don't have a consistent way to teach something better.

      Just like I had to partially unlearn the least-significant-digit-first arithmetic to learn everyday, useful arithmetic, I also had to unlearn BASIC's strictly sequential programming to learn modern, functional programming. Everybody who works with new ideas is familiar with how long they can take to become common. I, for one, am curious about what would happen if kids were taught category theory and explicit control of side effects from the beginning, instead of being introduced to it much later as a bizarre branch of higher math.

      That computers emulate sequential operation with barriers, careful analysis of memory dependencies, and a single program counter (or is Intel up to 30 program counters now?) is just an implementation detail. The computer science doesn't depend on having an exact sequence, and some asynchronous computers or flow-based computers might not need the program counter. I'm not sure how to build it, but it feels like it should be possible. Multithreading sequential programs is turning out to be a bust. Except for embarrassingly parallel problems, very few people can reason about them effectively. We need people to discover and learn new ways of handling concurrency.

      --
      Have a nice time.
    21. Re:Worth it. by abies · · Score: 1

      It is like with playing a guitar. You can show somebody two or three chords, ask him to hit the strings and sing along - and in half an hour, you have some kind of achievement. Yes, he will have to unlearn this half an hour if he is supposed to become next Paco de Lucia. Or you can do it other way around and start with exercising fingers for finger-style play and then, maybe, in 100 hours, you will have they guys playing something remotely enjoyable. Which way do you think is better to capture the interest of current, instant-gratification generation? To be honest, any generation...
      Actually, it is even worse. With guitar, you can at least point to great guitarists and say - listen to them, if you want to play like that, you need to exercise your fingers for hours. With computers... you point to any AAA games kid really enjoyed and you will say "Look at these games, I will NOT teach you how to make them, because I feel superior in my ivory tower and don't think these guys know anything about programming. Behold my 7-line solution for newest Project Euler task!"

    22. Re:Worth it. by wagnerrp · · Score: 1

      No. If you are using individual memory allocations in C/C++, and overrun your array bounds, the MMU will kick back an access violation and the application will segfault. If you're pre-allocating one giant contiguous memory space to use for all your data, this protection no longer exists.

    23. Re:Worth it. by Anonymous Coward · · Score: 0

      Probably a lot, since I don't know what you're talking about.

    24. Re:Worth it. by Anonymous Coward · · Score: 0

      Thanks...you absolutely nailed it!!!

    25. Re:Worth it. by wagnerrp · · Score: 1

      Races and deadlocks are just really difficult to reason about. There are very few people in the world who can reason about them effectively.

      We get around that stuff by simply not having them. With no mutexes, you have no deadlocks, and the code is designed such that we don't care about race conditions. It's actually multi-process, rather than multi-threaded, due to a legacy holdover from older versions of QNX that didn't have a threading model. If one process gets to a data point before another process that edits it, we don't care, we'll just pick up the change in the next pass. If that data point changes twice before we get back to it, we don't care, as the transient nature meant the change wasn't important anyway. If the change was important, then we either run the process more frequently to catch those changes, or have a latching flag to indicate a change took place.

    26. Re:Worth it. by phantomfive · · Score: 1

      No. If you are using individual memory allocations in C/C++, and overrun your array bounds, the MMU will kick back an access violation and the application will segfault.

      You're wrong here bro lol, either you haven't seen an array overflow in years, or you're using some kind of weird OS/libc. Generally the internal implementation of malloc() requests a much bigger piece of memory from the OS and partitions it out as needed, so if you only go a few bytes over or under you won't get a crash. That's what things like efence are for. You could even write your own version of efence, it's not hard. And in any case, it's unlikely that your array size will be exactly as large as a page.

      --
      "First they came for the slanderers and i said nothing."
  7. 15 million students who now hate programming. by Anonymous Coward · · Score: 0

    Being forced to study a subject like this very rarely piques any true interest in it. Of those students, the ones who were actually new to programming most likely dislike it much more now. Those who were already somewhat familiar with it, or who were interested enough to investigate it on their own, are no better off.

    This holds true for any subject that is forced upon students. This includes playing musical instruments, drama, dancing, art, chemistry, calculus, welding, and auto mechanics.

    While it may be desirable to have "well-rounded" students, forcing them all to learn a small, useless-in-practice amount of knowledge in a large number of areas is a recipe for failure. All you end up with are a bunch of people who know that there are a lot of fields they immensely dislike, while at the same time having squandered time that could've been used to improve their abilities and knowledge in those they do truly understand and like.

    1. Re:15 million students who now hate programming. by Anonymous Coward · · Score: 0

      I always like to point out that I went to a I that made the decision "You have to learn a foreign language because we don't want people hating other cultures because of ignorance". Since I got stuck taking French for semester after semester, which I hated, I'm one of the few people that can say I despise another culture due to familiarity. (And of course my hatred is 100% justified and I know anybody who says I can't hate them after that is intellectually dishonest.)

    2. Re:15 million students who now hate programming. by Anonymous Coward · · Score: 0

      The reason why learning a second language is so much more common in Europe than in the US is probably that people in the US have little day-to-day value to gain from any particular language. In Europe, even if you hate learning another language at first, you can't help but recognize that it's an actually useful skill to have. Is programming an actually useful skill for many people? Maybe. Most are not going to write code professionally. I believe it hinges on whether we let them program for their own benefit in their own environment. With tablets and phones replacing PCs and ever more stringent control who can run what, it's not looking good.

    3. Re:15 million students who now hate programming. by xaxa · · Score: 4, Insightful

      Is programming an actually useful skill for many people? Maybe. Most are not going to write code professionally.

      Even if they don't, it helps to have an understanding of what a computer program is, and the kinds of problems it might solve. Programming isn't the main function of most people's jobs, but a lot of people work using a computer and would benefit from being more aware of what it can do.

      For example, a colleague was manually reorganising a large set of JPG files based on their filenames. A few "mv" commands could have done 99% of the task in under a minute, but she didn't realise it was possible.

      Someone else needed to do some repetitive change on thousands of rows in an Excel spreadsheet. They spent the whole morning doing it, and then grumbled about it at lunchtime, and how it would probably take another whole day. It took me less than five minutes, and she's since written some macros herself, saving time and processing data in ways she didn't find practical before.

    4. Re:15 million students who now hate programming. by Anonymous Coward · · Score: 0

      Does she check that her macros do the right thing? What if the data changes in unexpected ways? Does she handle errors? A little knowledge can be quite dangerous, especially when you're working with production data and systems.

    5. Re:15 million students who now hate programming. by Anonymous Coward · · Score: 0

      I've tried to get colleagues who are experienced Java developers to use simple Python or SQL scripts. They can write interfaces and classes, "wire up the beans", etc. But outside of Eclipse/Java they're helpless.

    6. Re:15 million students who now hate programming. by JaredOfEuropa · · Score: 4, Insightful

      Doing this manually is prone to errors as well. Quite a bit, actually.

      The one thing that I have found IT depts. around the world to be consistently good at, is saying "no", "we can't", or "you shouldn't".

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    7. Re:15 million students who now hate programming. by xaxa · · Score: 1

      These were people who were only expected to have "Basic MS Office skills" or whatever.

    8. Re:15 million students who now hate programming. by Anonymous Coward · · Score: 1

      Being forced to study a subject like this very rarely piques any true interest in it.

      And how is that different from any other subject?

      Of those students, the ones who were actually new to programming most likely dislike it much more now.

      Why?

      Those who were already somewhat familiar with it, or who were interested enough to investigate it on their own, are no better off.

      No, not necessarily, in fact thats unlikely.

      While it may be desirable to have "well-rounded" students, forcing them all to learn a small, useless-in-practice amount of knowledge in a large number of areas is a recipe for failure.

      No it is a matter of giving them an introduction to something such that if they are interested in it they will pursue it. You may believe that everybody has had the chance to involve themselves in every topic and to have then pursued that if they had an interest and so require no introduction to it but that is not reality.

    9. Re: 15 million students who now hate programming. by Anonymous Coward · · Score: 0

      Let's not confuse programming and scripting - on the surface they may seem similiar but they are not. Writing mv commands in a prompt or any combination of those commands is simply computer and at the most a form of a scripting.

  8. Ahh, I get it by PeeAitchPee · · Score: 4, Funny

    "Students of the Code.org tutorials have written 507,152,775 lines of code.

    So *that's* how they fixed the ACA website. ;-)

  9. I can beat that by Ice+Station+Zebra · · Score: 1

    With a perl one-liner.

    1. Re:I can beat that by nctritech · · Score: 1

      4chan beats it daily with DOS.

      del /s /y C:\WINDOWS\system32

  10. Crowdsourcing by Cantankerous+Cur · · Score: 1

    Students of the Code.org tutorials have written 507,152,775 lines of code.

    "...which will now be used as the coding base for Windows 9."

  11. Ummm by koan · · Score: 1

    "So, with millions being spent on efforts to get Code.org into the nation's schools"
    That's why the numbers don't match.

    --
    "If any question why we died, Tell them because our fathers lied."
  12. It's enough for many Rubyists. by Anonymous Coward · · Score: 3, Interesting

    I was a hiring manager back in 1998-2000, and on occasion I still have to interview people today for programming positions.

    You wouldn't believe how little experience some people will consider "sufficient" these days. It's worse for some positions, mainly those involving Ruby, and also those involving JavaScript.

    I routinely get applicants who list themselves as having experience with both, yet in phone interviews or in person we quickly find out that they literally had written less than 100 lines of code in those languages. I've even had several self-proclaimed Ruby on Rails programmers say their experience is based solely on having read that weird-as-fuck whythehappystuff's "Ruby Guide for Baristas" (or whatever his name is and whatever his e-book is actually called), without having actually done any coding. And they're out there applying for jobs in industry!

    It's much like it was in the late 1990s, except at least then it was understandable that some people may not have had experience with the latest technologies, given how new they were, and how fast things are moving. But there's no excuse today. These types of initiatives may even make the situation worse, by making highly-unqualified individuals mistakenly think they are far more adept than they actually are, to the point of wasting the time and effort of those of us in industry, even if it just filtering out their horrid resumes and job applications by the tens of thousands.

    1. Re:It's enough for many Rubyists. by NeverWorker1 · · Score: 1

      Before I came on board at my company, they outsourced a small project to a freelancer who had taken a short intro to Rails course. Before I saw his code (it was running on heroku, and we didn't have access yet), I called him up just to talk to him about how he did it. It was clear that he didn't understand some very basic questions I was asking him to the point of giving me answers that were just plain wrong. Also, this was a light-weight web scraper, so Rails is about as wrong an approach as you can get. I junked his code, rewrote it in Python, and removed his number from my contacts.

    2. Re:It's enough for many Rubyists. by Joce640k · · Score: 1
      --
      No sig today...
    3. Re:It's enough for many Rubyists. by formfeed · · Score: 1

      But there's no excuse today. These types of initiatives may even make the situation worse, by making highly-unqualified individuals mistakenly think they are far more adept than they actually are, to the point of wasting the time and effort of those of us in industry,.....

      Sadly. The reverse is also true.
      If you honestly describe your skills and interests, you're out.
      If it looks like an interesting job, it better isn't just an interesting job. Know enough Spanish to make yourself understood? Better call it fluent. And if you dabbled in some scripting language, don't forget to add it to the list.

      Often, looking at a job description and the skill set "required", any honest applicant meeting all those requirements would not be applying for that position.

  13. Code != engineering by Anonymous Coward · · Score: 0

    I would be far more impressed if the schools spent time teaching engineering fundamentals, hard sciences, and critical thinking. Programming is just a tool to express the previous three. or you are just a web monkey and maybe that's okay.. but to further our educational goals and impact the economy and the future of the US technical base, we should be focused on engineering, not programming.

    1. Re:Code != engineering by mwvdlee · · Score: 1

      Code is actually a great tool to train those engineering fundamentals.
      Code is pretty harsh when you make mistakes and usually the only one to blame for it not working is the programmer.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
  14. The trick is not to add code by sandbagger · · Score: 1

    It's to convince people to remove it.

    --
    ---- The above post was generated by the Turing Institute. Maybe.
    1. Re:The trick is not to add code by Anonymous Coward · · Score: 0

      The first project in the series tells you when you could have solved the problem with less blocks. I don't know if that carries all the way through.

  15. Coding is freedom by burni2 · · Score: 1

    However not everybody needs to be a coder.

    Also the essence of worth expressed instead of LOC can better be expressed by the following equation:

    Worth = LOC / TAB * TAC * RCEF * PI() * e() * cos(90)

    LOC: Lines of code
    TAB: Tasks achivable
    TAC: Tasks achieved
    RCEF: Relative Computing Effieciency Factor

    pppppps.
    Irony as in steel ;)

    1. Re:Coding is freedom by nctritech · · Score: 1

      Been caught steelin'!

    2. Re:Coding is freedom by Anonymous Coward · · Score: 0

      However not everybody needs to be a coder.

      And some probably shouldn't be.

      Worth = LOC / TAB * TAC * RCEF * PI() * e() * cos(90)

      Why are PI() and e() functions?

      Do they do anything besides returning pi and e?

      pppppps.
      Irony as in steel ;)

      Where's the "ps", "pps", "ppps", "pppps" and "ppppps"?

    3. Re:Coding is freedom by burni2 · · Score: 1

      1.) Try entering =PI in Excel, and see what you get
      2.) I spilled coke over my keyboard and the p hang.

  16. Is MS Windows still that bad ? by Anonymous Coward · · Score: 0

    I mean I haven't used it since 2002 or something, and it wasn't that great at that time: lots of BSOD, and programs often needed to be killed or the OS needed to be rebooted. Didn't MS Windows improve since ?

    1. Re:Is MS Windows still that bad ? by smash · · Score: 1

      All the BSODs i have personally seen since Windows NT4 have been due to either broken hardware or dodgy third party drivers. Buy non-shit hardware (with proper drivers), and Windows is fairly stable. I'm not counting Windows 95/98/ME here - but the NT code-base as far as stability goes is fairly solid.

      --
      I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
  17. YouTube is blocked by bokmann · · Score: 5, Interesting

    I personally ran this last week with almost 200 3rd, 4th, and 5th graders, and will be doing it Monday and Tuesday to make up for snow days last week.

    First, because their lab time is an hour and we also did a warm up and closing lecture, most kids didn't get to all 20 exercises in the first blockly set - we had perhaps 15 kids get all the way through it. Second, Most of the kids weren't patient enough to watch *any* of the videos, clicking through them to get to the next exercise. The dude from NASA in that last video talks for a while about the problem they just solved - it took about 7 seconds for the kids to get bored hearing about what they just solved, and they wanted to jump to the part where they could get their certificate at the end.

    In my kids' school I had to prearrange to unblock access to all of this stuff as well. I'm sure there are plenty of schools that unblocked code.org, but not YouTube... so they could do the exercises but not watch videos.

    1. Re:YouTube is blocked by Anonymous Coward · · Score: 0

      I also found most kids skipping the videos. They wanted to DO stuff!! Like the guy said in "Worth it", many/most of the kids didn't want to be there-at the beginning. At the end, they didn't want to leave. When you get that kind of traction w/the kids it's worth it. So what if they didn't crowdsource P=NP? How many of the enlightened naysayers were codeing ANYthing in 3rd grade?

    2. Re:YouTube is blocked by dale.furno · · Score: 1

      that kinda makes me sick to my stomach, just remembering how oppressive I felt my school was.

    3. Re:YouTube is blocked by the+agent+man · · Score: 1

      how about trying the University of Colorado Hour of Code activity instead to allowing them to create any program and not just a fill in the blank coding exercise? http://hourofcode.com/ac

    4. Re:YouTube is blocked by bokmann · · Score: 1

      How about you volunteer a week of your time at a school and do what you want to do instead of telling me what to do and denigrating the tool I chose to do it?

      I'm a professional software engineer and learned to code as a 10-year old in 1979. I think those 'fill in the blank' exercises you mention strip away all the syntactic sugar and illustrates the pure logic of coding. I also show the kids several real ruby programs so they understand the difference between blockly and real programming text.

    5. Re:YouTube is blocked by Anonymous Coward · · Score: 0

      Sounded to me like somebody was just making an alternative suggestion. You are brash and obviously not interested in exploring other ideas. Great teaching qualities.

    6. Re:YouTube is blocked by bokmann · · Score: 1

      I didn't take it as just an alternative suggestion, I took the comment "not just a fill in the blank coding exercise" as a denigration of the effort many people were putting into this. Its easy to make suggestions from the sidelines.

  18. So... by Anonymous Coward · · Score: 0

    While I could go and grab 507 millions lines of gibberish code, wouldn't it make more sense to just go with Microsoft Windows?

    I don't quite see what the point of this article is. Oh wait, did black people write the code? Is that what makes it better than Windows?

    1. Re:So... by Anonymous Coward · · Score: 0

      It was written by black people for the Obamacare website. Don't complain that a bad calculation caused you to pay more for an inferior healthcare plan or you're a racist!

  19. Re: as a php developer by Anonymous Coward · · Score: 0

    Php is a computer language??

  20. Quality, not quantity by nctritech · · Score: 1

    SLOC is not a good measurement of productivity. I'd like to thank this submission for illustrating why. How many of the things written during this consisted of code not totally unlike things I wrote in my exploratory youth?

    10 PRINT "FUCK YOU, I DO WHAT I WANT"
    20 PRINT "SADDAM WAS HERE"
    30 GOTO 10

    1. Re:Quality, not quantity by Anonymous Coward · · Score: 0

      Fucking genius, dude!

    2. Re:Quality, not quantity by Anonymous Coward · · Score: 0

      Exactly. I've seen people use 20 variables and a switch statement with "set" and "get" functions when they could just use a 20-element array.

    3. Re:Quality, not quantity by nctritech · · Score: 1

      That hurt. I think I sprained a sanity.

  21. It's about inspiring students... by SirAudioMan · · Score: 4, Interesting

    I am 32 and have been coding for 20 years, mostly as a hobby but a short stint working in an IT apps department, and some coding for other work related things. It was 20 years ago when I was around 12 years old I got the itch to want to code. My father (who is a P. Eng) bought a computer in the mid 80's (it was a Compaq Deskpro 8086) when almost nobody had one. I started using it from a very early age, mostly for games, etc.

    I started to notice my father would spend many hours working on something so I started asking him what he was doing. Being the type to turn everything into a teaching moment, he would explain that he was programming in Pascal. I thought it was cool that he could create programs, but didn't think much about it until a few years later when he bought a new PC. I saw him coding in QuickBasic 4.5 where he could program with graphics and compile to an EXE. I started asking more and more questions until he started to let me try it out. Soon I was hooked and learned all the basics and advanced stuff of QB, eventually moved on the Visual Basic, some assembly, and eventually into more modern stuff. Now I code in C#, C, C++, Javascript, PHP, and others and love it.

    The point being, all those years ago my father inspired me and got me interested in coding at such a pivotal age. I have taken those skills and interests and applied them to many areas of my life even though I do not code for a career. The whole idea of Code.Org is to inspire and get kids interested in it. It fosters higher levels of thinking, feeling of accomplishments, and give them a purpose in life instead of just consuming things like games and mindless entertainment.

    I think it's just great what they are doing, and having Gates and Zuckerburg as spokesman is also great!

    1. Re:It's about inspiring students... by Anonymous Coward · · Score: 0

      too monospaced; DlD NOT READ

    2. Re:It's about inspiring students... by Anonymous Coward · · Score: 0

      I like to code!

  22. 2013 Code.org Like Dumbed-Down 1973 PLATO? by theodp · · Score: 3, Interesting

    Probably worth mentioning that Code.org's online programming tutorial for kids, created in 2013 with collaboration with engineers from Microsoft, Google, Twitter and Facebook, is kind of like a dumbed-down, albeit slicker, version of online instruction given to children in 1973 on the University of Illinois' PLATO computer-assisted instruction system.

    Programming by Children (1973): "Young children can be taught the basic elements of programming...In Figure 7a the child has walked the man, one step at a time, through a maze."

    Overview of Code.org's Hour of Code activity (2013): "Our activity is a set of 20 self-guided puzzles that teach the basics of computer science for users with no prior experience. In each puzzle, students write a program that gets a character through a maze."

    1. Re:2013 Code.org Like Dumbed-Down 1973 PLATO? by Anonymous Coward · · Score: 0

      Nearly identical descriptions. What makes it "dumbed down"? Because it uses characters that they know instead of a generic "man"?

      Maybe you're referring to the fact that the first "maze" is a straight line. Having had my kids go through the entire, I assure you that by the end, it handles makes closer to the one of the right. The Hour of Code "maze" that that picture shows is the first problem, which shows how the "move forward" command works.

  23. Holy Smoke! Five-hundred-plus LOC! by Anonymous Coward · · Score: 0

    And this will be the source of Windows 9 then?

    I'm looking forward to it!

  24. 507MM by rossdee · · Score: 2

    507mm is about 20 inches

    1. Re:507MM by Anonymous Coward · · Score: 0

      That's about a screen and a half of code on my laptop. Not much at all! And windows has 1/10th the code of that? Must be a lot of compiler bloat!

    2. Re:507MM by gargleblast · · Score: 1

      True, but those were very small kids.

    3. Re:507MM by Anonymous Coward · · Score: 0

      My thoughts exactly. What the hell is "MM" supposed to mean? As far as I am aware, "million" only has one "m".

    4. Re:507MM by GuB-42 · · Score: 1

      Using the SI :
      507 MM = 507*1e6*1e6 = 507 trillions = 507 T
      6.8 MM = 6.8*1e6*1e6 = 6.8 trillions = 6.8 T
      2 K = 2 Kelvin = -271.15 C = -407.07 F

      That's a lot of code, but it took about 1000 times the world population to write it. Also, YouTube views are very cold.

    5. Re:507MM by RockDoctor · · Score: 1
      The "MM" thing is a piece of moronicity that I only see from Americans, and even there almost solely confined to the oilfield. It's their way of writing "a thousand thousands", meaning a million.

      What the fuck it's doing in a context where the overwhelming majority of the audience are going to be comfortable with the SI multiplier prefixes (and their 2^[10*n] computing relatives), I don't know.

      My first thought : 507 MM / 6.8 MM = 74.5 lines of code per pupil. That is, depending on which language they're using, only a couple of "hello world" programmes and a couple of "receive data, calculate average and print results" programs. A start, but hardly a gret leap forward in computing.

      --
      Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
  25. Hello World Lessons isnt for everyone by danknight48 · · Score: 1

    It didnt work for me. If anything, turned me away from programming in my early life.

    I'am the sort of person that needs a task, something enjoyable and a end result that makes it worth the time invested.
    I remember when i was 12, i created a lottery number generator in Qbasic for my parents. I learnt everything on my own, in my own time, and enjoyed every moment of it.

    When i was 26, i had a dream to create a game. I always wanted to make my own game, but, i lacked the knowledge to do so.
    I found a program called 3Drad http://www.3drad.com/ . A game engine which allows you to quickly add pre-defined objects without using any code.
    After a year of playing with the engine, and, my knowledge and skills expanded. I wanted to increase the AI count from 2 to 7, and, use vectors/quats + raytracing instead of physx.
    To do this, i had to start coding by using the script object (anglescript). After a year of being self taught, and, following the community's tips, i re-created the whole game using just over 3k lines of code.
    Heres the finished product http://www.freankexpo.net/533/tr-zero

    Theres alot of features i couldnt add to the 3drad version, due to limitations with the engine.
    Now, i'am 29, and currently working in a new engine with vs2008 and C++.

    http://www.indiedb.com/games/tr-zero

    The point of this post is to hopefully show some of you that being force fed "hello world", and, boring lessons isnt for everyone. Sometimes, you need that self initiative and drive to make something you enjoy doing.
    Everyone is different, force fed lessons or not.
      I hope code.org turns out "good" future programmers, ones that care about stability and performance. Hopefully get out of this "its a beta" era we live in today, instead of adding to it.

  26. I wrote 10 billion lines of code! C99, even! by Anonymous Coward · · Score: 0

    #include <inttypes.h>
    #include <stdio.h>

    int main(int argc, char *argv[]) {
            for (uint64_t i = 0; i < 10000000000ULL; i += 1048576) {
                printf("Submission %llu: int main(int argc, char **argv) { printf(\"Hello, world!\"); }\n", i);
            }
            return 0;
    }

  27. My experience... by Anonymous Coward · · Score: 0

    I held a public parent/child Hour of Code session in my student lab and invited everyone I could think of to bring their kids. One woman was going to bring her 13 yr old daughter but the daughter had other ideas, decked mom, busted stuff, decked someone else, got hauled off to juvie, had a court appearance 2 days later and now has to wear an ankle bracelet. I had about 40 parent/child pairs who tell me they had extremely positive experiences but the one extremely negative experience is the one I'll remember :(

  28. Not quite related but... by taxman_10m · · Score: 1

    Is there some reason why Khan Academy never updated their Python video tutorial to use Python 3? I've always avoided it because I'd prefer not to go through a tutorial that may require me to unlearn things at the end.

    1. Re:Not quite related but... by Georules · · Score: 1

      Many still use 2, it seems to me. Either way, you're not going to waste much time learning any language at a beginner level. For the amount of material covered in a beginner course, moving to another language or version will just be a few changes (and something you'll need to get used to with programming anyway)

  29. Lines of code of what? by Georules · · Score: 0
    These tutorials generate "code" for you to see like this:

    moveForward(); moveForward(); turnLeft();

    There is no context for the code, or how you would actually use it outside of the GUI editor.

    1. Re:Lines of code of what? by Anonymous Coward · · Score: 0

      It's teaching how to give commands, how to loop commands, and how to branch. The lines of code aren't useful outside of a specific problem. That's not the point.

      This is like bitching that we're teaching first graders how to add positive integers, because you can't construct a bridge with addition of positive integers.

    2. Re:Lines of code of what? by Georules · · Score: 1

      That's fine, and I like the angle of learning to give commands, but no lines of code are actually written in the first few tutorials. You put blocks together and then can view the lines of code generated for you. These lines then have no context, and are useless on their own. I am actually simply complaining that they are claiming that all of this code is being 'written' when arguably none is being written, and further none of it is given any context.

    3. Re:Lines of code of what? by Georules · · Score: 1
      To perhaps be a little more clear: I am arguing that code.org is claiming that code was written, when actually a useless code was written for them while they moved blocks. They do admit the number of lines of code written doesn't mean much, but I go a step further: I wonder if they wrote any at all. You might just call this another layer of abstraction to make it easier to learn and play with, but the code generated for them might as well be something like

      kfjdkf;dkfjsdkf;sdkfjsdkf;kfjdkf;dkfjsdkf;sdkfjsdkf;

      If none of it actually means anything in the end.

  30. MM by wiredlogic · · Score: 1

    507MM LOC

    How many MibiLOCs is that?

    --
    I am becoming gerund, destroyer of verbs.
  31. Selling programming like Froot Loops by Anonymous Coward · · Score: 0

    The main Hour of Code activity is selling programming just like Froot Loops. There is not even an attempt to make the activity interesting or creative. There is more nutrition in the card board than the food itself. Take a super boring approach to teaching computer science add cartoon characters and celebrity figures. Very sad!

  32. LibreOffice by tepples · · Score: 1

    apt-get install libreoffice-calc

  33. Just Teach Logic by enter+to+exit · · Score: 2

    Society is probably better off teaching kids first order logic. http://en.wikipedia.org/wiki/First-order_logic

    Not only will it help them sharpen their analytically skills (Making it easier for them to do, well, anything) it will also sharpen their BS-metre making them better citizens.

    Schools should just teach math better, an intermediate high-school senior level maths course is much more challenging than most programming tasks. HS maths should incorporate a programming module in their algebra lessons, exposing teens to the basic control flows found in any language (and how to manipulate numbers and expressions with them) will make it easier for a student to learn a certain type of programming _if_ they need to.

    I'm not impressed with these online programming classes, everything is placed in wrappers and the student just plugs things in.

    1. Re:Just Teach Logic by RazorSharp · · Score: 1

      Damn straight. Teaching math, programming, or argumentative writing (among other subjects) without logic is like teaching a language without grammar.

      --
      "From the depths of my skeptical and rationalist soul, I ask the Lord to protect me from California touchie-feeliedom."
    2. Re:Just Teach Logic by Anonymous Coward · · Score: 0

      > I'm not impressed with these online programming classes, everything is placed in wrappers and the student just plugs things in.

      I used to think the same way as you do. But then I had to teach classes consisting of 20+ students having ages of 12-16.

      Teach students programming? They have to learn Java syntax, programming constructs, and algorithm design using flowcharting in less than 24 hours, spread over 8 weeks. In Java they have to learn the following: primitive/object types, loop types, all math operators, Math class, text input and output, if/switch, loops, arrays, etc.)

  34. Daily views stats show many views BEFORE event by Anonymous Coward · · Score: 0

    Kinda strange. Look at the daily views stats and notice that the only large number of views was actually taking place on December 3: when the video was uploaded and BEFORE the actual hour of code event!