Glitches in the matrix and Viber

I ran into an interesting problem with the messaging service Viber yesterday – I had a brand new computer which developed a fault rather quickly and which, prior to my returning it to the vendor, could not be made to operate in such a way as I could get at the data I had stored on it.

In theory, there was not much such data – I had not finished installing software on the machine, and nor had I started uploading backups from the previous machine to it. However, I had installed Viber and I had opened one conversation with a friend online. Six hours after I bought the machine, the operating system would not load and so it went back to the vendor.

I cannot fault the vendor in this case between their phone customer support and the behaviour of the staff at the branch where I did buy the machine. I was concerned though that the fault might be fixed at some point in their workshop and whether there was any risk that Viber would attempt to sync any subsequent discussions as I had been unable to de-install it before I handed the machine back. What was on the machine itself was low risk. I just wanted to ensure that Viber would not be able to subsequently sync with any subsequent conversations.

When you go looking for information on this front, the general assumption is that people have lost access to Viber on their phones and not necessarily to their desktops.

In theory, the two obvious solutions for the operating system loading error would have been replacement hard drive or reinstalling the operating system. I obviously could not do the the first, and the latter had been kiboshed by the fact that I had not even got as far as making a recovery disk. When I looked into it in detail, there is a theoretical fix involving rebuilding the BCD in the kernel. I found a single document which was detailed on the process but it did not, for example, outline what happened to any other data on the machine. As such, it did not leave me much peace of mind.

Viber is a handy messaging platform which you can use from both phone and desktop. Its user documentation is of mixed quality and, again assumes the reason you might want to nuke your Viber service is that you no longer have access to your phone. If you’re looking to deal with a desktop which has your account on it, it is actually possible.

When you set up Viber on your phone, you’re effectively setting up an instance of an account and any desktop installations of Viber are tied to that. You can, from the desktop installation, deactivate that particular desktop installation via settings. If you do not have access to the desktop installation, you MUST deactivate Viber on your phone and this will deactivate all Viber installations linked with that instance of an account, ie, Viber on your phone, viber on any desktops or tablets associated with Viber linked to your phone number.

You cannot pick them off remotely and individually. It’s all or nothing.

What happens then is that if someone tries to access Viber on any of the desktop installations linked with the account is a dialogue over whatever was most previously opened in Viber at the time of the previous synch, a dialogue box opens to tell you that the account is no longer active. They will have to respond to that dialogue box and in my experience, that kills the Viber data behind. There is a window of risk that someone might see something in your messaging software that you would not want, but at least there is an option for destroying the connection between your phone number and that desktop instance remotely, even if it’s the equivalent of a nuclear option.

The downside is that you lose all your messaging data unless you back the messages up before which you must do on your phone.

In short, assuming you’ve lost a non-phone device with Viber data on it, here’s how you kill things:

  1. Back up your viber messages on your phone if you want to keep them. If you don’t, you don’t have to do this.
  2. Go to the privacy setting and select Deactivate. You’ll probably have to scroll to the bottom to find it. This will kill your viber service on your phone and any associated non-phone installations (desktops for the most part).
  3. Set up viber on your phone again. I did not actually have to de-install, reinstall Viber on the phone to do this – it sent me a new 6 digit code and I was up and running.
  4. Set up viber on your desktop again by obtaining a new code. I did not have to reinstall Viber to do this.

I had to deactivate the machine remotely for some subscription software – MS Office and Adobe Creative Suite – and I could do this. I think it would be useful if, somehow, it was possible to review how many machines were receiving push notifications from Viber so that you could deactivate them at will rather than having to nuke everything and start from scratch.


One of those simmering arguments in the background has been blowing up spectacularly lately. The advertising industry, and to a lesser extent, the media industry, is up in arms about ad-blocking software. They do not like it and to some extent, you can probably understand this. It does not, exactly, support their industry.

