Echo Show Security Camera with a Pi


The Echo Show is the first Alexa enabled device from Amazon with a screen, with this device Amazon introduced some new capabilities within the Sklls SDK particularly around video, one of these is the ability to view home security cameras such as the Nest and the Ring Doorbell using the command “Alexa show X camera”

However these devices are all at the pricy end of the home camera market, I do like having a few cameras around the house mainly so I can checkup on what chaos the dogs are causing downstairs when I’m working up in my office. However fitting out my house with enough Nest cams to cover most o the areas would be running close to £1000.

I’ve used the cheaper Motorola Scout camera before and that worked pretty well, it can be picked up for about £50, but then I got thinking about the Raspberry Pi, specifically the Pi Zero W that was released a few months back, we now have a very cheap very small device that has Wifi and an interface to add an internal camera, you therefore have all the hardware you need to create a compact security camera.

There are plenty of articles around the web on how to setup a Pi as your own home security camera however the Echo Show has some fairly particular requirements around the format of the video steam, especially the transport layer, it requires RTSP over Interleaved TCP connection on port 443 secured with a TLS cert! Don’t worry if this all sounds a bit scary I’ve done the hard work digging into this so you don’t have to.

Right now this is quite a complicated process with many steps covering lots of different areas so its only really suitable for the more advanced hacker, I’m hoping to simplify several steps into a single script in the future, Pull Requests are welcome.

Checkout the video below and if you want to build your own then the instructions and code are all on GitHub

AlexaPi – Its come a long way


Its over a year now since I released the first version of my AlexaPi code that turned a Raspberry Pi into your own Amazon Echo like device via the Alexa Voice Service API.
When I say released thats a bit grander than it really was, at the time I’d hacked this thing together and thought I should probably put the code up on GitHub as it might be interesting for others.
My code is bad, really bad. I’ve always said I’m not a professional developer, I come from a background of sysadmin, and these days I’m more of a systems architect. But I can hack together some interesting things.

I never expected the project to gain any traction, mot of the stuff I’ve done might have had a small handful of people take it and adapt to their own needs but AlexaPi seemed to really hit a note with people and is still going strong, as of today the 1st of March the original repo has been starred 673 times and forked by over 400 people. Its hard to know what that means in terms of actual installs, I suspect most people just download or clone the repo and flash their own Pi, I never put any tracking into this and there is no backend that I control so I can’t see any real usage stats but I would estimate the users to be in the thousands.
Even in the last month the repo has been cloned nearly 100 times and the project has had 1300 unique visitors, so its still going strong.

Which is why it might seem a little strange that today I changed the name of the repo to AlexaPiDEPRECATED, and moved it out of my github account, Its not dead just that today marks a significant milestone.
As I mentioned earlier there are many forks of my code, and this meant that people were modifying it for their use and extending the functionality, this is the great thing about open source and I love seeing people build stuff on top of what I started, however it also meant that things we’re getting a bit out of control, people were asking questions, raising issues and sending me pull requests that I just didn’t have time to manage, (its also a year today since I went back to a full time salaried job which has taken up a large portion of my hacking time.)

Sometime last year (I can’t find the date) a guy named Rene Kliment contacted me via the project, he wanted to start work on consolidating the forks into a single great AlexaPi project with cleaner code, support for different hardware platforms and a generally more modular approach which should facilitate people sharing their own custom integrations without having to fork the codebase.
I’m still amazed at the work he’s put in, and this is the really boring grunt work of cleaning up someone else’s code, rather than adding fancy new features that do cool things for You Tube videos, I would never have had the time, skills or patience for that!

So today the Rene as the ‘Chief Steward’ of the Alexa-Pi project released v1.4 of the code, this now puts the project on par in terms of features with my original version along with some of the improvements added by other contributors, the code is cleaner and a lot more professional, things that I hard coded for my particular setup are now more flexible and generally everything is a whole lot more awesome.

I just want to say a huge thank-you to Rene, and all the other people that have contributed to the project, a few of the name that I know of are Mason Stone, Travis Teague, Lenny Shirley, Aleksey Maksimov, Mark Jozefiak Dion Gonano, I know there are many more out there that have contributed to the project and you will be immortalised in the commit history, thank you everyone.
I’m intending to get more involved in the project this year, I’ve submitted a couple of contributions this last weekend and been doing a bit of testing behind the scenes, hopefully I can provide support and advice to the developers and users along with generally cheerleading their work. I was lucky enough to be named by Amazon as an Alexa Community Champion partly because of this project so I need to keep championing the community.

If you haven’t checked out the project then now is a great time, everything is centred around the Repo at https://github.com/alexa-pi/alexapi

Train Ticket Machines – What about the Power Users

AdUnlnOCQAAnPLs

Plenty of articles have been written on the UX of train ticket machines, while they tend to vary by train operating company they’re usually one of 2-3 varients and usually generally awful to use!

