BT Broadband finally fixed… maybe BT does care after all

BT speed test results: 16.8 Mb connection to exchange

It has taken me a couple of weeks to write this post. I didn’t want to be overly hasty; I didn’t want to make claims that I couldn’t substantiate. But our broadband connection, which has been a bit flaky since early December, and downright annoying since late January has finally been fixed, after five visits from BT Openreach engineers (one in December, two in February, two in March).

The story so far…

During that time we had the following work done:

  • BT Home Hub 3 replaced for a newer Home Hub 4.
  • Line faults (over 3,000 of them, apparently) cleared from the networking equipment in our street.
  • Master socket changed.
  • Master socket moved from hallway to living room.
  • Changed which pair of wires connects our master socket to the exchange.
  • Powerline adapter changed.

None of this fixed the issue of our broadband connection dropping randomly throughout the day; at most over 100 times a day.

Engineer #5

When the fifth BT Openreach engineer rolled up my spirits lifted a little. This chap—Andy Smith, I think his name is—had visited us about a year ago to resolve a similar issue and he had gone beyond the call of duty to fix our connection by disconnecting all the unused extensions around the house which resulted in a 2Mb increase in download speed.

Like any good physician, he listened to my tale of woe before getting to work checking connections, running line speeds, investigating the BT box in the street. But he returned looking quite glum, reporting that all the tests returned fine: there is definitely not a line fault BUT he could see from his results that there was a problem, he just couldn’t put his finger on it. There was nothing else he could do.

PPP LCP Send Termination Request [User request]

I ran upstairs to fetch a piece of paper that I wanted him to see. It was a print out of the error log the last time it went down. I had noticed that preceding each drop out the error log reported “PPP LCP Send Termination Request [User request]“.

He read the error log and stroked his chin (metaphorically if not literally). “Hmmm…. PPP? Point-to-point protocol. That’s to do with connection not sync speed.”

Then he looked up at me. “That’s all a bit beyond me, to be honest. I don’t understand what it all means…”

My heart sank.

“… but I do know someone who does!” He got out his mobile phone, called a colleague, and then spoke gobbledegook for ten minutes before calling me down the stairs again.

The plan was to “move [me] to new broadband equipment at the exchange”. The engineer at the other end of the phone had already done it from his end, but Andy needed to drive to the exchange and physically swap our network cable from one piece of kit to another. It would take about 10 minutes.

Fixed

And that was it. Fixed! We had a steady, solid, fast connection for over 7 days before it performed another reboot, but it looks like this was just to re-sync the speed; it did it again this afternoon.

And as for @BTCare…

A few weeks ago, in the midst of our most frustrating experience of BT broadband I wrote a very disappointed blog post. I’m sorry I felt that I had to write that post, because as I had said before and as I have waxed lyrical to many people over the years on the whole I’ve found @BTCare to be a world-class customer service experience.

It did the job, however. Twenty minutes after posting that mild diatribe, I took a call from Niall at BTCare. “How are you today?” he asked.

“I’m really disappointed,” I said, quite honestly.

Niall was very apologetic about not getting in touch when he said he would. He never missed another call again. He called each time he said he would, and he faithfully kept up to date with the progress of my support incident.

In short, Niall actually did restore my confidence in BTCare—it just goes to show the difference that one person can make on behalf of the company they represent in changing attitudes. By the end of it I certainly felt that Niall from BT cared, and Andy Smith from BT Openreach cared, even if BT itself was still maybe a little ambivalent about me, so long as I kept paying my monthly bills.

Which reminds me, they offered me a refund on my broadband connection back to the date in January that this portion of the incident was first reported.

A very enthusiastic and heartfelt thank you to Niall at BTCare, and Andy Smith (?) at BT Openreach.

Broadband woes /continued

BT Openreach van parked outside our house on Tuesday 18 February

BT Openreach van parked outside our house on Tuesday 18 February

Having had a minor battle to get @BTCare phone us back last week they finally, and I must say apologetically and humbly, arranged for a BT Openreach engineer to visit the house.

He turned up on Wednesday morning (18 February). A lovely chap, cheerful and engaging. What I really respected about him was that he listened to my tales of woe regarding broadband and crackly-line telephone calls before plugging in his equipment and running various tests.

