Learning From Failure


The two big memes of our entrepreneurial age are Go big, or go home! And Ever tried? Ever failed? No matter. Try Again. Fail again. Fail better. Samuel Beckett Well, I've failed and now I'm heading home. Last year I applied for a place on a Master's programme at the Oxford Internet Institute. I was desperate to spend a year studying the Social Science of the Internet. It felt like it was the perfect intersection of my interests and would be an excellent springboard for the next stage in…

Continue reading →

Facebook Mangles Unicode URLs


Facebook rewrite URLs with Unicode in the path - this is not best practice and could be dangerous. It is possible to create a URL like http://bit.ly/😀 - the Unicode characters are valid in the path. The URL Encoded representation is : bit.ly/%F0%9F%98%80 Facebook mangles these URLs in such a way that it might be possible to redirect a user to a malicious site. Here's what's happening. When Facebook sees the "😀" character in text, it rewrites it to the "󾰀" character (󾰀). That's a …

Continue reading →

Why your blog URLs should contain dates.


I have a (very minor and polite) disagreement with Matt Gemmel's argument against dates in URLs. Before I start, let me be very clear; your blog = your rules. If you want to write your URLs as a series of Emoji or in Klingon - go right ahead. There really is no such thing as "best practice" - only personal preference and observed behaviour. That said... Here's my case for keeping dates in URLs. URLs are designed to provide information to humans and computers. That's why we don't just use …

Continue reading →

Crafting A Perfect FOI Request


One of the sessions I lead at Open Data Camp was "Open Data Horror Stories" - we talked about some of the disasters we've had when requesting or using Open Data. This lead on to a session ran by Gaia Marcus on how to create the "perfect" FOI request. This is not an exhaustive guide to making FOI requests. I strongly suggest that you read WhatDoTheyKnow's recommendations and FOI Man's Top Ten Tips. To be clear, this isn't going to guarantee that you'll receive an answer - but it should…

Continue reading →

*Almost* Open Data


(Inspired by a session at Open Data Camp called "Open Data Horror Stories") I was having an argument spirited discussion with my friend John the other day. He was sympathising with Tony Blair's regrets over the introduction of the Freedom of Information Act. Apparently, FOI requests put too great a strain on departments and government bodies. Not only is there a huge cost of compliance, but there's a an institutional fear of "dangerous" FOIs - requests which take too much time, are costly to …

Continue reading →

Coming Unstuck With The Nexus 6


The Motorola built Nexus 6 is just about the worst Android handset I've owned. The USB port is upside down, the screen is smeary at low light, the back is so slippery it spins wildly on any flat surface, the battery is average at best, and the curve of the back makes impossible to type on without gripping firmly. All acceptable annoyances in a cheap handset, but for a "premium price" device, it's just not good enough. To add insult to injury, many many many people have discovered that the…

Continue reading →

Working With The Twitter Videos API


Screenshot from Twitter. 2015-02-18T09:01:37.000Z. katie (@katiemoffat). A dull video of my cat to test twitter videos http://t.co/cGazAn7H3E

Twitter now allows people to upload videos directly to the micro-blogging platform. It's an attempt to bypass 3rd party sites like YouTube (owned by Google) and Instagram (owned by Facebook). In an uncharacteristic display of openness, Twitter's API allows developers to get direct access to video. This is a quick blog post to explain how you get access, and what you can do with the information. I presuppose that you're already familiar with the Twitter API and know how to make basic calls. …

Continue reading →

Dying For An iPhone


Who made your iPhone? Sure, the back of the box says "Designed in California" - but who were the men and women who assembled your phone? How well are they treated? Are they paid well? Are they trapped in a living hell where many of them feel the only way out is suicide? Christoph Lutz@lutzid"achieve productivity or the sun will no longer rise." #foxconn slogan "motivating" their workers; fascinating talk by jenny chan #oxict4d❤️ 0💬 0🔁 017:07 - Tue 03 February 2015 This is the question pose…

Continue reading →

Overlapping Animated GIFs


Just a couple of silly experiments on a Sunday afternoon. I think it's beautiful to overly animated GIFs on top of one another. If the topmost GIF has a transparent background it becomes hypnotic to see the synchronisity which appears to develop - akin to listening to Dark Side of the Moon while the Wizard of Oz is on the TV. The background and foreground have differing periods of motion, which gives a rather pleasing effect. It's also possible to overlay GIFs to use as sprites. In this…

Continue reading →

Big Data As A Lethal Weapon


Yesterday I attended an OII talk on the Ethical Treatment of Data in New Digital Landscapes. Amy O'Donnell from Oxfam lead a discussion about how the charity is seeking to improve the way that Aid Agencies deal with the data they collect. Oxfam collects data for many different reasons - sometimes it is incidental (for example the bank account details it needs to make payments), sometime it is deliberate (for example when conducting a survey about how aid is used). Protecting personal data…

Continue reading →

Get Cheaper Amazon Prime *Without* Instant Video!


tl;dr If you have no need for Prime Video, you can ask Amazon for a discount. They'll knock £30 off the price - taking it down to £49. I spoke to customer services - here's the transcript (edited for clarity) : To be clear, Amazon weren't forthcoming in whether this was available to everyone. I suggest you ask Amazon very nicely! In my case, I haven't watched a single Amazon video. I don't even think I've logged into the service. Both Amazon and Panasonic refuse to support my TV. Even i…

Continue reading →