A long time ago, in a different millennium, a young nerd convinced his beautiful wife to give up her SLR film camera, and switch to digital.
Boy, was that a mistake.
Physical vs Digital 🔗
With physical, printed photos, you put them in a box or in an album, and they’re on that shelf, over there. You can walk over and touch them.
Digital photos are different. Hard drives fail. Backups break. Online and desktop photo services are doomed to disappear. Entropy always wins.
My digital disarray 🔗
In my fight against entropy, over the last 20 years I’ve amassed several boxes stacked full of old hard drives from backups and old laptops and crashed servers. My family and I only had access to a small fraction of our photos and videos.
What I had was a disorganized mess:
- many, many duplicates from old backups strewn across thousands of directories
- lower quality images from online photo service backups
- a bunch of unreadable or corrupted photos from failed backups and bit rot and buggy photo service exports
What I wanted was a single, automatically organized and de-duplicated folder structure with all my original photos and videos.
I couldn’t find software that did this, so I built it.
When I got this working, though, I found that I was back to the boxes-of-photos problem: sure, you have the photo, somewhere, but it’s almost impossible, and certainly not fun, to find anything other than the latest photos you’ve taken. Your memories get ignored; you might as well have them in a dusty box next to your old photos. I resolved to make browsing a lifetime of memories fast, simple, and delightful.
After a lot of experimentation and some innovation, I realized that the rich metadata in these files could automatically provide structure to your library (see? PhotoStructure), and this led to inventing both streams and samples.
Related streams of photos 🔗
With physical photos, you have to decide what box or album to put the photo in.
But digital photos don’t need to live in only one place.
PhotoStructure tags all your photos and videos automatically with paths, like
Camera/Apple/iPhone XS, and
When viewing a specific photo or video, it’s easy to browse “nearby" photos and videos for all related tags. It makes for much more expressive and fluid navigation.
Samples to keep you interested 🔗
If you’ve used photo management software, the “home page” typically shows you your last-captured images. When I initially built PhotoStructure and used it on my own photos, I followed this approach. And I was surprised to find it uninteresting.
It turns out that the human brain is amazing with image recognition and pattern matching. We recognize patterns effortlessly—so easily, in fact, that we may find repetition boring. We find new patterns and images interesting, and even delightful.
I had quickly tired of seeing those same last-20-odd photos. I never opened up PhotoStructure because, just like that box of photos on the shelf, it was work to see what was in my library.
I changed PhotoStructure to show a random “sample” of images, and it felt like serendipity. When you click
When, you’ll get a “taste” of images from every year.
Every PhotoStructure page is different, and you’ll find yourself rediscovering and enjoying memories you haven’t seen for years and years.
How else is PhotoStructure different? 🔗
PhotoStructure is designed to be a safe, permanent home for all your photos and videos. To make this happen, things run a bit differently than you’re used to.
1. You’re running the show.
- PhotoStructure runs on your computer. That laptop you’ve got on the shelf, as long as it runs macOS, Windows 10, Linux, or can host Docker, has at least 4GB of RAM, and lots of free disk space, it will happily run PhotoStructure.
- This isn’t yet another cloud-based photo service that will go away in a year, along with your photos. Your photos and videos safely stay with you, and always will.
2. If you have a spare 2 minutes, you could be using PhotoStructure.
- PhotoStructure is designed to have no learning curve. The installation takes less than a minute, the welcome page only has 3 questions, and you’re done. You won’t see (or need!) any hour-long youtube tutorials just to get started.
- Library imports run automatically and politely in the background so you can still use your computer. If you start a game, for example, PhotoStructure will automatically pause.
- Updates are installed automatically.
3. I don’t have investors pushing unsustainable business economics.
If you are not paying for it, you’re not the customer; you’re the product being sold. – Andrew Lewis
- PhotoStructure hasn’t taken any venture capital. I’m 100% bootstrapped, and building a company that I’m proud of.
- PhotoStructure’s revenue only comes from you, our users. I don’t make money through advertising, or any other forms of “data sharing.”
4. I embrace existing open standards and tools.
- PhotoStructure doesn’t hide all your photos and videos in a proprietary library. PhotoStructure can organize your files, but you can opt out of automatic organization, and still enjoy the other features of PhotoStructure.
- PhotoStructure doesn’t require any proprietary or expensive hardware.
- PhotoStructure libraries are cross-platform: you can create your library on an external drive attached to a Mac, move the drive to your Windows computer, and import the photos on that computer, and everything just works.
5. If PhotoStructure, Inc. goes away, PhotoStructure won’t.
- The code that powers your library will be open-sourced in the event of business closure, so you can continue to run PhotoStructure on your own hardware. I’ve written a lot of open source software in the past, and substantial parts of PhotoStructure are already open source, including exiftool-vendored, mkver, and batch-cluster.
That all sounds great. What’s ready now? 🔗
The first edition of PhotoStructure is focused on high-quality metadata extraction and inference, and has a simple web-based interface that implements hierarchical tags, streams, and samples.
PhotoStructure for Desktop runs on macOS, Windows 10, and Ubuntu Desktop. Updates are automatic. I’m currently building out secure sharing, simple editing, location tagging, and face tagging. New features will be driven by beta user feedback.
Mea culpa; sign up today. 🔗
I’ve spent more than a decade of my life working in the internet ads business (commonly called “adtech”).
There’s one constant in adtech: more data = more money. The ability to monetize a visitor is directly proportional to the amount of information an advertising platform has for that given visitor.
Photos and videos are a treasure trove of data for advertisers. It astounds and frustrates me that we freely share our most intimate images of our life, and the data within, with companies that are decidedly not aligned with our best interests.
The images of your life should stay yours and not be used to classify you into some consumption demographic.
PhotoStructure isn’t just an effort of love.
It’s also a small act of penance.
I’ve got a limited number of beta users trying out PhotoStructure right now. Use of PhotoStructure during the beta period is free. If you’re willing to share your feedback, please consider signing up for the beta! Update August 12, 2021: The first stable release of PhotoStructure, v1.0.0, is now available to install.
Thanks to all the friends and family that read drafts of this post and shared their feedback!