• EndeavourOS: Getting Started

    I’ve been an enthusiastic user of Linux since reading The Cathedral and the Bazaar, an essay that attempts to describe “exactly what it is that makes the Linux community such a fountain of good software”. EndeavourOS is a terminal-centric, rolling distribution that gives access to the latest software in the Arch Linux official repositories using…

    Read more

  • iOS: Update UINavigationBar Title on Scroll

    Apple introduced large navigation bar titles in iOS 11 with the prefersLargeTitles property. When this property is set true then the screens navigation title will be displayed prominently and on scrolling will reduce to a compact display. The “prefers” in the property name means on smaller devices the large title will be pre-scrolled and not…

    Read more

  • Linux Commands: Create a Bootable USB Flash Drive with the dd command

    If you find yourself in this position of wanting to create a bootable flash drive on Linux, but your distribution doesn’t have an application installed, there is a command line tool for that called dd. You need to download an iso file from the distributions website. I’m using Pop!_OS in this example. The first step…

    Read more

  • Natural Language Framework: Sentence Embedding with Swift

    Natural Language Processing (NLP) has been on a tear since 2018 (though is still regarded as an unsolved problem), with deep learning techniques producing breakthroughs e.g. OpenAI’s GPT3 can “produce human-like text” but requires extensive computing resources and a massive amount of data to build the language model. Transfer Learning is the technique that allows…

    Read more

  • Swift on Linux: Package Manager Resources

    A new feature for Swift 5.3 is Package Manager Resources which allows files such as .md, .png, .jpg, .txt and .pdf to be explicitly designated as resources and included as part of the built product for a SPM module. The following is a demonstration of Package Manager Resources with a SPM CLI application called Dapper,…

    Read more

  • Swift on Linux: What Kind of Applications Will I build?

    The iOS Developer Community Survey has a section which asks respondents to rate their current adoption of Swift for building applications that will deploy to a server environment. The adoption is quite low (~3%). One highly rated standout though, is the Vapor Framework for building web applications in Swift. The survey results of similar programming…

    Read more


I’ve been working as an enterprise software engineer for more than 15 years, using the .NET platform and recently building for iOS with Swift. My degree is in Business Studies, majoring in information systems, where I learnt the fundamentals of software engineering for building systems for business.