Full stack web developer, interested in all the things, but especially the web, code, design, Linux, OS X, PHP, WordPress, JavaScript & robots.

HTTP/2 – A Real-World Performance Test and Analysis image/svg+xml

Our conclusions are therefore:

  1. HTTP/2 is faster in terms of performance and site loading time than HTTP1.x.
  2. Minification and other ways of reducing the size of the web page being served is always going to provide more benefits than the overhead required to perform this “minification”.
  3. Reducing the distance between the server and the client will always provide page loading time performance benefits so using a CDN is still a necessity if you want to push the performance envelope of your site, whether you’ve enabled HTTP/2 or not.

No real surprises, but if you’re interested in implementing HTTP/2, it’s worth a read. Talking of which, I still need to fix this.

Provisioning a new MacBook Pro

Last night, I set-up a new user account for myself on a new (new to me) MacBook Pro. I purchased the MBP (Retina, 13-inch, Early 2015) from a colleague, a Windows guy who found that he had no use for a macOS device. The MBP is practically unused (really, not a scratch on it) and it’ll replace my MacBook, which I have given to Becky as a replacement for her ageing 2009 MacBook.

Everyone involved in this deal seems happy with the outcome, my colleague has some extra cash money, Becky has a shiny new (new to her) MacBook, and I have a slightly more powerful device with a lot more ports.

I should probably mention that before purchasing the MBP, I had considered (read as agonised over) buying a new ThinkPad t460s and installing Linux on it, but after watching a few YouTube videos (such as this one) of people suffering all the usual Linux compatibility headaches, I thought to myself, “Bollocks to that, I want something that just works.” Also, I have said before that I believe my previous MBP (Retina, 13-inch, Late 2013) was the best computer I’ve ever purchased, and I’ve no reason to believe the 2015 model should be any different.

