When I first started working with promises I had the overly simplistic view that passing a value into reject
would mark the promise as "failed", and passing a value into resolve
would mark it as "successful". However, the latter isn't always true.
The browser cache is Vary broken
Jake, why are your blog posts always so depressing?
— Domenic Denicola (@domenic)
Well, I wouldn't want to disappoint…
Don't use flexbox for overall page layout
Progressive enhancement is faster
Progressive enhancement has become a bit of a hot topic recently, most recently with Tom Dale conclusively showing it to be a futile act, but only by misrepresenting what progressive enhancement is and what its benefits are.
Let's look at the real-world benefit of progressive enhancement.
Having fun with <image>
Did you know that this works in every browser?
<image src="f1.jpg">
Solving rendering performance puzzles
The Chrome team are often asked to show the process of debugging a performance issue, including how to select tools and interpret results. Well, I was recently hit by an issue that required a bit of digging, here's what I did:
Animated line drawing in SVG
I like using diagrams as a way of showing information flow or browser behaviour, but large diagrams can be daunting at first glance. When I gave talks about the Application Cache and rendering performance I started with a blank screen and made the diagrams appear to draw themselves bit by bit as I described the process. Here's how it's done:
Progressive enhancement is still important
About 5 years ago it felt like the progressive enhancement battle had been won, but after watching the reactions to Nicholas Zakas' "Enough with the JavaScript already" it seems all the old arguments are back with reinforcements. Well, I'm wearing my angry-pants and I'm ready for a jog down ranty lane.
I've only gone and done a blog
I've been promising myself I'd start a blog for about 100 years now, but it's finally here! I decided to build everything from scratch to force myself to learn Vagrant, Puppet and other general sysops stuff that was on my "to explore" list. This was dumb in terms of how long it took me to get everything up & running, but I have no regrets.