Author Archive

BBC coverage of UK Maths Olympiad

Tim Wintle - April 9th, 2011

I watched The BBC program “Kidult: Beautiful Young Minds” on BBC iPlayer tonight with strong personal emotions.

The show covered the final selection stages of the UK’s team for the international maths olympiad (2006) – an annual event where the best mathematically minded teenagers compete for medals on an international stage.

Although I chose to read Mathematics at university, I didn’t ever get through quite that far in the mathematical olympiad. My focus, right up until my 20s, was always on Physics – and I did get to the final selection stages for the UK physics olympiad team – the final group of 20 or so people being whittled down to the six that would be flown over the world to compete for their country.

All the elements that were captured in film for the BBC program brought back memories of my time there, and the intense emotions that were going on.

Why didn’t I get through? Well obviously I was up against some brilliant minds, but I really think it was because of myself that I didn’t stand a chance. By the time it came to the final selection process I had discovered more typical teenage activities – and I was under the impression that I could focus on Physics and maths during the day, party like a typical teenager, and still perform like the best. I was wrong – and it took me a good few years of my life to discover that fact.

What really brought tears to my eyes was when the candidates discovered who has made it through to the team. The pain of getting knocked back is intense when you’re not used to it – and that shows on film when people discovered they did not make the team. I still remember that pain.

Do I regret not focusing on physics entirely – sometimes, but just as often I’m as incredibly grateful for the choices I made and how they affected my confidence later in life. No matter how good you are, you’ll always get beaten by someone sometimes – and as the old  adage says, the higher they climb the harder they fall – and getting used to recovering from setbacks is an important skill – especially in academia.

The full show is available here (inside the UK) until the 13th of April.

EOF

Tim Wintle - January 6th, 2011

Something I found at my grandmother’s house over Christmas that made me chuckle – I’d never taken the idea of a computer file so literally before:

EOF small1 EOF
If you don’t know what it is, It’s an EOF punchcard to mark the end of a computer program (back when code was on card).

It’s an IBM 80-column card – if you ever wonder why programmers keep to an 80-character limit, this is why.

Your computer still uses the same kind of feature internally to mark the end of every file, although cardboard isn’t needed any more.

Sawzall: first thoughts

Tim Wintle - November 4th, 2010

Yesterday I found out that Google have open-sourced their sawzall programming language.

Unlike the the Go Programming Language that Google released a while ago, Sawzall is a DSL tailored for fairly specific kind of jobs – processing large amount of log data in a map-reduce style to get statistical summary data.

Working on the Viral Ad Network, I do quite a lot of this kind of work, so when I first came across the Sawzall research paper a few years ago I was quite interested.

I’ve seen a few opinions about Sawzall from ex-googlers online, and the opinions at completely different ends of the spectrum. Now I’ve had a chance to play around with the language myself, here are my initial thoughts:

Firstly, the language itself isn’t exactly pretty (I’m comparing it to Python here), but as far as I’m concerned it’s actually quite good compared to languages such as R, or GLSL.

