Terence Eden. He has a beard and is smiling.

Terence Eden’s Blog

Theme Switcher:

Visualising Twitter Conversations in 2D Space

· 1 comment · 450 words · Viewed ~2,568 times


Update! The source-code for this app can be found at https://github.com/edent/TweeView Many years ago, I created a threaded conversation viewer for fledgling social network App.net. It was a unique way to flow through a conversation without having to be constrained by the linear vertical scroll of the typical web browser. App.net died - and I never found a reasonable way to recreate it for…

Easy APIs Without Authentication

· 18 comments · 650 words · Viewed ~81,683 times


A pet cat typing on a computer keyboard.

This is a curated list of APIs which do not require usernames, passwords, access tokens, signing, accept-headers, or anything more complicated than sticking a URL in a browser. (This is an update to my post from two years ago.) When I introduce people to the concept of using RESTful APIs, they immediately get how powerful it is to retrieve information from the Internet and then manipulate it in…

Displaying WordPress Posts' JetPack Statistics Using stats_get_csv()

· 550 words · Viewed ~892 times


Bar chart showing how many times a blog has been red over a year.

Here's a quick way to display how many times a WordPress post has been read. For this, you will need: A blog running WordPress. The JetPack plugin installed. The ability to edit your themes. Here's the snippet of code I'm using to add "This post has been read 12,345 times". I'll explain how it works in a bit more detail. if( function_exists( 'stats_get_csv' ) ) { …

Reverse Engineering the BMW i3 API

· 44 comments · 2,100 words · Viewed ~31,130 times


I'm really enjoying driving the BMW i3. I'd love to have it tweet its driving efficiency, or upload its location to my server, or let me turn on its air-conditioning when the temperature gets too warm - there are a hundred interesting things to do with the car's data. The official app has some of these features - but is slow, ugly, and a pain to use. BMW used to have an API available for…

An API for Amazon Wishlists

· 1 comment · 600 words · Viewed ~3,685 times


In the glorious past, Amazon had an API for interacting with its "Wishlist" service. Not any more though. So, here's the inspiring story of how a rag-tag band of adventurers brought it back from the dead! Several years ago, Justin Scarpetti created a tool to extract data from an Amazon wishlist - the imaginatively named Amazon Wish Lister. It used that most vulgar of programming practices -…

Preserving Deleted Tweets

· 5 comments · 350 words · Viewed ~4,790 times


Go take a look at this tweet https://twitter.com/edent/status/650948940431511552. You can't - I deleted it! I've been looking at how to track politician's deleting tweets, when it occurred to me - is there any way to prove that a Tweet ever existed? It's possible to automatically take a screenshot of a page, but screenshots can easily be manipulated. So, can we preserve deleted tweets with…

Google's Secret Screenshot API

· 9 comments · 550 words · Viewed ~16,687 times


I've been looking for a way to programmatically take screenshots of websites. Most of the solutions I've found won't work on headless servers, require complex libraries to be installed, or cost money. So, what do we do when faced with a knotty programming problem? Hack it! Google has a "Pagespeed" service, it allows any webmaster to get a comprehensive report on how Google assess their page. …

Get your Google Location History the hard way… Again!

· 10 comments · 450 words · Viewed ~9,946 times


Last year, I wrote about how to extract Location History from Google. Once again, Google have changed their URLs to make it even harder to get one's current location out of their data-greedy hands. It used to be the case that Latitude gave that information - but they killed it. Then they promised it in Google+ - but never delivered. Now they offer you a data-dump which they will email to you. …

Track deletions on Twitter - AKA build your own Politwoops

· 500 words · Viewed ~847 times


Twitter, as part of its never-ending quest to alienate users and appease the rich and powerful, have shut down Politwoops accounts. Politwoops monitored politicians' Twitter accounts and noted when they deleted a tweet. Most of the time deletions were done for the same reason we all deleted content - mispellings, broken links, etc - but occaisionally they caught politicians attempting to flush…

Adding WiFi To A Roomba

· 6 comments · 1,600 words · Viewed ~37,561 times


There are two very clear signs that I'm getting old. The first is that I bought a domestic robot to help me with the chores. The second is that, rather than spending my evenings and weekends reading decades old forum postings, reverse engineering serial interfaces, and soldering components together - I plunked €99 on a bit of kit which "just works". Enter the Thinking Cleaner - it's a r…

Working With The Twitter Videos API

· 1 comment · 850 words · Viewed ~8,357 times


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…

Working With Twitter's Embedded Videos

· 500 words · Viewed ~948 times


Twitter has just launched embedded videos in Tweets. How can we, as app designers, present them to our users? So, what options do we have? First of all, let's take a look at what the Twitter API provides. Send a signed request to : https://api.twitter.com/1.1/statuses/show/560070183650213889.json In return, we get these entities : "entities": { "hashtags": [], "symbols": [], …