A notch above a monkey

Google Maps

I was recently reading an otherwise decent article on mobile design when I got triggered by its admiration of Google Maps interface. As it happens we recently came back from our trip to Sicily where Google Maps was for the first time our primary navigation tool. Results were mixed, but all in all it is a remarkably mediocre product for something that was launched more than a decade ago and its interface contributed a lot to overall impression.

My biggest problem with Google Maps is that you can get stuck in an endless loop if you are in an unknown environment. I don't actually know how navigation apps calculate routes, but from my observations and being aware of shortest path problem it looks like full optimisation is done only for "nearby" destinations and around edges of routes to more distant ones. If your destination is far enough then it will fall-back to using main roads for most of your journey and god help you if one of them has a recently closed section.

When we were leaving Agrigento late in the evening we kept being rerouted to the same stretch of closed road. We finally "saved" ourselves by selecting an intermediate destination that formed large enough triangle with our final destination that once reached it was unlikely we would be driven back to by then very familiar blockade.

Now, Google obviously can't learn in advance for all roads when they will be closed. But for a company that prides itself on its machine learning/AI chops it could well notice when all these phones it is tracking stop going through some major route. Especially if they fail to take it after they are repeatedly guided through it.

Years ago I bought what was then practically the cheapest Garmin and one of its features I liked a lot was that it showed how fast I was driving and what the current speed limit was. It wasn't perfect as limits change more often than maps and I can understand why a company like Google prefers not to show that, but I still found current velocity useful as it was far more reliable than car's speedometer. In EU indicated speed must be between 100-110% of real one plus an allowance of additional 4km/h at specified test speeds which means you might be going only 80km/h when gauge is telling you 92km/h. Velocity calculated from averaged GPS positions is simply more reliable.

I am not a fast driver and I would not care much about this indicator if I could rely more on arrival time estimates. I clearly am not the kind of driver Google expects. This is most obvious on highways where I would need to drive close to speed limit to meet them and I can't because there is no reliable way to know how fast we are going. On most of our trips there simply are not enough mountain ascents to compensate for those "lost" minutes.

Generally Google Maps assumes options would only unduly burden our feeble minds so it either hides or completely removes them. There are often no alternatives to routes and certainly not once one is selected. The only possible reason to use navigation, it seems, is to get to your destination as quickly as possible and prepare to suffer trying to persuade the app to take a less direct scenic road. When you get to your destination, it will consider its job done and without confirmation stop navigating even if you haven't actually spotted it yet or will need to park somewhere else.

Its limited flexibility and customisability can be infuriating. You don't like the voice used in navigation? Change system wide language settings. Is it too chatty? Turn off or put up. Would you like to go to a previously entered destination? Can't do if you don't also store this information on Google's servers.

When Google Maps was launched, it had a very vivid palette which was later watered down to more pleasingly looking pastels that are also harder to discern, especially in non-ideal conditions such as on a phone in a car on a very sunny day. Most of the time it is fine, but night colours are just obtuse. Who thought that grey, blue and black form a high enough contrast in context where I can reasonably afford only glances at a relatively small screen?

And speaking of night-time colour palette. Why does it switch on immediately after sunset? My phone is more than happy to adjust screen brightness based on brightness of its surrounding, so why does it not use that same sensor to decide when it is actually dark enough to switch colours? Of course you can't change colours either.

In a way it feels petty to spend so many words complaining about something which in its essence I still find remarkable. The fact that you can navigate your way around this planet using a small, relatively affordable gadget with often current traffic updates is astonishing.

But it is not singular and has not been even before Google Maps was launched. While it is adding new things it is failing many common, if not basic, requirements that were implemented by its less moneyed competitors years ago. Many of these limitations are clearly self-serving. For example there really is no good technical reason for not storing locally previously visited locations. Its offline mode is also limited both in maximum covered area size and (complete?) lack of navigation features. Feasibility of both has, again, been amply demonstrated years ago by others on much more constrained devices.