Anyhow, regardless of how or why a came to acquire another MBP, it occurred to me that I don’t provision these devices very often, so I thought it might be a good idea to detail the software I installed. Below is that list, sorted alphabetically.

  • Amphetamine
    Because sometimes I like to prevent my laptop from sleeping. I was using Caffeine, but it doesn’t appear to be available any more.
  • Airmail 3
    A pretty nice email client. I use it with my gmail account and it works well. Has lots of options and features, yet performance is still really good. Oh, and it’s pretty too!
  • Bartender 2
    I’ve been using Bartender for a few months now. It’s surprising how many apps want to give you a menu bar icon under macOS and it doesn’t take long before things start to look cluttered. Bartender takes care of cleaning things up for you.
  • cfxr
    For making cheesy 8-bit sound effects for web games and videos.
  • Chrome
    Probably doesn’t need an introduction. I switched from Firefox to Chrome sometime last year, due to its outstanding developer tools. I still prefer Mozilla and Firefox over Google and Chrome, but I’m pragmatic and tend to use the best tool for the job.
  • ColorSnapper 2
    Nifty little colour picking tool. Has a nice user interface and options for exporting colour values in lots of different formats.
  • Downie
    I get asked to download YouTube videos a lot, don’t ask, Downie makes the process trivial. Recommended by MBW Picks.
  • Dropbox
    I’m an ownCloud user, but I still keep Dropbox around.
  • Etcher
    A great tool for burning Raspberry Pi SD cards. A bit worrying that it’s such a big download (it’s an Electron app), but it does the job well, so it’s forgiven.
  • Final Cut Pro X
    I’m often tasked with creating videos and Final Cut Pro X is total overkill for my needs.
  • Firefox
    As mentioned, I’m currently a Chrome user, but I’m still rooting for Firefox, so I like to keep it around.
  • GIF Brewery
    Probably the single most important application of all time. See.
  • Git
    Again, no introduction required.
  • HandBrake
    The open source video transcoder. I don’t use it as much as I once did, but it’s still a handy utility to have installed.
  • Icon Slate
    A nifty little tool for creating favicons and more.
  • ImageOptim
    As a general rule of thumb, I run all images through ImageOptim before uploading them to the web. Its simple drag and drop UI makes the job a breeze.
  • iTerm2
    One of the best terminal applications I’ve had the pleasure to use.
  • Magnet
    A recent addition to my software toolkit. Admittedly, it’s not super handy on a 13-inch laptop, but it does a good job of window management when I attach my MBP to larger external displays, where I have more screen estate to play with.
  • Microsoft Remote Desktop
    I’d be happy to not use Windows at all, ever, but when you work on a Windows Domain it’s almost impossible.
  • ownCloud client
    I’ve been using ownCloud for several years now and I love it.
  • Pastebot
    A clipboard manager with lots of options and features, including filters for converting lists into HTML etc. Another app recommended by MBW Picks.
  • Permute
    A handy media converter with a nice drag and drop user interface. Handy for extracting audio from videos etc.
  • Pixelmator
    Described as “Full-featured image editor for Mac”, I just use it to remove odd artefacts from photos. Again, it’s total overkill for my needs, but it’s not overly expensive and one day I might call on it for more.
  • ScreenFlow
    I use ScreenFlow to record screencasts/demos of the projects I’m working on. It’s quick and easy to set-up and has a surprisingly good editor for adding overlays, annotations, captions, titles and more.
  • Sequel Pro
    My go-to tool for working with MySQL databases. It has lots of handy features and it’s a lot prettier than MySQL Workbench (these things matter, honest).
  • Sketch
    I moaned about the subscription licensing model, but it didn’t stop me from using it. Sketch really is a fantastic app.
  • Skitch
    A handy tool for taking quick screenshots with annotations.
  • SSH
    macOS ships with SSH, so I just needed to create a new key and copy the public key to my servers.
  • Sublime Text 3
    I’ve switch from Sublime to Atom, and back again. Sublime is currently winning my favour due to its raw speed and performance. If Atom and Sublime were to have a race, Sublime would lap Atom many times.
  • TextExpander
    I’ve not signed-up for their subscription model, but I’m still using TextExpander, I love it.
  • TextWrangler
    I use TextWrangler as my auxiliary text editor — when I’m working on a project in Sublime, but I need to make a quick edit in a file outside of the project. This happens a fair amount.
  • Transmit
    Used for mounting remote drives over SSH. There are other tools available (Mountain Duck, ExpanDrive), but Transmit does the job nicely.
  • Transmission
    For downloading Linux ISO’s and nothing else, honest.
  • Tweetbot
    Used for tweeting random dribble. Probably the nicest Twitter client in existence.
  • VirtualBox
    I’ve been a VirtualBox user for many years, it’s perfect for setting up development servers.
  • VLC
    Because no system would be complete without the Swiss Army knife of media players.

The end. If you’re reading this and you know of some software that I might be interested in (based on what you’ve seen above), please feel free to post a comment and let me know. Thanks.

Optimising GIFs for the Web image/svg+xml

Interesting that the first tip is to not use gifs at all.

Surprisingly, the lossless compression algorithm used on GIFs is so unoptimised that video formats such as MP4 or WebM will provide a smaller file size than GIF images. Because of this, one solution to the GIF performance problem is to not use GIFs at all, and to replace them with autoplaying, looping, HTML5 Video.

248: AMP – ShopTalk image/svg+xml

Getting AMP’d with AMP. We’re going to talk about the #hotdrama about AMP with a couple of AMP experts.

Before listening to this episode, I was completely uninterested in AMP. After listening, I’m still uninterested. The proponents did nothing to sell it to me.

That said, I can imagine how AMP could be good for end users. For example, last night I was listening to a podcast and browsing the web on my iPhone, I had just started reading an article on Boing Boing when a video advert started playing, which in-turn muted the podcast that I was listening to. Grrr. I’m thinking that AMP could have prevented this annoyance, but then again, I’m also thinking the owners of Boing Boing could also have prevented it by not deploying obnoxious ads.