The tests completed successfully: no faults. Hmm… Then he plugged in his phone to our extension and something grabbed his attention.

“Well… something just changed when I plugged in the phone,” he said. He showed me his meter, the display had suddenly leapt from 0 faults to over 1,500.

He moved operations from our living room (where the home hub is plugged into our solitary extension socket) to the master socket near the front door. His meter climbed to over 3,500 faults.

At this point Isaac returned home from playgroup with a friend and I attended to their lunch in the kitchen while the Openreach engineer donned a hi-vis jacket and poked around beneath a manhole in the street to clear the faults.

He suggested that this may solve the issue, if not then we may be looking at an issue with repetitive electrical impulse noise (Rein) when interference from an external power source interferes with the broadband signal.

Since his visit three days ago our connection has dropped out 29 times so far. There seems to be no obvious pattern to it. These are the values recorded in the router logs after the engineer left:

Tuesday 18 February

  • 16:30:59, 18 Feb. (DSL is down after 229 minutes)

Wednesday 19 February

  1. 15:39:18, 19 Feb. (DSL is down after 1387 minutes)
  2. 16:20:14, 19 Feb. (DSL is down after 40 minutes)
  3. 16:21:37, 19 Feb. (DSL is down after 0 minutes)
  4. 17:16:47, 19 Feb. (DSL is down after 54 minutes)
  5. 17:37:38, 19 Feb. (DSL is down after 10 minutes)
  6. 21:00:08, 19 Feb. (DSL is down after 201 minutes)

Thursday 20 February

  1. 02:12:53, 20 Feb. (DSL is down after 311 minutes)
  2. 02:13:48, 20 Feb. (DSL is down after 0 minutes)
  3. 05:56:33, 20 Feb. (DSL is down after 222 minutes)
  4. 10:11:48, 20 Feb. (DSL is down after 254 minutes)
  5. 13:38:08, 20 Feb. (DSL is down after 205 minutes)
  6. 14:22:27, 20 Feb. (DSL is down after 43 minutes)
  7. 16:56:52, 20 Feb (DSL is down after 153 minutes)
  8. 17:05:25, 20 Feb (DSL is down after 7 minutes)
  9. 18:00:14, 20 Feb. (DSL is down after 53 minutes)
  10. 18:53:33, 20 Feb. (DSL is down after 52 minutes)
  11. 18:54:26, 20 Feb. (DSL is down after 0 minutes)
  12. 21:48:25, 20 Feb. (DSL is down after 173 minutes)
  13. 22:32:53, 20 Feb. (DSL is down after 43 minutes)

Friday 21 February

  1. 10:01:15, 21 Feb. (DSL is down after 687 minutes)
  2. 11:03:35, 21 Feb. (DSL is down after 61 minutes)
  3. 11:07:53, 21 Feb. (DSL is down after 3 minutes)
  4. 21:13:15, 21 Feb. (DSL is down after 604 minutes)
  5. 21:14:14, 21 Feb. (DSL is down after 0 minutes)
  6. 21:19:43, 21 Feb (DSL is down after 4 minutes)
  7. 21:20:37, 21 Feb. (DSL is down after 0 minutes)
  8. 21:36:52, 21 Feb. (DSL is down after 15 minutes)
  9. 21:37:47, 21 Feb. (DSL is down after 0 minutes)

I’ve started recording the line rate speeds (mostly around 888 Kbps upstream, 9720 Kbps downstream, which is significantly less than we’re used to) and noise margins too (12.00 dB upstream/10.60 dB downstream on Thursday dropping to 7.60 dB upstream/8.90 dB downstream today) in case these are important factors.

We also have an electrician visiting the house tomorrow morning to inspect the wiring to try to rule out that as possible cause of Rein.

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!

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.

 

Fixing an ‘Initialization of SteelSeries Engine failed’ error

Initialization of SteelSeries Engine failed. Please reinstall Engine and try again.

Yesterday morning when I booted up my PC I was greeted with this error message:

Initialization of SteelSeries Engine failed.
Please reinstall Engine and try again.