I’m sure in plenty of the meetings where people design (I use the term loosely) the interface for these machines they are concentrating on making it as easy as possible to find the ticket for your journey, that is they are starting off with a use case of search and then taking on the purchase at the end of the process. For certain users this is probably a good way to go, I know where I want to go so now help me find a ticket for that, then let me buy one.

But what about another group of users, for want of a better term I’m going to call these people power users, they people that travel by train regularly, usually as a commute, they probably do the same selection of 3-4 journeys 50 or so times a year, They don’t travel frequently or regularly enough to buy season tickets but they certainly know the system and know what ticket they want. Also they probably know the cheapest ticket for their specific circumstances, many people will be aware of certain ‘hacks’ on the train ticketing system like split fares and boundary zone tickets that can save you quite a lot on regular trips. Equally these people don’t plan ahead they just want to turn up at the station and get a train, they don’t pre-book tickets all the time as they need the flexibility. I was one of these people in fact I probably still am, for a while I was traveling a lot on trains, the photo at the top is my collection of used tickets from about a 6 month period. So I’ve used these machines enough to say I’m qualified.

This is where the problem arises, I want certain ‘special’ ticket options on a regular basis, every time I goto London I get a split fare at Didcot as it saves me £30 or so, do that 3 times a week and it adds up, so I usually ended up having to go into the ticket office and speak to the nice lady in there, at one point I was doing it so often that she got to know me enough to just ask ‘the usual’. However what happens when these ticket offices are closed or worse have an enormous queue of tourists wanting their hand held through the whole process. Then us power uses get the raw end of the deal, we either end up wasting ages in a queue or more often than not over pay when we know we didn’t need to just to get a ticket from the ‘Fast Ticket’ machines.

My friend Kevin Prince’s experience with First Great Western this morning captures this perfectly:

What was even more surprising was one of their replies:

Yep thats right, they’re blaming the technology, its the classic British ‘Computer says No‘ scenario, and thats the sort of thing that really winds me and most other technology professionals up no end, This answer really isn’t true, its not they ‘can’t’ sell special tickets its that they’ve chosen not too, given that its a computer in the ticket office that does allow then to sell these other tickets there clearly isn’t a barrier in terms of technology, its just that they think the system to sell special tickets is so special and complex it must be guarded but their own staff and we can’t let the mere mortal customer near the precious ticket computer. Or the cynic in me says they don’t want to make it too easy to buy these special tickets or they fail to make quite such large profits as they currently do, but lets be generous and assume they’re wanting to make things ‘easier’ for us.

Lets consider a few options:

1) they could just expand the current ticket interface with all the various stations and special ticket options, hopefully this has been thought about and somewhere a desicion was made to leave some of these more ‘obscure’ ones out in the name of keeping it simple for the person that buys one ticket a year. Ok not gonna go into this argument, lets move on.

2) They could expose the same interface as the ticket office staff have via a small ‘advanced mode’ button on the top of the screen, it would certainly be a fairly easy fix, not much new design but that does run the risk of confusing the untrained user if they somehow manage to press that button, its not like this is some sort of guided missile system, if users get lost and press the wrong button its not gonna kill anyone but if you’ve ever been stuck behind a person at the ticket machine who can’t figure out the current interface this isn’t a good thing either.

3) They could of course  simplify the fare system, introduce contactless payment, do away with tickets and use credit cards directly but thats a major undertaking for the whole rail network and of course it will almost certainly mean that these hacks us power users know to save money are lost and we’ll end up paying more.

So we’re left with a requirement to keep the existing ticketing and pricing models, and not hinder the current system for untrained users, Most of the ticket machines already have 2 modes, there’s a ‘Buy Tickets for Today’ option which then takes you into the minefield of searching for your stations, or there’s a ‘Collect prepaid tickets’ for picking up tickets that you bought online. My idea is for a 3rd ‘hybrid’ of these 2 options, I’m calling it Turbo Tickets.

The idea is that every possible ticket in the UK rail network has a code, its  something like 3 sets of 4 letters, so SYAT-SBRI-SADR That would be from Station YATton to Station BRIstol for a Standard Anytime Day Return, all UK stations already have 3 letter codes those of us that use the traintimes apps regularly probably know their frequent ones anyway, Other types like travel cards could replace the station codes so TFGW-FTAB-SATC could be a Travelcard on First Great Western for a Freedom TravelCard Zones A-B, as a Standard Anytime TravelCard. The point is that these codes don’t have to be that easy to understand there would be a certain amount of logic in the system just to re-sue existing codes and let people learn patterns, but the scenario doesn’t really require that, you could simply give every ticket type a 16 digit number, the idea is that if this is the ticket you buy regularly you’d learn the code, or have it written down then you just tap that into the machine and pay, boom out comes your ticket. There are various ways people could discover these codes, all outside of the ticket machine itself, Train companies coudl add them to their websites so when you search for a journey and price there’s the code next to it, also you could print the code on the bottom of every ticket sold, so once you’ve bought a ticket once its easy to take an old ticket to the machine and tap in the code for the ‘same again please’. Now there are some options these code might not work for, the main one I can think of is advance tickets, where you specify a certain train and usually get a booked seat, but that use case is already covered, most people buy those online or over the phone and pickup from the machine using a one time code already. The other thing that might need adding to the code is some way to specify a day perhaps a 4th block with the date eg 2312 for 23rd Dec, but to start with we could just use this system for tickets that are valid today. thats the use case, people that want to travel now and know what they want.  I’ve mocked up what the interface could look like one the ticket machine below:

