Meanwhile, at code.org
worrydream.com
worrydream.com
Quite frankly I'm shocked and confused by some of the negativity I've seen expressed (including those from the HN community) towards code.org, and the idea of programming as a basic literacy in general.
It seems like these people will do almost anything to find something about this idea to pick on, ridicule, discredit, and otherwise attack. Seriously, last time this came up on HN the majority of the discussion was about how horrible it is that this movement uses the phrase "learn to code" rather than "learn to program".
Now it's ad hominem attacks against musicians/artists advocating literacy and education -- and what do those attacks say? "Congratulations [...] for having an educational philosophy that's not completely unreasonable and horrifying." What a disgusting backhanded "compliment". Is there something about being a musician or artist that disallows one from having a valid intellectual opinion taken for its own sake, without being patronized?
"Aww isn't that cute! A musician/artist having an intellectual idea that isn't completely terrible -- like a quaint little animal trying to imitate us true intellectuals up here in our high tower of superiority." I exaggerate, but this is basically the elitist mentality I perceive behind the actual quote.
To me, this comes off as a desperate attempt to defame this movement because it threatens to demote the status of basic technology roles from "elite magic" to "basic literacy" -- and to some people, apparently that's not an amazing social good, but a terrifying prospect of power loss. Am I way off base here in perceiving this?
To address the main point: So what if some person never intended to claim that learning to program makes you smarter. Coding is becoming more popular, more socially acceptable, and viewed more positively not only as a career choice but as a basic literacy that will be extremely important in the future (which is true). That's a good thing.
What's more important in my mind is gleaning a little bit about how computers work. Nothing overly complicated like how a processor or memory work, but that every program is basically just a set of logic routines. The easiest way to do that is probably by teaching a little programming (or logical thinking).
Now with the importance of technology in our day-to-day lives, there is a chance for programmers and those working in IT to be considered as professionals, as equals.
Instead we have people within the industry running around describing themselves as 'geeks' and 'nerds' and 'hackers'. Meanwhile those outside the industry claim that programming is easy, anyone can do it, all you need is a computer and a couple of lessons.
You would not find people saying the same thing about doctors or lawyers, and you would not find doctors or lawyers denigrating themselves.
Apparently you can take a random homeless person, give them a few lessons, and hey presto you have an app maker.
Stop being such an elitist. Just like any profession there are worlds of difference between the different levels of skill and competence, that doesn't mean you're denigrating yourself by trying to make it more accessible for kids.
As computers become more and more woven into society, the consequences of having incompetent programmers are becoming more and more severe. Just one example currently in the news is the Target breach. Millions of people are affected by that. Or healthcare.gov, anyone?
Now just imagine when cars drive themselves, computers control your money (bitcoin), and "apps" supervise your grandparents' health.
The idea that all of this critical technical infrastructure is built out by Pepsi-fueled kids who reject education, experience, and scientific rigor in favor of whatever circle-jerk beliefs they invent amongst themselves as they "hack" on PHP, is frankly appalling. Such teams are the go-to choice for clueless corporate PHBs who only see dollars per hour as the hiring criteria.
But hey, that's the status quo, and I doubt you'll ever see companies move to be in favor of setting some professional standards, because the business priority is cheaper workers.
But to me, I think you hit the nail on the head. I'm sorry, but this is a field were our median income is 50% more than the median income of the rest of the country. It's also a field that you don't need to go to college to join, can educate yourself on how to join it by using sites like Code.org and other online resources, and has a ton of demand, meaning you won't be out of work like your Dad has been, several times in the last few years.
To anyone going through school right now, then coming home and seeing the news their parents are watching, or look at the front page of the newspaper their parents are reading, or listen to an adult at their soccer game or the mall or church, all of this sounds like a way out of it, a way to give yourself something better than that.
Why in the hell is it so wrong to want a better life than what your parents had?
And as to teaching reasoning: I'll be honest, the best teachers in the world have trouble teaching this to anyone, and someone is wanting a website to do it?
My take on the post is that Bret is viewing code.org, or at least the page he criticizes, as trying to make mechanics, when they should be trying to make engineers. Seen in that light, the quotes do take on sort of a different tone.
Now, I agree that in principle, Engineers design and build those type of systems. However, I think as morr people are educated in those domains (programming or mechanical aptitudes), you will begin to find more self-taught engineers with the skills to bring ideas to life.
On the other side, there are those who are going to be doing the oversight and giving the clear instructions, who can build something from vague requirements with minimal fuss. There are also lots of people in between, but everything is easier when you put it in absolute terms.
I get the impression that this comment has more to do with contrasting will.i.am's statement with the other statements on code.org for effect than it has to do with specifically putting down will.i.am.
With this comment, the linked piece seems to be implying that the statements made by Zuckerberg, Clinton et al are inspired by wrongheaded beliefs about the purpose of education, and that only will.i.am's statement comes anywhere close to hitting the right tone. I read this comment as genuinely complimentary, albeit weak.
As I read it, Bret Victor's critique of code.org is more nuanced than the usual complaints: it stems from a disagreement with code.org's implicit claim that programming should be taught in schools because programming is currently a high-value skill, in terms of the amount of money you can earn by doing it professionally. He seems to think that school shouldn't be primarily about training people to be "useful" to employers or the government in the short term. I'm somewhat inclined to agree.
> To me, this comes off as a desperate attempt to defame this movement because it threatens to demote the status of basic technology roles from "elite magic" to "basic literacy" -- and to some people, apparently that's not an amazing social good, but a terrifying prospect of power loss. Am I way off base here in perceiving this?
In the context of Victor's body of work (which is focused more or less entirely on making the incredible power of computers more accessible to more people), I have a hard time believing that any such motivation underlies the linked piece. While I think there definitely exists such a motivation in other criticisms of the learn-to-code meme, I don't think it has much to do with Victor's critiques.
Fair enough, but is Gates's claim that "learning to write programs stretches your mind" really that far off or that much worse? Or that "an understanding of computer science is becoming increasing essentially in today's world"? Maybe it's a trivial point, but is it as offensive as this link makes it out to be?
Programming is, and ought to be seen as, merely a means to an end – not an end in and of itself. A movement that gets programming into to schools by claiming code is itself a Good Thing will inevitably bring into existence a programming curriculum that ignores the important abstract stuff about coding-as-a-concept (the new ways in which computers can extend the mind) and focuses instead on the concrete "implementation details" of programming today (text files, the command line, and all that other baggage from 20 years ago with which programmers are still saddled).
Basically: the reasoning is important, the code isn't, and code.org is all about the code.
This is the essential piece I thought Bret made clear by highlighting the choice quotes from Seymour Papert.
Treating programming as a means to an end has very pragmatic ramifications for programming. It means we can question the value of our tools when they do not serve our goals. Otherwise we are the mercy of them (and entrench the status quo as state-of-the-art).
One question I've been grappling with is why it takes so many human-hours of work to produce conceptually simple programs.
I'm inclined to agree (with what you explained) as well. But, if this is conveyed by the article/graphic, it sure is subtle. I think it would have been a better article if he just explained his complaint (if it is as you say), rather than making a mockery of celebrity quotes with big sarcastic quotes next to pictures of their faces.
> In the context of Victor's body of work (which is focused more or less entirely on making the incredible power of computers more accessible to more people), I have a hard time believing that any such motivation underlies the linked piece. While I think there definitely exists such a motivation in other criticisms of the learn-to-code meme, I don't think it has much to do with Victor's critiques.
Yeah, I was mostly referring to the negativity towards code.org and coding as basic literacy in general, not this author specifically. But that's good to know at least in this case he's not one of those people.
Yeah – it's entirely possible that I'm putting my own words about the learn-to-code movement into someone else's mouth unwarranted. I think the linked piece is more of a frustration-fueled rant than a fully-thought-out criticism, and that the author is trying to quickly capture the spirit of a half-formed argument that he hasn't yet fully explored.
At any rate, it resonated with me, although it took me a few reads to get the gist of what he was trying to say.
> He seems to think that school shouldn't be primarily about training people to be "useful" to employers or the government in the short term. I'm somewhat inclined to agree.
I entirely agree; it's something I've been trying to point out for a few years now.
Something people don't recognize about, say, feminist theory on agency and objectification is that it's a subject that applies everywhere. In this case, it's the objectification of people in general as tools for businesses and governments, rather than as individuals with their own particular needs and desires with intrinsic worth. We're uninterested in discussing what a student wants to learn and instead prefer discussing a paternalistic notion of what a student ought to be required to learn.
For some reason, we've lost the vocabulary for discussing things outside of an economic context. It's probably because bringing up questions of morality is scary: between the polarizing force of political religion and the lack of education in forming one's own moral and ethical system, moral claims find little traction unless they're merely repeating something with wide support.
I think it's less to do with him being a musician/artist than with him being will.i.am, notorious "My Humps" backup singer. If it had been Thom Yorke or Getty Lee or someone then I think they'd probably have been (reasonably or not) treated with a little more respect.
I love Radiohead, but... come on.
All Zuckerberg, Gates and the other Valley backers of code.org want is more code monkeys who are just competent enough to glue together stuff they don't fully understand and couldn't implement if asked to, so they can drive down the wages of actual, competent programmers. It's the same reason they support immigration reform.
And why the push to flood the market with "coders," when health care, not software, is bankrupting us as a country? Why isn't there a "everyone should learn medicine" initiative? Isn't your health important to you? Obviously because it would be illegal, and US doctors (the highest paid in the world) would never allow it.
The “hackathon” event sponsored by Zuckerberg’s political advocacy group, FWD.us, brought together a group of 20 young tech-savvy immigrants who came to the United States illegally with their families as children and are not citizens.
Coders of the winning apps received prizes such as Microsoft Surface tablets, Cisco Webcams, Facebook apparel and free storage space from Dropbox.
The aim of FWD.us's hackathon is to pressure the House to break its logjam on immigration legislation by highlighting the technical talents of young immigrants who are living in the country illegally -- often called “Dreamers” in relation to the Development, Relief, and Education for Alien Minors (Dream) Act — like the coders participating in the event.
http://thehill.com/blogs/hillicon-valley/technology/191176-z...
Several of my friends work in IT, and pull in decent salaries. I don't think any one of them has been writing code on a continual basis for ten years. In the UK the MCITP course costs about £1500 - £2000, takes about a year to complete and you can land a decent job with it. The main reason I don't have an MCITP is because I can't afford one, I need to get a job to pull in the necessary funds. I can't get a job because I'm overqualified for a lot of them, or I can't afford the courses if I'm underqualified.
If I ask a question about computing, I often get the response: "Visit this website". If someone asks me a question about computing and I can sort of answer it, I will try and explain it to the best of my ability.
It was only around two years ago I was able to get my own computer. I had been trying to get one for around 5 - 6 years, but couldn't due to lack of funds. Meanwhile someone at the job centre says I should stick to what I am capable of. Said someone believes I am barely capable of even filling out an agreement form, so it is completed for me without my permission. I noticed around six or seven spelling and grammatical errors.
Oh, did I mention that on the rare occasion I do manage to get a full time minimum wage job, it is often accompanied with abusive behaviour. By abusive behaviour I mean being shouted and sworn at (phrases include "fuck off", "you fucking idiot", "cunting", "that kid is fucking thick as two short planks", "stay out of my way or I'll fucking throw it at ya", "you trying to do my fucking job?").
I'm sorry, but I don't see what is particularly insulting about "code.org", I didn't notice swearing or abusive/threatening comments on the site. Perhaps my standards are different to yours.
EDIT: messed up the formatting, again.
Also, you completely misunderstood the bit about will.i.am. It was a compliment, not an insult. He was saying that will.i.am has a better opinion on programming, as a musician, than all of these other people who should know better (public policy makers and programmers).
Read it again. He specifically called that out as a terrible idea.
Bret believes in Seymour Papert's vision, where coding is not an end in itself, but a vessel for experiential learning about important ideas in mathematics and other fields.
Put down those quote marks until you've learned how to use them properly. We've seen the damage that can do in pg's recent and unfortunate tarring with the 'sexist' brush.
Speaking of elitist mentality...
Though I guess it isn't necessarily stupid to attack this kind of normalization, but I certainly don't think people will be worse off if they learn the basics of CS and a programming language. At the very least it gives them another tool with which they can solve problems. I guess the danger comes from going so "EVERYONE MUST LEARN CODE HOW TO DO" crazy that it comes at the expense of other education endeavors, instead of an enrichment on top of what already exists.
I couldn't agree more, I thought code.org was really cool, educational and entertaining.
I take the view that the less money or resources you have, the more education you require. I currently have £0.90 in my bank account, so I need all the knowledge and skills I can get my hands on.
> To me, this comes off as a desperate attempt to defame this movement because it threatens to demote the status of basic technology roles from "elite magic" to "basic literacy" -- and to some people, apparently that's not an amazing social good, but a terrifying prospect of power loss. Am I way off base here in perceiving this?
To be less verbose, RTFM. RTFM seems to be applicable only when some noob asks a question; when a noob makes a statement that is considered incorrect, you get loads of experts correcting said noob. A lot of the time the original noob statement was misunderstood because the experts misread the statement. I have even come across this on HN.
I started coding at the grand old age of 31 and have no background in CS, so I tend to be treated like a noob, even though I can write a quine in C. A few months ago I was chatting with a friend of mine who works in software development about linked lists, the first sentence I uttered went straight over his head.
But really, is it fair to compare a long, structured statement with brief quotes that are meant to be an effective marketing tool? Before you cringe at the dirty m-word, consider what is being marketed here. Kids now learn creationism, liberal arts, and opinionated history at school. Coding is a refreshingly logical, concrete and objective field of study. It's worth getting it to the 90% of high schools that don't teach it yet, even if it ends up being trivial if-then-else turtle-make-30-steps-forward. We're at a time where it's more about simply getting the foot in the door.
Then again, it's easier to fire up Illustrator and call bullshit on an initiative to bring more rational education to the curriculum. This is the depth of thought that powers elitism and the status quo. Snarky infographics that suggest that programming is worthless without tying it to specific so called Powerful Ideas are harmful. Even if they're drawn by a world-class designer and electrical engineer. Or maybe especially then.
The website design is good and effective and a lot of people need to learn from him. If you think his idea is bad it's not going to work writing this, you have to actually fight the war.
I think it's worth examining history for a parallel. If in the 1920's there was a large push towards mechanical knowledge of the populace (but not necessarily science and engineering) because an understanding of mechanical engines is increasingly essential in todays world, we need 120,000 trained mechanics every year, and the policy at Boeing is literally to hire as many talented mechanics as they can find, I think in hindsight I might also say that it sounds a bit like they are just trying to fill an economic need. Which is fine. But Bret Victor seems to care about teaching and learning, and code.org, from it's main page, seems to care little about that.
No, he opposes forming policy around the idea that the primary purpose of education should be vocational. In reality, most US education policy already works this way, so completely divorced from any value judgement, as a student it would be foolish to pretend it isn't already true.
> Oh, you missed that in his infographic? It's probably because it conveniently wasn't there.
Maybe he left it out of the post because he is interested in criticizing a subset of the marketing, not because he wants to lambast code.org and needs to hide the fact that many of the quotations are agreeable.
Ha ha...yea, usually I get inspired by other people's projects, but visiting worrydream.com just makes me want to quit everything.
Exactly. He is thoroughly invested in using technology and programming to teach ideas, concepts and ways to think.
Just out of curiosity, has he made anything I can actually use? Or does he have any work that is particularly substantial?
His CV[1] link has interesting stuff, but you may not find something immediately useful on his site. Light table was inspired by one of his talks[2] (when I first saw light table I thought it was him following through on the idea).
[1]: http://worrydream.com/cv/bret_victor_resume.pdf
[2]: http://vimeo.com/36579366
Edit: Whoops, put a link instead of your quote for the second section.
On that page, he literally takes a paragraph of text from each of the speakers and outputs a single sentence, extreme in interpretation. Code.org isn't just aiming at one person, so they represent multiple points of view. Parents want to know their children will be financially stable, politicians who can influence this at a higher level want to be able to say it will help the nation, and Bill Gates would likely be able to point you to literature showing that introduction to computing concepts at a young age would help understanding of certain topics. Surprise: none of these points can be properly conveyed in one paragraph.
I helped make an online learning tool used by thousands of students[1]. I'm tutoring at a computer science summer camp for high school students right now[2] (and have done so for six years). From all this, I've seen the impact that computer science and programming can have on students when correctly introduced. It is truly amazing. It is fundamentally changing. Even if this isn't applicable for all students, there is still a long and hard push to have this adopted more heavily in education.
That is Code.org's fight.
[1]: https://groklearning.com/ [2]: http://ncss.edu.au/summer_school/index.html
I'm a fan of Bret Victor's work, but this leaves a real bad taste in my mouth.
Frankly, I don't believe that Bret doesn't understand the nature of marketing. He must be aware that http://code.org/quotes is a tool to help influence policy and garner support, rather than a statement on the proposed mechanisms of education.
Code.org has lots of empirical evidence that having celebrities involved inspires kids. Having female role models encourages girls to try. Showing national politicians from both sides of the isle eases local policy progress.
I'm feeling pretty good about my involvement, because I've seen a lot of comments from parents and teachers like this one: https://www.facebook.com/photo.php?fbid=538314902931484&set=...
and videos like this one: http://www.youtube.com/watch?v=e_t3-3vPp-g&feature=c4-overvi...
I taught Scratch in a Harlem classroom once a week in the months leading up to the Hour Of Code and struggled. Once the Angry Birds & Plants vs Zombies tutorials were ready to beta, I tried it on the class and the results were incredible. Kids that did nothing all semester were suddenly cruising through levels and jumping up and down with excitement. When they went back to Scratch, they suddenly were making dramatically more progress and being creative.
Should also mention, that we've got tons of unplugged activities and lots of other educational materials too. Even more on the way: http://code.org/educate/curriculum
I've lost a lot of respect for Bret Victor just now because he's belittling the work of people who genuinely care and who would love to see his ideas incorporated. There's a much bigger battle to be fought before we can even consider what he's proposing, but he seems willing to work against incremental progress because it's not revolutionary in quite the way he likes.
We've got many types of learning materials at http://code.org/learn from all sorts of providers. My contract with Code.org is over, but if Bret wants to show us how its done, I'm sure the team is willing to share our megaphone.
He's not saying "don't teach kids how to program", he's saying "we're teaching kids how to program for the wrong reasons". The implication is, if you're teaching it for the wrong reasons, we're not doing the best we could for the kids.
That's a perfectly valid thing to say, independently of the good intentions and sincere efforts of all the people involved.
I don't begrudge companies their successful marketing, but in some cases I get a little depressed at what it can imply about the public.
Effectively, Bret is taking a single page of quotes that are used in a marketing effort in order to frame the conversation in ways that people understand. Zuck's quote, for instance, conceptually maps directly to the open job market for engineers as a perfectly valid reason to learn programming.
It's pretty trite to say, just because Zuck says something about there not being enough engineers to fill the open positions, that he wants you to be a "cog in the wheel". What a horrifically poorly formed argument.
The effort of moving people is one that requires incomplete, idealistic language. That's the ugly truth of marketing. Incomplete doesn't mean dishonest, but it very well may mean "intellectually hollow". And the truth is, the real intellect is in understanding what gets us to where we want to be: a place where we unlock the educational power of learning to program by convincing people to try it.
<reckless> It's like convincing someone to lose weight so they'll look better, when really you're wanting to prevent them from a heart disease. </reckless>
They can write code, but not by themselves, or not without it being really messy, convoluted, and not doing what it's supposed to.
What is "coding", or "programming"? Maybe in the context you mentioned, it's computer science. Maybe it's learning how to put together a python script to do some stuff.
When I was getting my degree in CS, there was quite a bit of grousing from the students about how we were being taught very little about how to actually program. You know what? I doubt that was detrimental to too many people.
Instead, we need to keep an eye on the real goal, understand why we are doing what we are doing. Maybe programming, as it is now, is it. Some number of years down the line, there will be a better tool for achieving whatever your end goal is, and an individual or societal worship of programming will only blind people from finding that.
(a) Bret Victor claiming that code.org is implicitly, via quotes from high-profile figures, supporting a misguided view of computer science education that is overly simplistic and suboptimal towards providing the deeper, more nuanced value that programming can teach.
(b) Bret Victor himself being simplistic and uncharitable in mocking the quotes by these high-profile figures.
I think Bret is correct to point out (a), but the method that he chose to do so lended itself to an acrimonious response by many people who have good intentions, leading to responses towards (b). I myself was initially annoyed by the tone of his post. But after some thought and reflection, I found myself agreeing with the sentiment expressed by this post.
I do think that there is a lot more nuance that could have been communicated when it comes to the value of learning programming. The real debate here, I think, is whether it's reasonable to expect a high-profile figure to comment with such sophistication and nuance, especially within the constraints of a short blurb (which is what I would presume is what their PR person and code.org agreed upon).
Is it justified to expect such a degree of nuance from high-status figures and organizations, given the context that computer science education is currently in?
1. It doesn't make sense to use the Papert quote as an assumption of truth. (At least add a commentary to why you agree with Papert (since Papert doesn't explain his reasoning in the given excerpt))
2. I thought that almost every programmer thinks that learning to program has improved their ability to think about problems; especially, I imagined Bret would.
Programming can serve as a medium in which powerful ideas can be brought within reach. But the focus, of course, must be on the powerful ideas, not the programming itself.
You don't need it for every job.
You definitely don't need to be an expert at it for most jobs.
It's just nice when a lot of people can do it moderately well.
Cheap labor?
edit: intriguing that ambivalence and I posted almost the same thing simultaneously!
This is a completely invalid argument. Should you be working your day job while there's still hunger in the first world?
When education rankings are already so poor, adding another layer to the compulsory curriculum complicates the mess even further.
What's more is that all of the school districts that are rushing to implement this first (like Chicago) all struggle with low results and inefficient, highly bureaucratic teaching. Something tells me that adding coding (while erroneously calling it "computer science" to make it sound grandiose) will only lead to further mediocrity, deterioration and a lot of kids coming out with false and butchered ideas of what programming entails.
It's not that teaching programming is bad, so much as trusting that the compulsory school system will get it right is laughable and a recipe for disaster. This has the potential to go very wrong, or even be ultimately useless if it's just entry-level procedural constructs being repeated ad nauseam.
The camp here appears to be divided between people who highly support it at all costs and people who criticize all aspects. I'm more leaning to the latter camp, quite frankly, but one thing we really should all be focusing on is what the hell will they be actually teaching. I have yet to see a conclusive answer.
Let's bring up the whole ineffable thing again. It's like a finger pointing at the moon. The finger can only be a pointer. Whatever truth that is in the moon of programming or thinking in general can't be encapsulated in a pill and injected into the liver. A really big pointer directs a lot of attention in the general direction of the moon. Perhaps some of the tech moguls on the list are being realistic about the payoff unless you schlogg hardcore through a product development and your product goes to the moon.
Give me a break.
First off, I love the liberal summaries/restatement of the advocates of code.org. You have in no way misinterpreted their obviously sinister underlying meanings.
It's also cool that you referenced a quote from the author of Mindstorms, who himself or his work, in no obvious way, influenced the mission of code.org. Because, you know, random unrelated, and out-of-context quotes are awesome. But you should probably go ahead and just redact that whole "I do not mean to dismiss the 'treatment' studies as without value. For many children the opportunity to program a computer is a valuable experience and can foster important intellectual development." part of the text, because I think it may contradict your message here.
Leaving aside the fact that he named exactly 0 jobs and just name-dropped a couple of broad sectors (I guess "job" is a difficult concept to understand by someone who never had one), did it occur to him that if those jobs are the highest-paying (and that's debatable) is because "there are not enough graduates to fill these opportunities"?
Yep, because PR blurbs for things always explain the reasoning in detail. That's the depth of thought that powers HN posts...
Not an article headline from The Onion.
I nominally agree with him about code.org, just found the surrounding context amusing.
I would ask you, how many of you have actually tried to teach kids how to code? How many of you have the experience to back up your assertion that it's simply "too hard" and only a select few should have the privilege? I would imagine a handful and I would be surprised to hear anyone who has had that experience tell me it's been a negative one (if it was I would sincerely love to hear it and find out what issues you had).
For the past six months I've been teaching kids, at the high school level, with little to no background in programming and all of whom Engilsh isn't even their first language (it's an internationally diverse school), web development skills (js/html/css). What I've found, which is pretty much what I expected, was a varying degree of proficiency, some kids have gotten it really quickly and some have needed a lot more help. But overall I've been amazed at their progress and am totally convinced that this is something that needs to happen in more schools at a wider scale.
There are real problems in trying to tackle this problem. I've met actual teachers that have been involved in trying to teach CS curriculum and there is definitely a lack of professional training among them. What they could really use is the tech communities help and support, not their derision and dismissal, it's so easy to view this from a cynical perspective instead of trying to actually get something done. If any of you are actually interested in trying to teach and see for yourselves whether this is worthwhile and you live in the NYC area take a look at ScriptEd (http://scripted.org/). Their focus is specifically in promoting CS in socioeconomic under-represented groups. This is where I volunteer but I know there are a few other organizations you can volunteer at as well, their names escape me at the moment but you can attend the CS NYC meetup to learn more (http://www.meetup.com/CSNYC-Education-Meetup/). If you don't live in the the NYC area not sure of what other resources are out there but I'm sure at least SF has similar initiatives, and probably a few other large metropolitan areas.
Can't speak for the whole community, but here's my opinion:
The main problem with code.org is that the message they are sending is "programming is something easy that will make you rich and you should do it for patriotic reasons".
I think that's the whole point of the article. I'm all for making programming accessible to people of all ages and backgrounds, but we shouldn't lie to them.
Even if the claim is true, how does it compare to other subjects? Say, accounting, does learning accounting also improves thinking ability in general? Does accounting also provide thinking tools can be transferred to general problem solving strategies? How much advantage does coding have? If there is such advantage, does it worth for students from accounting to learn to code? You see, this is not a simple issue.
If this were one hundred years ago, we'd all be bleating on about how many cars are suddenly popping up, and how all of our children need to become car mechanics (to become rich? to achieve enlightened? to secure our nation's position in emerging world of automation? you decide!).
[Disclaimer: I am a cynical and/or dissatisfied programmer]
As someone whose thought process seems to have gone in a very similar place here[1], I'm interesting why, if you are up for sharing?
Seeing other people push for people to enter the industry for the money and/or jobs, instead of satisfying a passion for the work, has me slightly... annoyed. Annoyed is a good word for it.
(I don't want anybody to worry about me; I am currently working on re-adjusting my work/life balance to rein in on this dissatisfaction.)
As for cynical... I don't buy into a lot of the more "mystic" ideas of coding that many programmers seem to have.
Sure, there is a lot of insight to be had when you study computer science. For example, learning about computability and the Church–Turing–Deutsch principle literally changed my outlook on life; I would not be the same person that I am today if I had not studied computer science...
...but I do not think that computer science is in any way special in this regard. My non-CS peers in university grew in their own personal ways as well. They didn't miss out on anything that I had any more than I missed out on things that they had.
That I think, is what many programmers don't understand. They lack exposure to other perspectives, and therefore mistake their own path through life as the obviously correct or superior path.
That's a shame. I think I've been lucky enough to move between different focuses (between sysadmin and programming multiple times) enough that I never got too bored or dissatisfied with any one.
Seeing other people push for people to enter the industry for the money and/or jobs, instead of satisfying a passion for the work, has me slightly... annoyed. Annoyed is a good word for it.
I can relate. I remember while in college circa 2002 thinking that the number of CS students was artificially inflated by people who made decisions during the dot-com boom. People that had no real aptitude for the subject, had no passion for the subject, or both. I understand that's going to happen in any major, but when it felt like upwards of 60% of my peers weren't interested, and I couldn't help feeling they would have been better served by studying something they actually cared for.
...but I do not think that computer science is in any way special in this regard. My non-CS peers in university grew in their own personal ways as well. They didn't miss out on anything that I had any more than I missed out on things that they had.
I'm routinely disappointed I haven't found more time to apply towards other disciplines or areas of study (this isn't new, I used to want to go back for a second major someday. I no longer necessarily view that as the best route for further advancement though), especially in reading comments here from some people that truly have some deep experience in different areas.
That I think, is what many programmers don't understand. They lack exposure to other perspectives, and therefore mistake their own path through life as the obviously correct or superior path.
I think that's correct, but I also think it's a matter of people incorrectly attributing value to programming based on positive outcomes they've experienced after learning to program. Learning to read doesn't make me smarter, per se, but it is a very useful tool in allowing me to learn and explore certain ideas. I think programming is similar (although on a lesser scale). It's a good tool for examining certain types of ideas which may provide great benefit, but it's not a causal relationship.
Car mechanics? No. Mechanical and electrical engineers...definitely.
The one that seems easily obtainable.
Right now we are pushing for programmers. Not electrical engineers, not physicists. We aren't pushing people to go into materials tech or telecom. Not even industrial design. All of those things are jam-packed into the consumer devices that are now surrounding us and fueling this craze... but programmer is the one that has been picked. Programmer is the one that the proponents of this movement think can be picked up without years of intensive schooling.
Coding is the obtainable saviour vocation for the unwashed masses.
Industrial design is incredibly oversubscribed and always has been (the sexiest design major), if you want to do design these days, interaction is a better bet.
Of course, a programmer is just as likely to have a physics, math, engineering, or even music degree as they are a computer science one.
If you're actually interested in this, Papert's book Mindstorms, which is cited in the post, lists many reasons why this might be the case. The most obvious are that computers interpret everything literally, so when you express your ideas you're forced to do so in a way that totally lacks ambiguity.
He also talks about how in a classroom setting, students are usually trained to react to "wrong answers" by wincing, moving on, and forgetting it happened, whereas in programming it's obvious that no one ever gets things right on the first try--debugging is necessary for programming, and debugging teaches students to think in terms of "how can this be improved" rather than the right/wrong of traditional schoolwork.
There's tons more in the book, but most of it can be summed up in that programming teaches meta-cognition and forces you to consider questions of epistemology.
But I cannot for the life of me figure out what he keeps complaining about.
He should have made it more fleshed out and his intent more explicit for that reason.