Douglas Hill’s posts in 2017

15 January 2017

Even if you’re not interested in parental controls, this Nintendo Switch video is delightfully cute: »

19 January 2017

It’s time to find a better sweet spot between the built-in features of UITableView and the flexibility of UICollectionView.

We didn’t use any table views in Jamie Oliver’s Recipes 3.0 in 2014. Lots of custom collection view layouts. »

21 January 2017

PSA: @VodafoneMalta accounts have a hidden 32 character password limit. Sign up accepts longer, then fails next time you log in. »

Makes me feel fortunate to have both blue icons and white icons in my dock. »

23 January 2017

This is awesome »

I feel so futuristic on Mondays. »

Whoopsie Photos. Take care when combining concurrency and mutable data structures.


24 January 2017

New post looking at that peculiar NSItemProvider API that doesn’t work properly in Swift, amongst other things things. »

This iOS 10.3 rating API… I hope this doesn’t mean more apps show annoying nags. Please! »

2 February 2017

At PSPDFKit, we strive to hire the best people for the job, regardless of where they are in the world. Here, I want to share how I’ve been making the most of remote work. Read more »

I wrote about how remote work at @PSPDFKit lets me have a great life working from all over the world. I love it.

My favourite photo in the post is this one from the Tokyo Skytree. That was a fantastic afternoon at work.


3 February 2017

With the big price rise on the UK iTunes Store I’m considering switching to a Euro store. Wondering if the savings outweigh inconvenience. »

4 February 2017

Less than a month until Nintendo Switch. I’m so excited about this. Seems perfect for my traveling lifestyle. »

Take care: there can be multiple processes of an iOS app extension running, and only one process can use a background URL session at a time.


10 February 2017

Stop QuickRadar annoyingly floating over other windows:

defaults write com.quickradar.QuickRadar QRWindowLevel -int 0


13 February 2017

iOS could do better animating touch down. Watch out for harming perceived speed and making it feel like poking jelly »

18 February 2017

If articles are still missing in @instapaper after the outage: Settings > Advanced > Re-Download All Articles brought them back for me. »

19 February 2017

On my way to Vienna for a week with the whole @PSPDFKit team. Going to teach each other a lot and have great time. »

25 February 2017

On the train out from the PSPDFKit retreat. Like a private conference with great people and delicious food. Work hard play hard all the way! »

27 February 2017

I made a pull request for GitUp adding a text size setting because it’s important to be able to read comfortably.


7 March 2017

iOS keyboard suggestions just generated ‘this app should have been free’, which suggests the language model was trained on App Store reviews »

9 March 2017

Remove things that aren’t useful to share from zip files from Finder’s Compress command:

zip -d zipfile "__MACOSX*" "*.DS_Store"


Some really nice new UI features in this release. Annotate PDFs with Apple Pencil like a pro. »

26 March 2017

Been trying to make a new @iTunes Store account.

29 March 2017

Excited about WWDC and will be there ticket or not, and in SF for all of the week before. »

4 April 2017

A last minute ticket for the @_upgradefm London meetup tomorrow showed up. Hooray! »

TIL on a Mac while dragging a file and the mouse is over the desktop, press space bar to show the whole desktop. Not sure how useful this is »

5 April 2017

Thank you @imyke and @jsnell for the meet up this evening. Looking forward to the WWDC event. »

6 April 2017

WhatsApp messages received between backing up an old iPhone and authorising the app on a new iPhone are lost. Gone.

You can’t even see them on the old device as it gets deauthorised.

It’s crazy to me that WhatsApp is so popular despite lacking access from any device with a consistent view of your data. »

11 April 2017

Did you know iOS has a very polished UI for reading all text on the screen aloud?

Settings > General > Accessibility > Speech > Speak Screen


13 April 2017

Apple bug screener asks for sysdiagnose and I say nope. I’m not being unreasonable am I? It should be easy to report a simple problem.

This isn’t an isolated case either. Had a few recently asking for logging. »

14 April 2017

There’s no API in Foundation for localised formatting of lists like icu::ListFormatter. Hope this comes sometime. »

18 April 2017

Xcode automatically quitting at inconvenient times due to an incoming iTunes update ‘behaves as intended’. 😞 »

24 April 2017

One of the USB-C ports on my LG UltraFine 5k display has died after less than four months. »

9 May 2017

Arrived in Berlin. Here for a couple of weeks. »

10 May 2017

I played a lot of Fire Emblem Awakening before I realised I hated it. Seems fun then unleashes huge punishment for failing. »

14 May 2017

Ready for #UIKonf kayaking. 80% chance of thunderstorm! It’s going to be awesome. »

16 May 2017

