Why are browsers so slow?

I understand why rendering a complicated layout may be slow. Or why executing a complicated script may be slow. Actually, browsers are rather fast doing these things. If you studied programming and have a rough idea about how many computations are made to render a page, it is surprising the browsers can do it all that fast.

But I am not talking about rendering and scripts. I am talking about everything else. Safari may take a second or two just to open a new blank tab on a 2014 iMac. And with ten or fifteen open tabs it eventually becomes sluggish as hell. Chrome is better, but not much so.

What are they doing? The tabs are already open. Everything has been rendered. Why does it take more than, say, a thousandth of a second to switch between tabs or create a new one? Opening a 20-megapixel photo from disk doesn’t take any noticeable amount of time, it renders instantaneously. Browsers store their stuff in memory. Why can’t they just show the pixels immediately when I ask for them?

You may say: if you are so smart, go create your own browser — and you will win this argument, as I’m definitely not that smart (I don’t think any one person is, by the way).

But I remember the times when we had the amazing Opera browser. In Opera, I could have a hundred open tabs, and it didn’t care, it worked incredibly fast on the hardware of its era, useless today.

You may ask: why would a sane person want a hundred open tabs, how would you even manage that? Well, Opera has had a great UI for that, which nobody has ever matched. Working with a hundred tabs in Opera was much easier back then than working with ten in today’s Safari or Chrome. But that’s a whole different story.

What would you do today if you opened a link and saw a long article which you don’t have time to read right now, but want to read later? You would save a link and close the tab. But when your browser is fast, you just don’t tend to close tabs which you haven’t dealt with. In Opera, I would let tabs stay open for months without having any impact on my machine’s performance.

Wait, but didn’t I restart my computer or the browser sometimes? Of course, I did. Unfortunately, modern browsers are so stupid that they reload all the tabs when you restart them. Which takes ages if you have a hundred of tabs. Opera was sane: it did not reload a tab unless you asked for it. It just reopened everything from the cache. Which took a couple of seconds.

Modern browsers boast their rendering and script execution performance, but that’s not what matters to me as a user. I just don’t understand why programmers spend any time optimising for that while the chrome is laughably slow even by ten-years-old standards.

I want back the pleasure of fast browsing.

You should follow me on Twitter, here
Dec 20   browsers   programming   rants   software   web

Ellen Lupton’s “Thinking with Type”

Don’t read this book:

Ellen Lupton’s “Thinking with Type”

The book is split into three sections: Letter, Text and Grid. This gives the illusion of structure, but don’t be fooled. This is the most disorganized book on design I have ever read.

There is no narrative. Ellen jumps from topic to topic as if each spread was from a separate book. She would write about obscure InDesign hotkeys, font licensing, HTML header tags and even proofreader’s marks without any coherence. Sometimes she would pretend the reader has no idea about computers at all: did you know, she would ask, that if you press Shift+Enter instead of Enter, you would get a new line, but not a new paragraph?

Ellen would explain how typeface is not the same as font. Then put a spread of some student works of questionable value. Then write half a page about “branding”. Because why not write about something, if such a thing exists? It feels like Ellen just crammed together everything she heard about typography giving no crap as to how these random facts, thoughts and examples would help anyone get better at anything. None of the topics is given any care, many are given just a couple of paragraphs.

