Hello Ruby — teaching children to write code

Ruby, with a wise penguins, a green robot, and lonely snow leopard. Drawing by Linda Liukas.

Ruby, with a wise penguin, a green robot, and lonely snow leopard. Drawing by Linda Liukas.

A few years ago I remember reading a book advocating that all school children should be taught to program computers. It’s a great discipline for anyone, the author argued, especially children. It teaches patience, persistence, problem-solving, the importance of planning; it can help children improve their maths and logical thinking, and it’s hugely rewarding to see something that you’ve been working on suddenly come to life and work as expected. I wish I still had that book.

A couple of stories about teaching children to write code have caught my eye over the last few weeks.

Year of code

On Newsnight, broadcast on BBC 2 on Wednesday 5 February 2014, Jeremy Paxman presented an article about the Year of Code campaign, an independent, non-profit campaign to encourage people across the country to get coding for the first time.

One of my first experiences of using a computer was in primary 7 when the headteacher brought in a Commodore VIC-20. I took computer studies in high school through to higher level, and half of my university application form was to study computer science (the other half to study divinity, which is what I ended up doing).

I loved coding as a kid. My friends and I would gather around each others home computers, whether a Commodore 64, ZX Spectrum, or BBC B, and we’d design or amend games and programs together.

People are often amazed when I say that I taught myself the web skills that I use now in my day-to-day job in the web team at the University of St Andrews. Except, that’s not entirely true: I do have the experience of those seven or eight years of coding on 8-bit computers as a child and as a teenager. That was a brilliant headstart.

It seems that today ‘computer studies’ in school is more about learning how to be a consumer and user of existing software (how to use Microsoft Word, Microsoft Excel, Microsoft PowerPoint) rather than creating your own software.

I was appalled to learn how some youngsters are being ‘taught’ to code in schools today. A couple of months ago a friend of mine phoned me asking for my help. Her daughter is studying computer studies and she is being ‘taught’ to code using… Adobe Flash!? And I say ‘taught’ because it sounds like she and her classmates were essentially shown the application, given a book and told to get on with it. It sounded like the teacher didn’t know to code either.

Compare that with my own experience in the mid-80s. I had three years of hands-on coding BASIC and machine code by someone who understood how computers worked and what the programs were being asked to do, who could tell a CPU from an ALU from a RAM. And then in my sixth year a group of six of us took ourselves off and taught ourselves Pascal in what would otherwise have been free periods for us in our timetable.

We need to be teaching our children to code so that they can contribute to the next generation of computer applications. Technology has never been more exciting than it is now. I remember my dad (who worked in the electronics and communications industry, who delivered the Faraday lecture on fibre optic communications) telling me in the early 80s that one day televisions would be so thin we could hang them on our walls. It seemed like a space-age dream, it is now reality.

My main concern about that Newsnight piece, however, is the interview with Lottie Dexter, the executive director of Year of Code (at 5′ 32″ on the video).

It’s not her admission that she herself cannot code—good on her for admitting that straight away, and even better that she is committing herself to learning this year, alongside those she is encouraging to take it up. No, it’s comments like,

“You can do very little in a short space of time. For example, you can actually build a website in an hour [...] completely from scratch.”

Well, you know. That’s true. But it’s not going to be a particularly good one, if this is your first. Erm… practice?

Paxman then asks her, “How long does it take to teach to code?”

“Well, I think, you can pick it up in a day.”

My heart sank. I was speechless. In trying to make coding sound more accessible she immediately undervalued programmers everywhere. It really isn’t quite that simple. I’m going to be bold here and state: you simply cannot learn enough about programming in one day to be competent enough to teach it. Is it not comments like that that result in school pupils being ‘taught’ how to program using Adobe Flash?

Hello Ruby

Hello Ruby, a Kickstarter project by Linda Liukas

Hello Ruby, a Kickstarter project by Linda Liukas

Which is why projects such as Linda Liukas’s Hello Ruby are so exciting.

Linda, a founder of Rails Girls, wants to create a children’s book that teaches programming fundamentals through stories and child-friendly activities.

She asked for US $10,000, as I write her total is at US $336,203. (There are currently three days left to get involved.)

I think it’s a hugely exciting project. This is what Linda has to say about it:

Ruby is a small girl with a huge imagination. She stomps and stumbles around her own little world while her dad is traveling. On her adventures, Ruby makes friends with the lonely Snow Leopard, visits castles made of windows, and solves problems with the wise penguins. She bakes gingerbreads with the green robots and throws a garden party with… well, if you like to hear the rest of the story, I need your help.