Screen Shot 2014-12-29 at 11.59.40

 

A Story of Enterprise IT:

Enterprise IT

Spock: Captain, Klingon Bird of Prey de-cloaking off the port side
Kirk: Mr Sulu, ready photon torpedos
Sulu: Captain, there’s a problem,
Kirk: What Mr Sulu?
Sulu: Well during our last refit the torpedos were upgraded to the mk. 7 models,
Kirk: Yes yes man,
Sulu: Well I don’t have the mk. 7 launcher client installed on my console,
Kirk: Well install it now man, that Klingon ship is about to blow us to oblivion.
Sulu: Its not that simple captain, I no longer have admin rights,
Kirk: So how are you meant to get it then?
Sulu: Well now I have to raise a software asset request to Starfleet IT
Kirk: How long will that take?
Sulu: Well sir we’re well out of comms range of a Starfleet Admiral with the appropriate approval rights,
Kirk: Well just tell IT its an emergency and we’ll get the approval when we return to space dock
Sulu: I don’t think that will help captain.
Kirk: Why Sulu?
Sulu: They outsourced the software installation work to a colony on Bringloid V they still have a 4 year SLA….
Kirk: What the……
Sulu: The good news is that one year on Bringloid V is only about 18 earth hours, so we should be able to get an emergency change raised in about 3 days….

{Explosion}

Hat Tip to Alastair Somerville, and Mike Ellis for the twitter conversation that gave me the idea

The Apple Sim – Its a Bad thing

6592778831_429271de73_m

Lots of people are getting excited about one of the features of the new iPad Air 2 – The Apple Sim, its being pitched as a single sim card that allows you to switch carriers as you please, I suspect that under the hood its a special kind of multi profile sim card that actually contains profiles for each carrier, or possibly even allows new profiles to be loaded over the air.

At first glance this seems like a good thing, and at this stage it probably is, however its the first step on the road which leads to a bad place. The SIM Card, or to give it its proper title the “Subscriber Identity Module” its one of the great inventions of our time. This little bit of plastic holds the keys to access a network, which in turn hosts your identity. Everything is self contained into the one thing, of course on its own its pretty useless but when you insert it into a phone (aka Mobile Equipment) then things happen.

Now most people hate their carriers, and rightly so, generally we have a limited choice, the only time we hear from them is when they send us a bill and the only time we talk to them is when somethings gone wrong, its hardly the basis for a loving relationship, so at first glance it looks as if Apple are abstracting away that relationship by giving us a single sim that can jump carriers all from the comforting warm glow of our iPad screen, no fighting with the spotty sales drone in the local High St for a new sim card.

However lets stop and think for a moment, where does this lead? Well right now you’ve got an Apple Sim in your device and if you want to take a plan from one of the ‘Blessed’ carriers (which as of today is T-Mobile, Sprint and AT&T in the US plus EE in the UK) then life is pretty good, of course thats so long as you want one of their ‘iPad Plans’ if you want to do something a bit different and maybe take a plan thats supposedly for a MiFi then you’ll still have to swap the SIM, or if you want to use a carrier other than the ones on the Apple SIM agin its swapping the SIM time. Ok No biggie you haven’t really lost anything, YET….

But this is just the start, this Apple SIM is mostly likely a multi profile sim, that is one physical card that has multiple virtual sim cards loaded onto slots on it, either at the time of manufacture or possible via Over The Air updates, think of it like a VM for sim cards, if its the OTA option there’s probably also a bootstrap SIM profile which will be a connection paid for by Apple with some random small telco somewhere in the world just for the purposes of downloading your ‘proper’ subscriptions, likely this is someone like Manx telecom or Jersey Telecom, these guys are small and agile yet have roaming agreements with pretty much everywhere. Now once Apple have got more carriers on board with this virtual SIM then things can move onto phase 2, where the SIM card slot disappears and its just the Apple SIM, fixed to the board, permanently inside the device, and your only options are the carriers (and their plans) that have gone through the approval process.

Now as my Learned Friend Mr Terence Eden points out in his post a while back this puts Apple in control. Now I don’t quite have the same feelings towards Apple as Terence does, and TBH if Apple are the ones controlling things thats the best possible outcome of this scenario. What worries me is that we are taking something which is very much in the control of the user (e.g. moving a card from one device to another) and moving it into the cloud of carrier internal processes and systems.

