philwilson.org

a geek commodity

Blogging duck

September 5th, 2010 by Phil

Any writing is better than no writing, so here are some things I’ve been thinking about and doing lately:

I have a new camera – a simple Canon Ixus 100 to replace my old point and shoot which got dust in the lens. It has HDMI out for the 720p video it takes, face tracking, auto scene selection (such that if I point it at something close it switches into macro mode automatically), and is slightly bigger than a credit card. I keep touching the screen to try and interact with it.

I’ve been reading all about the Young Rewired State, which is something I’d not heard about until after it had happened, but is really inspiring.

I’ve been going back and re-reading some of Matt Jones’s old blog posts, and getting some book recommendations – mainly Neal Stephenson. I’m no longer sure what is meant by “the Internet of Things” – it made sense a few years ago but isn’t it now just “the Internet” and we’ve changed our perception of what is and can be connected?

This week I bought a pen. It has 8GB storage, a microphone, a speaker, basic handwriting recognition, comes with special paper which has playback controls on it, and it has its own app store. The SDK is freely available. I will be bringing it to OpenTech 2010 on the 11th September.

Another cool pen that’s just launched is the Sharpie Liquid Pencil which contains liquid graphite. I like the idea of this a lot.

All the Java bloggers I read are posting about Clojure, a dialect of Lisp that runs on the JVM, and have been for months. I have no particular inclination to actually try it out.

I didn’t originally think I’d care, but I increasingly want to be able to back up all the data I enter into Twitter and Facebook. For twitter there is an easy API and plenty of code for doing that. For Facebook there seem to be sites that will do it for you, but that requires giving them your login details, or full access to your account, which isn’t something I’m massively prepared to do.

| No Comments »

My next phone

August 1st, 2010 by Phil

android-usb I have a Motorola Milestone and on the whole I’ve been happy with it. There have been a few issues which affect me (all introduced by Motorola themselves) but hopefully these will get resolved with the next software update, and of course I’m very much hoping that Froyo hits my device.

The camera is poor though, so when my contract is up in a year’s time, that will be a requirement.

More pressingly though, I’m finding that I have more and more portable devices that support USB (pen drives, external hard drives, cameras, mp3 players, my kindle-of-the-future), and I want my phone to act as a host for these. It is, after all, my always-on, always-with-me computer, and has all the apps I need to manage those devices and a wifi connection so I can up- or download any bits that I need.

As far as I know, none of the Android devices come with it supported natively, but people have got host mode working on both the Nexus One, Milestone and Hero using custom kernels. The Nokia N800 and N8 seem to do it out of the box:

N800: Ultimate Portable USB Host

Increasingly, my laptop is a barrier to doing things like getting photos online. I realise I could get an eye-fi or something similar, but that also takes away a level of flexibility and pre-upload functionality that my phone gives me.

Here’s hoping it’s a popular or common feature in a year’s time!

Tagged: , | 2 Comments »

What’s playing now on BBC 6music?

July 29th, 2010 by Phil

I don’t know how to add a link to the Amazon MP3 store for a given song. If I did then I would add that to http://philwilson.org/6music/ and its purpose of letting me easily find out what song is currently playing and then buying it, would be complete.

As it is, it is merely a useful tool to be able to tell, pulling data from last.fm and twitter, what the current track being played on 6music is, and which show is playing it.

The BBC are the ones pushing the “now playing” data to last.fm but the name of the show comes from a robot built by Nigel Crawley. At no point does my code look at any of the BBC sites or services directly.

If only I could get the link to Amazon working then my sofa-based listening and purchasing experience would be complete.

Tagged: , , , | 5 Comments »

The new model of buying music

July 21st, 2010 by Phil

My phone runs an app that idenitifies the song that is currently playing on the radio and an app to then buy and download that song, or the album it’s from. The two are seamlessly linked.

I am probably late to this, but listening to 6music whilst I have both Shazam and the Amazon mp3 store available to me means that, wherever I am, provided there’s not too much background noise, downloading a song that’s playing is about five presses of a touchscreen away.

This is not a good thing for my bank account but a bloody brilliant thing for those record execs looking to buy a new boat.

Tagged: , , , | No Comments »

How to push to two servers at once with git