Ruby’s world is an extension of the way I’ve learned to see technology. It goes far beyond the bits and bytes inside the computer. This is the story of what happens between the ones and zeros, before the arrays and the if/else statements. The book and workbook are aimed for four to seven year olds.

I believe stories are the most formative force of our childhood. Everyone has a book that made the world seem beautiful and full of possibility. My book is about little Ruby.

It’s due out in August. I’ll report back when I receive my copy, and we’ll see how Reuben, Joshua and Isaac engage with it.

Android KitKat easter egg

Have a break... have an Android 4.4.2!

Have a break… have an Android 4.4.2!

I’ve only just discovered this ‘easter egg’ (a joke or message intentionally hidden inside a computer program, movie, book, etc.) in Android 4.4.2 (KitKat).

  1. Open ‘Settings‘.
  2. Scroll to the bottom and tap ‘About phone‘ or ‘About tablet‘.
  3. Repeatedly tap the ‘Android version‘ option.
  4. A white ‘K’ will spin into view filling the black screen.
  5. Repeatedly tap the ‘K’, it will spin again until the screen turns red and the word ‘Android’ appears in the style of the KitKat logo.

I believe that this works for other versions of Android too:

  • 2.3 (Gingerbread) shows an Android robot in a crowd of zombies.
  • 3.x (Honeycomb) shows an Android bee.
  • 4.0 (Ice Cream Sandwich) shows a parody of Nyan cat.
  • 4.1 (Jelly Bean) shows jelly beans which can be flicked around the screen.
  • 4.3 (Jelly Bean) shows a red jelly bean, which when tapped again causes a smiling face to appear on the bean. Repeatedly tapping that shows the same beans as 4.1 plus sometimes a candy cane.
  • 4.4 (KitKat) see above.

What fun!

Аркона—Лики бессмертных Богов

This week’s 195 metal CDs offering is by a Russian folk-metal band from Moscow called Arkona (Аркона).

While searching for information about them I discovered this video released in 2010, from their 2009 album Goi, Rode, Goi! (Гой, Роде, Гой!).

It’s a song called ‘Liki Bessmertnykh Bogov’ (‘Лики бессмертных Богов’) which means ‘Faces of immortal gods’. I rather like it.

The song describes a human who has lost his reason for being. With his spirit in vexation, he stands on a crossroad, fearing death and having a wish to flee from the reality. Only the Faith can give him the will to live on.

“With life praying to your native shrines
You are looking into nowhere, in the mist of your dreams
And in this oblivion of the soul, in grey vain life
Will revive in your memory the faces of immortal gods.”

Perhaps one day I’ll finish learning Russian.

Why I will be engaging with politics this year

Debating chamber, Scottish Parliament

Debating chamber, Scottish Parliament (Source: Wikimedia Commons, licensed under a Creative Commons Attribution-Share Alike 3.0 Unported)

I’ve never really considered myself as someone who is terribly interested in politics. That has changed this year as we rapidly approach Thursday 18 September 2014, the date set for Scotland’s Referendum where the country will be asked “should Scotland be an independent country?”

My first awareness of party politics was while walking home from primary school one day, probably in 1979; I would have been seven years old. I was walking along Selkirk high street when a friendly lady invited my friends and I into what is now the British Red Cross shop. It had been turned into a shop front for the Liberal Party (before it merged with the Social Democratic Party in 1988 to form the current Liberal Democrats).

I wandered home proudly clutching a handful of Liberal Party stickers and leaflets about our local candidate David Steel. I simply remember my parents’ disapproval. My stickers probably went in the bin.

Of course the Conservative Party won the 1979 election, Margaret Thatcher became prime minister, and as well as my stickers I also lost my bottle of milk each morning at school. The country lost a whole lot more.

I watched the miners’ strikes on the television. I didn’t understand much of it at the time, but I knew that something was wrong, and that these men in black donkey jackets and white helmets with lights on them were protesting against what the government was telling them. That seemed brave to me, but I was also somewhat confused. As a child I was brought up to obey those in charge, and how much more in charge could the government be? It all seemed so distant.

The first general election in which I was eligible to vote was 1992; I voted for David Steel (Liberal Democrat). Next was 1997, I was living in Bermondsey in south London; I voted for Simon Hughes (Liberal Democrat). At the next general election in 2001 I was living in Inverness; I voted for Charles Kennedy (Liberal Democrat). Do you see a pattern? In 2005 I was living in Edinburgh; I voted for (I think) John Barrett (Liberal Democrat). By the 2010 general election I was here in Fife; I voted for Menzies Campbell (Liberal Democrat).