As I mentioned before, people like to bitch about their carriers. But, for all the gripes about their network and signal people have most of the real painful issues arise when trying to deal with their Business Systems. The stuff that provides the pipes (generally) works and when it doesn’t its either down to underinvestment/overselling or its a fault (which happens), however the billing, provisioning and customer management systems cause users real pain, just look at the twitter feeds of any major carrier to see what customers are complaining about, device unlocking not happening, incorrect billing, unable to close down accounts properly… What makes you think they’ll be any better at activating and deactivating virtual sim cards? Today if my carrier breaks everything with my account I can at least go to the shop, buy a new SIM card with £10 credit on it, pop it in and be up and running again, to me thats a small price to pay versus spending hours on hold and being passed around the call centre trying to work the system. So Risk 1 is that the carriers back office systems get more control over your devices connection.

Ok lets assume that you’re the lucky ones and your connection goes through as you requested in a timely manner, well what about if you want to do something that someone in a carriers marketing department has decided they don’t want you to because its not as profitable? Telecom is a strange beast and there’s a whole series of posts in that alone, but lets just recognise for now that because of this complexity there exists opportunities for savvy users to play the system, in its basic form this is a type of arbitrage. The reason that dual sim phones are so popular in emerging markets is that carriers offer differing deals with cheap rates in certain scenarios, ph course they’re not doing this out of the goodness of their hearts, it’s a loss leader. The business case was built arounf the idea that what you loose on SMS you’ll make back on voice, however the cunning end users are using your cheap SMS and playing that off against another carrier thats loosing on the voice prices in the hope of making it back on SMS.

Its not just emerging markets where this exists, the iPhone in the US is a classic example, for years AT&T wouldn’t offer a prepaid data sim for the iPhone, they did have a prepaid sim with data called GoPhone, but for reasons known only to themselves and their stock holders they didn’t want you using that on the iPhone, I remember as a visitor the the US going into an AT&T store with my basic Nokia and saying I wanted a GoPhone sim for that, then going next door into Starbucks and putting that SIM in my iPhone, all because of dumb business rules that said I couldn’t have that SIM for an iPhone, of course the sim worked perfectly in the iPhone and I used it for my entire trip.

And even if you don’t want to ‘shop around’ and get the best deal there’s plenty of examples of where carriers have refused to allow you to use a certain device on their network because it hasn’t made its way through their process, this example just last year where Jeff Jarvis wanted to use his Nexus7 on Verizon but they wouldn’t give him a connection, despite proving that it worked fine if he moved the SIM from his ChromeBook. All because of Business rules, nothing Technical.

How many people have had issues with getting their phones unlocked by the carrier, especially if you’ve got a locked phone and no longer have a contract with that carrier, technically they could give you the unlock code but because of their business process and broken systems they can’t create one,  so you have to go thorough some charade of getting an account just to get away from them.

The sim allows you to move devices freely and easily, heading to a festival for the weekend? pop the sim out of your expensive battery hungry smartphone and drop it in a cheap Nokia which will go for days and survive a dip in the festival toilets. Not with the embedded sim, instead you’ll be on the phone to your carrier trying to get them to send a message through their systems to move your subscription over, and how quick will that really be? Then you’ve got the same fun and games to swap back on Monday morning. And what happens when they realise the cost of all these calls, they’ll introduce ‘business rules’ that only allow you 4 swaps a year or something…..

Now let me make something clear, I’m not saying that any of the above scenarios would happen with the Apple SIM, but please understand that this leads to a place where your carriers have more control over how you use your devices, and history teaches us thats not a good thing, the separation of hardware from connectivity should be like Church and State, yes they need to work together but don’t let one control the other. Its not the technology thats the problem here, that could work really well, but the user experience will be ruined by the business processes, geeks be careful what you wish for!

