Writing code this morning I pulled issue #34 out of bitbucket and cracked open XCode. Yesterday I pushed a huge release to the excellent and well-dressed beta team for Mood Board which leaves me with very few cases before (what I had previously deemed would be the minimum viable product) is complete.
Issue #34 is a tricky one involving Apple’s application sandboxing rules. Basically these rules are meant to keep applications from mucking with your filesystem and global services data to keep your computer “safe” from malicious intent. Sadly because this sort of thing only works if everyone plays by the same rules; it can limit what your applications are capable of.
Mood Board is all about working with resources, aka files, on your hard disk. Files pulled in off web pages, files from generative sources and plain old images in massive folders full of “art resources.” It’s important therefore that we get this part right. The user wants to work quickly to build up resource pools to starting a new design or 3d modeling project and they really don’t want to be worrying so much about how the data gets stored.
The big choice right now, and one that I thought I’d already mitigated, is whether or not to embed the file data for stuff you drag into your mood boards inside of the .mood document; or to keep file references only and allow you to maintain a directory of assets for use anywhere else you might want to do so.
Wrapping up the asset data into the .mood files was surprisingly easy to do and in all my tests so far it is error-free. This gets me to thinking that maybe what I should be doing instead is storing all these resources inside of the mood file and skip providing the user with the option to do either/or. Using LZW compression for images makes the files even more surprisingly small, smaller than moderately compressed JPG somehow.
I’d be curious to know what you guys think. Are there enough use cases to support maintaining a separate directory of plain files for anything you’ve ever added to a mood board? Does this file storage requirement cause problems down the road, like a year from now?
If you haven’t signed up for the beta yet, sign up here