Open Source

Bash / Shell Script, macOS Development, Nerdery, Open Source

Does Not Contain

I occassioanlly need to scan a folder and all of its subdirectories to see if any of them DO NOT contain files of a certain type.

I’m fully aware you can do this with some combination of shell commands, but I always spent 20 minutes googling for how to do it again every time I needed to. It was faster just to write this small utility myself.

I call it dnc, which stands for “does not contain”. You can download the source or a pre-built binary on GitHub. The builds aren’t notarized. So be sure to ask Apple if it’s OK to run this on your Mac.

Read the full post for an example of why I need this script.

Read More
Apple, Backups, iOS Development, Open Source, Personal

Digital Heirlooms

If you’ve followed this blog for any length of time, you’ll find that I take preserving our (my family’s) digital memories and history seriously.

However, if I were to die tomorrow, the app I made for my son and installed on his iPad this morning will stop working in one-hundred and ninety-two days. Not for any technical reason. Not because of future software incompatibilities. If his iPad remained in working order for another hundred years, it wouldn’t even matter. This digital heirloom will self-destruct as soon as my developer certificate expires.

And it’s all due to an arbitrary decision on Apple’s part.

I don’t think I’m being hyperbolic when I say that future historians and even archaeologists are going to revisit our time and be furious at the direction our industry turned towards using consolidation, monopoly power, and artificial restrictions to protect profits at all costs.

Read More
Bash / Shell Script, Hacks, macOS, macOS Development, Nerdery, Open Source, Shortcuts.app

Shelley

I’ve written previously about using Hazel on macOS to react to a new file appearing in a synced iCloud Drive folder and running commands. But I wanted a faster solution that I could trigger from almost anywhere – including an iOS Shortcut. A way to send a command directly from my phone (or maybe any other device?) to my Mac.

What I came up with is a tiny, macOS menu bar app I call Shelley – because as a friend told me, it’s a Frankenstein of a hack.

Read More
Backups, Open Source, Photography

Merging and Deduplicating a Whole Lot of Google Photos

The point of this blog post is to say that I’m preparing for an eventual move to another photo cloud service. I’m also trying to keep my local backups neatly organized. So, I wrote a small command-line tool to specifically deal with the Google Photos backup format that you’ll receive if you request a dump of your data.

It takes Google’s directory structure and all their duplicated files, merges, sorts, and deduplicates your photos and videos into a sane folder structure – the one I’ve been using for over a decade.

Read More
iOS Development, Open Source, Xcode

BespokeApp

I really don’t know if anyone has a need for this other than me. But I’ve built this app a few times for myself in the past, so last night I finally took the initiative to make it generic and reusable – both for my future self and anyone else who might find it useful.

It’s called BespokeApp. It’s a simple iOS app that gives you a tabbed web browser with the pre-defined websites of your choosing.

Read More
Apps, macOS, macOS Development, Open Source

Fastmail Wrapper for macOS

I keep looking through my archives of old, private coding projects – the ones that I built just for myself to solve a particular need – to see if I can find any that other folks might find useful. So, here’s another one I spent a few hours cleaning up recently.

It’s a native macOS app (wrapper) around the fastmail.com website that supports:

  • Multiple Fastmail accounts.
  • Native macOS notifications (and sounds).
  • Customizable Dock icon badges.
  • Keyboard shortcuts (⌘1 – ⌘9) to quickly open specific accounts.
Read More
Indie Business, iOS Development, macOS Development, Open Source, Xcode

DefaultApp

DefaultApp is an open source starting point a template. I maintained it in Objective-C for over a decade before finally porting it to Swift in 2018. Anytime I start a new app big or small, whether or not it’s something I plan on releasing publicly or if it’s just a small prototype or utility app I’m building for myself I start with this project.

With DefaultApp I can go from initial idea to writing actual code in thirty seconds.

That said, I would’t use this as the basis for a billion dollar corporation’s enterprise app. Or with a team of “100 engineers” “solving hard problems”. But if you’re a one-person development shop or a team of just two or three engineers building a typical macOS shoebox or document based app? Please take a look.

Read More
Nerdery, Open Source, Personal, PHP

Deactivated

I’m filled with rage and despair and also just sad thinking about what we in the tech industry unintentionally unleashed upon the world and then willfully made worse through greed and arrogance. This is my small contribution to make things better. It likely won’t matter. But it does give me some relief to have done something. Anything.

Read More