ShutterStem

7 thoughts
last posted July 21, 2014, 4:45 p.m.
0
get stream as: markdown or atom
0

Work on ShutterStem has slowed.

Well, kind of... In the meantime I've actually been trying to get one of its dependencies going, most preferably as a sustainable business!

But I'm still using the current progress as my primary personal photo management system, and certainly haven't stopped caring about it or its mission. I'm starting this so I can collect design notes and such.

0

I should add, I've been greatly encouraged by conversations with a few people who emailed after I mentioned the ShutterStem project on the CouchDB mailinglist. The following cards will be some general notes from replies I sent to them.

0

Snipped from an email reply I sent:

As you have found, currently in the master branch of ShutterStem there is a CouchDB [old-style] external written in Python that lets a user import/export on the machine running that CouchDB server. This was a pain to set up, and not great for many workflows (e.g. importing from laptop straight to home server when it is available). That's why the more active "take_three" branch is simply missing import/export for now — so other import/export tools would be great!

0

A different reply on a similar topic, a bit more thorough:

The take_three branch does not have any import/export functionality built in yet. The older master branch has a sort of too-clever approach that uses local HTML files and a Python request hooked into CouchDB to do import and export. There are some instructions at https://gist.github.com/849343 on one way to get that set up, then you can use http://localhost:5984/photos/_design/shutterstem/dashboard.html to import and http://localhost:5984/photos/_design/shutterstem/index.html to export. I can write up a bit more documentation on this if it's not clear once you get it installed.

The stuff at http://localhost:5984/photos/_design/shutterstem-t3/launcher.html — newer couchapps installable from the take_three branch — has some other more interesting apps (Seasons is the farthest along) within it but still need to build a better "native" import/export solution for it as well as some web "folder upload" stuff I've started experimenting with in Chrome recently (no code in ShutterStem yet though).

0

One more hopefully helpful snippet from my "Sent" folder:

The "image" schema right now is very simple, mostly just a timestamp! Although I've been working on a geotagger and a caption helper app too. I've annotated a sample image from my DB a bit here, sorry no geotag on that but I can find a sample of that if you'd like: https://gist.github.com/3744441 There's also a really basic "basket" (±album) schema that's an array of photo references, and a "source" schema that's also pretty basic. [At some point I want to add an actual "photo" schema, distinct from images in that a "photo" is a "keeper", e.g. the pick of a stack of images as opposed to say a hundred blurry images taken from underneath a balloon or a quick snapshot of a receipt for records. The idea is that human-intensive work like captioning, rating, organizing, etc. should be done on real "photos" rather than all raw "images".]

I'm also guessing that maybe it's a bit unclear how to import photos^Wimages? Sorry if that is the case! I'm something of a perfectionist and wasn't sold on the old way, but also have been busy getting a global aerial tiles service going in the last months, so I haven't managed to make a better replacement in the current default branch on github. D'oh!

If you use the instructions (and design document — it shouldn't interfere with the "take_three" one right now) at https://github.com/natevw/ShutterStem/tree/master you will get sort of a hairbrained scheme to have a (hopefully) secure photo importer controlled via a CouchDB external script. So basically, there's a little Python "import server" that you can talk to via some HTML files you save raw into, say, your camera card. There was some convenient/fun stuff about that but kind of an unexpected user experience and didn't scale to multiple master databases well and such. Some quick instructions, though, are at https://gist.github.com/849343 and when that's done you should be able to use the web interfaces http://localhost:5984/photos/_design/shutterstem/dashboard.html and http://localhost:5984/photos/_design/shutterstem/index.html to import and export sets of photos respectively.

There's a couple hacks I sometimes do to use the import code from the Python shell instead of via the web interface, since the web stuff expects the source folder to be available locally. Once you get it going, though, all the new apps also work with the same image schema. I've got http://localhost:5984/photos/_design/shutterstem-t3/launcher.html bookmarked in my browser to go to some of the apps.

Feel free to ping me if you have any more questions, I feel bad this is in such a sorry state and it does tend to be a bit of a hassle to set up. It's sort of still in a protoyping state at the moment, but once I get http://argyl.es launched next month I hope to have more time for it again.

0

Also of interest, here's my recent blog post with some estimates and notes regarding the Cost to keep ShutterStem image masters backed up in Amazon Glacier.

0

Lately I gave ShutterStem a little TLC to fix some issues (broken maps due to CloudMade shutdown, URLs hardcoded to my dev environment, etc.) and posted a rough demo: http://demo.shutterstem.com/

This project still needs some "constraints" to focus development efforts. Ideally it would be a home/portable appliance but OTOH it'd be nice to find a "minimally viable" subset of goals to tick off along the way.