29th July 2017

Another week, and one full of content again!

Jeff Bezos Briefly Tops Bill Gates as the World’s Richest Person – Bloomberg 

Apple confirms iPod nano and iPod shuffle have been discontinued – The Verge
Will anyone except tech journalists notice this?

I haven’t heard anyone speak the name iPod in a long time.

MacPaw acquires The Unarchiver and commits to… | MacPaw Blog
The Unarchiver app for macOS is probably the most popular one of its kind (that isn’t a System app), and MacPaw are a great bunch of people! So this can only be a good thing (Unless I’m missing something?).


iPhone 7 — The Rock x Siri Dominate the Day — Apple
I like it!

Make time: Why we spend our most productive time on the wrong things (Google Cloud Next ’17)
Super interesting video here, packed with some great tips and lots of data!

(Don’t tell anyone, but Android from these kind of perspective looks really intriguing)

Tesla Project Loveday Contest Entry!
I’m not sure what this Loveday thing is (I’m honestly not that interested), but this video from Marques (MKBHD) is really good!

The bizarre physics of fire ants

On the Blog

What I’m Up To

Over the past week, I have done a few interesting things, mainly working on my app Hydrate, and a few other meta tasks.

I can’t remember exactly what was finished this week, but the main thing was the history view. So you can now see your water intake for the past 21 days! I was meaning to do this right from the start, but I really couldn’t be bothered! However over last weekend, I was away in Norfolk with rather bad internet, so I forced myself to get on with it then.

As for what else I was getting up to, Ghost (the blog platform this runs on) was updated to v1.0! Which meant (what I thought would be huge) migration task, as it used MySQL instead of SQLite, and also a few syntax changes for themes. The whole process actually only took me about an hour, so that was done in one lunch time at work.

It did get a bit bad though, as I got a bit trigger happy with linux commands, and ended up completely destroying the permissions. So everything slowly stopped working. In the end I realised I had everything backed up perfectly, so I created a new droplet on Digital Ocean and put it all back to normal! Lessons were learned!

29th July 2017

The second week of the new format, and I’m really liking it! It’s more manual collation at the minute, but I’m going to start investigation different ways to try and pull the data into one place easier.

In the initial format, I just used a tag on Pinboard, and while that is still serving me well for the “Interesting Links” section, I know I can do more.

Anyway, here it is:

A brilliant way to use Emoji on Macs that aren’t cool enough to have a Touch Bar.

Monzo – The Monzo Current Account Preview!
You can register interest for the Monzo Current Account! Wooooo!

We Are Still in Notification Hell
My thoughts exactly.

Apple’s Risky Balancing Act With the Next iPhone
Scale isn’t always a good thing.

Facebook’s secretive hardware division is exploring modular smartphones – The Verge
Is this the latest "cool idea" in Silicon Valley?


Why It’s HARD To Land on Mars
Not impossible, but hard.

The hidden oil patterns on bowling lanes
This is random, but super interesting. I’m definitely going to think about this next time I’m bowling.

Un albero un anno – One tree one year
We all tend to forget what goes on around us.

See Hummingbirds Fly, Shake, Drink in Amazing Slow Motion | National Geographic
It’s incredible how slow motion can help bring a new understanding to things.

Real-time Mixed Reality ARKit/Unity rig driven by HTC Vive | @normalVR
Maybe on of the best examples I’ve seen of Apple’s AR Kit, this time combining the experience of AR and VR.

Meet the Thirteenth Doctor – Doctor Who
So the next Doctor is a woman. Big Whoop. Whether she’s great for the role or not, it’s nothing to do with what’s down her pants.

On the Blog

What I’m Up To

This week hasn’t been super productive for me, I’ve mainly been at work and playing games.

One thing I have been working on though, is a very minimal Swift framework called “CHEssentials”. It’s not a big open source project or anything, but there are a bunch of things I always do when writing Swift apps, that I just want to stick in one place, so I can reuse them.

It’s quite small right now, but as I’m writing Swift, I’m always updating it. The most beneficial ones for me are the String/Date parsing, and rounding numbers.

You can find it on GitHub, and feel free to do whatever you want with it!

29th July 2017

Along with this blog, I also send out a weekly newsletter containing interesting links from around the internet, random videos, what I’ve been up to for the past week, and also some less regular sections like favourite podcast episodes!