(image credit MIKI Yoshihito https://www.flickr.com/photos/mujitra/6592778831)

A platform based bank account

For a long time I’ve always felt that telecoms and banking/payments are pretty similar industries when it comes to technology, both handle massive amounts of real time transactional data, making a payment in a shop using a visa card is fairly similar to the idea of sending someone an SMS when you strip it back, of course payments have to have higher levels of security than telecoms but we’re in the same ballpark. I’ve had an idea at the back of my mind for a few months that I call the Platform Bank Account. Looking at the success of Twilio (and other telecoms API platforms) I started thinking what would a ‘Twilio for banks’ look like.

First things first I need to get a few things clear, it might be easier to say what this isn’t; I’m not talking about an integration between  Twilio and my bank so I can get SMS alerts of my balance or when I go overdrawn, neither is it a way to take payments or send friends money along the lines of PayPal that then sits on top of a ‘real bank account’ or Stripe. What I am talking about here is a first class, real bank account, with a sort code, account number and everything, to any other part of the banking system it looks like just another current account and has all the same capabilities. What makes this account different is that its a platform, exposed by an API so that any myriad of 3rd party applications can be used to manage it, both via user interaction and automatically.

Lets look at the main features of most current accounts, I’m not talking about the gimmicks that banks tack on to sweeten the deal like phone insurance or a free gun! just the things that are the real reason for having an account;

Account Number and Sort Code – This is the primary identifier for your account, its used so that your account can function in the system with other accounts, it also has global versions like the IBAN, obviously our account will have one of these.

Direct Deposit – Most people get paid their salary or whatever by direct deposit into their account, this is why your account needs a number (see above)

Direct Debits – If you want to be a grown up you’ll  have to pay bills, generally by DD. Council Tax, Utilities, Mobile Phones all of these need the ability to make DD requests to your account number.

Standing Orders – Like a direct debit but these allow money to be ‘pushed’ from your account to another on a schedule you define.

A Debit/Cash Card – Probably the main way people interact with their bank account on a daily basis this is 2 or 3 things in one, it allows you to get cash out of an ATM, Make Payments in shops using Chip & Pin, contactless etc. and also it has a 16 digit number that you can enter to buy things online. Payments made on this card then show up as a debit on my account (or credit in the case of refunds)

Faster Payments – I can make a one off payment from my account to someone else’s account number, usually via some fairly tedious web site.

Cheque Books – Ok most people here probably think these went out with the ark but they’re still around and people do use them, they’re a feature of most accounts.

Counter Service – I can goto a physical place and either withdraw or pay in an amount of cash or even one of those old fashioned cheques, usually this is my banks ‘branch’

Balance – Possibly one of the most obvious and maybe overlooked features is that my account is somewhere I can store ‘money’ it has a balance and this facilitates most of the payment features above

Overdrafts – I guess this is a feature or maybe its just part of the balance but my bank will also allow me to have a negative balance for a short while, this makes things easier with payments if the timing doesn’t quite line up.

I think thats it, above is what makes up in my mind a current account,  many of us will have other things from our banks like loans, mortgages, savings and credit cards but to me these are separate products from the current account.

In my head I’ve distilled this down to a few key points, An account is  a ‘thing’ which is identified by a number and allows transactions to flow in and out of it wither by push, pull or scheduled. Well that sounds a bit like telecoms, where you have a ‘thing’ identified by a phone number that allows calls and texts to be made to or from it? So if we think about  what twilio is for telecoms what is this new platform for a current account;

Account Numbers; I need at least one of these, its the primary key. But why should I have only one that has to route everything through it? Why can’t I have multiple ‘alias’ account numbers that I can create or destroy as I need?

Balance –   I’ll need an overall balance for the amount of ‘money’ in this account, but maybe each of my alias numbers above also have a virtual balance, and this virtual balance can be positive or negative, its not real money I can shuffle around these as needed, perhaps I like to have a spending account which I reset to zero at the end of each month. So long as my master balance is positive then it doesn’t matter.

Overdraft – Useful feature, and only really applies to my master balance as thats really my money, not everyone will have or want it but its an option.

Direct Debits – Can be setup from any one of my account numbers and work exactly the same way, however I can also attach a ‘trigger’ to the DD to notify a web service when a payment is requested/made.

Direct Deposit – Again money can be paid to an account number and I can fire a trigger to an application when money is paid in.

Standing Orders  – I can setup/modify/cancel a standing order via an API and that S/O can have triggers to notify applications when it is made.

Faster Payments – Like an S/O I can initiate one of these with an API call and applications can be notified.

Debit Card – I have one (or more) physical cards linked to the account and payments made with the card can notify an application, same for ATM withdrawals. I can also generate new ‘number only’ cards which don’t have a physical card for use online, I can choose the expiry date of these numbers and cards from 1month to 5 years.

Cheques – I can generate a cheque to pay someone via the API, this is returned as a PDF which I can then print or send to them electronically. Whenever a cheque is generated or cashed I can configure applications to be notified.

Counter Service – My ‘bank’ has an agreement with another High St bank or maybe the Post Office so that I can  transact cash or cheques in the real world, these events also result in a notification to my applications.

So thats about it, not really very different from a standard account, all the same features are there, the major difference being that the the transactions you would normally only do via the banks internet banking website are available via an API and when actions hit your account such as debits or credits you can configure a 3rd party service to be notified. This in turn would allow services to be built that can link these. For example I might have an app that says ‘When my expenses get paid in initiate a faster payment to my credit card then send me an email.’ Or I might want to create a separate visa card number to use for iTunes which sends me a push notification whenever a transaction is made. The idea is that these are building blocks we can integrate into the applications and services of our daily lives, I don’t know all the ways that people would want to use and manage their accounts and I’m sure that their bank doesn’t either.

Its worth talking for a moment about security as well, I expect most traditional banking people are screaming at this idea right now as being far too dangerous and who would ever grant a 3rd party access to your account, yet this is exactly how direct debits work, and with a realtime notification system as well as the ability to revoke actions the risk should be greatly reduced. In terms of granting applications permission I envisage some sort of oAuth type of process with permissions and limits, so when setting up the expense example above I might grant AcmeExpenseManager permission to receive notifications when a payment is made from “Company X’ and permission to initiate a payment to ‘Credit Card Company Y’ with a monthly transaction limit of say £500, this would be like giving a Facebook app permission to post to your wall, you’d still see a permissions screen from your bank, be asked to enter a password (with 2 factor auth) to agree to it and have the ability to cancel/revoke the permission from the banks site  at any time.

Notifications would be similarly configured so that an application would ask for permission to be notified of transactions meeting a certain set of criteria, e.g. whenever a Direct Debit is taken from my account of between £10 and £100 pounds, notifications would contain the full details of the transaction e.g. account number, reference,  sender/recipient, date/time, amount and optionally balance of the account. You could configure multiple notifications for the same type of transaction.

Whats the business model here? well for the bank its pretty much the same as any regular current account, except the ‘added value’ is in terms of the plan your on rather than gimmicky free gifts. Lets say the basic account gives me 1 physical card, 5 virtual cards and 3 account numbers,  I can configure 20 different application notifications and all of this is free, the rest of the usual type of add-ons apply If I use the card internationally I pa a couple of percent commission, if I choose to have and use an overdraft I pay a monthly fee, the interest on my credit balance is pretty poor and if I’m overdrawn again I pay a higher rate of interest on that balance, the bank makes money in exactly the same way. Or I can choose to upgrade to a higher plan called  Silver/Gold/Platinum etc. these will add the ability to have more physical & virtual cards, more account numbers and more notifications maybe I also get a better deal on international transactions and a fee free overdraft, for these tiers I pay a monthly fee of between £5 and £20 just like todays’ High Street accounts.

This isn’t about radically changing the core of banking its about exposing that core service to the digital world, I’m happy to pay for the service and I don’t really have a problem with the way bank accounts work, what sucks is the front ends I have to access them, I want to link my account to the rest of my life, using services like IFTTT, Expensify, Google Docs and even FourSquare!,  with push notifications and all in as near to realtime as the systems will allow.

So tell me this can’t be done? Fine I know this is a grand design, but if there is something thats stopping it, then lets fix that clear the barriers and at least try, don’t just sit there and say NO. I’m sure this will need some established mainstream bank that has access to the back end network to at least sponsor it if not implement it, and I don’t expect they’d launch this on their main brand, but there must be the MVNO equivalent for banking?

I’m not ‘announcing’ this, nor is it something I’m even building its just an idea in my head, and I’m sharing it with the world because I’d much rather someone else made it happen than it just sat locked up in my head, but if you’re reading this and think you’ve got whats needed to do it then get in touch and lets talk,  I’d love to work on it but I can’t do it on my own.

 

 

 

 

A ‘real’ utility

Yesterday evening I noticed some problems with our mains supply at home, the lights were dimming for a short period of time maybe 2-3 minutes.  This wasn’t a huge issue as the computers etc were all staying up and we do occasioannly get short dips in the power in our village, usually enough just to cause a reboot!
By about 2230 this was still going on I decided to call our supply company Western Power Distribution more than anything to see if there was work in the area that might be causing this, having navigated a simple enough menu (and been asked to enter a landline number to locate us!) The call was answered pretty much instantly, I explained the issue and the very helpful chap then went through a couple of questions, how long has it been happening are any of your neighbours affected etc.
Then finally he said ‘OK well we can get an engineer out to you in the next couple of hours!’ I was amazed, this was nearly 11pm They were fully prepared to get a guy out of bed to come and look at my fault which as far as they could tell was affecting one customer and wasn’t even a total loss of service! I politely declined their offer saying that we were going to bed soon and would see how things were in the morning.

This then got me thinking what if a similar situation had applied to my broadband connection? We talk a lot about telecoms being just another utility these days and I’ve been quite vocal that the future of most network operators is more like Western Power than it is Google.
But how long would BT have taken to get someone out for a similar fault? Remember this wasn’t even a total failure just an occasional degraded service, I guess akin to packet loss? And we know from experience that BT don’t even consider that a fault!  WPD didn’t try and automatically shift the blame to my equipment, nobody told me to try turning the lights off and on again I never even had to go and look at the fuse box or meter!
Now my ISP are pretty awesome and they pride themselves on getting faults fixed as quickly as possible, hammering away at BT is almost a sport for them, but I defy even Andrews and Arnold to get a BT engineer to come out at 1 in the morning because my internet connection isn’t quite working 100% 🙂

Some of you may argue that broadband isn’t as essential as power, and that might be true for now but the distinction is closing rapidly, in this always connected world loss of internet is soon going to have a fairly significant impact on day to day life. I also started to think about the price, I’m probably not that far off paying as much for my connectivity as I am for my power, my home phone bill is around £40 a month all in,  we pay about £50-60 for electricity but clearly receive a far better level of customer service.
It just goes to show that telcos have a long way to go to get up to speed with the real utility providers.  Today we have the situation where mobile operators think it acceptable to quote 5 days plus to fix a faulty cell that might be affecting 1000’s of people!

By the way if you do want the best level of service you can get on an internet connection while still paying ‘consumer’ prices I highly  recommend Andrews and Arnold, I’ve not had cause to raise a BT issue with them but seeing first hand on IRC the lengths they go to to get BT to fix things I’m pretty comfortable they’ll be there if I need them!

Three InTouch

I’ve been lucky enough over the past few weeks to trial Three’s InTouch app, which allows you to make and receive calls and SMS on your phone over WiFi, ideal for times when you don’t have coverage.
I was particularly interested in trying this out as when I used to work at O2 I was part of the small team that created this concept in O2 Connect, which went on to launch as Tu Go, so having spent many hours thinking about the various ideas in the product I was keen to see what Three have done.

The basic concept isn’t really that hard to understand, its an app that works like your normal voice & sms apps but uses WiFi, however there’s a fair few behind the scenes things to work out and some of the assumptions of telephony suddenly change when you have multiple apps.
In general the Three product is very good, I think its a white lable partnership with Mavenir Systems but thats pretty typical for a telco, they’re far more a buy then build type of outfit.

I’ve been testing the app on my Nexus 5, I had a little trouble at first as the app won’t run if your device is rooted which is highly annoying but to be expected from a telco, I’m reliably informed that rootcloak will get around this.

Registration is done via the mobile data network, this does mean you need some signal the first time you use it but thats pretty hard to avoid as there is really no other way to verify your number for most carriers, the benefit of this method is that there is no username or password to remember thats all internal to the app, however the big drawback here is that it means the app only works on a single device, and thats the one that has your SIM in it. With O2 Connect (and TuGo) one of the key features for us was that you should be able to use your mobile service on any device, e.g. your iPad. And I’d really like to see Three add support for this in a future update.

On the Android version the app does a nice job of pulling in your call history and SMS from your existing apps so all your messages are in the single place, however if you then send a message from the app it isn’t synced back into messages. This is a really hard problem to solve for a lot of devices as in general apps can’t write to the message app, esp. on iOS. In the carriers ideal world you would just use their app for all your SMS and then its in one place, however fragmentation is bound to occur in the real world.

Similarly the voice service has the same issues with the call history, one feature I found that I’m really missing from my native Android dialer when using the Three app is the CallerID by Google where most company names are auto added even if they aren’t in my phonebook, still this is kinda an edge case and just something to live with, I don’t think Google provide an API to their callerID lookup anyway.

The other drawback is that the app doesn’t alert my pebble with incoming calls and SMS the way that the native apps do, again kind of an edge case and hard to say who should fix it but it all adds up to just making the app not quite feel like a first class phone service.

There is one feature that Three have added which I am seriously impressed with though, the ability to select which WiFi Networks will be used for In Touch, this is seriously neat as it means that I can just enable the places that have no three service but when I’m somewhere that has good network signal I can still use WiFi for data, this single feature alone overcomes a lot of the limitations above as it means I can truly use it as a backup for calls and texts rather than having it take over.

I’ve also had a brief play with the app on my iPhone, in general it seems to work very nicely and has mostly the same setup, there’s no pulling of SMS and Call History from the native apps but this is a limitation of iOS so I’ll let that slide, they even managed to keep the ‘allowed hotspot’ feature, which I didn’t realise was possible with iOS but thanks to Adam Cohen Rose for pointing out how it can be done, and Simon Maddox for the test implementation

All in all I’d say its about 4/5 have to deduct one point for the lack of multi-device support but what is there works really well. I’d recommend installing and setting it up now so next time you find yourself without signal somewhere you’re ready!

Links are Play Store and App Store

New site Old Blog posts

I finally decided I needed to overhaul my ‘site’ I had a very ageing wordpress blog that hadn’t seen much of an update in several years and really just needed taking out an shooting. In addition I wanted to get things onto some slightly more stable hosting than my own server that used for hacks and demos and something that has some backup. So what you’re seeing here is a brand spanking new fresh install of wordpress with some nice themes, new layout and all the bells & whistles.

However I had to decide what to do with some of the old content, mainly the blog posts, I’m not the world greatest blogger and thats part of the reason that the blog is now relegated to a sub-section of the new site instead of being the main attraction, hopefully it won’t be quite so noticeable that I haven’t updated it in months! I’m preferring to write up some of my projects as pages and keep the blog for the occasional time that I have some thoughts one something that I want to publish.
The old posts weren’t great and there aren’t a lot of them maybe 10 going back nearly 7 years! but they should live on somewhere, so I decided to import them into this site and tuck them away. Its a part of my history and it certainly shows what my thoughts were on a few things back then. Its been interesting to re-visit those posts now with the benefit of hindsight and see how accurate I was.

Looking back at some of the posts:

2008 Predictions in Mobile

Most of this now seems pretty obvious but remember that January 2008 was an age ago in mobile terms, the first iPhone had only been available in the US for 6 months and the concept of the app store was still a good 6 months away! 1) Yep I was pretty much bang on about Location, these days having GPS and other location tech in your smart phone and apps using it is 2nd nature to us. 2) Handset vendors gain strength, OK so I was talking about Nokia a lot and things didn’t exactly work out great for them, but who are the dominant forces in mobile today? Apple & Google/Android, we seem to have finally seen the back of carrier crapware! Orange Homescreen anyone? 3) Well the operators are still hanging in there but their relevance is still on the decline, again this post predated the app craze let alone the OTT services that that enabled, WhatsApp was a few years off. 4) Well we’ve seen a few MVNO’s come and go, several more data centric providers out there, however I think the operator that really nailed the mobile internet has to be Three, I didn’t see that coming but full credit to them they’ve built some damn fine bit-pipes, also we’ve seen a few OTT services making use of the number for identity, although thats mostly been driven by the likes of Twilio with easy to use API’s.

