Ondřej Mirtes

If you want to build truly useful software, you have to look at it through the eyes of its users.

Describe all you like how your job works, but the listener will never understand what it is like to be you doing that work. I’ve worked on tills during my student days, and there’s more to it than whoever wrote the software for them obviously knew. Which is why we often see till operators fighting against the software to get the job done.

The well-known productivity expert, speaker, and guest on popular podcasts in a very candid interview that’s well worth reading—because you’ll come away with more than just glimpses of Mann’s life.

A few selected quotes:

I think we sometimes overlook things we don’t realize we’re already good at or have limited experience with. You may be beating yourself up about not having good enough grades in biology to go to medical school while overlooking the fact that you’ve been working in your family’s hardware store over the summer for eight years and have an extraordinary sense of how to deal with people.

How many people out there say, “Gosh, I wish I could own a house”? Everybody I know who owns houses are losing their minds trying to make their mortgage payment or they’re scared to death about having to replace the roof. Anybody who wants more money, a better job, or a bigger house is ultimately just wishing for a new set of anxieties.

There’s no reason to think that you would be able to do something that other people have spent years preparing for. It’s not realistic, yet you beat yourself up about it, so then you feel incapable of doing other things.

Ever since Google shut down its Reader, I’ve been trying to leave it and decentralize the services I use. The fact that I can pay for a product I consider a pleasant rather than a burdensome circumstance, because it moves me from the position of merchandise on offer (which gets shown ads) into the position of a customer.

Alongside the RSS reader, one of my most-used applications is, of course, email. I’m not afraid of Gmail being shut down, because with its hundreds of millions of users it’s one of Google’s most-used products. But Google is trying ever more desperately to monetize it; for example, it’s already shoving ads in among ordinary emails and degrading the usability of Google Talk — or rather Hangouts now — as a Jabber client. Since I want an escape plan in case of further mutilation, I set out to look around for alternatives.

Fastmail

The first one I tried was Fastmail, which until recently was run by Opera. I’d read a lot of praise for it; judging by the responses online, it’s probably the most-used email after Gmail.

Unfortunately, during the trial period I ran into several fatal shortcomings that make it impossible for me to switch to Fastmail. In general, it felt to me like its development froze several years ago.

I had to do the email archive import twice and use my knowledge of the IMAP protocol in the process, which I can’t imagine ordinary users doing. Besides the server, username, and password, you also configure a so-called IMAP prefix. When I ran the import with the [Gmail] prefix as instructed, only the emails without a label got imported. I had to run it again without the prefix, despite the warning that the import was designed for a one-time run only, because otherwise emails could be duplicated.

Fortunately that didn’t happen, and I successfully moved all my emails. The resulting mailbox usage of about 50 MB matched the one on Gmail, and in a quick check I found emails from various periods and in various folders where they were supposed to be.

The email inbox is the gateway to all your other accounts, because you can have a forgotten-password request sent to it from everywhere. So I consider it a necessity to have two-factor authentication set up. Fastmail pretends to support it, but compared to Gmail it doesn’t represent as high a level of security as I’d like. It supports several alternative login methods, but alongside them you can still log in with the main password, which doesn’t send any security code to your phone and logs you in right away. Such security theoretically allows a brute-force attack, which with Gmail is in principle impossible, because it always wants you to copy a code from an SMS.

I decided to suppress my inner Spaze and swallow this shortcoming. Fastmail let me enter my phone number in the settings, but the moment I entered the username and password into the login form that’s supposed to trigger sending the authorization SMS, the form printed an error that it doesn’t support SMS in the Czech Republic yet. Having the app tell me about this back when I was setting it up would probably have been too mainstream.

Next I wanted to use Jabber on my own domain the way I have it with Google. After a quick search in the settings and online, I concluded that if I didn’t want to use the @fastmail.fm domain and force all my contacts to re-authorize, I’d have to switch to the Family plan. That, however, has worse parameters — for $40 a year you get only 8 GB of space instead of 10 GB, which is already on the edge of my needs.

My patience ran out even before I started using Fastmail in earnest, so I decided to keep looking.

Outlook.com

Microsoft’s waning position in the market is forcing it into unprecedented things, and it’s more open than ever before. Could you, just a few years ago, have imagined that it would provide a service tailored to developers of a competing platform and have videos on its site of a person in front of a MacBook explaining the advantages of Windows Azure for iOS? Evilization is leaving Microsoft and devouring Google.