If you were to have asked me why I voted Liberal Democrat, what they stood for, what attracted me to their manifesto compared with the other major parties I wouldn’t have been able to tell you. I voted for them because they were familiar. I voted for them because that’s what I knew growing up. I voted for them because a kind lady gave me a roll of stickers when I was seven.

It has concerned me for many years that I haven’t engaged with politics more. That I haven’t read the party manifestos before voting, that I haven’t engaged in meaningful conversations with party candidates on my doorstep. Or even better, that I’ve not gone out to engage with them. Because in many ways politics is presented as being very much “out there”.

It still all seems so distant. It feels like our politicians are telling us, “Don’t you worry about any of this politics stuff, we’ll deal with it.” And we have. And we’ve become distanced from it, numbed to what it going on, until all of a sudden we discover that MPs have been claiming expenses for all sorts of things and then we’re up in arms. Until it blows over and we once again lose interest.

We have a professionalisation of politics that has made democracy feel so much less representative; no wonder people like Russell Brand don’t vote. We’ve de-skilled ourselves in so many areas over the last few decades. We’ve handed over these really important issues of how we behave in a civil society to professional politicians, just as we hand over our cars to professional mechanics, and our health to professional doctors.

We are now being encouraged by the health profession (see, there’s that word again) to become partners with our doctors in managing our own health. I think we need to start doing the same with politics too. It’s for this reason that comedian Rufus Hound is planning to run for election in the European parliament because he is passionate about the NHS and what it stands for and he’s appalled by what the current UK government are doing to it. As was reported in The Independent:

The comedian said the NHS was “one of the single greatest achievements of any civilisation, ever, anywhere in the history of the world”.

And he hit out at the “millionaires that currently run things… the politico douchebags who are taking away your kids access to medicine”.

One of my primary goals this year is to engage more fully in politics, and particularly in the issues surrounding the Scottish referendum debate. This is a really important question that will shape our country for centuries to come. I owe it to myself and to my children to engage in this so that I when I step into the voting booth in September, in the building where Isaac’s playgroup meets every morning, I will know why I am marking an X in the box that I choose.

I am currently reading more than I have ever done about politics, about the UK, about Scotland, about history, about the construction of social reality, about the creation of money. I intend to blog about it here. (I’ve even created my first new blog category in about six or seven years: politics.)

And for the record, this half-Scottish, half-English boy (you could just say ‘British’ boy) is intending on voting NO on Thursday 18 September.

My next task is to begin to unpack just exactly why.

I’ve lost confidence in @BTCare

BTCare on Twitter... although I'm not so sure now that they do

UPDATE 1: About 20 minutes after posting this I got a phone call from @BTCare. I have an engineer booked to visit on Tuesday morning.

UPDATE 2: Engineer visited on Wednesday 18 February and found literally thousands of faults on the line. He cleared these but broadband is still dropping out randomly. He wondered if this was an issue with Repetitive Electrical Impulse Noise (REIN).

@BTCare are sending out another Openreach engineer on Monday morning. They have at least phoned me now on the day they said they would, even if it did require me to poke them via Twitter to remind them. Confidence in them is growing a little, which is a relief.

See post Broadband woes / continued.

UPDATE 3: Engineer booked out for another visit on Monday 24 February between 08:00–13:00. It’s currently 14:00 and no sign or word from him. Although @BTCare have just kindly tweeted to ask how the appointment went… except that he’s not been.

UPDATE 4: Engineer booked for Saturday 1 March.

UPDATE 5: Engineer booked for Monday 10 March. It’s FINALLY FIXED!


The last few weeks have been the most frustrating I’ve ever experienced with BT’s customer support channel on Twitter, what I’m experiencing as an ever-more ironically named @BTCare.

In fact, I might go as far as saying that this has been my worst experience of customer service full-stop.

For the last few years I have enthused with anyone who will listen about how excellent I’ve found @BTCare to be. With a simple tweet or two I’ve found them to be engaged, interested, and conscientious; I’ve felt cared for, I’ve felt that they owned the problem and they haven’t stopped until it was resolved.

I have found myself in training sessions at work about world-class customer service raving about I see @BTCare as the paradigm of the level of support and professionalism that I would like to offer our clients.

As a web professional people regularly ask for my advice on internet service providers, and I have always recommended BT on the strength of their excellent support.

But after these last three months I can’t do that any more. I now find myself, three months into this current issue with our broadband connection randomly dropping out, and increasingly getting worse, feeling not only disgruntled but wondering if they are now purposefully ignoring me or at worst lying to me.