There are two approaches which I think need to be considered. The advertising industry and the media industry, instead of bleating about how stuff has to be paid for, need to consider how they have contributed to this mess. On mobile, in particular, advertising is utterly destroying the user experience. When I wind up with content that I want to read because I can’t access because there is a roll over ad blocking it, for which I cannot find a close button, then the net impact is not that I feel a warm fuzzy feeling about the advertiser and the media site in question. The net impact is that I spend less and less time on the media site in question.

So, instead of screaming about how stuff has to paid for with advertising, maybe the media companies need to recognise how advertising is wrecking their user experience and how, ultimately, that is going to cut their user numbers. The fewer eyes they have, the less their advertising is going to be worth. I have sympathy for their need to pay their bills but at some point, they need some nuance in understanding how the product they are using to pay their bills now will likely result in them being unable to pay their bills at some point in the future.

As for the advertising industry, I have less sympathy. They appear to think they have a god given right to serve me content which I never asked for, don’t really want and which might cost me money to get particularly on mobile data. Often, the ads don’t load properly and block the background media page from loading. They have made their product so completely awful as a user experience that people are working harder than ever before to avoid it. Instead of screaming about how adblockers are killing their business, it would be more in their line to recognise that they have killed their business by making it a user experience which is so awful, their audience are making every effort to avoid it.

The ability to advertise is a privilege, not a right. It would help if advertisers worked towards maximising user engagement on a voluntary basis because by forcing content in the way which is increasingly the normal – full screen blocking ads – on users they are damaging the brands and the underlying media channels. Maybe advertisers don’t care. Maybe they assume that even if every newspaper in the world closes down, they will still find some sort of a channel to push ads on.

Adblocking software should be reminding them that actually, they probably won’t.


GIT and open source, the victory or not

During the week, Wired published a piece under the title Github’s Top Coding Languages Show Open Source Has Won.

This is basically – and I am being diplomatic here – not what Github’s Top Coding Languages shows.

Fundamentally, for Github to show this, every piece of operational code would have to be on Github. It isn’t. I’d be willing to bet less than half of it is, and probably less than a quarter, but that’s a finger in the air guess. Most companies don’t have their code on Github.

What Github’s top ten coding language shows is that these are the ten most popular languages posted by people who use Github. Nothing more and nothing less.

I suspect Github know this. I really wonder why Wired does not.


Falling out of love with Amazon

I remember a time when I used to love Amazon. It was back around the time when there was a lot less stuff on the web and it was an amazing database of books. Books, Books, Books.

I can’t remember when it ended. I find the relationship with Amazon has deteriorated into one of convenience more than anything; I need it to get books, but it’s doing an awful job of selling me books at the moment too. Its promises have changed, my expectations have risen and fallen accordingly. Serendipity is failing. I don’t know if it is me, or if it is Amazon.

But something has gone wrong and I don’t know if Amazon is going to be able to fix it.

There are a couple of problems for me, which I suspect are linked to the quality of the data in Amazon’s databases. I can’t be sure of course – it could be linked to the decision making gates in its software. What I do know is it is something I really can’t fix.

Amazon’s search is awful. Beyond awful. Atrocious. A disaster. It’s not unique in that respect (I’ve already noted the shocking localisation failings for Google if you Are English Speaking But You Live In Ireland And Not The United States When Looking For Online Shops) but in terms of returning books which are relevant to the search you put in, it is increasingly a total failure. The more specific your search terms as well, the more likely to are to get what can only be described as a totally random best guess. So, for example, if I look for books regarding Early Irish History, then search returning books on Tudor England are so far removed from what I want that it’s laughable. On 1 May 2015 (ie, day of writing) fewer than a quarter of the first 32 search results refer to Ireland, and only 1 of them is even remotely appropriate.

Even if you are fortunate enough to give them an author, they regularly return searches of books not by that author.

I find this frustrating at the best of times because it wastes my time.

Browsing is frustrating. The match between the categories and the books in those categories can be random. The science category is full of new age nonsense and it often is very much best selling so the best sellers page becomes utterly useless. School books also completely litter the categories, particularly in science. I have no way of telling Amazon that I live in Ireland and have no real interest in UK school books, or, in fact, any school books when I am browsing geography.