In choosing a replacement for Gmail, I’m therefore willing to consider Microsoft’s answer as well. Another point in its favor is that it allegedly doesn’t scan emails — the ads it shows have nothing to do with the context of what arrives in your mail. On top of that, it has a freemium-based business model — you can pay an extra $20 a year so that it shows you no ads at all. So far so good.

The service’s settings are well laid out, but buggy. I had to click some links several times before I could go to them. Once I had to confirm „load unsafe script“ in the browser to get into another section.

Setting up two-factor authentication went without a hitch and is on a par with Gmail. Including app-specific passwords for clients that don’t support it.

I was pleasantly surprised by iOS’s direct support for Outlook.com when adding the account to the system, so I didn’t have to copy out any server names or ports. The built-in Mail app supports push notifications for Outlook.com, so I learn about an email immediately and not in fifteen-minute refresh intervals — something you can’t say about Gmail.

It’s worse with importing emails. Microsoft itself points on its site to its own TrueSwitch service, which has, however, been discontinued. Emails can always be moved manually in an ordinary mail client thanks to IMAP, but I’d still rather leave that work to an automated tool.

The absence of a domain catch-all isn’t a problem. When I looked into the catch-all in Google Apps for the very first time yesterday, 99% of the emails weren’t meant for me — it was just spam. I can do without it.

So I migrated my mail over to Microsoft, and so far I’ve had no further problem with it. I plan to keep going in freeing myself from Google’s shackles. Next in line will be instant messaging.

Plenty of services make money off users who don’t actively use them but haven’t canceled their subscription. It’s one of the many well-known dark patterns.

The founders of the Beeminder startup are convinced that an honest approach is more advantageous for both sides—one where the user only pays for the service at the moment they’re actually using it.

Drew Crawford on the mismatch between the price of off-the-shelf and custom-built software, on effort estimates, and on the general public’s skewed expectations:

I have been involved in far too many projects where the development timeline and costs for a project were decided, not investigated. You may be working in such an organization now. I regularly participate in conference calls with people who explain to me how long it will take to do my job. In fact, that is the state of the industry. Perhaps eventually, the project will fail, and you can whip out some e-mail from six months ago and say “I told you so.” But more likely, you will work 60-hour weeks for a while, and then get blamed when the project goes awry. We have billion-dollar web browsers for free, why should it take 3 months to write an inventory system? That’s pretty much how those things go.

Yes, there is such a thing as „clean“ user interface. User experience has its own organising principles and design heuristics - many of which echo those for internal design (e.g., UI’s should be as simple as possible, UI’s should be easy for the user to understand, etc). But as we bolt on more and more features, there’s a tendency for entropy at the UI level to increase. And so very few teams do on-going work to minimise that entropy. And so, the user interface just keeps getting worse - more complicated, less intuitive, clunkier, less responsive, and so on.

It’s also very concrete improvement. When you’re spinning your wheels, you’re by definition not going anywhere. But if you’ve closed a few bugs, you can very clearly see improvement: I’ve fixed bugs! Something that was broken is now fixed and in production! The users are happier! It drives motivation.

Every now and then you need to take a break from shipping new functionality, stop, and take on fixing bugs.

Jason Gorman on TDD:

Most developers and teams who report a loss of productivity when they try TDD are actually reporting the learning curve. Which can be steep.

If even now, in 2013, you still need to convince someone of the benefits of writing unit tests, point them to this article.

Instacast is my favorite podcast client for listening on iOS. Version 3, released in December, brought reliable syncing of unplayed episodes and the current playback position.

Since there was no Mac version available yet, at home I was stuck listening to podcasts from an iPhone lying on the desk. (And I wasn’t alone in this.)

I’ve been testing the Mac beta for a month now and using it to my full satisfaction. Today the first public beta was released — go download it.

Andreas Bonini breaks down what an ideal URL should look like:

We are all familiar with URLs: the string uniquely identifying the requested document. However, we don’t always consider they are more than that: URLs are user facing and should be considered important UI elements.

Kyle Baxter on the launch of the first iPhone:

They could have presented it as a technological marvel, a device that combines a high-resolution multitouch screen, fast mobile processor, cell and WiFi radios, and proximity, ambient light and accelerometer sensors into a handheld device with desktop-breed software and surprisingly-good battery life, a PC in your pocket. But they didn’t; rather, they presented it in terms of what it did for users and what they would find useful about it.

I recently realized that I spend more time on mobile devices than at the computer. Thanks to portability and battery life, it’s the better choice for me despite the simplified operating system and the touch keyboard.