Constraints are also not financial as implementing and supporting these features on a couple of platforms pales in comparison with resources needed to continuously map and photograph this planet. They are not there because they would be expensive. They are missing because what Google wants is a paternalistic relationship where you regularly feed the beast with new data. And you do that by being tethered to their servers, storing on them even information that doesn't need to be there and responding positively to almost constant nagging to provide pictures of your current location.

Few products achieve perfection. Most have to settle on a compromise between what is currently feasible, desired by users and required by company. Judging them by some unattainable ideal would be absurd, but Google Maps, while doubtlessly useful, still comes up short.

2016 review

XKCD comic: 2017

Around this time last year I wrote that 2016 will be a seminal year and that I felt very optimistic. Turns out it was seminal, but for wrong reasons and I will think twice next time I feel optimistic. The most positive thing I can think of about 2016 is that it is not 2017. Its horrors were really just an overture for things to come.

Not that 2017 started better. My computer died right at the beginning and text editor wiped out most of the early version of this review which is one of the reasons why it is late.

You don't have much if you don't have health and in that regard previous year certainly could be better. I did not eat healthily enough which may have contributed to 3 colds in last months of the year and certainly did not contribute to a pool-side accident which left me with either slightly cracked rib or concussed vertebrae. Since I seem to be mostly fine now I suspect it was the former. On the plus side I did meditate regularly (still recommended) and did more than enough recreation. NHS recommendation is 150 minutes per week and we did almost twice that. This year I will be happy if yearly average comes to half an hour per day. I would also like to find a good book on calisthenics to become more flexible without needing gym. Yoga would do too, but I doubt I have enough time for it. I have also shed some of the excess weight I accumulated in last year, but still have few more kilos to go. Still, like for so many things, 2017 looks scarier. Operations await my family, but hopefully all will turn out fine.

The biggest personal change last year was freelancing again full time, which at times felt all consuming. It was a medium success. I am not in danger of being hungry, am working on things I find interesting and have learned a lot including that I don't like the "traditional" model of freelancing with many, relatively short engagements. Instead I prefer to work on longer lasting projects with at most two clients at a time which is what I am doing now. I am not sure if this could still be adequately described as freelancing or consulting, but it certainly does not feel like employment either. Finding correct label will probably wait until I have a need for one.

On the negative side I learned how I work best by failing some of my clients for which I still feel guilty and ashamed. Another problem is answering what do I do. For example I spend a lot of time last year improving my Python related skills, but effectively did not use them professionally and this year is shaping to be similar. There is a saying that you are in whatever business your customers think you are in. Clearly theirs and my perception were not aligned and it would be nice if this year I succeeded in answering at least who gets to be aligned.

Interestingly freelancing also changed my perception of time which I never felt I have an abundance of. I can't tell how much of a book I will read in an hour or how many useful lines of code will be produced, so wasting it just gives me some vague feeling of loss. However because money is fungible, charging for time makes such loses more comparable to some things I care about (and admittedly to neither of my examples). It probably is a form of greed even though me getting something is rarely what it ends up being compared to.

It can also be a trap which somewhat paradoxically becomes worse if you raise your rate. I have colleagues who have difficulty taking time off because they now know almost exactly how much that would cost them. But it can also be useful if turned into a question if what I am doing right now is the most appropriate use of my time.

Last year I set a goal of giving at least one talk in 2016. I did 4, most of them on the same topic and while I enjoyed presenting, I do not expect to do it in 2017. Neither will I be setting development goals for this year even as I am expecting to learn a lot. In 2016 I learned 4 different Javascript frameworks because of work and I expect what I do to guide most of what I learn this year as well. Open source work will likely suffer too, but I plan to continue being involved in organising local Javascript events which I started to do at the end of last year.

My opinion of the general state of journalism sank to a new low last year, but there are exceptions and I was happy to be involved with Pod črto. Even though this year I am trying to reduce my obligations and ambitions, it would be great if I could do more work like that.

I wrote more, but mostly not the kind of things I had in mind when I set that goal. Hopefully this year will be better including keeping the old promise of having a homeconf once per quarter.

I intend to find time for a new hobby. Something that is fun to do even when you have only minutes to spare, is not computer related and is hopefully more tactile, like building with Legos that I already have. Also spend more effort learning Spanish.

