How much of this will go to good teachers and interesting programs? And how much will simply be spent on overpriced machines (microsoft) and proprietary "connected classroom" concepts (apple)?<p>You don't need much equipment to teach CS. Basic machines will do. And there is no need to spend any money on software these days (f/oss). I worry that this money is less an educational initiative and more a handout to those companies who sell services to schools. Which organizations are behind this pledge?
People are intelligent in many different ways and I don't believe that most people have the abstract thinking skills necessary to really thrive in computer science.<p>Forcing everybody to take part in computer science education is probably going to frustrate the hell out of most people (make them feel stupid and annoyed at having to do this stuff) and dumb down the curriculum for the small percentage of kids who would naturally thrive at this stuff.<p>Also, given the insanity in the education field, I don't see too many actually good computer science teachers wanting to be there even if more money is being thrown around. If I had to guess, a lot more career minded Machiavellian types are going to be trying to grab onto the gravy train and get some of these gigs and the side effect of this will be that the kids get even crappier teachers.<p>Like most government programs, on the surface this sounds good. I could very well be wrong, but like most government programs it will probably end up costing more money than planned and have the opposite of its intended effect.
I currently teach basic CS in an inner-city school, on a volunteer basis.<p>Unfortunately, the problem isn't "US public schools lack {{important thing}}". The problem is that US public education is deeply broken.<p>It's interesting to see the momentum living wage/minimum income campaigns are getting. But education equality, for which there must be a better term, isn't often brought up.<p>At the school I'm in, when a kid with any potential comes in, the only course of action is to to help her transfer out to a school where she will actually learn something. Sadly, this is not the exception - there are literally millions of kids around the country in similar schools.
Only a tiny fraction of the population needs to understand computer science. Most people will struggle through it, learn to hate it, and immediately forget it after they graduate, just as they do with math and science. Meanwhile, college professors will have to spend inordinate amounts of time unteaching all the stupid things kids learned in K-12, because there is no way to structure these curricula in a way that serves as a good foundation for those who will actually major in the subject and is simultaneously approachable for everyone else.<p>Public education should serve some practical purpose: teaching kids the basic skills <i>everyone</i> needs to be productive in the workforce and to contribute as citizens. To that end, I'd advocate taking courses away instead of adding them. Math and science education in K-12 is a disaster and a waste of time for all but a small fraction of kids. We'd be better off taking those out, shortening mandatory education to K-10, and letting kids who actually want to go into particular fields study the relevant coursework when they're old enough to actually learn it properly.
I don't believe there is any shortage of computer science talent. I believe there is only a shortage of students graduating with CS degrees from schools like Stanford and MIT which is what many employers are looking for. NACE figures really seem to indicate we don't need more junior level programmers as 42.5% of graduating seniors majoring in CS did not have a full time job offer (not even in unrelated fields) at the time of graduation.
<a href="http://career.sa.ucsb.edu/files/docs/handouts/2014-student-survey.pdf" rel="nofollow">http://career.sa.ucsb.edu/files/docs/handouts/2014-student-s...</a>
The real problem is not computer science.<p>Everyone in the United States cannot be a programmer - its going to lead to the same problem we have with law, business, etc. Too many graduates leading to labour oversupply.<p>Government will always be slower to respond then markets.<p>So even though right now there is a shortage of programmers - it might not be the case once these student's graduate.<p>So Govt is always one step behind the movements in markets.<p>What is more important is helping students understand how important learning is. Even though my skills in programming helps me get paid - I use the knowledge I have in biology ( learnt in school ) to make informed decisions as a consumer. My knowledge in writing helps when I need to explain a difficult concept to my bosses. My skills in mathematics helps me model problems in much more efficient ways.<p>Being a programmer in a society with no doctors, or chemists is no fun.<p>Its understanding that the economy is extremely complex - and rather than create bursts of inefficiency in one area - the best thing to do is facilitate the system to perform better - maybe make it easier for labour ( students ) to choose what they want to do with their lives - rather than burden them with student debt ?
Do we really want to "reduce such a beautiful and meaningful art form to something so mindless and trivial[?]; no culture could be so cruel to its children as to deprive them of such a natural,satisfying means of human expression. How absurd!" - Lockhart [1]. He was talking about math, but I am sure the same results would occur with computer science "education" if done in high schools.<p>"One of the best ways to stifle the growth of an idea is to enshrine it in an educational curriculum." - Hal Abelson[2]<p>[1] <a href="https://www.maa.org/external_archive/devlin/LockhartsLament.pdf" rel="nofollow">https://www.maa.org/external_archive/devlin/LockhartsLament....</a>
[2] <a href="https://www.cs.berkeley.edu/~bh/ssch0/foreword.html" rel="nofollow">https://www.cs.berkeley.edu/~bh/ssch0/foreword.html</a>
If you're going to inspire students you're going to need a lot of teachers who are experts in CS. Unfortunately, our current education system doesn't allow experts to teach so now someone who knows CS is going to have to go get an education degree as well, just to take a massive pay cut.
Can anybody explain to me this push for everyone to be a programmer? Is there a belief floating out there that everyone in 10-20 years is going to have to know how to program? I just don't understand it. Who's going to teach computer science to kids? How many software devs do you know how quit their jobs to teach at a high school? If not them, who's qualified to teach this subject?<p>This will ultimately end up with unqualified teachers teaching computer science while kids are fucking around and playing computer games. What an atrocious waste of money. Why not spend $4B to fix piss-poor American education system so that we can produce graduates who are ready for college and not trying to catch up taking Algebra I or basic reading /English.
I'll wait for it to pass and for the actual RFP to be created. I was very disappointed in the whole broadband money that was restricted to areas and groups that had an interest in keeping the existing infrastructure status quo.
As I said elsewhere: That money needs to go directly to raising teacher salaries. Currently, teaching is a pretty crappy career for anyone that's not extremely self sacrificing and idealistic.<p>Starting salaries for a teacher -- after additional years in school -- are something like a half to a third of a salary for a programmer in the USA, as far as I can tell. The upper bound for salary also seems much higher in industry. So, salarywise, it's a bad choice.<p>The job is seen as socially important, but not to the degree that enough for amazingly talented people to flock to it in the numbers that are needed. So, prestigewise, its' also a bad choice.<p>As a result, the bulk of teaching positions are not held by the best and brightest. They're often not even held by the good and bright. There aren't enough people who would prioritize children over their own futures. And as long as teaching suffers from a lack of respectability or a lack of salary, teaching is going to suffer. And before you blame the institutions -- institutions are run by the people who went into this system.
So basically another class for kids to play minecraft in while the teacher who doesn't even have a degree in Comp Sci attempts to teach programming.
Is this a good thing? I'm reminded of the "well-meaning" pushes by large tech companies to flood the market with immigrant labor and drive salaries down.<p>Though I wouldn't say this is malicious I think it may have the same effect. We will get many, many more bad programmers. We still have no good way to tell a good programmer apart from a bad one. We have no licensing, we have no professional organization, we have no standards.<p>Right now the barrier for entry is really, really low for an upper or middle class person who wants to learn about programming and CS. For the poor, what good is CS if you don't have regular access to a computer? How many graduating seniors in poor communities own their own laptops? Have consistent internet access? I think a pledge like this needs to focus all of its attention on low-income students for it to be worthwhile.
These days I struggle to find a lot of use cases for non-IT-people to use programming. It makes a fine hobby, but not better than another hobby.<p>For a while I was enthusiastic about things like Greasemonkey which would have allowed people to modify the software they use on a daily base. But it doesn't seem to have taken off, and presumably web clients are increasingly more complex so that "greasemonkeying" become too complex, too.<p>Long story short - I'd be happy to hear about examples for ways that non-IT-people could improve their lives with programming.<p>I have even considered to donate part of my time to solving such problems, choosing from user-submitted problems.
I had an excellent intro CS teacher in 9th grade who was ex-Army with an actual CS degree. He also taught Algebra. We got to spend a year of course basically playing around in Hypercard.<p>I also had a mediocre programming class in 10th grade at the Sr. High school taught by a part time business teacher. We spent a semester programming in Basic on a decade old IBM box. You can guess which class was the better influence on my decision to go into CS full-time.<p>The frustrating thing was that there was an entire lab full of 5-6 year old Macs that we were not allowed to touch outside of typing classes, so the decision to use the crappy 10 year old non-GUI machines was basically curriculum related.<p>The point being, teachers are important (and this initiative won't help with that), but even getting some good tech into the hands of students would help more than you realize. There are still schools with not enough resources to teach a decent CS course or more than a vague idea of what kind of curriculum would cut it in the real world.
IMHO, it is a mistake to teach kids something like computer science early on in school. The focus of a school should be to teach kids transferrable skills in the classics: mathematics, art, latin, etc. The students will always have time to specialize, but they will never get a chance to build a solid foundation.
I'm transferring to a UC in computer science soon. This is the last year in which computer science will not be considered an "impacted major" at my school. A sign of the times. Recently everyone's been talking about making CS mandatory in high school. And looking around on the web I see that some of the resources for learning computer science are very nice indeed. Is it petty to be worried that there will soon be so many computer science people in the world that I wont be able to make a living in computer science? I feel like a hypocrite for being an advocate for single payer healthcare, which is a step forward but might destroy a lot of jobs in the insurance business, and simultaneously hoping that computer science remains somewhat exclusive.
I honestly don't think we've figured out how to teach people how to code yet, so throwing a ton of money at this apparent problem will do little.
And they'll just train mediocre math teachers to be even more mediocre CS teachers. Teachers are generally expected to have a degree which is closely related to what they'll be teaching. This is not the case for high school CS teachers.
When I was in high school about 10years ago or so everyone was required to take a computer class. Computer science was the only AP class (More GPA Points) so everyone took that.
This is just more bullshit to waste money on. In 8 years of development, I can count on one hand the programmers who showed any interest in programming outside of work, or that have GitHub accounts, or that know what a Binary Tree is. Programming has become, for the most part, Web development and the barrier to entry is so low that anyone can enter it after studying material off the Internet and watching YouTube videos. To be even more controversial, CS is not even needed for most programming today, but only for passing interviews.
How about he reforms patent law further first? Not much good having computer scientists innovating if some patent troll comes along and stymies that innovation.