Not again! I thought. I’d experienced this before and had needed to get help from SteelSeries tech support to resolve it. I suspected that it had been caused by a recent Windows 8 update, but I don’t know for sure.

Here is how I resolved it:

  1. Clear temp files
    In Windows Explorer I typed %temp% into the address bar and pressed Enter. This is a shortcut to C:\Users\[USERNAME]\AppData\Local\Temp. I selected all files and deleted them. (A few files are still in use so just skip past these.)
  2. Close SSEngine.exe process
    The next step is to make sure the SteelSeries Engine process isn’t still running. Ctrl+Shift+Esc brings up the Task Manager. If the SSEngine.exe process is still running (under the Processes tab) then close it.
  3. Uninstall
    In Control Panel > Programs and Features uninstall the SteelSeries Engine application.
  4. Clear AppData\Roaming\SteelSeries
    In Windows Explorer, in the address bar, type %appdata%. This is a shortcut for C:\Users\[USERNAME]\AppData\Roaming. Locate the directory called SteelSeries and delete it.
  5. Clear AppData\Local\SteelSeries_ApS
    Do the same at C:\Users\[USERNAME]\AppData\Local. The directory there for me is called SteelSeries_ApS. Delete it.
  6. Unplug mouse
    Unplug the mouse from its USB port. Wait 10 seconds then plug it back in.
  7. Download drivers
    Now download fresh drivers from SteelSeries support. Do not rely on previously-downloaded drivers.
  8. Install as administrator
    Right click the installer and select ‘Run as administrator’, then follow the on-screen instructions and install the drivers.
  9. Reboot
    You should now find that your computer reboots without any initialization error message.

As well as reinstalling the Engine drivers I also took the opportunity to upgrade the mouse’s firmware.

It was then just a case of recreating my custom profile to make my mouse behave as much like a Microsoft Intellimouse Optical as possible (left-hand side buttons: back; right-hand side buttons: forward), as well as setting two sensor speeds (red 1600 dcpi for me, blue 800 dcpi for the children).

It worked.

Simple categories in Feedly

Screenshot of Feedly, showing categories in left-hand sidebar

Screenshot of Feedly, showing categories in left-hand sidebar

There’s something about this time of year that makes me look back on the past twelve months, reorganise things and generally try to simplify life for the year ahead. This evening I turned my attention to my RSS feed reader Feedly.

When Google closed down its Google Reader service in July 2013 I moved over to Feedly. Their migration process was flawless:

  1. Log in to Feedly using your Google account.
  2. Give Feedly permission to read your Google Reader subscriptions.
  3. Er…
  4. That’s it!

In the last five months I’ve been using Feedly on both a desktop browser and the Android app. It’s been a really useful way of keeping up with the sites I want to follow, and it also confirms recent research about how people are using the web these days: on multiple devices.

The old way

I have a problem with the way I categorise my feeds. Until this evening I’ve grouped them by topic:

  • People
  • Web
  • Web tools
  • Browsers
  • Music

The problem

The problem is: there are some feeds that I read more than others and this way of organising the feeds doesn’t allow me to find those feeds quickly.

A few feeds I try to read every post, such as A List Apart and Zenhabits. I take my time with these articles.

Some feeds I subscribe to simply to keep up with what certain people are saying, such as Steve Lawson, Robert Wright and Tom G Fischer. I try to read most posts.

Other feeds I follow to look out for important updates. These are mostly software or web development blogs such as jQuery, Google Chrome, Firefox, IE, Opera, etc. I tend to glance at the headlines and read only those posts that I think will impact me.

The new way

So, after understanding my own user behaviour, I now have simplified this to three categories:

  1. Must read
  2. Regular
  3. Occasional

I’ve also removed quite a few feeds this evening. Some feeds I realised I wasn’t reading anyway; others were a distraction.

I’m going to run with this way of organising things for the next few months to see if it helps.

Update: After a few months of trying this, I’m finding it really helpful to have my feeds organised this way. The only change I’ve made is to rename the first category from “Favourites” to “Must read”. I found that I was questioning whether “Favourites” was my own category or an auto-generated one by Feedly.

Ironically, Feedly does have an auto-generated category called “Must reads” but I’m finding this much less confusing. Your mileage may vary.