← Back to team overview

phatch-dev team mailing list archive

Re: Exif workflow (was Re: Modifying metadata, tests, choicefield arch)

 

As always, Stani, I find myself nodding in agreement with you. I'll add the boolean "add geotag icon" and of course you have to save the image for that to be effective.

For sure, we want a small quantity of flexible actions with sensible/ simple options.

I worked at Adobe for 10 years. I always like taking photos of the office - it's beautiful - a palace inside and out. It's won awards for being one of the greenest buildings in the USA. When family and friends visit from the UK, they're blown away by the office. It has to be one of the premier offices on planet Earth.

Robin
http://clanmills.com


On Jun 14, 2009, at 2:48 PM, Stani wrote:

Hi,

I was writing my reply in a hurry, but I prefered to answer rather
then to wait for now. I also assumed there would be answer already ;-)
I'll split my answer in the two topics: exif and YAML.

In the train back from Belgium, I got an idea which is my best idea so
far, as two previous ones were rushed in without much thinking. So the
third solution is to add a BooleanField 'Metadata' to the Save action,
which is enabled by default. Besides that there should be a "Save
Metadata' action which has only the fields 'Filename' and 'In'.  If
one of these fields is different from <filename> or <folder>
respectively, this allows to make a copy with modified metadata as
well. This action would be listed among the other metadata actions
under the category 'Metadata' of course. The description would be
'Save only metadata'. The 'Save Metadata'  dissappears than from the
Execute dialog. This very nice as it completely follows Phatchs
natural workflow. After I had this idea, I felt asleep. But now the
longer I think about the more I like it and I will probably implement
this in Phatch 0.2, as it seems much better to me than the current
situation and any proposal so far.

On Sun, Jun 14, 2009 at 9:48 PM, Robin Mills<robin@xxxxxxxxxxxxx> wrote:

I hope my initial comments were not too harsh. I still have some in
store (ie. proper preview and co.). :)

Juho:
You have made a fantastic and amazing contribution to Phatch in one weekend.
Harsh?  No.  Constructive? Yes!
I feel the same ;-) Especially because you do the opposite of
trolling, you do massive work.

Team:
I'd like to make the following (and I hope constructive) comments:

I'm also uneasy about the Metadata/Save model. I've been thinking about whether to add a boolean "add geotag icon to image". Look at the image below and you'll see I've added the GeoTag icon in the bottom left of the
image.  So what should the action do?  The GeoTag action updates the
metadata of original image. Should "add geotag icon to image" modify the original image? I don't think so - that's a destructive PIL operation.

So I have two alternative proposals (I prefer A):
A) Add a boolean "Update source image metadata yes/no" to the GeoTag Action.
There are probably actions which cannot be split in two (proposal B).
A simple boolean "Update source image metadata yes/no" will suffice

B) Two actions:
(add ! to the name of every metadata action)
i) GeoTag ! (a metadata operation) updates the source image file.
ii) GeoTagIcon (an image operation) adds the GeoTag icon with PIL (if the
image has been geotagged).  Needs a save.
Robin for your geotag action, I don't see much problems. There could
be just a ChoiceField with 'Placement', with the possibilities ' None'
, 'Top Left' , ' Top Right', 'Bottom Right', 'Bottom Left'. The
default value would be 'None'. I really like to keep the numbers of
actions as low as possible, so I am strongly against having two geotag
actions. (BTW I find it cool you just phatched the Adobe headquarters
;-) )

On Jun 14, 2009, at 11:33 AM, Juho Vepsäläinen wrote:
Would it make sense to separate the metadata part from image editing?
Then possibly different kind of workflow could be justified and
documented better. So perhaps the application would have separate tabs
for editing images and metadata. It probably boils down to how the
application is actually used. :)

I don't want to split the image and the exif workflows. The tabs will
unnecessarily clutter the UI and I like the interface of Phatch to be
as minimal as possible. If we can live without tabs, we should stick
to KISS (Keep It Simple and Stupid). That's why I use a list view
(instead of a node editor) and focused on interaction with other
applications (drag & drop, droplets, nautilus, f-spot, shutter, ...)
rather than having our own image browser. In the future I might see a
future for tabs in Phatch if you want to allow 'chaining'. So you
could branch an action list within a tab to another tab, but this
needs further thoughts as probably it would require condition actions
(which include/exclude files). The tabs should only appear if there is
more than one tab.

Is there some specific place where I should put my tests? Do you
prefer to use some specific testing suite (ie. unittest/doctest/ some
other?)?

Look to core/lib/formField.py I started implementing doctests there
already as an example. However I had not yet the time to finish it
yet. So always use doctests, unless it doesn't make sense. The
unittests will be run by nose.

Alright. Great.
Feel free to add doctests where ever you can. After releasing Phatch
0.2 I'd like to integrate Sphinx. The doctests will serve two roles:
documentation and unittests. Just like I did for AR which Juho knows
quite well:
http://ar.stani.be

Best regards,
Stani




Follow ups

References