macOS Unicode Normalisation Is a Pain in the Posterior

In the sweet, sweet summer of 2013, I had the misfortune of encountering my first case bug. I had called a class FileExport, and placed it in a file named FilEexport. Silly me. Bloody thing took me forever to find, and once I did, I felt like a prized arse hole.

But we learn from our mistakes, so you can imagine how proud I feel telling you that I spent the latter part of last week tracking down a similar issue. Here we are five and a half years later, and apparently Max has learned nothing.

This changes now. Since High Sierra came out, and we got our grubby hands on APFS, it's actually really easy to create a place to do your work that is case sensitive. By leveraging the volumes feature of APFS, we can do it without having to create a partition.

As opposed to partitions, Volumes allow sharing space between different logical volumes, and don't have to have their capacities arranged ahead of time, which means I no longer have to worry about maintaining free space for my photo library vs having enough space for my Git repositories.

If you want in on this great deal, I don't blame you. Here's how:

Video showing the process of creating a case sensitive APFS Volume

From there, the volume is accessible at /Volumes/CS, or inside /Volumes and called whatever it is you decided to name your volume. I recommend something without spaces.

If you really like to go crazy, you can even symlink ~/Code to this volume, so that you still feel like you have all your stuff in your home directory.