Swift is so funcy. Kotlin is much more fun. #UIKonf »

I work for an awesome company. »

Annotating with Apple Pencil — it’s fast and great for avoiding paper. »

19 May 2017

Using Slack in Safari instead of the Mac app is still working great for me. »

20 May 2017

Been getting more unknown phone calls recently. I think the best fix in 2017 is to plug into iTunes and set a silent ringtone.

That anyone can ring a loud bell in your house (and now your pocket) at a time of their choosing just isn’t acceptable anymore. »

22 May 2017

I’ll be in at WWDC on UK general election day so I used @PDF_Viewer to fill in the form for proxy voting and flatten the result. »

23 May 2017

Thanks for putting it on. Excellent conference and always great to come to Berlin. #UIKonf »

After two fantastic weeks in Berlin it’s time to leave. Love it here. Cool stuff going on and easy to get out to green places. »

26 May 2017

On my way to San Francisco for a week before #WWDC17 »

27 May 2017

When the text of a link in an HTML is a nice URL, but the actual href is a tracking redirect 😔 »

If the built-in iPhone Weather app is stuck not updating location, force quitting doesn’t refresh it, but switching between °C and °F does. »

28 May 2017

I had a pleasant run up to the Marin Headlands this afternoon.


Can confirm higher value Apple Pay purchases work at M&S. Useful for clothes. »

I’m a happy outlier »

Picking up my Certified Organic Produce at the farmers’ market. »

29 May 2017

Universal Clipboard is really convenient for joining a Wi-Fi network on multiple devices. »

30 May 2017

Anyone in SF want to meet up this week? »

When are the planes with USB-C coming out? Get with the times you humungous flying metal tubes. »

31 May 2017

Hoping to make it over to this »

I like seeing people from so many places in Converging soon! »

1 June 2017

I’m sorry, but this brings me joy. Do we all need to use the same design style? 😍 »

Working at 222 Second. Feels like coding in an art gallery. »

Good practical article on nomadic full time work at @DuckDuckGo. Respect for making this work with so many meetings. »

It’s alive! Loved Clear but not sure I could go back from @OmniFocus now. »

2 June 2017

Regretting leaving my 3DS at home this trip for the flight back. »

3 June 2017

My number one wish for iOS 11 is the irritating trap, the ‘Touch ID or enter passcode’ screen, is removed. Never ever want to see this.

1 day later: This just annoyed Craig in the keynote demo. »

4 June 2017

Is it expected to tip Lyft trips (using the app) here in California? »

Turned down my WWDC United Kingdom pin. I can’t wear that. »

5 June 2017

Nice one of the SF cablecar made with #MomentoGIFs


iPad 😍

All of it! »

Name for large screen non-portable iOS device: HomePad. »

Those were always the best sessions. »

Apple TV has had this for a while. Very convenient. »

6 June 2017

Xcode 9 defaults to hiding the toolbar in full screen (how I always use it) then has an option to show it. An unsure change.


7 June 2017

Long presses punish hesitant users, and slow down confident users. »

Box selection? I already radared »

8 June 2017

On the other hand, I like being able to choose to view the Objective-C definition even when writing Swift. »

Asked in the labs about multi-process Core Data and somehow this didn’t come up 🤔. Waiting for the session video. »

9 June 2017

Xcode has a particle editor but not an integrated bug reporter

Brisk is a pretty nice Radar Mac app though »

10 June 2017

Antlers huh? Only Canada.


Had a fantastic week at WWDC. Met so many great people and learned a lot. Felt a bit like a week at university.

Looking forward to seeing everyone again next year when we’ll have more great apps and frameworks. »

11 June 2017

San Jose ✈️ Vancouver »

13 June 2017

iPad Settings > Privacy > Location Services has a Weather in the list but there’s still no Weather app. »

Convenience of contactless and Apple Pay here in Canada is undermined by 50% rejection and having to authorise with pin instead. »

Not sure why Paper Plane shows up with data detectors here. Tapping it shows the same info as selecting and choosing Look Up.


14 June 2017

Best to determine layout change points depending on the ideal width of the content you’re displaying. Should depend on text size. »

When I profiled @OmniPresenceApp with 1000s of files (as you do) nearly 50% of startup time was spent in open() reading 1000s of tiny plists »

16 June 2017

I bet this is common, but noticed two departures at the same time, with only one runway. I assume one is guaranteed to be delayed.


18 June 2017

Restaurant gave me a steak knife and a spoon (instead of a fork). Tried to think of dishes this would work for. »

22 June 2017

Disappointed to learn iPad doesn’t do NFC Apple Pay. Wanted to try the big iPad Pro in a shop or restaurant — or on the tube. »

