Hacker News new | ask | show | jobs
by pflats 5271 days ago
There is a currently a large push from tech companies, colleges, and CS teachers and the CSTA to increase the number and diversity of students in both programming and computer science. The College Board discontinued their AP CS B exam because not only was enrollment unimpressive, but the overwhelming majority of the students taking it were white and asian males.

There's a lot of pushes out there to make programming accessible: Randy Pausch and CMU had Alice (which feels painfully abandoned, unfortunately), MIT has Scratch, which Berkeley extended into SNAP/BYOB. All of these are really offshoots, in their own way, of the promise of LOGO: to introduce children to a programming language that is both conceptually deep and initially accessible.

The painful bottom line, though, is that many students in the new generation don't see the need for computer programming. They didn't grow up with the command line, or even with finicky and annoying Windows 95 programs. They have computers that do everything they want, and the computers generally do it very, very well. They use Facebook and Blackberries and iPod touches and don't worry about where the software comes from. The experience has generally been so seamless for them that they haven't had to think about it.

Try asking a teenager how many people they think work for Facebook, or Amazon, or Google.

I used to teach both Math and Computer Programming in a high school. Now I teach Math full-time, and my math classes are twice as big as they used to be. With budget cuts and the current economy/political climate, continuing an old elective program is hard enough, let alone starting a new one.

3 comments

"continuing an old elective program is hard enough, let alone starting a new one"

Anything that is an elective gets pushed to the side in schools. One way to make it easier to teach programming in schools is to identify ways to reach core academic subjects through programming. One way I am doing that is allowing anyone who has had an intro programming class to do programming-related assignments in math class. For example, students can work through Project Euler challenges to earn math credit. We need flexible ways to grant credit; for example, a student who has worked through so many Project Euler problems should be able to earn a certain amount of math credit, regardless of whether it was done in school or at home.

What I've discovered over the years is that organizations are designed to do what they did yesterday and that people and institutions follow the cheese. In order to get high schools to begin offering programming as a core offering, colleges need to recognize it as meeting a core educational requirement. Second, schools need to be provided funding to offset the cost of offering a new subject. And finally, the educational systems need to have the flexibility to hire people who haven't gone through the traditional certification process, i.e. masters or bachelors in education.

Until those change, it's unlikely we'll see significant changes.

It's pretty difficult to add a new requirement, and it's pretty difficult to effectively embed an elective set of courses. I wonder if we could re-examine typical graduation requirements. For example, I think most districts require four years of English to graduate. Maybe only require two or three years of English, and allow more selection of electives? Maybe you aren't free to just take any elective; you can have English requirements reduced if you take a high-level elective such as programming.
These aren't just school policies, they're usually state laws. Education policy is a huge political topic, and one that the general public often feel qualified to provide input on, regardless of their actual expertise.

That said, why should a hacker be exempt from English requirements? How does programming show that they know English? Many schools are willing to count AP Computer Science for math credits, but that's a different story.

What makes programming a higher-level elective than art, Spanish, or geography? Bear in mind that they all have AP courses, so you're definitely stepping on someone's feet here.

> Try asking a teenager how many people they think work for Facebook, or Amazon, or Google.

How exactly is this related to knowledge about programming?

I think he means that most teenagers have no idea what makes facebook work. That is easily generalized to most people.
Indeed. They see Jesse Eisenberg, and assume he still does a good 5% of Facebook's coding work, easy.