The corruption of the various getting-kids-coding movements

77 views
Skip to first unread message

David Kendal

unread,
Jul 11, 2012, 4:03:34 AM7/11/12
to coding-...@googlegroups.com
I hate to turn this list into an RSS feed for controversy, but
I felt this needed to be said.

http://davidkendal.net/articles/2012/07/kids-coding-corrupt

We have a once-in-a-lifetime opportunity to give kids these
skills in the best way we can, and it's being wasted.

— dpk.

Steve King

unread,
Jul 11, 2012, 5:02:59 AM7/11/12
to coding-...@googlegroups.com
Hi David,

Prefix, disclaimer and what not: I'm a Director on the board of Rewired State (APAC).

Changing the way we teach kids anything is always going to create controversy - so don't stress and feel free to share your views. I wanted to quickly address a couple of things in your post, if I can, not to embark on some kind of long drawn out to-and-fro as some battle of ideals, but more from my personal stand point. 

When I was in school, they didn't teach 'computing' as much as they taught 'how to write your resume to get a crumby job'. It was uninspired, a complete waste of time for anyone that had skills beyond the grasp of using a calculator.  That's not to say that some didn't find it useful. It was the 90's and computers weren't in every home, not everyone had the internet and kids certainly didn't understand that you could WRITE your own computer program.

Computing in schools has changed considerably in the last two decades. Obviously, it's taught now which is a big win, but largely the type of teaching has changed too. The options available to students has increased and the things that get taught are still out of commercial text books, but is more interesting to people who already understand computing, than it used to be.

The supposition that if we change the curriculum, we change the future of programming and development, may well be true. There's a huge need to teach kids better programming methodology and understanding of computational ideas, there's a need to improve the skills of the teachers, there's a need to change the format and there's a need to increase the availability of such curriculum in basically every school on the planet.

Unfortunately, that's also true of Physics, Maths, Chemistry and History. Our voice, in wanting to change parts of what students get taught is amongst a large group of others who are fighting for the same types of changes, within their specific domains too. Add into that the arguments that the way we teach is problematic, that a change of the format of how students get taught is important and it winds up in a huge mess.

I want to see improvements in what and how we teach our kids, but I'm also very aware that this isn't an easy process as you are no doubt aware. It takes years to introduce new materials, it takes the consolidated efforts of large collections of professors of this, doctors of that and ministers of something to make decisions around where to go five years from now. Add to that, the introduction of 'how' to teach into the tertiary system and you'll delay again by another x years while we wait for our first minted computer science teacher to pop out the other side.

This needs to happen. In the mean time, everyone wants to see improvements run in parallel to conventional education, to see interest improve, to capture the attention of budding young people who want to challenge, extend and immerse themselves in technology. When we talk about those people, we have to make a huge assumption of prior knowledge. Someone who doesn't know anything about programming will find the challenge of pumping out applications in their free time a mighty barrier, kids who do it all the time are going to find running through the fundamentals of programming methodology a huge bore (actually, I do too), and this is the challenge we face every day, with every kid at every event.

I see the same problem with adult hack days. At recent events I've seen no less than a dozen hacks that are purely 'soft hacks', glossy powerpoints presenting an idea. The ideas are not specifically 'here is my great idea for a startup', but they've explored the idea, investigated the options and put together more than just a 'pitch'. When we talk about glossy soft hacks, we're generally looking at how they planned to get to somewhere, rather than just the idea itself.

One of my judges gave a talk recently, where she mentioned that while a glossy hack has it's value in being able to discuss complex issues in a way that highlights the thought into the solution, rather than the gloss itself, but the biggest value to a hack of course is the practical end result - a working, or semi working piece of code.

The experience of the hacker is important too. If you consider that some of these kids haven't written code before, and their mentors (for Mozilla, Google, or other such names) are all trying to help them get to the end game that they want, they have to ingest virtually everything about how to write an application, how things are strung together and how to handle the output, in basically 24 hours. The fact that we are able to see the result of that work, the output of a thought out, napkinised explanation of what they wanted to do and how they might get there, is kinda cool.

There's another dimension to the napkinised hacks winning prizes, in that there's 3 minutes to explain 24 hours of brainpower. Judges hang out with the hackers normally during the whole event, chat, discuss, question and challenge the idea as it iterates through it's initial day or few days of life. That knowledge and understanding weighs into the decision to award anything. The same can be said for hacks we've not awarded prizes too, that are amazing, but when you add the context of their work in, you see that they really didn't do anything new, or anything exciting. Their amazingly sophisticated hack that's bright, colourful and cheery, was really done in 2 hours using some app framework after they scrapped their previous attempt.