23 June 2017

Calgary ✈️ London, after a fun trip touring Vancouver and the Canadian Rockies. »

28 June 2017

WWDC app shares to email (or anything) with #WWDC in prepared text — hashtags in emails must be the new cool thing. »

29 June 2017

Apparently writing systems that switch direction on each line were a thing, and this was called boustrophedon. »

Typesetting × maths. I like this post such a lot. »

1 July 2017

I’ve published a release of my fork of @GitUpApp that lets you change the text size.


Magic Spell, my bulk spell checking Mac app, is now free.

I want to make Magic Spell more useful and fit in with automation, but I have more exciting projects to work on first. »

2 July 2017

Yes! These diffs are better for getting an overview of what’s changed. Also no Swift noise. »

That Original iPhone Innovators video from the Computer History Museum: good fit for youtube-dl > extract audio > Huffduffer > Castro »

14 July 2017

Oops: only just noticed I’ve had Safari JavaScript turned off on my iPad for several days. Enough stuff works that I could do this more. »

18 July 2017

Coconut Battery reports an iPhone battery has 54% of design capacity but people in Apple store are claiming 83%. One tool doesn’t work.

I’m feeling cynical and inclined to think the people in the Apple store are deliberately misreporting to get through people more quickly. »

20 July 2017

This PDF parsing and rendering all in the browser is some crazy tech. Works astonishingly well. »

21 July 2017

Why does pod install clone CocoaPods/Specs.git when the Podfile doesn’t use anything from there? Taking ages. »

22 July 2017

We’ve basically come back to a manual sync button, but it is a nice balance of saving resources and being useful. Even uploads without Wi-Fi


I’ve updated my fork of GitUp to restore standard text functionality and remember spelling and substitution settings


23 July 2017

Don’t forget you can also drag and drop files onto the Simulator. »

Not a good idea to preface your app update notes like this. Get straight to the point. @NatWest_Help


25 July 2017

We launched PSPDFKit Instant today, which makes it easy to build apps that sync PDFs.

Instant has very cool real-time collaboration, and you can try it out at

I’ve been working mostly on the Instant iOS framework but also the product as a whole. I’ve learned a lot seeing all the parts fit together. »

3 August 2017

Also our first update to Instant with a few nice fixes. Let the annotations sync! »

4 August 2017

Confirmation from Radar: iOS Feedback app is intended for public beta users. Unclear to me why it’s included in developer betas. »

5 August 2017

I feel well informed about the various available products and can make confident purchasing decisions. Or not.


6 August 2017

Minimalist new lock screen design or beta software bug?

(The pure black is intentional.)


8 August 2017

Apparently I’m using a developer preview of Safari 11. I had no idea. »

17 August 2017

2 min podcast where @manton2 channels Harry Potter to seek better code quality ❤️

Also Prisoner of Azkaban: my favourite. »

18 August 2017

I’m leaving Wi-Fi calling turned off for a very simple reason. It’s so silly this feature has this flaw.


19 August 2017

Mac was low on storage space. Turns out I had 220 GB of ‘A Document Being Saved By Xcode’. Was quick to find with @DaisyDisk. »

On my way to my fifth (!) @PSPDFKit retreat. Time flies, as do I. LGW ✈️ FLR »

26 August 2017

Yes: may result in longer battery life by not making the display unnecessarily bright. Not feeling great about this soft deprecation.

(In the iOS 11 beta, Auto-Brightness has been moved to Accessibility and turned on if it was off before.) »

Seems huge development resources doesn’t fix double height status bar bugs.


8 September 2017

Realised that Mac/iOS show batteries going down from RtL when progression is usually LtR (in English). Now I can’t unsee and it looks weird. »

It ought to show your iPhone(s) and Mac(s) too. »

9 September 2017

14 day conference on a cruise ship! Aimed at nomads. Cool idea but not for me. »

12 September 2017

What about continuous curvature? »

Looks like I didn’t miss the good stuff while at the beach. »

Need a Twitter app with stream delay correction, reordering tweets. I seem to be about 1 min behind reality. »

Impressed by how many new videos there are. All in the WWDC app, which ought to be renamed to the Developer app. »

Me too. Or even the size of the 4. Screen would still be tall enough.

iPhone 4 is still my favourite industrial design. Glad to see the return of glass both sides on the X. »

13 September 2017

Yes. Size classes are simplified mode. Make layout decisions based on available space and what your app needs to show. »

Missed yesterday that the iPhone X band is Fe rather than Al. Back to steel and glass, just like my beloved iPhone 4. »

15 September 2017

Metroid Zero Mission came out 13.5 years ago. That’s half my life. Today we can celebrate the release of the first 2D Metroid game since.