July 5th, 2010 by Phil

As I said this time last year, I dislike the idea of people using a decentralised version control system to centralise their code.

This means that some of my code sits in Bazaar on my server, some in Git on my server, and some in github. I’m not keen on this situation, and given that github does have a large amount of mindshare, and that launchpad is really quite horrible to use, I want to be able to “git push” to both my server and github at the same time.

It turns out this is quite easy; and everything below (with a few very minor modifications) comes from “Setting up a new remote git repository” by Tim Lucas and Aristotle Pagaltzis‘ answer on this Stackoverflow question.

So, given that I have a working github repo, and a local checkout:

Set up the new bare repo on the server:

$ ssh myserver.com
$ mkdir /var/git/myapp.git
$ cd /var/git/myapp.git
$ git --bare init
Initialized empty Git repository in /var/git/myapp.git
$ exit

Add the remote repository to your existing local git repo and push:

$ cd ~/code/myapp
$ git remote add myserver ssh://myserver.com/var/git/myapp.git
$ git push myserver master

You have now associated the remote repo with your local repo under the name “myserver”. Now open up ~/code/myapp/.git/config and:

put something like this:

[remote "public"]
    url = git@github.com:username/myapp.git
    url = ssh://myserver.com/var/git/myapp.git

Now you can say “git push public” to push to both repos at once.

and that’s it! Every time you push you will be making sure that your code lives on both your server and on github. Adds links to both in your README and the job is complete.

Tagged: , , | No Comments »

Android apps I have paid for

July 3rd, 2010 by Phil

Droidbox pro (a dropbox client that came out months before the official one, and still seems better)

Jewellust (a bejeweled clone)

BeyondPod (a podcatcher. I have stopped using this since I realised it was trashing filenames)

Reddit is fun (because the author deserved my $1)

Other than BeyondPod, I recommend these paid-for apps. BeyondPod may have fixed my bug, I haven’t checked.

The other 50 or so apps I have are free. I am very much hoping that froyo (android 2.2) comes to the motorola milestone so that I can install apps to the sd card – I keep running out of internal memory!

Tagged: , | No Comments »

Online ebook catalogs in Atom

May 3rd, 2010 by Phil

As I recently wrote, I have a new-found interest in ebooks (I also bought four new textbooks from O’Reilly using a BOGOF offer to pick up 97 Things Every Programmer Should Know, 97 Things Every Project Manager Should Know, Beautiful Code and The Art of Agile Development).

I mainly read ebooks on my Android device, specifically, using Aldiko.

Aldiko has a built in browser for the feedbooks.com catalog, but also gives you the ability to add your own catalogs. A friend told me that Calibre, a popular ebook management programme, has a web interface which one of the other popular Android ebook readers (WordPlayer) could be pointed at in order to add custom catalogs. After a quick trial and a few Google searches, I realised that WordPlayer actually subscribes to an XML file hosted on http://localhost/calibre/stanza

Opening this file shows it to be Atom, where each entry is a small metadata container and the link element is used to reference the actual book and images that represent it, like this:


    <link type="application/epub+zip" href="/get/epub/3"/>
    <link rel="x-stanza-cover-image" type="image/jpeg" href="/get/cover/3"/>
    <link rel="x-stanza-cover-image-thumbnail" type="image/jpeg" href="/get/thumb/3"/>

Another few searches showed this to be a draft specification called openpub. Aldiko supports this, so adding the /stanza URL to a custom catalog works there too! Voila, custom catalogs in Aldiko. Marvellous!

It should only require a tiny bit of work to write code that serves a catalog straight from the filesystem without the overhead of Calibre (which I found to be quite heavyweight). This is what I have started here.

Tagged: , , , , | 2 Comments »

Reading eBooks

March 21st, 2010 by Phil

I’ve now read three books on my phone (you can see which ones here). I never thought it would be possible to read on a screen that wasn’t designed for this purpose; I was sure that you’d need a Kindle or Nook-type screen to be able to read in comfort and for long periods of time.

The girl with the dragon tattoo

The Girl with the Dragon Tattoo on my Motorola Milestone

It turns out that when I have time to read it’s typically on the train or bus (OK, mostly waiting for the train or bus followed by a brief journey), and then a few hours at weekends. Reading on my phone is fine for these use cases and in fact normally more useful since I always know where my phone is, and it always knows where I left off from.