Sawzall is a remarkably compact language for some kind of jobs though – I quickly ported a simple hadoop streaming map-reduce step from Python to Sawzall, and (to my surprise) what was a 55 line Python program just for the mapper became a 22 line Sawzall program! (admittedly that’s because half of the python code deals with reading key,value pairs in and emitting the values – which are fairly much built-in to Sawzall.

One thing that did surprise me was that having ported my code to Sawzall, my application was slower than the original Python version. (That’s surprising because Sawzall is supposed to generate native code). I’m assuming this is something I could optimize away, and would become negligible for more complex processing for each row.

Of course the Sawzall compiler / runtime isn’t really designed to be run by itself – it’s designed to be embedded into a larger application as part of a distributed map-reduce flow – I haven’t had time to try integrating it into a larger application yet, but I’m guessing time will tell.

Speeding up “sort” for big data

Tim Wintle - October 7th, 2010

Quick “tip of the day” for sorting large files through the command line:

sort --temporary-directory=. --compress-program=gzip <input

explanation:

  • “–temporary-directory=.” – because /tmp probably doesn’t have enough disk space.
  • “–compress-program=gzip” – saves on IO time for intermediate files by compressing them before writing to disk.

Why I couldn’t watch 4oD last night

Tim Wintle - July 22nd, 2010

Last night I went to Channel4′s 4oD service to watch a tv show – but I couldn’t watch any of their content.

Sure, I was presented with a tantalising list of episodes, but there weren’t any play buttons – so I couldn’t make any use of Channel 4′s (very cool) site.

Suddenly it hit me, what if they were drawing the play buttons with javascript. Javascript is single-threaded, so a single script mis-behaving can stop the whole of the rest of the page from working.

Sure enough, looking at the site carefully it turned out they are including Facebook connect. The Facebook servers were responding incredibly slowly, but failing to respond with a server error that would let the rest of the site run.

So in short, the whole of channel 4′s 4oD site was useless to me (and, I assume to a large number of other people) because of Facebook.

Now I don’t know if Channel 4 have any kind of SLA with Facebook (I’m assuming not), but I’d be interested to know if there was a risk analysis done when they added Facebook Connect to the site.

Stop facebook from sharing so much data with websites

Tim Wintle - July 21st, 2010

I thought I’d double-check my privacy settings on facebook today, here’s what I’ve done:

First, go to the privacy page.

I’d already customised my “Sharing on facebook” settings – setting everything to “Friends Only”

It turns out that what facebook means by “Friends Only” isn’t exactly what I thought it meant though – it actually means “Your Friends”, “Any websites facebook trusts”, “Anyone applications your friends trust”, “Any websites your friends trust”, and “Any of your applications”.

To reduce the huge number of places facebook will share your personal data with a bit, click “Edit your settings” under “Applications, games and websites”, and change the settings for “Instant personalization” [sic]. Now turn off any extra applications you’ve got installed (several applications seemed to have mysteriously installed themselves on my account through using facebook connect twice, although I would never have said I was willing to install a facebook app from them).

Another privacy concern is that Facebook can track your movements over the entire internet due to people using Facebook Connect – If I want facebook to have data, I’ll enter it myself.

Most sites that collect information about you (like tracking codes) can be blocked if you’re so-inclined. What’s more, they normally just track you – they don’t tie it into personal information about you. Facebook on the other hand is trusted with personal data by enough people that it is able to know exactly who you are, and exactly what you’re doing right now.

Unfortunately it’s very tough to block facebook connect on other websites – they serve the “social plugins” from the same domain as Facebook – so you can’t just block it with an entry in your hosts file. You can install ad blockers to do it but, working in advertising, I really don’t like that option.

It would be a massive shame if Facebook ended up ruining the web for ad-funded publishers because they don’t give any other way to block their services.

I’m not leaving Facebook yet, but I’m coming perilously close. Perhaps the most worrying thing to me is if I do leave, I won’t be able to stop facebook from sharing any and all information my friends enter with everyone and his dog.

Were Google saved by 4Chan?

Tim Wintle - July 5th, 2010

It may sound strange (especially after 4Chan’s history of attacking YouTube on porn day), but it seems that the message board may have inadvertently saved YouTube from serious harm yesterday.

After one users stumbled upon a serious XSS vulnerability (a type of bug which allows attacker to take control of everything your web browser does on a specific site), things could have got really serious.

A well-planned attack by a well-informed programmer could have run crazy – bombarding a huge number of web users with mallware and other attacks in a very short time, and without YouTube noticing for a significant time if done subtly enough.

Luckly, the news spread via 4Chan – a site who’s average user can hardly be described as well-informed. Within a few minutes the site was over-run with scrolling-marquees and redirects to shock sites – just the kind of thing that’s not going to stay under YouTube’s radar for long.

According to a Google spokesperson, it took under an hour for a temporary fix to be applied, and under two hours for a full fix to be deployed across the whole of youtube.

So thank you 4Chan – your practical jokes have saved a huge number of users from serious attacks. That’s the power of full-disclosure at work.

(Of course you could have just emailed them the vulnerability and saved all the people that did get attacked – YouTube have always responded very quickly when I’ve contacted them with serious issues)

Multi-tasking

Tim Wintle - June 25th, 2010

I was trying to remember the last time I had a phone without multi-tasking – then I remembered it was when I had one of these:

siemens c35i Multi tasking

(By coincidence it was also the last phone I had without video calling – fwiw It was a great phone when I got it in 2000)

Viral Ad Network Bullet Charts

Tim Wintle - April 29th, 2010

Quick note: I’ve just released our flash bullet chart under a BSD license over on the Viral Ad Network blog , and this is what they look like:

bulletcharts Viral Ad Network Bullet Charts

Leader Debate – Twitter chat

Tim Wintle - April 22nd, 2010

Here’s a bit of a scoop for Team Rubber – using our debate twitter dashboard tool we have some of the first analysis from the debate.

The chart below shows the share of tweets by political party, split by question over the debate.

twitter debate2 volume Leader Debate   Twitter chat

Data provided by Delib and The Viral Ad Network

[update]

News just in (straight after this post was published) – YouGov poll suggests that the Conservatives won the debate – which coincides with the data we recorded above.

[update]
1. Gez thinks these results are massively skewed by a joke from Simon Pegg.
2. Twitter is all up in arms about YouGov CEO standing as Tory candiate.