January 2012
1 post
Puzzling Software
I receive a 3x3 Wooden Puzzle Cube as swag.
It takes on average of something like 2 to 3 random attempts to get all the pieces into the box. There is no obvious pattern to any of the solutions.
Sometimes I solve it on the first go and feel all clever about myself.
But to solve it like a nerd, I must do so with a computer program (written in Java), that computes all possible combinations, and...
November 2011
4 posts
The "Be FED chairman For A Day" Game →
It’s all about customisation. →
With all the patent law lately, it’s nice to see Google still innovating on Android. I’m still waiting for this phone to be available in Germany.
The Microsoft Six →
Finally we have a list of the Patents that Microsoft are using to gain revenue from the Android ecosystem. Hopefully they will be challenged in court sooner rather than later.
Background Image Loading
Operating system provided tabs
Handles when selecting text
Annotation of electronic documents
Web browser loading status icons
Simulating mouse inputs using non-mouse devices
October 2011
3 posts
1 tag
How do I view the signature (MD5 or SHA1) of the...
Your APK is a ZIP file, so extract the signature file located inside META-INF/{filename}.RSA. For some reason the {filename} can vary, but in my example it is CERT.RSA. View the signature information using the keytool:
keytool -printcert –file CERT.RSA
Migrating my WordPress blog to Tumbler
Steps taken:
Set up Tumbler blog.
Point sub-domain ”tumblr.zedray.com” to ”zedray.tumblr.com” by editing my 1and1 A-Record.
Port over my entire WordPress history.
Delete all the mess.
Point my 20 top incoming links to their new location using PHP redirect headers.
September 2011
1 post
1 tag
Gerrymandering rears its ugly head (again)
For anyone who didn’t know what they were voting for last May, here comes the new governments plan to guarantee themselves a strong majority in their second term.
Links: The Full Boundary Review United Kingdom Alternative Vote referendum, 2011
August 2011
1 post
1 tag
Call + SMS Log Widget
Download Call + SMS Log Widget from Android Market.
June 2011
5 posts
1 tag
Naked Capitalism: How Germany Achieved Stable and...
Very interesting Naked Capitalism post on the huge difference between Germany’s property market and that of the United Kingdom.
Two comparable countries with radically different systems, one of which is designed to make property older, smaller, scarcer, and totally unaffordable. I now live in Germany.
1 tag
Awesome Mountain View
Three cool things about driving past Mountain View… Computer History Museum Find out why they call it Silicon Valley. See who the first computers were, with what they were replaced, and how we got to where we are today. Learn how US government spending fostered various computer revolutions. Take the Geek tour and get an inclusive T-Shirt and pin.
Google (or just about anyone’s)...
1 tag
Awesome California Monterey Peninsula
Five cool things about a couple of days driving around the Monterey Peninsula…
Coastline Gorgeous views.
Whales Go see the Monterey Aquarium they say, but isn’t May the best time to see these creatures in the wild? Get a boat and have a “Bunny Hugger” Marine Biologist provide a running commentary, as Humpbacks and Killer Whales popup and make their appearance. Remember to dress...
1 tag
Google I/O 2011 Highlights
Location May 10-11, 2011 @ Moscone Center, San Francisco. There was far too much content at the conference this year for me to take it all in. Even to follow just the Android track would require being in three different places at the same time. Hence, this post is just a brief summary of what I did + found interesting while I was there, with links to the relevant session videos on YouTube where...
1 tag
Awesome San Francisco
Five cool things about a weekend spent running around San Francisco…
View outside my hotel window With a 9 hour time difference it’s easy getting up early on Saturday morning and take in the view of down town San Francisco from Hotel Nikko.
Municipal Railway (i.e. the Cable cars) Home to an amalgamation of Cable Cars (slightly less crazy than the ones in Lisbon), historic Street...
May 2011
1 post
2 tags
Google I/O 2011
For the first time ever, I will be attending the Google I/O (plus warm-up BootCamp) event in San Francisco. I am looking forward to getting my hands on a usable “Honeycomb” Android Tablet (maybe as a freebie?), get a chance to try out Google TV and probably learn as much as I can about GAE and GWT. Anything else that happens when I’m over there will be a bonus. Now lets see...
February 2011
1 post
1 tag
Global Android Activations, Oct '08 - Jan '11
Data visualization of global Android device activations from October 2008 to January 2011.
December 2010
2 posts
Unstable Walking Robot
As an inventor I’ve always wanted to program a robot to walk, but have never seen hardware capable of providing the power to weight ratio required to replicate the inherently unstable human walking motion.
By unstable, I’m talking about robots without the big blocky feet that stop them from falling over when you switch them off.
At about 1:40 the robot slips, rather than...
Localising (or Localizing) the Last Call Widget...
The Android Market is a worldwide phenomenon, and I want to make my application more accessible to my users wherever they come from.
Who are my users?
Unsurprisingly for software written in English, three quarters of my users have their Android devices set to English locale. What surprised me was how many English locals existed (46 in total), including those where English is a minority or...
November 2010
3 posts
Multi-platform UI Guidelines For Mobile and Tablet...
The most complete set of UI guidelines I’ve seen to date, curtsey of Maximiliano Firtman.
Discriminating Against South Korea On Android...
Today I removed my Last Call Widget from the South Korean part of the Android Market.
I did this because my app now gets consistent 4-5 star ratings in most of the Android world, but only 1 star from users in Korea (or who comment in Korean). Currently Korean comments represent ~6% of my total Market rating, and my goal of moving from 4.5 to 5 stars is suffering as a result.
The problem is...
Last Call Widget Permissions
Question:
“Why does a Last Call Widget need access to the internet or to read the phone state or identity or the network state? Doesn’t it only need access to recent calls?”
Answer:
Here is a run down of the permissions currently used by “Last Call Widget”.
(a) Network communication, full internet access.
(b) Your personal information, read contact data.
(c)...
October 2010
2 posts
Sony Ericsson “LiveView” Early Look (i.e. a...
Sony Ericsson showed off their snazzy new LiveView device at the London DroidCon 2010 event today. Due to popular demand from developers, they made an on-the-spot decision to hand out an “early look” developer SDK and loan out a couple of devices for third party plug-in development. None of this was ready for prime time, so I’ll go easy on them in my review.
I’ve always wanted to...
Upcoming events
I am about to have a busy couple of weeks. You’ll be able to find me at:
droidcon London 2010
28-29 October 2010 http://www.droidcon.co.uk/
AndroidCamp Hamburg 2010
06-07 November 2010 http://androidcamp.mixxt.de/
I haven’t made any speaking plans yet, but who knows.
August 2010
2 posts
How To Use Analytics To Improve An App
In an earlier post I alluded to the idea of using real usage data to improve my Last Call Widget. Currently the widget packs three key use cases into a small and simple UI:
Who called last, when and on what number?
Show the last caller list.
Return the last call.
My research question focused on what extra information I should be showing, and what other use cases I should be looking to...
The Case For Analytics
!! None of this is legal advice !!
Last week was a bad one for Analytics, with the *discovery* that an Android wallpaper application was secretly leaking users personal information to a server in China. The source later backtracked on that claim, but by then the damage (mainly to the trust in having an open ecosystem for Android applications) was already done.
Google themselves weighed in...
July 2010
3 posts
History of Nuclear Testing
Fascinating animation illustrating the nuclear weapons that have been detonated (thankfully nearly all for testing) on our planet between 1945-1998. USA comes out badly with a crazy 1032 detonations (two used in anger), but surprisingly this only represents half of the 2053 weapons used to date.
Glad we’re still here.
Sugar: The Bitter Truth
Highly interesting lecture on how Fructose (a cheap fat/sugar replacment) is a poison and why we are feeding it to ourself (and our babies).
“Robert H. Lustig, MD, UCSF Professor of Pediatrics in the Division of Endocrinology, explores the damage caused by sugary foods. He argues that fructose (too much) and fiber (not enough) appear to be cornerstones of the obesity epidemic through...
Vampire energy
Great chart on how much power is used by a Plasma TV (and other devices) while in standby mode (plus Video).
June 2010
4 posts
Last Call Widget - Use Case Analysis
I am approaching the big two point nought milestone of the Last Caller Widget and feel the need to give it a cool new feature.
FEEDBACK
So far feedback from users has been mostly positive. I have fixed a number of home screen and life cycle related issues, as well as responding to feedback from Sense UI users who felt the Widget needed more transparency to fit in with the HTC flavoured home...
Last Call Widget - Metrics
Despite all the pretty visualisations generated by the Google Analytics tool, essentially so far all it has been good for is recording how many people have been using my app. This falls short of useful, now that I am at the stage where I want to redesign my interface to support an improved user workflow.
The next step is to come up with some kind of useful success vs. failure definition...
Awesome Lisbon
Three cool things about our weekend trip to Lisbon…
The Landing
The airport is so deep inside the city, that on landing the pilot may as well be driving a tour bus (if you look to your right you can see the Santuário do Cristo Rei, next is the Praça do Comérciothe headquarters of several Portuguese government ministries…).
Elétrico em Lisboa (Electric Trams)
Feeling like an...
>10,000 Last Call Widgets!
Time for a statistics round up now that my “Last Call Widget” has breached the 10,000 downloads mark on the Android Market.
According to the developer console, the widget currently scores 4 out of 5 stars, taken from 83 mostly anonymous ratings. Looking at the public comments (which are dated), it’s possible to see how several bug fixes and new features have increased the...
May 2010
5 posts
My 30 minutes of fame...
“You did well on Twitter…” was the first thing I heard after taking absolutely no questions from a room packed with Android developers.
Source: All photos stolen from other people off the net
(I was too busy to take any myself).
They had come to hear a real Android developer actually talk about Android development, as opposed to push some product or service (all the real...
Unrepresentative Democracy
Now most of the votes in the 2010 UK Election are in, we can now look past the media spin and take a detailed look at how the results were counted. Raw data curtsey of BBC News.
Here are votes cast (i.e. popular vote) against seats gained in parliament.
The first question you might ask is why did Liberal Democrat supporters (like myself) lose 92 representatives?
This difference is caused by...
Pre-embedding your Android Application using a...
Suppose you’ve been asked to pre-load your application onto a forthcoming Android device, so that end users will see your handy work on the Home Screen as soon as they start-up the device. This means excellent placement for your application an extra selling point for the device (i.e. your application can be shown on the product marketing!).
First off, lets forget about including your...
Berlin DroidCon Presentation 2010
Android is hotting up in the marketplace, and the Berlin DroidCon conference program is looking interesting this year. Particularity as I will be presenting some research on Android application architecture and demoing a bit of source code.
Architecture your Android Application (30 minutes)
How should you structure your Android application? What components do you use (Activity, Service,...
Last Call Widget
If you’re like me, a lot of the time you look at your phone, you want to instantly know:
Whether you missed a call?
Who called?
When?
…and then call back with just a button.
This is what the Last Call Widget is about.
This simple to use Widget will save you time and effort:
The Widget shows the caller name, phone number, and time of call on your home screen.
Select the...
April 2010
4 posts
Tracking a Android Home Screen Widget
The solution for the “Using Flurry with a Android Home Screen Widget” problem was to move over to using Google as an analytics provider. This works because Google has kindly provided a dispatch() method in their API, so developers can choose exactly when the library should start reporting back to the server.
This is intended for developers wanting to optimise their network traffic,...
Call Log Widget
The first thing my girlfriend asked when I handed her an Android phone was “how do I make a call with that?” This is from someone familiar with the candy bar form factor with the ubiquitous green (call) and red (hangup) hardware call buttons (and no interest in finding the “phone app” on a busy home screen).
In the quest to make form factors with fewer buttons (i.e....
This is democracy
Interesting comment in this weeks bugle about the way electoral lines are drawn in the UK and how they favour a labour majority. Here is a model showing Labour getting an 8 seat majority (largest party by 109 seats) from an even split of the popular vote (see Gerrymandering). As usual for a UK election I expect the complacently party to win my a mile.
Using Flurry with a Android Home Screen Widget
Flurry is a great tool for tracking the users of your mobile application, producing the sort of data visualisation that makes marketing men smile with glee. Unfortunately, I have discovered that the Android API is good for monitoring usage of Android Activities, but not suited for tracking Android Home Screen Widgets.
The main issue here is that Widgets have a very different (i.e. much longer)...
March 2010
1 post
Hand Warmer on Android Market
Problem:
So you need to verify the upgrade life cycle of the Android Market *before* you launch your product, so you give yourself the goal of putting a completely new application together in the space of one hour. It can be anything, preferably something original (iFart has already been done), so long and you can turn it around from concept to release in 60 minutes and don’t include any of...
November 2009
1 post
How the US army protects its trucks – by paying...
“Insurance, security or extortion? The US is spending millions of dollars in Afghanistan to ensure its supply convoys get through – and it’s the Taliban who profit” (Guardian).
September 2009
2 posts
Data SMS – An Annoying Android Fragmentation Bug...
A code contained in a Data SMS is required to authenticate the MSISDN of the device running my product.
When I receive a data SMS on the Samsung Galaxy, the Intent “android.intent.action.DATA_SMS_RECEIVED” is not thrown and the Data SMS arrives in the Inbox as a blank text message. Any data contained in the Data SMS seems to be lost once it arrives in the Inbox.
Here is a little app I wrote...
Android Cupcake Device Review > HTC Dream
The original Android phone, which came shipped with Android version 1.0 but promptly performed a seamless self update to Cupcake after I took it out of the box and connected it to the internet for the first time.
This device is only interesting for testing (post Cupcake) because it has a hardware keyboard which by default will restart the running Activity every time you flip it out. This uses...
August 2009
1 post
Android Cupcake Hardware Review
This is a review of all the mobile phones currently being sold (outside of China) that run Android Cupcake. I am an Android Third party Application developer (i.e. not a Google employee or handset manufacturer) and will be reviewing various technical differences that affect developers like myself.
With the late arrival of the Samsung Galaxy, I now finally have the full set to play with.
The...
July 2009
1 post
G1 Google Account sign in without T-Mobile SIM
So you have a T-Mobile G1 running the Android 1.1 firmware, but you don’t have a T-Mobile SIM. This means you can’t get past the Google Account sign in screen because you don’t have internet access.
Unfortunately you can’t yet access the phone settings to activate WiFi, so the only way to progress is to manually enter an “Access Point Name” configuration for your third...
June 2009
1 post
When ADB won’t detect your Android phone…
The official instructions for using your Android phone for development are here: http://developer.android.com/guide/developing/device.html
So you plugged your Android phone into your Windows machine having forgotten to switch on USB debugging…
Menu > Settings > Applications > Development > USB debugging
Then Windows detected your device as a USB-Mass storage device and won’t...
May 2009
4 posts
Android Developer Challenge 2
Android Developer Challenge II
http://code.google.com/android/adc/
My Countdown Countdown
My Countdown Countdown