Saturday, November 24, 2012

Second Screen - part II

While we are talking about Second Screen:

Google Glasses are the Second Screen to Life.

Really, I mean it. With all the consequences. Think about it.
I'm not even saying this is good.

Wednesday, November 21, 2012

Thoughts on Second Screen

With the ongoing success of tablets, media companies and many social platforms get all exited about the "Second Screen".
Second Screen is short hand for getting additional content on your tablet while watching TV. Sometimes it refers to the device itself, sometimes to certain apps on this device.

The quest for the perfect second screen app reminds me of the race for killer app in the early 2000s for the mobile phones. Everyone is jumping in and wants to define the second screen experience.

TV stations, networks and content owners/producers rush to the race in creating very narrow and limited second screen apps for certain programs, TV series', ... Just because they noticed the success of Twitter (and probably Facebook as well).

My 0.02$:

Yes, there is a (very positive) second screen trend right now... but it is defined by the users, not be the content providers. I don't see a lot of sense in creating separate apps per TV program, because that's not like we users behave.

When I watch TV (or a DVD, or streaming, for that matter) I do have my iPad on my lap (or next to me), and I spend quite some time with it: e.g. in IMDB, or Twitter, or Facebook, or Google+ (or my email).
Point is, it is somewhat, but not 100% related to the program I'm watching. I'd never open one specific app e.g. the Breaking Bad app just because I'm watching Breaking Bad...

I don't want to engage in anything (and most probably not the things, the network wants me to), I want to look up actors; or find some background information; or see where Downton Abbey exteriors where shot (link) and find that on Google maps; or have the twitter stream for the election night run by while I watch as Ohio is being called.

But that's my personal second screen usage or experience, not a pre-defined one.

Sunday, November 18, 2012

Social Bookmarking

Social bookmarking has changed a lot over the last couple of years.
What started with simple (and some say ugly) pure heading/URL lists, turned into magazine style full-color, hi-res, rich-media, insert-your-buzzword-here pages.

Observe - as an example - the change from he good old del.icio.us to Pocket or Flipboard.


I don't really won't to compare them with or against each other, because to me they define different categories or sub-categories of social bookmarking.

Here is how I use the various tools and platforms:

  • To publish or almost broadcast links, I use Facebook, Google+ or Twitter.
  • To publish for a certain interest group - kind of newsletter like - I still use delicious and have people subscribe to the tag via RSS.
  • To store for later reading, I use Pocket - especially because of the text-only view in Pocket, which make medium-size to long articles and posts really good to read on an iPad or phone.
  • To save or archive URLs, I use delicious, sort of my bookmark vault.

Thursday, November 08, 2012

ifttt to the rescue

Since my feed from flickr to Facebook has been broken for a while now (and I re-authorized flickr on facebook and v.v.) I decided to work around this with ifttt.

No, I'm not out of my breath, I'm just using if this then that

A simple but very convenient service, with rules of the nature
If (this) happens then trigger (that)
with predefined "channels" for this and that. E.g. flickr and Facebook.