Mobile Broadband signals the Death of WiFi Hotspots

Hmm hard to say on this one, personally the only commercial WiFi hotspots I use are the ones on the Tube and thats down to a lack of mobile access, tethering and MiFi’s seem to have become a pretty fixture for people on the go, I’ll use free wifi at a venue but I’d certainly use my phone over paying for hotspots.

T-Mobile G1 vs. iPhone – Round One to iPhone

Well it certainly took android a few more iterations to become as mainstream friendly as the iPhone I think, I’d say that the HTC Desire and Android 2.1 was probably the first device to go properly mass market?

T-Mobile UK Capped Data Charge – Hidden Rip Off

Well mobile data charging does seem to have at least become far more reasonable and generally built into most plans, I still think we’ve got apple to thank for a large part of that when they lauched the iPhone and mandated that you have an ‘unlimited’ plan that was the real tipping point. Oh an these days my wife uses data on her iPhone far more that voice or text!

That syncing feeling

Well things generally work a bit better although i think much of this is down to the intgration of the mobile OS’s with their own cloud offerings such as iCloud. I still hear of people having sync disasters and ending up with duplicates or lost contacts, which reminds me I really need to clean up my phonebook!

Android, Buyer Currency Support C-

Well I’m please to say Google finally sorted this out, I can’t remember exactly when it was fixed but the Play Store as its now called now has all sorts of funding options from credit cards to PayPal and even carrier billing in some places!