Still all this is is just tweaking life as it passes. Last year and especially last few months of it, as I observed world with increasing horror, I kept thinking what the right response should be?

Surely it isn't doing nothing. There are no problems needing me to be solved, but even my own experience proves that getting involved can matter. Life fully lived is more than just a pursuit of personal comfort and happiness.

Aaron Swartz once said that you should always ask yourself what is the most important problem that needs solving and how you can contribute most. I feel stuck responding to his two part challenge.

First, identifying the most important problem to work on, suffers from abundance of choice. Climate change with all its consequences, EU project continuing viability, rise of (rightwing) populism etc. Right now I am pretty much unqualified to meaningfully help with any of them, but I do feel slightly more qualified about an issue that connects them all which is the role of modern media and the way (mis)information spreads. As this post is already tryingly long, I won't go into details already better described elsewhere.

Which does not make choosing ways to get involved easier. Writing code is unlikely to be helpful if you are not a part of the teams working on platforms that matter (Facebook, Twitter) and I never will be. Even if I were, ideas currently discussed are unlikely to be effective or can be just as easily abused to make things worse. There might be space for activism. Having done it before, I know how difficult it can be and how temperamentally unsuited I am for it. Before I worry too much about how to achieve my goals, I need to establish what they are.

I don't feel much certainty at the moment, but what I am certain of is that the idea of "Reader", that kept cropping up on this site, is dead. I would still love to have such tool, but last year thoroughly proved it is at best a solution to a minor problem.

Books I read in 2016

...were very few. This year has been a reading disaster. I have never read so few books since I learned to read. My list would be even shorter if it did not contain three items ambitiously described as books by publishers. If I change nothing this year, I will definitely change this.

Which is not to say I did not read much. It was a US presidential election year and I read too many things that on the whole did not do me much good except further erode an already low opinion of mainstream journalism. I may (or not) come back to this in my annual review of past year. Also watched too much (good) TV.

Interestingly all my reading was done either on tablet (first 4 items) or Kindle (last two), both of which worked well and neither being perfect. However I expect this to be more common as convenience can't be ignored.

I haven't read much, but I can still recommend one book: The Oracle of Oil. Generally, I don't see a point in reading biographies and reading a book from the author you personally know also carries a risk of what to do if you don't like their work. Luckily for me Mason's book is excellent. A meticulously researched and engaging story of a father of peak oil kept me interested all the way through and left me pondering the power of wishful groupthink and (in)effectiveness of data substantiated arguments.

  • AngularJS Up & Running by Shyam Seshadri and Brad Green . A good introduction to 1.x version of AngularJS framework that gives you a solid overview of what can be done and how you should go about it without getting lost in advanced specifics.
  • React.js Essentials by Artemij Fedosejev. A gentle introduction to React.js and Flux avoiding rest of React's ecosystem as it does building complex, multi-screen applications. Still good first book to read on the subject.
  • The Secrets Behind Great One-On-One Meetings by Esther Schindler. From a series of recent O'Reilly short books (booklets?). Excellent guide on how to conduct effective one-on-one meetings (or receving one). Recommended for everyone with a job.
  • Designing Culture by Kristi Woolsey. Another booklet, but not as good as the previous one. Too few practical examples and because of author's background it focuses mainly on using architecture/design to influence culture. Still useful if you are in a position to influence or change working environment.
  • La Mujer Alta by Pedro Antonio de Alarcón. Not so much a book as a short story, but it was the first longer text I read mostly in Spanish (with a lot of help from interleaved English text). It is a story I suspect just did not age well since 19th century when it was written. Skip unless you are learning Spanish.
  • The Oracle of Oil: A Maverick Geologist's Quest for a Sustainable Future by Mason Inman. An engaging biography of M.K.Hubbert, the father of "peak oil". It is more than just a story of a brilliant man pushing an unpopular view and provides an opportunity to draw lessons still relevant today.

This year I will achieve my plan of reading more books than last year as I could hardly read fewer. Some fiction would be nice and another Spanish book would be welcome too. My goal is again 15 books, but if I don't read at least 10, then, well... I have a year to think of a suitable punishment.

Related articles