TimeBliography →

timebliography

TimeBliography by Willington Siabato (UPM) is a dynamic and online bibliography upon space and time in GIS. The bibliography is quite extensive (over 1300 papers) and well organized. It can be explored starting from any of the four main categories (core, secondary, others, and standards), by publication type (journal articles, book sections, etc.) or via free text search. Moreover, it offers the timeline view shown above that shows how the literature on this topic has developed over time. Definitely a very useful resource for anyone working in this area.

Location-Based Light Painting

Location-Based Light Painting from Philipp Schmitt on Vimeo.

Very cool project:

For any city, thousands of geotagged photos are available online. The project maps these photos in the places where they were taken.

A custom-built camera flash + smartphone setup queries the Flickr and Panoramio APIs for photos taken at the current geographical position. Whenever there’s a photo available, a flash is triggered.
Long-exposure photography captures multiple flash lights — each representing one geotagged photo — and situates them in the place of their origin.

Head over to the project page for more photos, process as well as technical details: philippschmitt.com/projects/lightpainting

Via geoawesomeness.com.

Building your own watch-it-later video podcast with Dropbox

iPhonePodcast
Playing a video from the podcast we’ll create.

My feed reader and social media streams swamp me with videos every day, and some of them actually seem to be interesting. The thing is: During the day, I don’t have time to watch them. And the one time I can actually watch them – on my way home on the subway – I have no (or very slow) Internet access. Which basically means no Youtube, no Vimeo – simply no video streaming in general. So I thought it would be great if I could just save these videos to watch them later, and have them transferred automagically to my phone for offline viewing. Turns out this is actually not so hard if we use Dropbox and a fairly simple PHP script. Yes, I know this could also be done in [insert your favorite programming language here]. PHP is preinstalled on Mac OS, though, and I know PHP well enough to quickly implement this, so that’s what I did.

I’ll describe the process on Mac OS, but it should be easily transferrable to any other operating system. As the title suggests, you’ll need a Dropbox account to make this work. What we’ll do is use your Dropbox’s Public folder to publish your own podcast, generated from your saved videos, and then subscribe to this podcast on the phone.

1. Put the PHP script in place.

Download this GitHub repository, unzip it, and copy the folder Watchlater-master to your Dropbox’s Public folder. If you’d rather have it in a different subfolder, you can change the path in the configuration at the top of the feed.php file (just make sure it’s somewhere inside the Public folder):

$path = "Watchlater-master"; // change this if you place the script in a different subfolder.

2. Configure the script

The one thing you do need to change in the script is your Dropbox ID:

$dropboxID = "123";

The easiest way to find out your Dropbox ID is by going to your Public folder, right-clicking on any file (such as the feed.php file we have just pasted there), and select Copy Public Link. Paste that into a text editor, and it should look something like this:

https://dl.dropboxusercontent.com/u/123/path/to/my/file.txt

The number after /u/ (123 in this example) is your Dropbox ID.

The other two things you can (but don’t have to) tweak are setting your local time zone:

date_default_timezone_set('America/New_York');

and the number of videos you want to keep in the folder:

$keepVids = 10;

The script does some housekeeping for you, so if you have more than, say, 10 (which is the default) videos in your folder, the script will automatically remove the oldest X videos until only the 10 newest videos are left. This keeps your Dropbox from overflowing. Note that the script has no way of knowing which videos you have already watched, so it may also remove videos you have not watched yet.

3. Add some videos

Before we run the script, we’ll need some videos to feed it. Download some videos into the Watchlater-master folder (or wherever you put the feed.php script). Since most services like YouTube don’t really offer an easy way to download their stuff, I’m using youtube-dl for that (which also works great for a wide range of other streaming sites). On a Mac, you can install it via Homebrew (if you don’t have Homebrew, go and install it right now – it’s awesome!). In a terminal window, type

$ brew install youtube-dl

Once Homebrew is done installing youtube-dl, change into our feed directory and download some videos:

