• Utilising Live Photos

    Every iPhone since the 6S has had the ability to shoot Live Photos (a photo with the surrounding 1.5 seconds stored as video). There is nothing breakthrough about this ‘file format’, but I find them to be one of the nicest features of iOS. The video captured has a low frame rate (something around 15 fps) and takes up relatively little space. Unless you are completely void of storage space on your phone then I see no reason not to leave them enabled.

    I wanted to write this post to share some uses of Live Photos that may be less apparent.

    Instagram Boomerangs

    Any live photo can be turned into a boomerang long after you took the photo. This is particularly nice as you can just quickly open the camera from your phone lock screen, take your pictures and later convert those live photos into boomerangs. To do this you need to go to the stories camera on Instagram, swipe up to view your camera roll, select a live photo and then press hard (3D touch) on the photo to turn it into a boomerang.

    Google Motion Stills

    This app is pretty simple but it can help you get much more use out of your live photos. You can convert them to GIFs, convert them to videos and also loop them. The best thing about this app though is it’s motion stabilizing. A shaky live photo can be perfectly still after be resaved as a Live Photo using Motion Stills. I regularly use this on my Instagram posts in order to get videos where only one part of the image is moving. I’ve also used the video export of this app quite extensively in order to create a holiday video where half the content was just the video portion of the Live Photos I took whilst away.


    Darkroom has become my go-to photo editing app. I love not having to import photos, being able to batch edit efficiently and the fact that it properly uses Photos APIs so that you can ‘modify’ photos instead of saving a copy (I used to end up with multiple copies of photos I was editing in various apps). Recently the app added support for editing Live Photos, in that you can apply edits to a photo and those same edits are applied to the video portion of the Live Photo. I use a combination of this and Google Motion stills to create many of my Instagram posts.

    The only caveat of using Darkroom and Motion Stills to create videos for posting on Instagram is that Instagram requires videos to be longer than 3-seconds. To get around this I created a simple app that queries your photos library for Live Photos. You simply tap on the photo you wish to post on Instagram and it will extract the video component of the LivePhoto, loop it as many times are required for you to get a 3 second video, and save it to your camera roll.

  • Podcast List - February 2018

    I typically listen to a least one #podcast a day, the topics of which vary significantly. Here’s a list of some of my favorites podcasts this past year.



    I was recommended this podcast by a friend whilst in London and listened to all eight episodes during and after the train ride home the next day. It is one of the most interesting stories I’ve heard. It reminds me of Netflix’s Making a Murderer but is so much more personal. I don’t want to say too much about it as to not spoil the surprise, I would just advise you to go and listen to it now.

    They Walk Among Us

    I found They Walk Among Us whilst googling for crime podcasts and have been listening to each episode since. It tells the story of real British crimes and can be very dark at times. One odd/funny element is that Benjamin who narrates it uses the exact same voice and intonation to tell you about this weeks shaving sponsor as he does to describe someones brutal demise.


    After finishing S-Town I was keen to hear more of the same and found that its creators had previously made Serial. I wouldn’t say it is as interesting as S-Town - it’s much slower paced - but I certainly enjoyed it.

    Up and Vanished

    Up and Vanished was created by a filmmaker - Payne Lindsay - who watched Making a Murder and listened to Serial and was inspired to make his own mystery podcast. Payne researched unsolved murder cases and came across the disappearance of Tara Grinstead. The podcast gets more and more interesting as it goes on. I would recommend you not to research it too much and just listen.



    Another podcast that I was introduced to by a friend. Radiolab produce shows about a massive variety of topics that are always thought-provoking and insightful. The podcast is really well produced - it always has cool sound effects and music and the issues they present have been researched by many people over months and sometimes years.

    The Infinite Monkey Cage

    A recent addition to my podcast playlist. This is a funny and informative show that is quite like watching QI but with more focus on certain topics in each episode. There are experts on each episode telling you about their area of expertise.

    No Such Thing As A Fish

    This show is 100% QI-in-a-podcast. It is hosted by the researchers at QI and is full of facts and puns.

    The Accidental Tech Podcast

    The Accidental Tech Podcast is the most Apple-y, tech-y podcast I think there is. There are some really great in-depth discussions about how Apple as a company is doing. Marco one of the hosts actually writes the podcast app I use - Overcast - and it can be really interesting to hear about their view of the iOS development world.


    VIEWS with David Dobrik and Jason Nash

    I watch pretty much every new David Dobrik video and it’s really interesting to hear the stories behind them. These podcasts can be ridiculous and completely millennial-focused but I always find them funny. It’s nice to hear a YouTuber who just openly talks about the money they’re making and how they genuinely think that they are so lucky to be in the position that they are in. Plus, he has a Tesla.

    The High Low

    My girlfriend got me on to this podcast, it’s vastly different from anything else I listen to but has become a podcast I look forward to listening to each week. It is hosted by Pandora Sykes and Dolly Alderton, two freelance writers who both went to private all-girls schools. The podcast is centered around pop culture and feminism, and I find it really interesting to hear their thoughts on topics in the news each week.

    How I Built This with Guy Raz

    How I Built This is a podcast where Guy Raz interviews the founders of massive companies. My favorite episodes include the founder of Patagonia, Five Guys and Instagram. It’s interesting to hear the differences in how people ‘made it’, and similarly interesting to hear how similar these stories can be (it’s amazing how many founders parents had $50,000 to invest in their offspring’s companies).

  • Things 3 + Workflow

    I started using Things as my to-do list on iOS back in December and it has become one of my favourite apps to use. The latest version (3.4) added powerful deeplinking that allows you to create shortcuts and automate tasks within the app. For example, you can open the following URL on your Mac or iOS device to go straight to the today list - things:///show?id=today.

    These deeplinks can perform complex generation of tasks that would be cumbersome to do manually. Inspired by a MacStories post I decided to use the app Workflow to automate my timers for making bread. A good bread doesn’t take a lot of hands on time to make, but it does require attention every few hours for a day (or more). Different flours with different rising agents can have very different schedules and I was keen to find an easy way to keep track of this without always having to refer to a book.

    Workflow is an iOS app in which you write miniature programs to perform whatever tasks you like - you can read all about it on Macstories. The workflow I created gets the current time and works out the date and time of each step in the chosen recipe. These strings of date and time are then injected into a JSON body that I created using Things 3’s Swift developer tool. Here’s a trimmed down copy of this.

        "type": "project",
        "attributes": {
          "title": "Saturday White Bread",
          "notes": "Created Thursday 23/02",
          "items": [
              "type": "to-do",
              "attributes": {
                "title": "Autolyse",
                "when": "2018-02-23@15:20",
                "checklist-items": [
                    "type": "checklist-item",
                    "attributes": {
                      "title": "500 grams flour"
                    "type": "checklist-item",
                    "attributes": {
                      "title": "360 grams water. 35°C"

    The when attribute of the Autolyse step in this case would be swapped out with a calculated variable in Workflow. I created two workflows to manage the whole action, one workflow takes an input of minutes, adds those minutes to the current datetime, and outputs a string in the YYYY-MM-dd@hh:mm format. The second - and main - workflow will continuously call the previous workflow with the minutes required for each step of the recipe. It puts the resulting datetime strings into a constant json body; uses a regular expression to remove the minify the json; and finally url encodes the resulting string. This is then opened in Things and the project with to-do items with reminders are created.

    A final adjustment I added was the ability to preview the times for the respective recipe without having to create the todo list. This took an if-else block in the main workflow that gives the user options of whether to preview the times or do make the todo list. Doing this I can check if I have time to make a specific bread from my lockscreen or even my watch. Workflow from lockscreen

    You can find the full workflow here and watch the workflow in action below.

  • Beginnings In Bread

    A month ago I bought a copy of Flour Water Salt Yeast(FWSY) by Ken Forkish. In June of last year I bought his newer book The Elements of Pizza, which I really enjoyed. I find it particularly good for a number of reasons, the two key ones being that although it is written by a professional baker, it does not use unattainable utensils for the casual home baker and that it follows a traditional approach to baking - there are no overly fancy, or unecessary, modern quirks.

    A week after buying FWSY I ordered a Lodge Cast Iron Combo Cooker and ever since have been baking fresh loaves twice a week.

    This week I baked my first fully naturely leavened loaf and was delighted with the results.

    Sourdough crumb


  • Another Shot

    let blogName = "A long rory short"
    let author = Author(firstName: "Rory", lastName: "Bain")
    let blog = Blog(name: blogName, author: author)

    I have tried many times over the last few years to start a blog. I have failed as many times. This time I have decided I will make a blog and on it I will write about any topics I feel interested in. Previously I quickly lost interest as I felt that I didn’t have enough good content to keep up a site that was constrained to one topic. Here goes.