Some facts:

  • The screen has a resolution of 854×480
  • I read in white on black
  • I read using Aldiko (although I tried WordPlayer too)
  • I have used the built-in catalog browser for virtually all my downloads
  • I have experimented with using Calibre to convert PDFs into eBooks and for magazine subscriptions. This is all simple.

I am pretty much a convert. There are definitely some downsides to reading books on a screen – it’s hard to pass it on afterwards, for example, or to quickly show someone a particular bit of text (since on such a small screen they’d need to go back three pages to get the same amount of context you’d get on a printed page or a proper ebook reader).

But I am astonished by the price of ebooks. From the little I’ve looked around they seem to be at best a few pounds (or dollars) cheaper than the dead tree equivalent, and I was certainly expecting a massive discount. Let me make a trite example:

The Girl with the Dragon Tattoo:  book, amazon.com: $5.50, ebook, amazon.com: $5.42

and that is only for the books that you can get in DRM-free format, of course. Unlike, say, books that are printed on paper, some books are only available in certain formats or available for certain readers. It’s like they looked at the mp3 sales business of 8 years ago and said “yep, that looks like a great business model to us!”.

The pricing rather makes a mockery of the value of a printed book – do publishers really want to be telling me that the physical thing I hold in my hand is worth far, far less than the license for the artwork on the cover? Even if it is, the devaluation in the item that this revelation causes means I’m likely to be more frugal with my book purchases, not less.

All in all, although I thought I’d miss the whole tactile sensation of paper books, I don’t. I do miss the covers and a row of spines in a bookcase, but it’s not as if I have rows of CDs still out in my house. They all got ripped and are now in my loft.

I fully expect that over the next year most of my casual book purchases, or book-reading at least, will get done on my phone. After that time I may buy a proper ebook reader, certainly the experience I’ve had so far has indicated I am going to be spending even more of my time looking at a screen in the future.

Tagged: , , , , | 1 Comment »

House, do as I command

March 21st, 2010 by Phil

How hard would it be to wire up mics and speakers in every room and have them connected to an Android device (even a phone) which is permanently looking to do a voice-driven search provided there is a three second gap before the word “house” (or, y’know, HAL, Gort or whatever you like)?

Tagged: | 1 Comment »

Three months with a Droid

March 13th, 2010 by Phil

Just before Christmas I got a Motorola Milestone to replace my Nokia N95. At the time it was the latest and greatest Android device to be released in the UK, and it’s my first non-Nokia device in a decade.

All in all, it is not the step change I was hoping for in upgrading from a device I got in October 2007. The device itself looks unremarkable and rather like several touchscreen LG models. The hardware keyboard is very useful but the keys are virtually flush together, making it hard to get any kind of sense of whether you’re about to press the right letter or not (obviously it’s less of an issue after a bit of practice).

The camera is significantly worse than my N95 in both hardware and software (even accounting for the 24.5 day bug which my firmware has) – this is a real disappointment since the camera on my phone had become my main Flickr weapon since it worked well in most light conditions, had simple software and a great lens.

It doesn’t come with a podcatcher, which the nokia did, and the music player is extraordinarily basic (although it does seem to do most of the things I want).

On the other hand, having a large, hi-res, bright, touchscreen device is lovely. I’ve been lusting after my wife’s iPod Touch for the last year or so but hate iTunes and get frustrated at the Touch’s limitations so it’s been a blessed relief to finally get a device that feels more like a computer (yay for multitasking!). Of course, the Android Market is much smaller than the app store but the only place I’ve really noticed this is with games, and I’ll write another post about the Market later.

It’s pretty clear I was quite spoiled with the N95 in that it met all the hardware and software requirements I had, even though I didn’t realise I had them until I moved platform.

All this does lead me to wonder whether i’d have been better off with the Nokia N900 rather than the Milestone. In the short term I think the answer is no, especially since it runs Maemo rather than Symbian. I’m glad I have an Android device, even if, in the worst case, it’s just to get some experience of it; but in 15 months time I think there will have to be something special, in both hardware and software to keep me on Android.

Tagged: , | 4 Comments »

« Older Entries