That’s why I’m anticipating the new version of iOS with more interest than Mac OS X. The current sixth version didn’t bring much new compared to its predecessor, so I assume Apple has now been working on a more substantial update for the second year.

iCloud

In the last few days, a number of not exactly flattering articles about iCloud have come out. This brand covers several different services — an email inbox, a calendar, and contact storage, but above all an API for third-party apps. That’s where the biggest problems are, and developers are resorting to other services (e.g. Simperium) or to their own infrastructure (e.g. Things or Instacast).

If you decided to use iCloud for your app today, you’d have to choose one of three storage options for your data. A simple key-value store that can hold at most 1,000 values, file storage, and database storage (CoreData). The most problems are with CoreData, which is at the same time the most tempting. It promises synchronization of mutually interconnected data structures, which is a big challenge in itself. But beyond the inherent difficulties of this complex task, the API sometimes doesn’t work even at the most basic level, and developers can hardly figure out where the error lies.

Apple has to solve this. Whether by fixing the existing CoreData implementation, or by creating a fourth API with similar functionality but with cloud synchronization in mind from the very beginning. After all, developers had CoreData available even before iCloud as ordinary database storage, and this functionality was only added on top of it.

If we set aside the fact that data synchronization simply doesn’t work, iCloud faces other problems. From the user’s point of view, the file system on iOS is made up of application containers. Every installed app thus has its own directory available and can’t read outside of it. iCloud’s document storage works the same way. If I save a Keynote presentation to iCloud, I open it again in Keynote on the iPad. But if I save a file in an app that has no counterpart from the same developer on the other device, I simply won’t find that file. I can’t send myself a PDF over iCloud, because on the Mac I can only save it in the Preview app, which doesn’t exist on iOS. I have to resort to Dropbox or email. This isn’t a simple nut to crack either, because Apple won’t give up its intention to build a wall between the user and the filesystem.

Data in iCloud can only be accessed in native apps for iOS and Mac OS X. If a developer wants to make, say, a web or Windows variant as well, they also have to develop their own synchronization. The fact that Apple only supports its own platform is understandable, but it applies a double standard here — you can get to email, calendar, and contacts even in a web browser at icloud.com.

If an app is supposed to support collaboration among multiple users, it also has to have its own server. iCloud only serves as data storage for a single user. At present it only supports limited use cases, and as soon as an app wants to do something more sophisticated, it can’t use iCloud for it.

Apple has to solve these technological and fundamental shortcomings. Because otherwise it risks being overtaken by others even in the area where it currently leads, leaving it with no competitive advantage at all.

Inter-app communication

The shape of inter-app communication is tied to the shape of the filesystem and the application containers. On iOS it’s very limited.

Apps can register to open certain file types. A PDF I load in Safari I can thus open in iBooks or in Dropbox. At that moment this file is copied into the iBooks container. So the changes I make to files don’t propagate to its other instances in other apps.

