I know I’m the last and probably least significant person to weigh in on this, but this “Safari is the New IE” article that I didn’t read when it came out three months ago has been tucked away in the back of my mind since then, and I’ve finally put my finger on the simple reason it bothers me.

[M]y point was to compare Safari to IE in terms of 1) not keeping up with new standards, 2) maintaining a culture of relative secrecy, and 3) playing a monopolistic role, by not allowing other rendering engines on iOS. Those accusations are pretty undeniable.


Personally what I want out of this whole debate is for Apple to realize that the web is starting to move on without them, and that their weird isolationism and glacial release cycle are not going to win them any favors in this new, dynamic web community.

First of all, what does it mean to “be an Internet Explorer”? What did Internet Explorer represent? A monopoly, sure, to consumers and corporate attorneys from the 1990s. “A culture of relative secrecy”? Maybe, though that’s not what comes to my mind. It also had a blue icon and a six-syllable name, but these are accidents — they’re not what Internet Explorer was.

What Internet Explorer represented to web developers, the bulk of that article’s audience, is not a popular browser lagging behind modern standards, but a popular browser egregiously disobeying established standards. There is no Safari equivalent (that I know of, and almost certainly not as significant) as, say, IE’s double-margin bug. Every web developer who’s wrestled with IE has tearfully referenced Explorer Exposed! and QuirksMode for the sixth time in a week, their links in Google’s results seeming an even deeper purple than others. Every web developer has harbored a sense of looming dread as they gleefully develop in Chrome and Firefox, knowing that there will soon be the reckoning of having to fix whatever IE bugs they’re willfully ignoring, but for right now it feels so good not to have to write terrible, hacky code to support a ten-year-old browser, and maybe my boss will announce tomorrow that we officially don’t support IE 6 anymore?

This, I think, is where the backlash comes from. “Developing for Safari” is barely a thing. “Developing for IE” was hell. To see the two compared in — yes — a clickbaity way is maddening.

Chris Coyier on PostCSS:

We know that specs change. It happens all the time. Seems weird to base a syntax on a non-final spec. What happens when the spec changes? Do you change the language and let existing code break? How is that future-proof? Or support all past formats? Meaning the language isn’t really based on future CSS, it’s based on any experimental idea that was considered?

These have been exactly my thoughts since hearing about CSS post-processors. How can people honestly believe that the code they’re writing is future-proof? Sass source files certainly are prone to “spec rot”, but the CSS they generate isn’t (at least, insofar as anything can be immune to it).

On writing real CSS (again) | CSS-Tricks

One Response · May 28, 2015

My current development setup revolves mainly around Vim and GNU Screen. I use Screen only to keep sessions running between work days or in case I get disconnected, but lately I’ve been tempted to try using different windows inside Screen. In order to make this easier, I wanted one of those status lines that shows you all your windows as “tabs”.

Configuring this status line (the “hardware status line” or, as I’ll call it, “hardstatus”) is done with a single, often long string of characters in ~/.screenrc that at first can look entirely baffling:

hardstatus string "%{= KW} %H [%`] %{= Kw}|%{-} %-Lw%{= bW}%n%f %t%{-}%+Lw %=%C%a %Y-%M-%d"


To my dismay, almost everything I can find about hardstatus through Google are just dumps of other people’s strings, with little to no explanation about why they do what they do – it’s easy to imagine that the people who post them hardly know why they do what they do, either. GNU’s official documentation isn’t terribly helpful.

After finally deciphering a lot of what goes on in these strings, I wanted to spell it out to anybody else who might be hunting around for half a clue about this voodoo. There are (more than?) a few things I haven’t covered here, of course – truncation and conditionals, namely – but this should be enough to get you started.

Continue reading →

Having just stumbled across an article advocating against AdBlock Plus (via Lea Verou), I decided to revisit my settings for relatively nuisance-free browsing in Firefox.

For a long time I’ve done development work and writing for a site that keeps its lights on through advertising, so I sympathize with content-creators’ need for (and frustration with) ads. It’s a necessary evil, and I’ve always found it a bit disheartening to see AdBlock Plus at the top of every “Popular Plugins” list (whether for Chrome, Firefox, or Safari). Worse, there seems to be a sense of entitlement among savvy internet users, telling them that they shouldn’t have to endure ads. Commonly this might be veiled as being “anti-corporate” or some other such vague excuse, but the real reasons are usually the same as those behind piracy: it’s just nice not to have to pay for things, whether through eyeballs, bandwidth, or dollars.