16 September 2017

UK trains have somehow added contactless payment to ticket machines that doesn’t work with Apple Pay. Didn’t think this was possible.

See Somehow not true for UK trains.


Also remember Wolfram Alpha (and therefore Siri) knows about Pokémon. For example »

18 September 2017

For me too. Even with indexing disabled. Often locks up for ~10s switching to the find navigator. »

19 September 2017

Don’t be constrained by Apple’s size classes. Use whatever layout suits your app, like this. »

20 September 2017

In case anyone is wondering because the new App Store sometimes doesn’t show IAPs, Kaleidoscope for iOS costs £20. »

22 September 2017

One common use of the iOS 11 iPad dock for me is quickly checking the date on the Calendar icon. »

29 September 2017

Rolling back updates is one of the 3 tentpole features of this LTE router. Baffling to the point of being amusing. Such confidence.


4 October 2017

Or change at Euston?


Been a good two days with @NSLondonMeetup and my first time at @todo_london. Even so, not enough time to talk to all the people I wanted to. »

5 October 2017

My favourite improvement of many is that it’s easier to integrate our PDF annotation sync product, Instant, into your app. Less code needed. »

I version all my Xcodes. Now trying switching between them using a symlink instead of xcode-select to avoid needing sudo.


8 October 2017

Updated my fork of GitUp: fix for High Sierra; made it easier to find master in a long list of branches. Very handy. »

9 October 2017

Doesn’t seem to be possible to get off iOS betas after device detects update. I can’t install 11.0.2 because the 11.1 beta is in the way. »

Dodgy shift key prompted me to remap cmd-o to Xcode’s Open Quickly. I like it better. Never use the regular Open anyway. »

18 October 2017

Suggestions are fun and useful for generating text quickly for debugging. The joy of being an iOS developer! »

19 October 2017

My MacBook Pro is in for repair right now. Left shift key stopped being reliable. Used it ~daily since early January. »

23 October 2017

I was thinking it would be convenient to look up HTTP status codes in @alfredapp. Found a Workflow already exists.


24 October 2017

iOS data protection seemed scary but I looked into it and it’s quite easy. I wrote a straightforward how-to post. Read more »

26 October 2017

TIL finding the number of items in an array of arrays using valueForKeyPath:@"@sum.@count" is slow because… it creates a load of strings?!


10 November 2017

Was thinking about this while watching the Xenoblade 2 Nintendo Direct on my Switch. In some ways it’s better for video than my 13" iPad.

The Switch comes with a remote control and kickstand. It’s a better mini TV. »

14 November 2017

When my TouchBar MacBook Pro had the top case replacement for keyboard problems they seem to have also replaced the battery. That’s nice. »

16 November 2017

This bin has a bin icon on it. This is probably really common but I didn’t notice the redundancy before.


London ✈️ Singapore

Strange catching the last flight of the day. Don’t usually see an airport so empty. »

24 November 2017

Did you know the iOS Photos Pause/Resume Button is a link to foo://bar ?


25 November 2017

Given the prevalence of people using Assistive Touch to avoid pressing the iPhone home button, it makes some sense to enable the iPhone X’s swipe up for home on older iPhones.

Seeing people using Assistive Touch instead of home button fairly often here in Singapore. Seems illogical, but it’s reality. »

2 December 2017

I’m not seeing iOS crashes due to 2 Dec, but it looks like if you are then changing time zone (not date/time) would avoid the crash without undesirable side effects.

(Other than needing to convert the time in your head to know if it’s time for lunch.) »

🎧 Live now: Nintendo podcast for charity. The crazy thing is I’m going to sleep now and tomorrow morning they’ll stilll be broadcasting. »

3 December 2017

Two months in I didn’t know if the Nintendo Switch had a fan or not, but tropical heat + charging + downloading Xenoblade => yes it does.

I always play handhelds with headphones for more immersion, so I suppose even if the Switch fans did spin up I wouldn’t hear. »

5 December 2017

Log out and log back in worked for me. »

8 December 2017

I never ended up playing 2 on Wii U, so yay. »

12 December 2017

The new Apple text replacement syncing is amazing. Changes appear on all my other devices in 1 second. »

13 December 2017

When you loose your @duolingo streak because it cuts off days at midnight 😢. This is a poor match for my mental model of what a day is. »

15 December 2017

2 m of wet string can transfer data at 3.5 Mb/s. Sadly this wouldn’t be the bottleneck in many places. »

21 December 2017

🌴🏙 Singapore ✈️ London 🎄☁️ »

Had this too. Battery seems worn and Coconut Battery agrees. But Apple Store say all is fine and won’t take payment to replace the battery. »