Mainly I shouldn’t have to anyway. They KNOW I live in Ireland. They care very much about me living in Ireland when it comes to telling me they can deliver stuff. They just keep trying to sell me stuff that really, someone in Ireland probably isn’t going to want. Or possibly can’t buy (cf the whinge about Prime Streaming video to come in a few paragraphs). Amazon is not leveraging the information it has on me effectively AT ALL.

The long tail isn’t going to work if I can’t find things accidentally because I give up having scrolled through too many Key Stage Three books.

Foreign Languages: Amazon makes no distinction between text books and, for want of a better word, non-text books in its Books in Foreign Languages section. So again, once you’ve successfully drilled down to – for example – German – you are greeted with primarily Learn German books and Dictionaries, probably because of the algorithm which prioritises best sellers.

How can I fix this?

Basically, Amazon won’t allow me to fix things or customise things such that I’m likely to find stuff that interests me more. I don’t know whether they are trying to deal with these problems in the background – it’s hard to say because well, they don’t tend to tell you.


  1. It would be nice to be able to reconfigure Treasa’s Amazon. Currently, its flagship item is Amazon Prime Streaming Video, which is not available in Ireland.Amazon knows I am in Ireland. It generally advises me how soon it can deliver stuff to Ireland if I’m even remotely tempted to buy some hardcopy actual book. Ideally they wouldn’t serve their promotions for Amazon Prime Streaming Video, but if they have to inflict ads for stuff they can’t sell me, the least they could do is let me re-order the containers in which each piece of information appears. So I could prioritise books and coffee which I do buy, over streaming video and music downloads which I either can’t or don’t buy from amazon usually.
  2. It would be nice to be able to set up favourite subject streams in books or music or dvds. I’d prefer to prioritise non-fiction over beach fiction, for example.
  3. I’d like to be able to do (2) for two other languages as well. One of the most frustrating things with the technology sector is the assumption of monolinguality. I’d LIKE to be able to buy more books in German, in fact I’m actively TRYING to read more German for various reasons, and likewise for French.
  4. I don’t have the time to Fix This Recommendation. They take 2 clicks and feature a pop up. As user interaction, it sucks. I’d provide more information for fixing the recommendations if I could click some sort of Reject from the main page and have them magically vanish. Other sites manage this.

But there are core problems with Amazon’s underlying data I think. Search is so awful and so prone to bringing back wrong results, it can only be because metadata for the books in question is wrong or incomplete. If they are using text analysis to classify books based on title and description, it’s not working. Not only that, their bucket classification is probably too broadbased. Their history section includes a metric tonne of historical fiction, ie, books which belong in fiction and not in history. If humans are categorising Amazon’s books, they are making a mess of it. If machine learning algorithsm are, they are making a mess of it.

There is an odd quirk in the sales based recommender which means that I can buy 50 books on computer programming but as soon as I buy one oh book of prayers as a gift for a relative, my recommender becomes highly religious focused and prayer books outplay programming books. Seriously: 1 prayer book to 50 programming books means you could probably temper the prayer books. Maybe if I bought 2 or 3 prayer books you could stop assuming it was an anomaly. This use of anomalous purchases to pollute the recommendations is infuriating and could be avoided by Amazon not overly weighting rare purchases.

I’m glad Amazon exists. But the service it has provided, particularly in terms of book buying, is nowhere near as useful as it used to be. Finding stuff I know I want is hard. Finding stuff I didn’t know I wanted but now I HAVE to have is downright impossible.

And this is a real pity because if the whole finding stuff I wanted to buy was easier on the book front, I’d be happy to spend money on it. After all, the delivery mechanisms, by way of Kindle etc have, have become far, far easier.

Uber, Github and You’ve got to be kidding me

In major goof, Uber stored sensive database key on public Github page.

via Ars Technica.