So I created a rule
which takes every new picture I upload to flickr (with the tag #FB) and posts the URL to facebook
Bingo, it works again, and I can now control what is being posted to Facebook by adding or omitting the #FB tag.
Cool

You can slightly modify those rules, but you are bound to what ifttt offers. Pretty much actually.

Sort of competes with Yahoo Pipes in a way (if they were really still alive). Bit more powerful in some aspect, less powerful in others.

Monday, November 05, 2012

[revisited] Google's reference gadgets

Almost 2 years ago (Jan 2011) I was musing about Google's reference device strategy; see my post from then.

At that time Google had the Nexus One (by HTC) and the Nexus S (by Samsung)  devices out, they also released the Cr48 as a reference for their Chrome line.
And I was wondering
I wonder when they will release such a reference device for tablets (with Android).
Or will they ever?

Well, they did, didn't they.
Here's the full Nexus family of devices as of now;
  • a really cool smart-phone (Nexus 4)
  • a mid size tablet (Nexus 7), that I really long for
    and
  • a full tablet (Next 10)

So, they did it.
Thanks

Wednesday, October 31, 2012

No Jelly Beans yet

Ok, so it does not really look like October, does it ...

After the earlier report  about October, I was really ...optimistic 

IT conservations: Jelly Bean on its way: From The Verge : The Taiwan-based manufacturer also revealed that a Jelly Bean update for the HTC  One X  and  One S  will arrive in Oct...

Saturday, October 27, 2012

Maps mash up: Underground vs post office

The other day, when I had to post an important letter, I was wondering if there is any post office close to an underground station on my commute, and I could not come up with one. So - me being me after all - I decided to do some in-depth analysis on this. And learn Python along the way.

1.  The Idea
Get all the underground stations and post offices as geo coordinates, and find those closest to each other.


2. Getting the underground data
Easy, the geo data of all the public transport stations (or ony the underground stations) can be found easily, since the are part of the open government data, shared by the municipality of Vienna.

3. Going postal
Getting the post office data is rather challenging, because they are seemingly not considered to be public enough.

Still, this can be done; so first get a list of all the post offices in Vienna from post.at. Best with a little python script (my first!!) to parse it.
Get all those with a ZIP code starting with '1' into a CSV file including their full street address.

Then - thanks for the hint, martin - use the Yahoo! PlaceFinder API to convert those postal addresses to geo coordinates. Get an Appid for Yahoo!, if you don't yet have one.

Important trick here: Don't place everything into the q=... query string, but separate it into postal, city, street, etc. Like this
u = yahooURL+"?appid="+yahooAppidy
u += "&postal="+po.zip
u += "&city="+po.city
u += "&street="+quote_plus(unicodedata.normalize('NFKD', po.addr).encode('ascii','ignore'))
u += "&country=Austria"
From Y! we get some fine XML back and use XPath to access the geo coordinates

doc = ElementTree(file=urlopen(u))
lat = doc.findall('.//Result/latitude')[0].text
lon = doc.findall('.//Result/longitude')[0].text
So now we have the geo coordinates of all the underground stations and all the post offices.

4. Visualize & Verify the data
Let's again use Python to create a simple KML file to load the date acquired so far into Google Maps (or Google Earth). There's a Simple KML python library to do just that. Here's are the maps (post offices, underground stations)

5. Do the Geo Math
This is the tricky part. I decided to put all the data into a (relational) database, and since I have DB2 installed on my system, it was of course DB2. I did not use any geo/spatial extension, but just put the latitude and longitude into proper types. Then I created a user defined function (UDF) to do the geo math. Actually, for this purpose this could have been simpler, since one can disregard all spherical aspects and assume the surface (of the Earth in Vienna) to be flat.
With my newly created haversine function the query then looks like this:

select haversine(p.lat,p.lon, u.lat,u.lon) as distance, p.plz,p.street,p.lat,p.lon,u.station,u.lat,u.lon
from ubahn.post p, ubahn.stationen u
where haversine(p.lat,p.lon, u.lat,u.lon) <1
order by 1 asc
fetch first 20 rows only

I'm only interested in post offices that are maximum 1km (distance<1) from an underground, and I only want the closest 20 of those (first 20 rows only)

6. Create a map
Export those data into a CSV file, and run a pyhton script that creates the KML file for this, with the post office being a point, the distance being a line, and the underground again a point. Map can be found here.

Turns out, there are more pairs than I actually thought.

Sunday, October 21, 2012

Geo-Distance vlg Haversine as a DB2 UDF

In a hack I'm currently working on (to be published soon) I needed to calculate the distance between two locations (on the surface of our planet). Admittedly, those are close addresses (all in Vienna), so I could have assumed them all to be on a plane (not an airplane, a flat surface...), but I felt like some real math.

This is a workaround for all of you who do not have spatial extender available or installed.

To calculate the distance of two points on (a perfectly spherical earth) you apply the haversine formula.
This is the representation of it as a DB2 user defined function (UDF)


CREATE FUNCTION HAVERSINE( lat1 decimal(10,8), lon1 decimal(10,8), lat2 decimal(10,8), lon2 decimal(10,8))
RETURNS DECIMAL(15,8)
F1: BEGIN ATOMIC
declare dlat, dlon, a, d double;
set dlat = radians(lat2-lat1);
set dlon = radians(lon2-lon1);
set a = sin(dlat/2) * sin(dlat/2) + cos(radians(lat1)) * cos(radians(lat2)) * sin(dlon/2) * sin(dlon/2);
set d = 2*6367*asin(sqrt(a));
return d;
END

The two points are given in latitude and longitude (in degrees) as lat1/lon1 and lat2/lon2. It returns the distance in kilometers. If you want to change this, replace 6367 (which happens to be the Earth's radius im km in Vienna, for which I needed this) with your radius and units,e.g. 3956 if you want miles in London.
Check it simply at Wolfram Alpha with "earth radius in london".

I guess it is not perfect, but it does work well. I should probably make it DETERMINISTIC (because it is) to improve performance.
Go ahead, play around.

Monday, October 15, 2012

Something's odd here

In tablets we currently observe two business models:

The Apple model -  make money on the hardware, therefore lock users in,  and make sure that there's enough content available for iOS to do so

The Amazon model - get consumers to buy content and stuff from Amazon,  and make sure they have a device for this.

What is odd here,  is that the Apple model,  which depends on globally availability and distribution of a physical goods (the iPad) is more scalable than the distribution of purely electric or virtual goods (content) in the Amazon model, because Amazon is (still) limited by availability of said content in each country and has to negotiate it...

Sick.

Wednesday, October 10, 2012

Firefox 16 is out

... and fighting with he F1 addon (an addon to share pages via Facebook, Twitter, gmail)

Problem was that the tab-key stopped working... both in web-pages as well as in the awesome bar (to jump to the search inbox).
Google revealed bug 788050  with the following exchange:

Luckily, F1 has been replaced by the Firefox Share addon, which solves the tab-key problem, but does not have a share button/icon on the address bar... 

The worrisome part of it, is that the addon is from Mozilla Labs, and not some thirdparty script kiddie.

Tuesday, October 02, 2012

Jelly Bean on its way

From The Verge:
The Taiwan-based manufacturer also revealed that a Jelly Bean update for the HTC One X and One S will arrive in October
hell yeah...

Saturday, September 29, 2012

A New Baby - Raspberry Pi

Finally - thanks to Max, I got my new baby:

a Raspberry Pi.

What for, you ask?

Don't know yet... I'm thinking along the lines of

  • a thermostat - with some fancy features
  • a power meter - for some "private" smart metering
Any other ideas welcome.

Today I finally found the time to get the beast running: only needed an SD card (believe it or not, I could not find any SD card at home... probably because my Nikon uses CF). 

I also got myself a new Logitech wireless keyboard and mouse; the first time I'm using a wireless... but only because the Pi is next to the TV (via HDMI cable), and I don't want any more cables lying around.


Apache is running, the dhcp lease is permanent... cool times ahead.



Monday, September 24, 2012

Oh boy!

Last Friday, late  afternoon, just when we arrived at our b&b for our 2 days vacation in Styria, my beloved HTC One S went into a reboot loop. Meaning, it would power off, restart and right after the HTC logo reboot again, and again, and again, ... forever.
Didn't change when connected to power.
Didn't change when I let the battery run out (which was fairly fast and easy with this behaviour).
Nothing.
After about 2 hours I was not only really annoyed, but also quite allergic to the Quietly brilliant logo and sound.

So I finally managed to get into the bootloader or diagnostics menu (or whatever it is called). The one you get when you press volume-down while powering up. There I - after some playing around - decided to go for a factory reset.
This helped.

Bad thing is, I only had a 2 months old Backup I took with My Backup Pro. Not only that, I didn't actually have it, because it was on the memory of the phone I just wiped...
At this time, I really wished, the HTC One still had physical SD cards...

And this in the middle of nowhere. I only had an Edge connection from time to time.
Luckily the b&b had at least free Wifi, so I could re-install all my apps from Google Play.

From there it was easy: all contacts were synched with Google. Nothing to do there.
My emails, tasks, appointments are of course all "in the cloud" and/or on our corporate server(s), so once I logged into the respective app, it was done.
My photos/videos got periodically backed up to Dropbox with the automatic camera upload. Nothing lost there.
Most podcasts I had in Google Reader, and BeyondPod does sync with Google reader. Good.

The only real pain (apart from losing all my achievements in Temple Run) was to get the application settings back again. Still working on some of those.

Lesson learned: always do a backup and do it to an external medium or the cloud. Will set this up tomorrow.
Really.
I swear.

Tuesday, August 28, 2012

ToS;DR

We all know, that no-one ever - ever!! - reads the terms-of-service of a web service. So in a very laudable effort, the guys around ToS;DR did this for us.

ToS;DR is of course a play on the ever popular tl;dr, which is not a broken HTML tag, but stands for too-long, didn't read:

Said whenever a nerd makes a post that is too long to bother reading.
(source: Urban Dictionary)


ToS;DR - short for Terms of Service; Didn't Read - takes care of that:

They created a dash board of the most important web services out there, and flagged them from class A (green) to class E (sooo red, you don't really want to touch it) with the most important aspects and consequences of using said service, like e.g. that twitpic by the terms of service you agree to (!) takes credit for your content.

This catalog of services and their ToS is just great. Imagine, this were to be represented as XML (or in any other machine readable format); then a browser extension could actually flag web pages you visit according to their service, i.e. really warn you about your "loss of copyright" (exaggerating) if you upload to twitpic...

I want this!

Thursday, August 23, 2012

Look, What I just did to my HTC One S!

No, the Jelly Bean upgrade is still not here for HTC One S, but at least here in Europe we got the 4.0.4 upgrade on ICS.

Upgrade was totally smooth and flawless. And now, back to waiting for JB...

Friday, August 17, 2012

Listen, listen, gone.

So, finally, Google Listen is gone from my mobile.

I'll stick with BeyondPod.

Google Play Store Gift Cards

According to several reports, the Google Play Store is finally getting gift cards.
Google Play Store Gift Cards - Great Idea!:

This essentially places the Google Play Store on par with the Apple iTunes ecosystem.

It means that anyone can purchase apps and content from the Play Store, without the need for a credit card.
For example, my kids!

And thus it gives more revenue opportunities to app developers in the Android ecosystem.

Well, let's see when it will become available outside the US...

Monday, August 13, 2012

Cisco AnyConnect VPN Client for Android

Finally, with my move to an ICS device I do have a VPN client compatible with our corporate VPN, Cisco AnyConnect. For earlier versions, this was only sort-of available for rooted devices, and I did not really want to root my old HTC just for this.

But now for Android 4 and above (ICS+) there is AnyConnect ICS+ available in the Google Play Store.

 Setup and installation is straightforward. Of course you need to know the connection details of your VPN (hostname, mainly; assuming you do know your userid and password anyway).

It comes with a nice widget for fast and easy access; remembers your userid after the first connect, and also shows the VPN status with a key (connected) in the notification area.

Works great.

Still don't know what I should do in the corporate network with my mobile, though.

Sunday, August 12, 2012

Replacing Google Listen

The other day Google announced they would discontinue Google Listen (my favorite podcast fetcher and player for Android until now):

We launched Google Listen through Google Labs in August 2009, to give people a way to discover and listen to podcasts. However, with Google Play, people now have access to a wider variety of podcast apps, so we’ve discontinued Listen. People who have already installed the app can still use it, but after November 1, podcast search won’t function. You can access your podcast subscriptions in Google Reader in the “Listen Subscriptions” folder and download them from the Import/Export tab.
So I finally did some research for a good podcast player for Android; my criteria were:
  • use or at least import my current podcast feeds from Google Reader
  • an option to restrict episode download on Wifi only
  • an option to restrict episode download only when charging (not too critical, though)
  • easily accessible controls for play/pause and skip
  • good control over the order the episodes play (playlist)
  • good UI
I found all this in ... drumroll ... BeyondPod.

What I really like is the smart play list, where you can configure BeyondPod to e.g. take all episodes from category x from oldest to newest first, and the all other episodes from category y. I use this to start with all the short 2-5 minutes episodes from e.g. FM4 or OE1 (both from Austrian public radio), followed by the longer ones, e.g. Tech News Today, or In Beta.[1].

The concept of categories makes it easier to configure update frequency, order in which to play episodes, etc etc. Really nice set of settings there.

BeyondPod comes as a free trial version, with all features enabled for the first 7 days. After that, you either continue using the free version - what they call "Lite" - with a limited feature set:
When using the Lite version, you can still add feeds, update, download and play your podcasts. The main limitation is that in order to get the latest episodes, you have to manualy refresh each of your feeds using the circular "Refresh" button located in the top right corner the Feed Content View.
This is too "Lite" for me, so I purchased the BeyondPod Unlock Key from the Google Play store for €5.51/$6.99 so I can continue to use the full version. Still worth the money.

I moved to BeyondPod about a week ago and I'm glad I did.

btw: you can find a review of BeyondPod All About Android episode #5 (minute 38:20)

--
[1] other weekly podcasts like TWiT, or TWiG, or AAA I still listen to on my iPod nano