Still don’t buy a Tesla!

Written on 17 February 2019, 07:51pm

Tagged with: , , , ,

Remember how a few months ago I was not recommending buying a Tesla because of the bad customer support? Well… I still don’t. Despite some positive signs (which I will detail below), the overall customer experience remains sub-optimal. And on top of that, I just stumbled upon two additional frustrating issues.

The good

There were some improvements since my post in December 2018. First, the mirror problem was finally addressed. A Tesla Ranger came to my house and replaced the faulty piece in less than half an hour. Definitely a positive experience, but the fact that I had to wait more than two months to have it fixed is still a big issue.
The second positive issue: the Tesla Service managed to reply one of my emails in 14 hours during a weekend period.

The bad

Let’s say you drive with your Model S to location X. Then, a few hours later, you come back to the place you parked your car, and can’t find it anymore. You open the Tesla iOS app, it updates, and it still shows that your Model S is in the location X (which is not). Your Model S was towed away to location Y, but you will never see the location Y from the app.
Here is what Tesla says about this:

I can confirm that this is indeed normal behavior.
The GPS location of the vehicle only updates when the car is actually being driven.
You will experience the same if the car is being transported on a ferry.
When the vehicle starts driving again, the GPS location will refresh. In some cases it will takes a couple of drives for it to refresh afterwards, but in most cases it will pick up at the first drive.

Tesla EMEA Customer Support responding to the scenario described above
The Tesla iOS app does not show the real-time location of your car

I am absolutely stunned by this behavior. Not only it violates the principle of least surprise, but it also means that you can never trust the location shown in your app (unless you have your car in sight). Not being able to see the real-time location of your car despite having the technical means to do it is simply astonishing. I am authenticated as the owner of this car, I am asking you to show me the location, you have the means to do it – so just show me where it is!
I asked Tesla if they plan to update this behavior and I will update this post if I receive an answer.

The ugly

I just found out that the Tesla dashcam only stores one hour of video recordings on the USB drive. At the moment you cannot change this setting, it is not documented anywhere (I found the information on reddit) and it doesn’t make any difference if your USB drive would be able to store more than that. It’s such an arbitrary and artificial limit and the fact that it’s not documented anywhere makes it even more frustrating (principle of least surprise again).
There are workarounds: the expensive way (have several USB drives and rotate them periodically), or the nerd way (use a Raspberry Pi to sync the contents of the USB drive with your file server when you get home). None of them are ideal, the right thing to do is to allow me (the owner of the car) to decide about the matter (1, 2, 100 or 0 hours of video storage).
Again, I asked Tesla if they plan any change related to this behavior.

Update 18 February: Tesla confirmed the 1-hour recording limit and logged my request to make this limit user-configurable. “As for expanding this time, we are hoping so we get a lot of requests for it.

Update 20 February: On 16 February I asked Tesla if they plan to change the current set up, where the real-time location of the car is not shown unless you drive car. On 20 February they replied: “I have submitted this as a feature request for the development team to review.

Inclusive design: some principles and notes

Written on 29 April 2018, 09:01pm

Tagged with: , , ,

Time to mix IT security with web design, so a few notes from the first chapters of Inclusive Design Patterns, by Heydon Pickering.

Some basic principles:
– always use semantic structures (ex. use the lang attribute)
– prefer existing HTML elements instead of inventing new structures. In other words, embrace standard behavior. If you can use a native HTML element, then do so.
– use progressive enhancement: HTML, then add CSS, then add JS (also known as ‘content first design’)
“If it’s not curlable, it’s not on the web”
Henny Swan UX principles: give users choice, put the users in control, design with familiarity in mind, prioritize features that add value
– remove redundancy (ex. instead of having a logo and a ‘home’ label both pointing to the homepage, consider turning the logo into a navigation link)