Disclosure: I have a Github account, on which I have stored very little. However, I do have a project going in the background to build a terminology database which will be mega simple (I like command lines) and which will have a MySQL database and an interactive Python script to get at the contents of the MySQL database. However, one thing which has exercised my mind is a reminder to myself that when I promote all this to Github (as I might in case anyone else wants a simple terminology database) to ensure that I remove my own database keys.

But this is not a corporate product, or any sort of corporate code. Nobody’s personal data will be impacted if I forget (which I won’t).

In the meantime, Uber, which is probably the highest profile start up, which has money being flung at it right left and centre by venture capitalists, managed to put a database key up on Github.

I don’t understand this. Why is Uber database related information anywhere near Github anyway? If they are planning to sell this as a product, why would you put anything related to it on an open repository?

I like the idea of an online repository for my own stuff. I don’t actually love Github but it’s easy enough to work with and, a bit like Facebook, everyone uses it. But that doesn’t mean any corporate site should allow access to unless they are open sourcing some code and even then, any such code really should be checked to ensure it doesn’t present any risk to the corporate security of the company.

Database keys in an open repo: there really is no excuse for this regardless of whether you’re a corporate or an individual.


More women in tech

Over the past few days or so, much has been written about the question of egg freezing for women so as not to interrupt their careers. Extensive media reports suggest that Apple and Facebook are offering this to women so that they don’t take a career hit.

There are a lot of ways you can look at it but the first thing that occurs to me is this: this isn’t the most effective way to sort out inequality for the simple reason that it does not sort out the inequality suffered by fathers too much.

Ultimately, when you’re designing a solution for a problem and the question here is, what problem is solved by freezing eggs so that women have (or at least try to have) children much later? Well women take a career hit.

The question is why do mothers take a career hit when fathers do not? The problem to be solved isn’t “get women to try for babies later” but “get parents to have equal rights and and responsibilities”.

The way to do this, however, is not solely to challenge women’s positions in the workplace by keeping them there longer, but to challenge men’s positions in the workplace by keeping them there less time.

Children benefit by this; they benefit by greater contact with both parents, and parents, to be honest, are better equipped to have children at a younger age (ie, when they have more energy) than when they are forty and “established” in their careers for want of a better word.

Ultimately, I think it is good that egg freezing is supported if that is what an individual woman wants; but it should not become a method by which their employers decide when they have children, and when they should wait.

There is no real similarity in terms of paying for contraceptives and paying for egg freezing; contraceptives are not just indicated for preventing babies anyway, and a lot depends on the objective of egg freezing – is it to benefit the woman, or is it to benefit the company paying for it?

Ultimately, the issue I have here is it is not solving the problem; just a symptom of it, and that is the one whereby female parents are discriminated against in the workplace when male parents are not, not to the same extent anyway.

Numbers have power

This morning, the front page of the Irish Examiner, which you can see here on Broadsheet (third one down) caught my attention for this headline:

46% back death penalty for child rape

The subheading is “Farmers take hardline on law and order”

The very first line of the the piece underneath is as follows:

The death penalty should be introduced for the crime of raping a child, according to a national opinion poll.

There are several problems with this in my view. I like the Examiner a lot, and the journalist under whose byline this appears, Conall O Fatharta has done quite a lot of interesting reporting in the last few months. But when you’re claiming that a national poll says that the death penalty should be introduced for the crime of raping a child (or, in fact, any crime), then two things are necessary:

  1. the proportion of people (nationally) who support that assertion should be greater than 50% (it’s not in this case, because already, the headline makes it clear that a majority do not); and
  2. the poll should be on the basis of a reasonable sample of the population at large. If you read the piece more closely, however, the poll was limited to farmers.

As such, the headline which the Examiner plonked on top of the story lacks some important detail, and given its position on the front page, that is deeply regrettable.

What do we know about the poll?

The poll was carried out on behalf of (or by) the Irish Examiner and the Irish Creamery Milk Suppliers Association. We do not know (from this report at least) how many farmers were surveyed, and this is important because the journalist has broken down the figures geographically.

Why does this matter?

