Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

When a friend attempted to teach basic programming to his kids, I realized we're in trouble (for some definition of trouble, see below).

First of all, the article is right in opining that the pathways to computer literacy in general, and programming in particular, are not really all that accessible anymore. The problem becomes even worse due to the sheer number of "teaching" tools available. My friend had trouble even finding the right setting. It would have to be a device or an environment that seems relevant and recognizable to the kid, yet at the same time it must be approachable, well documented, didactically meaningful, and entertaining in a way that would motivate someone who could just play any game instead of making one.

Second, being a tech-illiterate kid today is not a pain point anymore. Devices, apps, and entertainment media are easy enough for anybody to use. Kids are, somewhat reasonably, asking why they should spend any energy on this, to what end?

At first I thought this was a problem. One of my friend's kids quit before the effort started essentially saying "this seems boring, why do I need this?" and the other quit after the first introduction with "nah, I'd rather do something else". I think this is actually fine. It has always been the case that being interested in computers came easier to social outcasts, and kids who had a genuine internal motivation towards technology. The web start up bubble may have skewed this perception for a time, because suddenly there was a lot of money accessible even for people with at best a passing interest in programming. But those days are petering out.

Computing never had a broad appeal, except during short fads. I don't think we need more people in computing and programming. If anything, we need less, because the job market for programmers is likely not going to get better.

Finally, I question whether there is an upside to teaching computing to kids who don't feel a connection to it. I actually agree with my friend's kids here: for what? Using software is as easy and productive as never before. Yes, being a programmer, I see the glaring issues in today's software, but if we're honest we have gained a lot more than we lost in terms of what the "unskilled" user can do.



There's a case for programming being a subset of literacy - like art, music, science, literature, and knowing how to make and post popular videos on YouTube.

You don't have to be good at software for the learning to be worthwhile. There's a major potential lightbulb moment for anyone who gets to the point where they realise just how complex the technology that keeps us all alive is, and just how unwise it is to take it for granted.

But there's also no point in trying to relive the past. 70s/80s computer culture was partly driven by the fact that computers seemed to be expensive, room-filling, and mysterious. Now computers are ubiquitous, tiny, and absolutely mundane. So the mystery and inaccessibility have disappeared, and kids need a more direct motivation.

Saying "You'll be able to get a good job" is not a valid approach, because for all anyone knows in 10-15 years AI will have automated away all those well-paying jobs.

But someone who has some curiosity about how things work, and some experience of making them work, will always be able to ride the future better than someone who has never tried and never understood why they might need to care.


I completely agree with the sentiment. Even if you're not going to do it as a job, knowing how to program enables you to think about problems in a different way, plus you occasionally still get to solve problems that other people cannot. And I also agree that advertising job prospects to kids is disingenuous.

> But someone who has some curiosity about how things work, and some experience of making them work

That's probably the biggest issue. I don't blame kids for not seeing a meaningful niche there, because we're entering a time where the inner workings of things are abstracted away, and often times they're even hidden away by force.

"Have you ever thought about how text appears on a screen?" is something I could latch on to as a kid, it's very difficult to transfer that perspective to a person growing up today. I'm not necessarily lamenting this. There will always be people who get into computing no matter what. But I don't see a worse path for those who don't. There are many things modern humans in general are not literate about, and I suspect computing will join these fields.


Strong recommendation for anyone pondering the same problem: the BBC Micro:bit. It's the v2 of the Raspberry Pi, with all the lessons learned from the unexpected success amongst adults and the unexpected failure amongst children and young people.

The Micro:bit is a simple and cheap embedded ARM board with a selection of sensors, an LED matrix, Bluetooth LE and alligator clip compatible IO. There is a progressive syllabus of programming, from drag-and-drop code blocks to MicroPython and Swift. The board can be programmed directly from the browser over USB, or directly from a mobile app over Bluetooth.

Most importantly, it's tremendous fun. It's basically a Defcon badge with child-friendly programming tools. Just like a Defcon badge, it instantly inspires curiosity and creativity.

https://microbit.org/guide/


The short answer to "why do I need this" is that there a lot of good paying jobs in using programs to manipulate data, from software engineering to doing analysis in Excel. Maybe those kids are too young for that to be relevant, but that's also the best time to start learning.


> there a lot of good paying jobs in using programs to manipulate data

There are even better-paying jobs in managing those people who are using programs to manipulate data.

> Maybe those kids are too young for that to be relevant, but that's also the best time to start learning.

They're 10 and 13, not too young in my opinion to make a judgement call about what is of interest to them. I agree it's a good time to start learning, but my point is that it's probably not a useful subject to force upon people.

Realistically, there will always be kids who feel intrinsically drawn towards computing. They'll learn it regardless. The question is what we do with the rest. Having been a programmer for more than 30 years, I'm hesitant to argue in favor of making more people embark on a career that involves programming than strictly necessary.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: