found drama

get oblique

review: High Performance Browser Networking

by Rob Friesel

High Performance Browser NetworkingI just wrapped up High Performance Browser Networking by Ilya Grigorik (O’Reilly, 2013) and it just may be the best technical book I read in 2013. I first encountered Grigorik and his work about a year ago when I was researching web performance and HAR tools in particular 1; it wasn’t long after that that I heard he was working on this book. I looked forward to it ever since, and I wasn’t let down.

If you are working where the web is your deployment platform, then HPBN has strong coverage of the protocols, networks, and APIs that you’re using every day. Grigorik asserts that latency is the true performance problem of the web, and goes on to tell a compelling end-to-end story, looking at TCP, UDP, and TLS, then then different kinds of wireless networks between you and your users, and finally going deep on HTTP, XHR, SSE, WebSockets, and WebRTC. He presents some great data to back up his statements, and the book winds up feeling like a comprehensive report on the fundamental building blocks of networked applications. Whether you work primarily in the back- or front-end of the web stack, HPBN is essential reading and will provide you with a strong foundation in how to perform performance profiles of your applications and how to optimize for different scenarios (and the trade-offs you may be forced to make).

I learned a great deal from this book, and I suspect I’ll be re-reading it to pick up what I missed the first time. I would highly recommend HPBN — it’s a great reference, and should be considered required reading for anyone deploying applications to the web. I don’t know of any other books quite like this one.

Disclosure: I received an electronic copy of this book from the publisher in exchange for writing this review.

  1. I really enjoyed this blog post/video combination on Grigorik’s blog.[]

search term haiku: November 2013

by Rob Friesel

“ambulo” can’t move
drama on malnutrition
use git cherry-pick

“Search Term Haiku” is a series wherein I examine this site’s log files and construct one or more haiku poems from search terms and phrases that led visitors to the site. Where possible, I attempt to keep the search phrases intact. However, as these are haiku poems, I do need to follow the rules.

dream.20131113: water rescue

by Rob Friesel

You don’t know how you got there but there you are. Splashing around in the water, nearly helpless. There’s no life raft and no personal floatation devices. Just you and five (six?) others treading water. The water feels deep — you’ve dunked down a couple times and can’t touch the bottom — but you see trees sticking out of the surface as well. (A flooded forest?) Each of you tries to shout calming platitudes to the next, but none of you really believe that you’ll be saved. But then a helicopter swings in overhead and lowers a ring attached to a rope. They don’t have enough room for everyone, and you volunteer to stay in the water. But then the helicopter goes slowly toward a house on a hill, slow enough that you can follow and swim along close behind.

dream.20131108: ad labyrinth

by Rob Friesel

You’re caught in a labyrinth of ads. Worse, they’re ads on your phone. You are aware that you are somehow hypnotized and unable to look away until you escape the ads, until you have viewed every last one, and though you are not physically surrounded, you also cannot look away or put the phone down. So you attempt to find your way out. You tap the little X’s and the buttons that say “Exit” and the links that say “Close”. But each one falls away or slides away or crossfades to reveal another. There are ads within ads. Ads that spawn other ads. Ads that lead to more ads. Ads that are played like games. Ads with narrative backstories that require another ad to be viewed before it makes any sense. Worse: now the ads have become corrupt — in the software sense, not the ethical sense — and are visually glitchy, but still you cannot look away.

Linkdump for November 6th

by Rob Friesel

dream.20131030: imposter

by Rob Friesel

Driving home on Rt. 15 (just off the highway), you see flashing blue lights ahead of you. Then you notice them in the rearview mirror as well. Assuming the latter is racing to catch up with the former, you pull over, expecting the officer to race past you. Instead the officer pulls over behind you. The officer approaches your car window and immediately asks you to get out of the car. This seems strange to you and although you want to comply, something about it doesn’t feel right. “Aren’t you supposed to ask for license and registration first?” He doesn’t blow his top or even raise his voice, but you can tell that he is going to quickly become irate. He demands a second time for you to get out of the car. “Wait. Where’s your badge?” you ask. (There’s no badge on his shirt.) He frowns and stalks back to his car. Looking for closely in the rearview, the car doesn’t look quite right either. (Too small?) When he comes back, he hands you a badge. But it’s plastic. And it doesn’t have a pin. And there’s no ID number. This isn’t right at all. You step on the accelerator and he starts to chase you.

dream.20131025: three

by Rob Friesel

One. You walk in to the kitchen and there she is, pint glass in hand. On the counter is the nearly empty bottle of that rare and expensive beer that you had been saving. She is enjoying it. It feels like a betrayal although she claims it was an honest mistake. She offers you what’s left in the bottle (not much) but none of what’s in here glass. Two. The hotel is a single, vaguely conical shape. All the rooms are along the exterior and slowly spiral upward. There is an elevator in a central shaft but otherwise the “hallway” is a single continuous ramp that slowly wraps upward. And you are naked and locked out of your room. Your sons are inside but one is too young to let you back in and the other is taking a malicious delight in your embarrassment and peril. You scramble from door to door, trying them, but they’re all locked. There is nowhere to hide and you can hear a family coming slowly closer. Three. Somewhere between a job fair and a course catalog, but at the United States Air Force Academy. Perhaps a bit like a science fair? You go from booth to booth and station to station, learning little bits about each possible career path within the branch. One station is a simulation of flying a fighter plane. You sit down and a helmet is placed on your head — VR goggles over your eyes and electrodes attached to your scalp. You “fly” expertly, albeit perhaps a little too closely to the enemy craft. But an electrode slips free and the simulation spins wildly out of control. The helmet is suddenly snatched away and you are intensely scolded.

Linkdump for October 24th

by Rob Friesel
  • Brian Droitcour:

    Can a selfie be art? I think so, but it would entail discarding the conventions of subjecthood of the public sphere both for artists and for art—the artist as a singular figure creating singular works of art—and instead thinking of art as an everyday activity.

    (tagged: selfie art culture )
  • Ben Nadel illustrates an interesting technique for taking your client-side errors in an AngularJS app and using ajax to POST them to a server-side log aggregator. (Though he doesn't specifically speak to the server-side log aggregator piece…) Also: if you were thinking "why didn't he use a decorator instead of overriding $exceptionHandler?" — that's mentioned in the comments.)
  • A screed by Ben Darlow which reads as slightly controversial, but also slightly common sense. (Side note: I’m surprised I haven’t seen more chatter about it.) The key take-away is that your focus needs to be on writing semantic and meaningful (and thus maintainable) mark-up and CSS, and not trying to eek out a specious performance gain through “tricks”. Again: seems like common sense, but part of the post takes a dig on OOCSS and BEM.

    Speaking for myself, I agree with his points, but the digs on OOCSS and BEM seems like needless asides. The value in those “frameworks” (philosophies?) has always seemed to me to be about getting teams to agree on a common way of thinking about and thus organizing their CSS — which seemed to be one of Darlow’s most important points. In fact, all of the important lessons here would be just as strong if OOCSS and BEM were never even mentioned.

    At any rate: read it, it’s worth the time and the cognitive bandwidth.

    (tagged: CSS )
  • It's just so incredibly cool that Grigorik did this. I'm more impressed by him every time I see something from him. And I just love love love his transparency about this. Remember: fiction or non, writing books isn't magic, it's hard-fucking-work.
  • Mark Boulton:

    The problem is this: The question content people ask when finishing adding content to a CMS is ‘how does this look?’. And this is not a question a CMS can answer any more – even with a preview. How we use the web today has meant that the answer to that questions is, ‘in what?’.

    He focuses on websites and/but see also: email and/or any other way that your "online" content might get syndicated, repurposed, republished, or in any other way reused.

    (tagged: wysiwyg )