As to author’s credibility, I have to say she thinks that a double prime (˝) is the same as dumb quotes ("). She sets HTML is small caps, but CSS is all-caps — on the same page, that is. She would also explain that CSS is Cascading Style Sheets (very helpful). At some point in the book she mentions Tufte, then tries to redesign a table and comes up with a result that shows that she either did not actually read Tufte or completely missed the point.

If you are new to design and typography, after reading the book you’ll go, wow, there’s so many stuff — I guess I will now have to find real books to figure it all out. Well, just go straight to Tufte, Bringhurst, Tschichold and Müller-Brockmann.

2015   books   design   rants   reading   typography


When you cancel a Time Machine backup, it takes some time to stop:

Stopping Time Machine

Actions of programs have no inertia, they can be stopped immediately. If stopping something would leave a system in an inconsistent state, and you need to clean things up first, that’s what the user interface should say. But “Stopping” makes no sense. Just stop.

This problem is not uncommon, and I was thinking about writing a post about it for some time. But here is what happened recently. Mail in Yosemite Beta had already been “Disabling” my account by “Closing” something for several minutes, so I decided to cancel it — and got this:

Stopping Closing Disabling

I had to force quit it after a couple of minutes.

Added in August, 2016: And here, Dropbox is “Pausing”:

Dropbox Pausing
2014   rants   user interface

The stupid “Compose New Message” Mail.app menu item

Let’s say you’ve right-clicked the Mail.app’s dock icon and want to write a new mail:

Why, why is the menu item called “Compose New Message”? Why does it say “Compose”? No sane person would ever say: “Honey, I need to compose a message”.

In every other app on Earth there is no verb before “New”. Just “New Window” in Safari. Just “New Event” in Calendar. Heck, in iMessage it is just “New Message”. Who does Apple make me spend several seconds trying to find the line I need in Mail.app? This is one of those things you cannot get used to.

2014   Mac   rants   text   user interface

What is Brick?

So this thing, Brick. What is it? It says:

Webfonts that actually look good.

So it is a list of good fonts for the web? A collection of them? A book on them?

There is no explanation .There is no About link. There are just two buttons: “Get stated” and “Browse fonts”. So presumably I get started with the fonts by doing something else than browsing them.

Below, I see a heading: “Why Brick?” Wait, first of all what is Brick? The question “Why Brick” makes no sense to me. It says: “Beautiful”. What is beautiful? The fonts? The website?

We don't modify or subset the font in any way, so they are rendered the way they were meant to be seen.

That is amazing now that I know what you don’t do. But what do you do? Why do you even say that you don’t modify or subset the font? I mean, me too, I don’t modify or subset fonts either. Heck, I should put it on my frontpage! (Is it what everybody else does?)

It then says: “Fast”.

Brick is served to your users through Fastly's industry-leading CDN network throughout.

OK, so Brick is served to my users. Why?

It then says: “Open source”. Ok, this probably explains why I can’t figure it out. Anyway, having no other option, clueless and confused I click “Get started”.

And I end up on Github. And the project description starts with — wait for it —

Brick was built to be easy-to-use.

I bet. But I have no fucking clue what Brick is.

Web design 101: Use nouns to describe things.

2014   design   rants   text

The hope for a beautiful iPhone

When I first saw the leaked pictures of iPhone 4, I thought, no way, this cannot be true, it is ugly as hell. Why do all these sites even publish the pictures? Clearly, they are fake.

Turned out, I was wrong: the pictures were real. Interestingly, when Apple announced it, Steve Jobs even had to vindicate the design explaining how the lines on the edges were actually part of an antenna, and so it was a brilliant design. I was disappointed.

Turned out, I was wrong to be disappointed: when I saw the phone in an Apple store, it made a good impression. It looked much, much better in person than in any photos, including Apple’s own official ones.

A couple of years later Apple has shown iPhone 5. To me it looked even uglier than the iPhone 4 on the pictures. But having learned my lesson I decided to not make any conclusions before I saw the device in person. I thought that it will look much better in real life.

Turned out, I was wrong, again: the iPhone 5 is ugly, even in person. I’m still using my old, slow iPhone 4 and I don’t want to switch.

Here is the iPhone 5:

The top is a pain to look at. The camera is positioned randomly in a stripe of plastic:

It wants more air around it, it doesn’t want to be squeezed there like this.

Also look how it’s misaligned relatively to the corner:

And the way this stupid piece of plastic is touching the antenna band gaps on the sides?

So sloppy.

Compare with the design of the iPhone 4:

Everything is balanced, everything is where it should be.

I was hoping that they would change the design for the next iPhone so I could finally have something to replace my old iPhone 4 with. But going by the latest rumors, the design will stay the same, so I am sad. By the way, the rumored “cheap” version (aka iPhone 5C) looks better:

Anyway after you’ve seen and held in hand the iPod touch (no-camera version) everything looks and feels wrong. I wonder, how many years should pass for us to see an iPhone that is well designed?

2013   design   iPhone   rants

Linking to where I already am

Every web designer knows that no hyperlink should ever reference a page where I already am. Ah, not true! For some reason, many web designers think it’s fine to use such hyperlinks. It’s the stupidest thing ever.

For example, there’s a great post by Jeff Atwood on pagination. I was trying to copy the title of the post, but failed twice. Should be easy: select text and press ⌘C. So I double-click “Pagination” and move the mouse to select the rest of the text (that’s how text selection works: after double clicking you select by words instead of by characters). Oops, the page is now reloading. What happened? Turns out, the title is a link to the post which I’m reading already! Not just is it absolutely useless, the link is not even underlined, it’s not even blue. So there’s no logical reason for it to be a link and no logical reason for me to even expect it to be a link. Why on Earth would anyone design stuf this way? Still, great post on pagination there.

Maybe Jeff is just a bad designer? No, that is clearly not the reason. Welcome to apple.com, another example of this mistake by some of the best designers. See that  in the menu on top? It’s a link to the front page. But wait a minute, I am on the front page! Click ”iPod”, and things gets worse: now the “iPod” button looks pressed and does not change when you hover it, but it’s still a link to where you are. Notice, by the way, that the first button was not pressed when you were on frontpage. Apple is famous for its attention to detail, but this design is lousy and makes no sense. Sure, it’s better to be right than to be consistent. But there’s nothing good about being both wrong and inconsistent, I suppose.

Never link to the very page you are at.

2012   Apple   design   rants   user interface