Having been such an advocate for what was a first rate customer service experience, I am now feeling disappointed and angry.

All I am asking for is the service that a) I’ve had, and b) that I’m paying for.

So BT tell me, what has changed? Why have I found the last few months to be the most excruciatingly frustrating experience I’ve ever had from any company’s customer service team? Why have I found myself contacting you again and again asking for feedback? Why have you replied to me time and again saying that you’ll be in touch with me soon, that you’ll phone me shortly, that you’ll a colleague “will be in touch with [me] today”.

Why am I still waiting?!

Timeline

You said that you’d be in touch on Wednesday.

I was in, but I’d just got back from the hospital and was in a lot of pain and couldn’t get to the phone in time and my phone was set to silent/vibrate. I tweeted back immediately saying that I was available…

No reply. Nor the next day. So I contacted you again:

No call.

So I contacted them again yesterday and was told:

There was then a flurry of activity, none of which was useful. I felt like I was repeating myself. I’d already explained what was going on in one of the many emails that I’d written.

But I don’t know how these things work at their end, perhaps they didn’t have access to the information that I’d sent. There also seemed to be a misunderstanding that the issue was simply a drop in WiFi connection rather than the connection to the whole hub dropping out (the blue light turns to a flashing orange light).

Then late last night, while the connection was dropping out every other minute I was asked to send another email.

I finally found a few minutes where the connection stayed up for long enough to write a long, detailed explanation of what is going on.

The issue: my broadband connection keeps dropping — orange light flashes… connects (blue)… drops… repeat. Not just WiFi – the lot. My main PC is connected via LAN cable to the hub via a powerline. My phone and tablet are connected with WiFi (2.4 GHz, channel 6). I have changed the channel… no effect: still drops out.

Here’s a record I’ve kept from the HomeHub 4 logs:

https://dl.dropboxusercontent.com/u/1778315/broadband-outages.txt

Connection during the day is solid, from about 08:00–23:00. Today it started dropping every few moments after 21:00.

We had an engineer visit in mid-December. He tested everything and said that our internal wiring (from master to one extension socket) was fine. He recommended unplugging everything and reconnecting in case the issue was static on the line. I’ve done that… it hasn’t fixed things.

He suggested that if it continue then the issue is likely to be the Home Hub 3 we had. This has now been replaced with a Home Hub 4. The connection was absolutely fine for a couple of weeks, and was faster than the HH3 but now it has started dropping out again and only in the evenings.

We have not changed anything in the house. Same equipment is on and switched on. The only change is the Home Hub and filter, swapped for the one that arrived with the Home Hub 4. But like I said it worked for a few weeks.

I now have the [brand new] Home Hub 4 plugged into [a brand new microfilter plugged into] the master socket in our hallway. I’ve also done a factory reset on the hub.

This strikes me as being an issue that is external to our property.

I got this reply this morning:

It is now 17:22, I have stayed in all day, on Sundays they close at 18:00 and so far no call despite an assurance 9 hours ago that you would be in touch.

So, please tell me BT… what has happened? Please turn around this experience for me. Please make me believe that you can offer world-class customer service again.

But most of all: please fix our broadband connection.

Is this the last alphabet that English will ever have?

I wasn’t great at English at high school. I just didn’t connect with it, and none of my teachers really set my heart on fire with passion for this odd, largely-stolen language of ours.

That was until I went to university in 1989 and had to learn another language: biblical Hebrew. In order to learn that I needed to brush up on my understanding of language, grammar and syntax.

Thanks to Dr Jim Martin, Dr Robin Salters and Mr Peter Coxon for the first time in my life I began to feel excited about language. I studied Hebrew (3 years) and Greek (1 year) and after I’d graduated I had a rather failed attempt at trying to learn Scottish Gaelic and I began to read more about English, its grammar and history.

I rather enjoyed this three minute video by Tom Scott about the English alphabet. I have often wished that we still had a few of these characters in our alphabet, not least because then my name might have been spelled Garð.

Everybody’s gone to the rapture

Scene from 'Everybody's gone to the rapture' showing a car in a deserted car park, rays of sunshine through the trees

It looks like The Chinese Room, the games company behind the exquisitely beautiful Dear Esther, is working on a new game entitled ‘Everybody’s gone to the rapture’.

All the website gives away at this stage is:

6th June 1984 06:37am

Time since Primary Event 5 days 4 hours 37 minutes

Time since Omega Event 0 days 0 hours 37 minutes

This story begins with the end of the world.

As well as a few screenshots of the environment, which like its predecessor looks stunning.

One to keep an eye on, methinks.