Weeknotes #2

This week was the first time I’ve started with these weeknotes in mind, and by doing so I’ve kept a draft of this open so I can keep notes on what I’ve been doing/reading throughout the week when something interesting comes up. At the moment, because this is all in WordPress it means I’m writing drafts directly into my site with a tab open at all times, that’s why I’ve been thinking of moving this to potentially a Node app or similar. It’ll at least mean I can start jotting down some quick notes in Markdown and not have to worry too much about formatting.

Anyway, back to this week. I started the weekend by signing up to Wes Bos’ fantastic ES6 for everyone course. I’ve been really enjoying the short video explanations so far, they’re really practical and easy to understand. I’m especially liking that he doesn’t use any foo or bar references in his examples, it’s something I really dislike in tutorials and find it really hard to follow. So far, the course has cemented in my mind how the scoping of the new let and const statements work, being block scoped as opposed to function scoped like var. I’ve also been using arrow functions for some time at work already but the course again helping me finally grok the scoping of this when it comes to the new arrow functions and more so in general too.

This week in terms of reading a couple of articles stood out. First, Darren Hall’s post on whether or not to inline SVG in your page for performance made me realise that while the method I’ve been using for a while has been useful in terms of pulling in SVGs and colouring them, I might need to rethink this for future projects. I’m going to try taking out the inline SVGs from the LDN WebPerf site this weekend to see if I get any improvements, so hopefully I’ll have an update on that next week. Also on the subject of performance and the WebPerf website, I’m going to be working to turn it mostly into a Progressive Web App soon or at least use some of the approaches aimed at creating PWAs. So it was great to read this article on how making the Washington Post a PWA has increased engagement on iOS even though not much of the PWA functionality is supported in Safari yet. It’s good to see that the PWA movement while including some specific features that lack broad support, still offers some benefits thanks to the approach it encourages.

I also spent a bit of time reading Aaron Gustafson’s post on Progressive Enhancement. It’s once again come around as the subject of a lot of posts and conference talks with an edge of controversy too, Aaron I think covers the topic quite broadly as well as some of the history and particularly looks into some of the attitude problems around Progressive Enhancement at the moment. I really like this section from the article:

“As a programmer, you receive a near constant barrage of commentary on your choices… often unsolicited. You’re using PHP? That’s so 1996! You’re still using TextMate?! You still use jQuery? How quaint! I’m not exactly sure where this all began, but it’s unhealthy and causes a lot of programmers to get immediately defensive when anyone challenges their language of choice or their process. And this hostile/defensive environment makes it very difficult to have a constructive conversation about best practices.”

Progressive Enhancement is something I’ve talked about a lot before and probably will do again, I just feel at the moment it has a bit of a PR problem.

Lastly on my second Weeknotes, I was looking at why the CSS Blend Mode I was applying to an image wasn’t working on iOS Safari, despite having the support for the property (I had it wrapped in an @supports so if it wasn’t supported there was meant to be a fallback). It turns out when specifying a blend mode in iOS you also need to have background-repeat: no-repeat applied. ¯\_(ツ)_/¯

That’s it for now, have a good weekend and catch you again next week!