You can subscribe to this directly at TinyLetter, except as found out a few times, it is not always a vey stable service – some issues took a while to send, and also as of today (29th July), my account has been flagged for abuse! (No idea why). Therefore, all issues will be uploaded and posted below.

Issue #4 – 4th August 2017

Issue #3 – 28th July 2017

Issue #2 – 21st July 2017

Issue #1 – 14th July 2017

29th July 2017

There’s a big change this week, and it’s the transition from being the “Weekly Links” newsletter, to the “Chris Hannah Blog – Newsletter”. A bit wordy, but that’s technically what it is, maybe it could use a better name.

Anyway, the new newsletter is an extension of the initial format, with it now covering a wider array of content. So instead of just being a list of links, it will include videos, what I’ve been up to on the blog, what I’m currently working on, and hopefully even more in the future.

I won’t bore you too much about it, but I wrote about the changes on my blog.

The distribution of letters in English words
Weird, but interesting.

Bundle Command Line Tool in macOS App
A great mini-guide from Sam Soffes, I’ll be using this myself!

[Exclusive: This is the 2017 Google Pixel "XL," with low-bezel AMOLED display and squeezable frame](http://www.androidpolice.com/2017/07/11/exclusive-this-is-the-2017-google-pixel-xl-with-low-bezel-amoled-display-and-squeezable-frame/ "Exclusive: This is the 2017 Google Pixel "XL," with low-bezel AMOLED display and squeezable frame")
I was a fan of the original Pixel, and I quite like the look of this one too. I can’t see anything pulling me from my iPhone 7+ though, especially as there’s literally no other way to enjoy iOS.

Why Security Experts Are Pissed That ‘1Password’ Is Pushing Users to the Cloud
I’m not a user of 1Password (I had a trial, but didn’t use it enough to warrant buying), but it doesn’t look like it’s going in the right direction.

Dash-dash it all! Apple’s bad beta decision on em and en dashes
I understand why people care about this stuff, but I always find these types of posts quite funny, and very #firstworldproblems.


Remarkable Time-Lapse: Watch Caterpillars Transform Into Butterflies | National Geographic
I found their method pretty weird, and maybe a bit unethical (on a minuscule scale), but this is a great video!

Scientists Fly a Drone to Collect Whale Snot | National Geographic
I bet you’ve never heard of that before.

How Penn Jillette Lost over 100 Lbs and Still Eats Whatever He Wants
It’s obviously a clickbait title, but there’s a lot of truth behind it. And it’s worth a watch.

The Reality of Indie Life 
A really great talk by Stephen Hackett about becoming an indie, the problems he faced and how he overcame them, and a few other interesting topics.

On the Blog

What I’m Up To

Right now I have a few projects in “progress”, some are really in progress, and there’s one still stuck in my head.

My biggest? project is Hydrate, and that is a water intake app for iOS, which is actually in Beta. It has over 100 beta testers at the minute, so this is one of my priorities.

Then there is the mini-project, which is the process of myself cleaning up my blog, and optimising everything to make it as lean as possible.

The final project, is something I have already wrote about on my blog, but just to put them all in one place – I want to make an alternative to Google Analytics. I’m not actually going “big” for this one, because it’s a personal thing that I want myself, but I think I know how I’m going to do it now.

28th July 2017

I’ve been working on a new app for a while now, and I’ve been meaning to write about it here on my blog, but I just keep putting it off. But as the beta process has been going for a while, and I think the development has progressed to a more stable (I mean slow) development cycle. Probably not good for most of my projects, but I’m treating this as a more long-term project. More specifically, I want to do each step well, so that in the end it’s a product that I want to use myself, and potentially a lot of other people too.

So, a slight break here, so I can explain what this project actually is.

In the simplest terms – it’s a water intake tracker for iOS. Being slightly more descriptive – it’s an app where you can manage your water intake, get a quick glance on how you are doing compared to your daily goal, and also look back and see how hydrated you were in the past.

That’s not the final description however, as I have many things I want to add to the application (which I will describe below), and I’m probably also missing out features that I’ve already implemented.

Oh and it’s called Hydrate. Original, I know.

There was no big reason for the app, except that I wanted to start tracking my water intake, and as an app developer, I thought I’d put the two together. I was actually asked on Twitter about the difference between Hydrate and other “competing” apps, my answer was what I just said – I’m making it for myself. If other people enjoy it, then that’s even better!

The layout and overall design is aimed to be as simple as possible, and therefore is designed around having “Quick Add” buttons, which you can set up with default quantities, making it even easier to add water intake. Mainly because, it’s not fun entering data as boring as this, so if I can make it quick, I will.

At the moment, the current features are:

  • View daily intake.
  • Add predefined quantities via Quick Add buttons.
  • Add custom amounts.
  • Set a daily goal – Which is the basis for the main ring.
  • Support for ml and fl oz (US).
  • Dark/Light mode – I just have to have a dark mode, and the other one is for “normals”.
  • View your past water intake (last 21 days).
  • Today widget with Quick Add buttons, to do it even faster.

Of course that’s not all the features I want to add, therefore I have a basic list of future main features:

  • Watch App
  • Make the ring animate.
  • Possible reward for hitting the daily goal.
  • A way to share your progress.
  • A maybefeature – Some way to add a drink when you start drinking it, which you can then tap to add to the actual data when it’s finished.

I’m most likely going to add more to this list, but that’s what I want to definitely (apart from the last one) add before I release.

If you want to try out Hydrate, then the beta process has already started, just enter your email on the Hydrate website, and I’ll add you to the TestFlight group!

27th July 2017

Look what’s arrived! 😍⌨️ #apple #keyboard #retro #appleextendedkeyboard #AEK #AEKII

26th July 2017

John Gruber:

In Markdown, you can create unordered lists using any of three characters as the “bullets”: asterisk (*), hyphen (-), or plus (+). Why all three? More or less: why not? Better to let people choose the character that feels most natural to them. I know a lot of Markdown users choose different characters for different levels of hierarchical lists, and that went into the original thinking as well.

I’ve always been curious which list markers people actually use, so I did a poll on Twitter. The results:

  • 42% Asterisk (*)
  • 54% Hyphen (-)
  • 04% Plus (+)

For what it’s worth, I’m a hyphen user. I’m not against using a plus, because it still feels natural. But I can’t understand using an asterisk, when they’re used so much elsewhere in Markdown.

23rd July 2017

Working on the history view in #Hydrate!

19th July 2017

Further proving their deep interest in machine learning, Apple have launched the "Apple Machine Learning Journal".

As they put it:

Welcome to the Apple Machine Learning Journal. Here, you can read posts written by Apple engineers about their work using machine learning technologies to help build innovative products for millions of people around the world.

They’ve kicked it off with ‘Vol. 1, Issue 1’, titled "Improving the Realism of Synthetic Images":

Most successful examples of neural nets today are trained with supervision. However, to achieve high accuracy, the training sets need to be large, diverse, and accurately annotated, which is costly. An alternative to labelling huge amounts of data is to use synthetic images from a simulator. This is cheap as there is no labeling cost, but the synthetic images may not be realistic enough, resulting in poor generalization on real test images. To help close this performance gap, we’ve developed a method for refining synthetic images to make them look more realistic. We show that training models on these refined images leads to significant improvements in accuracy on various machine learning tasks.

I can imagine the content being well over my head, but I’m going to enjoy keeping up with it.

17th July 2017

Ever since purchasing a pair of AirPods about a month ago, I’ve been using them every single day. Usually when I’m commuting to work, or when I’m at work. The case is usually stored in my bag, or on my desk. But occasionally I’ve kept it in my pocket, and I’ve noticed that it’s caused issues with my train ticket.

A few days last week I noticed my train ticket stops working completely after the first barrier I walked through, I presumed it was an issue with the barriers, but it kept happening. Then for some reason (I can’t remember why), I thought about the magnets in the AirPods case, and that the little paper ticket is based on a magnetic strip on the back. So the next day I kept the case well away from my train ticket, and it didn’t have any issue. I’ve done this every day since and it seems to have cured my problem.

I saw someone have a similar issue with a Hotel key card on Reddit, and it reminds me when BlackBerry cases used to cause the same problem, due to the magnet in the case.

So just a little warning, make sure you keep your AirPods away from anything that uses magnets to store data! In my case it’s not really an issue, as I can just show my ticket and get through the barrier. But when it’s a work pass, or something even more valuable like a bank card, it’s a whole different problem/