It matters on several levels, but chief amongst them is that we cannot be certain that a subset of farmers of the ICMSA is representative of the nation as a whole, or, in fact, possibly not even of farmers in general. For example, a simple question we could ask is was it done on the basis of ICMSA membership and in that case, given the that the ICMSA respresents predominantly dairy farmers, is it safe to say the output from a survey of dairy farmers applies to all other farmers.

An additional factor is that the CSO carries out a census of agriculture from time to time and there are a couple of pieces of information which are worth noting. The most recent report which I can find on the CSO’s website is for 2010, so, four years old. The press release is here, on the CSO’s website and it summarises the findings nicely. The full report is here.

There are a couple of key pieces of information in the summary which matter here:

  • More than half of all farm holders were aged 55 years or more. The number of farmers aged under 35 fell by 53% since 2000
  • One in eight (12.4%) farms is owned by a female.

Additionally, it is possible that the vast majority of farmers are rural dwellers but a greater proportion of the population are now urban dwellers. I have not found straight figures for that.

These figures are not representative of the population as a whole. If you look at the CSO census figures, only a third of the population of the country is over the age of 45 which means the proportion of the population which is over the age of 55 is less again.

Additionally, in 2011, at the time of the last census, more than 50% of the population were female. You can find the CSO’s population statistics by age from 2011 here.

Both the headline and the first line of the story give the impression initially that the results are nationally representative but as the survey was of farmers, the participants are age and sex skewed away from the shape of the population as a whole.

So, the subheading mentioned farmers; what actually is the problem here?

Three things: we get our news from various sources which means that pieces of information might get cut, such as on a twitter feed which may not necessarily highlight that this is a Farming Spotlight piece. Not everyone might click through beyond the headline. This is particularly important as links get passed around. This by the way was the Examiner’s own tweet of its front page and inline, you will only see the top half.

Secondly, for me, a story which effectively boils down to “a sample of the population skewed by age, gender and urban/rural divide have this opinion which may or may not be representative of the population as a whole” really doesn’t belong as the top front headline on a national newspaper. In short, while it is, in passing, interesting, it isn’t really a major story.

Thirdly: the Irish Examiner has not provided any useful information (that I can find) in terms of the number of respondents, how the survey was carried out and what the estimated margin of error was. If you check any political poll reporting, the number of people surveyed along with the margin of error is always provided, along with an indication of when the poll was carried out. This is news at the moment, possibly because of the National Ploughing Championships but again, the statistical basis for the survey is missing.


Storytelling at the cost of accuracy

It is entirely possible that this story has passed you by, but the French train operating company SNCF has ordered a number of new trains. Reports will tell you that they’ve ordered 2000 new trains but that is not, strictly speaking correct; they have ordered a little over 400. The order is in the news not because every person in Europe is a trainspotter and madly excited by NEW TRAINS ZOMG, but because the trains are marginally too wide for a number of regional train stations in France, the sort of stations, in fact, that they will be serving.

So far, so funny, at least it’s not us, cue discussions online about dataquality. However, most of the people I see discussing this only speak English, none of them seem to have read any source material in French. So here’s the issue. While it is true, in fact, that some of the new trains are marginally too wide for some of the stations, the SNCF and their colleagues in the RFF who specified the requirements for the new trains, actually have known about this for a few years. The trains were specified to be used in stations which are in compliance with new-ish (in this internet world, anything older than 5 seconds probably isn’t very new any more) international standards. So in tandem with ordering trains, there is also a program of work, currently budgeted at 50 million and in planning since 2011 (that’s 3 years ago) to bring the stations up to international standards, a program of work which has to be done anyway.

If you were to read the stories as they appeared initially, they would seem to imply that the trains are arriving and now the French are discovering that they are too wide. Some of the French reports suggest that the trains are 20cm wider than their predecessors (the BBC helpfully reports them as too fat), but the truth is, it’s not that actually true that this has been sprung on the SNCF as a total complete shock, oh dear moment.