When we gamify things, it makes it easier to get kids involved. It's obviously not our intention to 'get kids into computers', we want them to get into the thinking process that developers use, the analytical and problem solving mindset. I'd just as happily award a prize to someone who wrote a new way to dispense snacks from a vending machine, as I would to someone who wrote a hack that made it easier to gain insight into market statistics for financial transactions.

On the other topics you covered, Atlassian (http://en.wikipedia.org/wiki/Atlassian) making over $100 million, employes over 200 people and has huge amounts of developers around the world, runs workshops, training, community engagement groups and etc, is a Java shop. Large portions of the Google codebase are Java. Yahoo too. These three companies are between 10-18 years old, babies in any other field.

I agree that Java is a bore, but it's also the primary language for coding on the fastest growing handset OS in the world. Mobile is becoming one of the leading devices on the internet (and will soon surpass traditional computers in accessing the web as a primary device). IOS is Objective-C, Windows Mobile is C#. Universities too, still largely teach C# or Java, over other languages. 

Python, Ruby and others are great, but without the support of industry (we're getting there) and tertiary education (we're getting there too!) we won't see these introduced into mainstream primary or secondary education any time soon. In the mean time, the outside coding events, whether the kids actually cut code or not, is a great exposure to the industry, the process and to awaken the deeply sleeping code nerd within.

There's no quick win short term - I wish there was, but we can, as you say, work together to get this education thing happening. It's going to take some understanding on both parts, to understand why we do the things we do and how we do them and why we think our way is good. I think when you are talking about education and kids, the long game is always played safely, slowly and collaboratively.

I don't fully comprehend the how on changing the face of curriculum and education with kids, but I know there's a wealth of people out there who can certainly provide some great insights into this area. It's my hope, that while we may not agree on the immediate decions each stream is making, we can all agree that the long term strategy is for far better primary, secondary and tertiary outcomes for students who want to learn more on coding, more on methodology (we need architects too) regardless of their existing experience, background or ability to anything.

Thanks for being passionate enough to make your post David! It was a great read.

Steve.

David Kendal

unread,
Jul 11, 2012, 2:01:24 PM7/11/12
to coding-...@googlegroups.com
On 11 Jul 2012, at 02:02, Steve King <steve...@gmail.com> wrote:

> Hi David,

Hi Steve,

Thanks for your response, which is very even-handed. Before I respond to
the points you made, I'd just like to clarify some things:

Though Michael and Josh were involved in sketching out the ideas I linked to
in the footnotes, they had nothing to do with the post itself. Those ideas
were started months ago, (iirc even before Michael Gove's speech) and have
nothing to do with the contents of the post. Though Josh did proofread it
for typos, that was mere minutes before it went up and he didn't affect the
actual content of the post at all. (For that matter, neither did they
influence this reply.)

I didn't mean to pick on YRS as much as I did, and only realised after I
published it that I didn't have any examples from elsewhere. This is,
ironically, because I like Rewired State hacks more than any other, so
they're what I'm most familiar with. I've loved YRS since the first one I
came to and I'm looking forward to taking part in this year's event. I just
feel that these problems have taken root at YRS in the same way they have
at other events, and I picked on YRS too much in the article.

> When I was in school, they didn't teach 'computing' as much as they taught
> 'how to write your resume to get a crumby job'. It was uninspired, a
> complete waste of time for anyone that had skills beyond the grasp of using
> a calculator. That's not to say that some didn't find it useful. It was
> the 90's and computers weren't in every home, not everyone had the internet
> and kids certainly didn't understand that you could WRITE your own computer
> program.

Some of them did: they are mostly now the professional software developers of
today. We have an opportunity to make more of them by teaching them these
skills, but we have the risk of making less of them by putting them off when
we try to get them enthused about it.

> Unfortunately, that's also true of Physics, Maths, Chemistry and History.
> Our voice, in wanting to change parts of what students get taught is
> amongst a large group of others who are fighting for the same types of
> changes, within their specific domains too. Add into that the arguments
> that the way we teach is problematic, that a change of the format of how
> students get taught is important and it winds up in a huge mess.

Trying to change education is a huge mess, but that doesn't mean we can't
do it right.

> I see the same problem with adult hack days. At recent events I've seen no
> less than a dozen hacks that are purely 'soft hacks',
> glossy powerpoints presenting an idea. The ideas are not specifically 'here
> is my great idea for a startup', but they've explored the idea,
> investigated the options and put together more than just a 'pitch'. When we
> talk about glossy soft hacks, we're generally looking at how they planned
> to get to somewhere, rather than just the idea itself.

I was not aware of this issue before. I've certainly seen concepts pitched
very well at adult hack days (I've pitched concepts myself) but rarely do
they actually win any awards. My problem is not really the existence of
concept hacks, but the ratio of them vs. the real hacks and the increasing
tendency for them to win.

> I'd just as happily award a prize to someone who wrote a new way to
> dispense snacks from a vending machine, as I would to someone who wrote
> a hack that made it easier to gain insight into market statistics for
> financial transactions.

Likewise. The issue here is that it's not so easy to actually implement
ideas involving modifications to vending machines. What I see is too many
hacks which could *potentially* be implemented -- it's practical to at
least code up a limited demo -- but which are instead just PowerPoint or
Keynote decks.

> On the other topics you covered, Atlassian
> (http://en.wikipedia.org/wiki/Atlassian) making over $100 million, employes
> over 200 people and has huge amounts of developers around the world, runs
> workshops, training, community engagement groups and etc, is a Java
> shop. Large portions of the Google codebase are Java. Yahoo too. These
> three companies are between 10-18 years old, babies in any other field.

Sure, in any other field, they are 'babies,' but this is not any other field.
The world of technology moves fast. These are big, established companies now,
not startups. And they got started at a time when these were popular languages
for startups, though for different reasons than Ruby and Python are popular
today. By adopting what Google and Yahoo use, you're 10 years behind the curve
in education, which means you're 15-20 years behind when these kids are out
there starting to get jobs.

> I agree that Java is a bore, but it's also the primary language for coding
> on the fastest growing handset OS in the world.

http://www.asymco.com/2012/07/03/us-smartphone-market-not-showing-signs-of-saturation/
"In terms of share, Android shows two months of no growth."
(Let's not get into iPhone vs. Android, please.)

> Mobile is becoming one of the leading devices on the internet
> (and will soon surpass traditional computers in accessing the web
> as a primary device). IOS is Objective-C, Windows Mobile is C#.

I complain about C#, but really it's nowhere near as bad as Java. It's
actually quite a good language, but not for teaching. Likewise with
Objective-C, which is maturing ell and, though it needs replacing, is
a language with solid principles. They're just bad teaching languages,
not bad languages altogether.

> Universities too, still largely teach C# or Java, over other languages.

Mainly Java. It's now impossible to get a CS degree in the UK without
learning Java, mainly because of Sun's work pushing it on CS departments
and persuading students that the *need* to learn it to get a job. I don't
want the same thing to happen to secondary education in computing.
Joel Spolsky wrote about it here:
http://joelonsoftware.com/articles/ThePerilsofJavaSchools.html

> Python, Ruby and others are great, but without the support of industry
> (we're getting there) and tertiary education (we're getting there too!) we
> won't see these introduced into mainstream primary or secondary education
> any time soon.

There may be more industry support behind Java right now in terms of numbers,
but it terms of the importance of the different parts of industry, Ruby and
Python have far better support. Look at GitHub, for instance: old, established
companies don't use it, on the whole. It's where new startups host their code.

https://github.com/languages says that Ruby and Python together are almost 3
times more popular than Java with GitHub users, who are mainly startup founders
or startup employees in my experience. (For that matter, JavaScript could be
even better, given that it runs on every web device available today.)

> There's no quick win short term - I wish there was, but we can, as you say,
> work together to get this education thing happening. It's going to take
> some understanding on both parts, to understand why we do the things we do
> and how we do them and why we think our way is good. I think when you are
> talking about education and kids, the long game is always played safely,
> slowly and collaboratively.

I agree, but the outside forces are not acting slowly. I recall a few days
after the BETT Michael Gove speech that exam boards were already drafting
exam specifications to enter into usage this coming school year, with
Microsoft's input. Whether anyone will actually adopt that specification
is doubtful, but you can see how eager they are to get kids using their
technologies.

> Thanks for being passionate enough to make your post David! It was a
> great read.

Thanks for your response. I really don't want this to turn into a troll war
but, as I said, I felt that someone needed to point out these issues. I
stand by what I wrote and if anyone has any further issues, I ask them to
consider taking it off-list and sending it to my personal email address,
dpke...@dpk.org.uk, to prevent the list getting bogged down in this issue.

I do feel a little like I'm bikeshedding the discussion of Coding for Kids
into "What language should we use?" and for that I apologise, but let's
not let it distract from the broader issue that it's important to keep the
fun in computing, especially as we teach it to kids.

> Steve.


— dpk.

Reply all
Reply to author
Forward
0 new messages