Fonts:
– never use absolute font size (ex. 16px), use the relative measures
– use rem over em to avoid font size nesting problems
– font display problems (especially when using web fonts): FOIT – Flash of Invisible text, FOUT – Flash of Unstyled text. See SmashingConf London — Zach Leatherman on ‘Web Fonts are ▢▢▢ Rocket Science’
– start using font-display: swap, optional, fallback (Chris Coyier – If you really dislike FOUT, `font-display: optional` might be your jam)
– when using web fonts, you can specify to download only the characters that you need: https://fonts.googleapis.com/css?family=Roboto&text=ABCDEFGH

Accesibility:
– try to navigate your website using only the keyboard: skip links, tab index, highlight the focused element
– the ‘skip to content’ links are mostly for sighted, keyboard-only users
– make sure that all the elements are focusable, that the focused element is visible and highlighted
– try to navigate your website using a screen reader
– design for the extremes:
– design for the people with poor networks: the ones with good networks will also be happy
– design for the people with readability problems (ex. dyslexia or color vision deficiency): the other users will also benefit
– always provide alternative text
– don’t differentiate by color alone
– don’t make the touch targets too small (believe it or not, everybody has fat fingers)

Do not break conventions:
– allow pinch to zoom
– use blue and underlined links (color is not sufficient, use underline as well)

The human brain uses patterns called schemata to understand sense data. Schemata constitute prior experience against which current experience is evaluated.
In programming terms, schemata are a kind of cache for understanding. So long as a familiar thing is being experienced, little more effort is required to understand it.
By the same token, if something genuinely new is experienced, there’s nothing in the cache to be relied on and thesense data must be evaluated in full
smashingmagazine.com/inclusive-design-patterns/

Design
– prefer left align of text instead of justified (especially for narrow columns)
– be careful with the line height: the users will zoom in. Never use absolute font size!
– warn the users about the external links
– automatically add icons from CSS instead of the WYSIWYG editor (example: icons for the external links that will open in a new tab)
– make the link texts descriptive
– if you use video, think about closed captions. They are not only for the users with hearing problems (ex. watching it without volume)
– don’t be afraid of using relative #links in the navigation menu
– SVG is probably the best option to design the hamburger MENU button (instead of image, font, unicode character, etc)
– if you have an online store, use microdata to have rich snippets in the search results
– if you have to implement infinite scrolling, then consider having a ‘load more’ link for the keyboard users. Or think if it’s the right thing to do 🙂
turn the placeholders into labels when the users start typing

Content
– follow the ‘content-first’ guidelines
– keep it short, avoid passive sentences, eliminate redundancy, vary the length of sentences
– use readability tests (ex. Flesch)
– when creating your headings, think about the table of contents (do the headings still make sense when reading in the ToC?)
– don’t make your site content dependent on client-side JavaScript
– everybody loves table of contents, especially if the content is long

In the end, a strong conclusion: it’s all about the end result. What we have to design is processes, not screens.

People are not really into using products. Any time spent by a user operating an interface, twisting knobs, pulling levers or tapping buttons is time wasted. Rather, people are more interested in the end result and in obtaining that result in the quickest, least intrusive and most efficient manner possible.
We will design processes, not screens.
We will design systems, not individual pieces.
We will design less “using,” and more getting results.
– Goran Peuc – Nobody Wants To Use Your Product

Make the questions easy to answer

Written on 7 March 2017, 11:30pm

Tagged with: , ,

About a month ago I was asking MalwareBytes to stop making me think.
I recently read for the 3rd time Don’t make me think (but actually the first time the paperback version 🙂 ) and I found a reference to another excellent book: Forms that work: Designing Web Forms for Usability.
I am at Chapter 3 – Making questions easy to answer – and there is the exact same situation as the one I encountered last month. The heading is ‘Turn negative questions into positive ones’, and I take the liberty to post the relevant paragraph here:


Happy to see this kind of confirmation 🙂

PS – Go buy the book! 30 EUR well spent. And it also comes with a companion site: formsthatwork.com