$ cd ~/Dropbox/Public/Watchlater-master
$ youtube-dl https://www.youtube.com/watch?v=dQw4w9WgXcQ

3. Run the script

To run the script, type

$ php feed.php

into the Terminal. If everything goes right, you should see some messages, and a new file called later.xml in the folder.

4. Subscribe to your podcast

This later.xml is the actual podcast that we want to subscribe to, and because it is in your Dropbox’s Public folder, it actually has a stable URL and is accessible online even when your computer is not running (if your Dropbox is completely synced, that is; if not, wait until it’s done and the spinning arrow on the Dropbox icon in your menu bar has disappeared). Right-click on the later.xml, and select Copy Public Link again. Since we need this URL on the phone to subscribe to the podcast, I simply emailed it to myself (there should really be an iCloud-based clipboard, I know).

On your phone, open your Podcast client and add that URL as a new podcast. I use Pocket Casts 4, but it should work with any other app the same way:

casts

Voilà – we not get videos saved to watch later delivered to our phone! Make sure you pick a podcast client that automatically downloads new episodes.

5. Automatically update your podcast

The one piece that is missing is some magic that automatically updates the later.xml on a regular basis to check whether new videos have been added to the folder. We’ll use a Cron job for that. In a terminal, type:

env EDITOR=nano crontab -e

This will open the nano editor inside your terminal window, showing an empty file (unless you have already set up any other Cron jobs on your system). In nano, type

59 * * * * cd ~/Dropbox/Public/Watchlater-master/; php feed.php

on the first line. This sets up a Cron job to automatically run the feed.php script once every hour to check for new videos. Press CTRL-X to close nano, confirm to save the file by pressing ‘Y’.

That’s it. Now every time you place a new video in that folder, your podcast will be updated automatically, and the videos will end up in your podcast app. I’ve been using this script for a few months now and find it really useful – it’s a bit tedious to set up, but once you have done that, gone are the times of awkwardly staring at ads on the subway because there’s nothing else to do.

LOD2 Book Published →

The book is a joint effort of the LOD2 consortium, and consists of two parts. The first part, the technology, covers the advances in RDF data management, extraction, creation, enrichment, interlinking, data fusion, authoring, exploration and visualization, as well as Linked Data Stack. The second part of the book presents use cases in publishing, linked enterprise data, and open government data. The book gives an overview of a diverse number of research, technology, and application advances and refers the reader to further detailed technical information in the project deliverables and original publications. In that regard, the book is targeted at IT professionals, practitioners, and researchers aiming to gain an overview of some key aspects of the emerging field of Linked Data.

This should be an interesting read for everyone working with Linked Open Data, and I’m really happy to see that this is an Open Access book. The PDF is available free of charge from Springer.

Why I ditched Pocket and Instapaper for Safari Reading List →

This is exactly what I did, and for the same reasons. Perfect for offline reading on the NYC subway. The only thing I am missing is sending articles from the Feedly iOS app directly to the Safari Reading List.

Edit: Feedly problem solved by switching to Reeder 2, which is a way nicer app anyway. Yes, it does cost money (currently $4.99), but I use my RSS reader every day, so this is money well spent.

CAGIS 2014 Keynote

I’ll be giving a keynote at the First International Workshop on Context-Awareness in Geographic Information Services (CAGIS 2014) at GIScience in Vienna next month (on September 23rd, to be more specific). The title of the talk will be Research in the Age of the Context Machine; here’s the abstract:

One of the major challenges in the development of context-aware applications has always been the initial step of collecting enough information about a user’s context. With the increasing prevalence of smartphones equipped with a plethora of sensors, more and more users have a context machine on them that constantly collects, uses, and transmits different kinds of passively collected contextual information. Additionally, many users actively provide contextual information by participating in online social networks. This talk will shed some light on the implications of these developments for research on context awareness. Starting with a brief review of the history of research in context awareness, it will discuss the role of research conducted in industry in this field, upcoming research challenges, and implications for user privacy.

Looking forward to see everyone in Vienna in a few weeks!