(None of this is to say that I am entirely innocent on these points.)

Still, there are some troubling common practices among the more insidious of these JavaScript embeds, and I think there is some justification in circumventing them. But one doesn’t need to block every advertisement to severely diminish advertisers’ ability to, say, keep track of one’s browsing habits.

Here are the things you can do to make your browsing a little more private and safe, while still (mostly) allowing the sites you love to pay their bills. These tips will be written for Firefox users (though the equivalent plugins are readily available in Chrome and Safari), and won’t include things that readers of this site will probably already know about (e.g., avoiding “watch movies free” sites and their ilk, and disabling pop-ups).

Continue reading →

I don’t claim to be any kind of Apple pundit, but I have some hunches about what their watch will be like if and when they release one.

The two factors I see as being vital are price and simplicity.


The Galaxy Gear starts at $299, which is a lot more, I think, than the average person (i.e., non-Android zealots) are willing to spend on a watch that they have to charge every night. A successful watch, one that gets into the hands of millions of people, will have to be closer to the “Apple impulse buy” price of the iPods Nano — at most $249, but I think they could do it for $199. (The Pebble E Ink watch is $150.) To reach that price point, an Apple watch will lack, for instance, a camera and a speaker, which are included in the Galaxy Gear.

Continue reading →

Despite not agreeing with all of it, “Just Use Sublime Text” (an invective against Vim — or, more accurately, against recommending Vim to anyone who isn’t already indoctrinated by it) by Andrew Ray is an interesting read. The section dealing with indenting in particular struck a chord with me:

Paste this into an empty buffer:


:set ft=html and then gg=G. Let me know what you get. In all seriousness, never, ever tell me what you get.

As I said in a tweet, what I got didn’t offend me too much. But many people would argue that the <span> tag should be indented inside the <p> tag. I’d probably do this myself, actually — and there have been aspects of Vim’s indenting that irk me. So I set about finding a solution.

Continue reading →

First of all, it’s terrific.

I was surprised to find that the frontlight can never be turned completely off while the Kindle is awake.

Also regarding the frontlight, I’m pleasantly surprised that, when it’s set at a modest level in a dimly-lit room, it has the appearance of not being lit at all, but merely of being more “white” than it is and as a result reflecting more ambient light, almost magically so. I didn’t expect to want to leave the light on all the time, but for this reason, I do.

When set too high, or when in a too-dark room, there is an appearance of unevenness with the lighting, but it’s not terribly distracting.

What is a bit distracting is how surreal it can look when something (like your thumb or head) is casting a shadow on the surface in certain lighting; the area around the shadow looks mostly illuminated by the ambient light, and the area under the shadow has an odd blue glow to it, since the frontlight’s effect is more apparent there.

Having fonts other than Caecilia is nice, although I can’t imagine anybody wanting to read for any length of time in Futura or Helvetica. Baskerville is of course classic for typesetting books, but because of its delicate letterforms and small x-height doesn’t really suit the (relatively) low-contrast and (relatively) low-resolution Kindle. There doesn’t seem to be an ideal “small” font size for Baskerville, at least not for my eyes. For these reasons I’ve so far stuck with Palatino, a font that I don’t really like very much, but which is less “artificial”-feeling than Caecilia, anyway.

The new UI elements (and the font in which they’re set, some Futura-like geometric I can’t identify) are really attractive. You can tell a lot of time was spent here and it gives the device a lot more personality and finish.

As expected, I’m frustrated by the lack of a hardware page-turn button, particularly while reading in bed, where (with the face of the Kindle pointed slightly downward) my thumb becomes a crucial support point, and is therefore not free to tap the screen to turn pages. In other interactions I’m also forced to use two hands quite a bit.

It was worth the upgrade even if only for the frontlight, and despite its small and few drawbacks, the overall improvement (over the Kindle 3, I should mention) make it a no-brainer.

One day while watching Arrested Development, I noticed something: The theme song is strikingly similar to the Pac-Man theme.

I had to slow the Pac-Man theme down a bit to match these up, but otherwise:

Arrested Development / Pac-Man

Update: More at CelineTheFeline