Another option for exchanging data is so-called URL schemes. Each app can register its own protocol with the system (e.g. googlechrome://), and other apps can launch it through that. The condition, then, is that developers know about other specific apps and implement support for them.

By the way, this means that every app has to implement sending links to „read it later“ services on its own, and — if I leave aside the integrated Twitter and Facebook in iOS 6 — support for sharing to social networks as well.

Fortunately, things are looking up in this regard. While poking around the system’s internals, Ole Begemann discovered the mechanism of so-called remote view controllers, which Apple started using, for example, for the email-sending window. The Mail app uses this approach to offer up part of itself inside another app and, once the task is done, retreat to the background again. In the future, exactly this could become the basis for more sophisticated data sharing between apps, which users of other operating systems know as intents (Android) or contracts (Windows Phone).

Jony Ive

After Scott Forstall was let go at the end of October, there was a reshuffle in the company’s top positions. Jony Ive took over software design, and everyone is hoping this will bring a new look to the iOS user interface. The end of leather calendars and lined notepads!

It’s hard to say how many sweeping changes can be managed in those few months, and to be safe I’d look as far ahead as iOS 8, but the first swallow has already arrived. At the end of March, an update to the Podcasts app arrived that removed the flashy but utterly pointless moving magnetic tape.

What we’ll actually get in iOS 7 and what it will look like we’ll most likely find out in June at the traditional WWDC 2013 conference.

After wrapping up their shows in December, Marco Arment and John Siracusa couldn’t last long without podcasting. As early as the second half of January they started a new show, Neutral, about cars, and since they realized that after the show they’d keep talking about tech for another hour, they turned that into a podcast too.

I have one episode behind me, and I have to say that listening to these two share the airwaves is a joy in itself.

I’m fascinated by these glimpses behind the scenes of creative processes.

This prototype looks more like an iPad held together by nothing but tape, and it has more ports on it than my desktop at home.

In February I attended this conference in London. Despite its name, plenty of the talks only touched on PHP in passing, and that was a good thing. This was already the eighth edition of the event, and it shows that the organizers take feedback to heart. Everything ran smoothly, in a beautiful venue, the Wi-Fi was faster than my connection at home, there was enough time to move between the individual blocks, and during the lunch break we had plenty of hot food available. Some Czech events could take a cue from this.

Most of the talks were advanced in nature and dealt with interesting technologies. So I didn’t have to listen for the hundred-and-fiftieth time about naming my variables clearly or how to write my first unit test.

Since I found a summary of most of the talks I attended, I won’t repeat myself here. And I’m almost certain that a year from now I’ll be heading to London again.

Arment walked me through the numbers. He has 25,000 subscribers who pay $1.99 a month. Apple takes a 30 percent cut, leaving Arment about $35,000 a month.

This cost of putting out the magazine is a bit over $20,000 per month. It comes out every two weeks, and each issue costs about $10,000. Roughly $4,000 goes to writers. The rest goes mostly to copy editors, illustrators, photographers and editors.

Wow. Amazing numbers, considering that Marco Arment launched it as a mere experiment. The Magazine is packed with readable, high-quality articles and absolutely deserves that kind of success.

Have an answer ready for this question in case someone asks it.

Federico Viticci is one of the most prominent figures in the Apple community. In this article he writes about his experience with cancer and what he answered when the doctors asked him this very question.

You’re going to have to answer questions about your name, address, habits, and, yes, what you do for a living, while your parents whisper the answers with you. But since I was diagnosed with cancer 12 months ago, every time a doctor arrived at “What do you do for a living?” my parents remained silent, turning to look at me. He’s got to answer this one.

GitHub’s blog frequently features extensive reports about its outages — exactly what happened, how they put out the fire, and what measures they put in place so the situation can’t happen again. Besides being a textbook example of crisis communication, they’re an enormous well of know-how for sysadmins and DevOps.

As always, we strive to provide detailed, transparent post-mortems about these incidents. We’ll do our best to explain what happened and how we’ve mitigated the problems to prevent the cause of this outage from occurring again.

The film Drive is the most faithful adaptation of the Grand Theft Auto game series I’ve ever seen.

  • Throughout the entire film, no one ever addresses the protagonist by name.
  • He doesn’t say much himself either.
  • He can grab any car he fancies right off the street.
  • He makes a living as a getaway driver in armed robberies, and over the course of the film he gets up to his neck in trouble with mafia bosses.
  • He can escape the police, who even send a helicopter after him.
  • The film is set in LA, just like San Andreas.
  • The credits use pink lettering and a typeface exactly like the one in Vice City.

On top of that, it has an amazing electronic soundtrack that completely mesmerized me.

What would you do if one day this message landed in your error log, without any additional information?

sh: York: not found

I’d keep quiet about it.

I’ve already missed the ideal time for this break, but it’s still worth considering.

Adam Brault has already tried it, and his observations are in the linked article:

Twitter is outsourced schizophrenia. I have a couple hundred voices I have consensually agreed to allow residence inside my brain.

I used to believe that time was the most important thing I have, but I’ve come to believe differently. The single most valuable resource I have is uninterrupted thought.

Juozas Kaziukėnas on opinions and their importance in conference talks.

Opinions change fast. I often get people asking “yeah, but last year you said xyz?”. So? This world moves too fast for an opinion to last for a month even. I reevaluate my thinking on a daily basis and keep changing everything I do. The fact that someone even remembers something I said so long ago means they’ve been stuck in the same thing for way too long.

An excellent series with a troubled fate (the creators never wanted to reveal Laura Palmer’s killer, but the studio forced them to do so in the middle of the second season, which led to a drop in viewers and the show’s cancellation), which I rewatch every year, might return to television screens after more than 20 years. So hints Mark Frost, co-creator of Twin Peaks.

The author and Frost speculate that the third season could realistically be set 25 years on (perfect timing, really, considering the show’s age), picking up from the original’s iconic dream sequence between Cooper, Laura and the backwards-speaking dwarf, that took place in the original series 25 years into the future.

The question remains whether it wouldn’t be better to let the series rest in peace and not spoil fans’ idealized memories, but we can surely all agree that one way or another we want to return to Twin Peaks and meet the familiar faces again.

‹ Year 2014 Year 2012 ›