According to Les Echos, which is a French business paper, 1300 of the 8700 railway stations in France have platforms which do not accommodate the new trains (this is also mentioned in the RFF press release linked below). 300 of those 1300 stations have already been fixed and six hundred more will be done by the end of the year. The trains in question are gradually coming into service by the end of 2016 by the way. The work is currently being paid for by money from the RFF’s 4 billion euro infrastructure budget.

So the question is, why is this news now? And why is it staying news? The answer, as can often be the case, is politics. The RFF is reportedly – and they have not confirmed this – considering looking for funding support from the regions for the purposes of bringing the train stations up to international standards.

« Nous refusons de verser un seul centime sur cette réparation. On ne va pas, quand même, être à la fois pigeon et financeurs. Les régions ne sont pas des pigeons », a déclaré hier dans la cour de l’Elysée, Alain Rousset président de la région Aquitaine et de l’ARF avant un rendez-vous avec François Hollande.

So the regions don’t want to pay for the platform works.

The trains, however, are paid for by the regions and they’d like not to have to have the SNCF and the RFF involved either – they’d like full control over the TERs thank you very much.

However, the other issue which is keeping this in the news is the separation of the RFF and the SNCF 17 years ago.

The question of rail industry reform is on the table in France at the moment, so it is, if you want to change your relationship with the rail operating and the rail infrastructure companies, not a bad time to be discussing what can go wrong and looking for greater autonomy.

Le responsable  est à chercher du côté de « celles et ceux qui ont fait la commande, » a ajouté Alain Rousset. Ce navrant épisode procure enfin aux régions, qui financent les TER et voudraient acheter leur matériel roulant sans passer par la SNCF , une nouvelle occasion de revendiquer davantage d’indépendance vis-à-vis du tandem en charge des opérations ferroviaires. « C’est pour ça que nous on veut reprendre en main ces commandes. On paie 100% des TER, c’est à nous d’en assurer la commande, la propriété . Il faut que les régions s oient vraiment des autorités organisatrices, qu’elles aient la capacité de déterminer le tarif, les services, la maintenance», a poursuivi Alain Rousset.

(Both of Alain Rousset’s quotes are from the Les Echos piece linked above)

Basically, the regions, who finance the regional trains, want the SNCF out of the picture, they want independence in terms of the rail operations, they should be the organising authorities, should be able to set the fares, the service levels and the maintenance.

So what is the real story here? The French rail company ordered trains  which conformed to international platform standards, when 1300 of their railway stations did not actually conform to those standards. By the end of 2014, 900 of those stations will have been upgraded to cater for those trains. Those trains will progressively go into service by end of 2016 by which time you’d expect they could manage to have the remaining 400 stations sorted out.

The issues appear to be:

  • whether the budget set aside for this work is adequate and if not, should the regions perhaps contribute some money towards bringing the railway stations in their area up to international standard
  • whether communications between the SNCF and the RFF and the ARF (the umbrella group for the regions) are all that they could be
  • whether rail reform done 17 years ago was helpful or not
  • whether further rail reform is required.

The RFF suggests that they only started looking at this problem in 2011 although the trains were ordered in 2009 and that this maybe was a little late. I’m not sure, however, that that this is the biggest issue here – time wise, they are well on their way to having the stations sorted out; the French have done this kind of thing in the past to cater for the TGVs when they were brought in and, you would have thought, upgrading railway stations to modern standards, is the kind of thing that should be happening anyway.

I don’t see this as a data quality issue au fond. Ultimately the platforms have to be updated anyway. French bloggers writing on the subject see it as issues relating to communication issues between the ARF, the RFF and the SNCF which is probably part of it with added soupcon of rail industry reform past and present. More than anything, right now, we are talking about a story which isn’t quite true in all its ZOMG They Ordered Trains That Were TOO BIG glory, which is now being used as a political football.

It seems to be to somewhat unfair to approach things using what Terry Pratchett calls narritivium rather than actual reality.

For further information read:



Le Monde

RFF Press release

All those links are in French by the way