Electronic Payments & Graceful Degradation

Well its only 2 years old this post but I still don’t think I’ve seen anyone paying with their phone in mainstream use, incidentally a friend was asked to use the carbon copy machine for his card payment in a restaurant the other week as well so thats still valid!

 

Well that was an interesting look back, and I’m promising myself that I’ll write down more of my thoughts in the future.

 

Electronic Payments & Graceful Degradation

Theres a lot of hype around NFC & mobile payments going around, analyst are predicting it as the next big thing and rumour mills are churning out stories about the iPhone 5 having NFC faster than a Foxconn plant on double time.

I’m still quite skeptical about using my phone for payment, is carrying a card such a hassle? in fact one of my phone cases even has a card slot in the front to hold a card. Anyway regardless of do we need it I had an interesting thought the other day, Now I like my gadgets, I went through a lot of hassle to get LloydsTSB to give me a contactless debit card because I wanted to play with it, I’ve even got google wallet running on my Nexus S so I can say I’ve used both of these in the wild.

I quite like my contactless debit card, aside from being able to confuse shop assistants it actually has one feature I really like, most of the payment machines don’t insist on giving a me a stupid little slip of paper when I use it, so whenever possible I use the card that way.

Now last week I was at Paddington station heading home and had missed lunch so I popped into McDonalds for a quick ‘snack’ one of the great things about McDonalds was I can use my contactless card, and their workflow is setup such that it does actually make it faster than Chip & Pin or Cash, no wasted time spending 2 mins telling the assistant I was to pay by contactless so she’ll need to type in the amount before i enter the card.

Anyway I ordered my food and then went to touch the card, “Oh thats not working you’ll need to use the chip” said the girl behind the till, no problem these things happen stuff breaks and I just reverted to the old fashioned way of paying.

That got me thinking, what if I had been using my phone? My Contactless card actually has 4 ways I can use it to pay, there’s the new fangled NFC, there’s Chip & Pin, Its got a magnetic stripe on the back that can be swiped then I sign, and its even still got the number embossed so should the store still have one of those old carbon zipzap devices they can dust that off and use that. The technology degrades gracefully, in the event of a failure it can fall back to another method, yes it might take longer, be less convenient and probably be less secure but thats a trade off and as a backup system it works great for everybody, I can still pay with my card and the retailer doesn’t lose a sale because some of their technology is broken.

What about the phone, well its contactless or nothing. So if I can’t use that then I’m stuffed, in fact I can’t even use it in a cash machine to get good old fashioned paper money out, so would I reply on my phone as my only form of payment? Of course not! I’ll still need to carry a card or two, and If I’m doing that then why not just use the card all the time, its a lot quicker to downgrade the tech when there’s a problem