6

How is there no open, accepted, widely used standard to store & tag things like old family photo albums, diaries, books, etc.? Surely I can't be the only one who wants to digitise all this stuff to preserve it many years from now in case the drunk Uncle pisses on it, or Grandma's dodgy electrics burn the house down and it's all lost permanently. Or perhaps I am; it does seem that most other people doing genealogy work have the technical competence of a lemon.

Like, I get it, there's *some* online solutions for this stuff (not many and they tend to cost a fortune), but if I want to store it locally or in a private git repo or whatever... well, no-one seems to do it. I want to be able to interlink individual photos with their contextual pages in albums, store metadata about them, store audio recordings of older relatives with transcripts linked, etc. - and it just doesn't seem to be a done thing.

Ah well. Perhaps I'll do it all anyway as some kind of side project, then all being well my great great grandchildren will be immensely thankful if family history stuff ever becomes popular again.

Comments
  • 1
    Now that you mention the metadata and pages, I think Markdown documents with hyperlinks to media files and _frontmatter_ for metadata, will suffice. It should be a less of hardle for you to convert this all in whatever thing later, given the simplicity of format.
  • 0
    @vintprox Yeah, I may well do something like that. It's either that or use a file format I *have* found that will do all of this with some minor changes. It's not used by... well, anyone really though, as far as I can make out, which is what puts me off a bit.
  • 1
    True. Haven't seen anyone use these features outside of DFIR. If you start a side project, please post it here too. It's one of the features that are not a "must have" but it makes life so easier.

    (Currently I use CherryTree, it stores stuff in a tree-like manner)
  • 0
    Just design a table or data structure to represent the thing and then either create a many to many table to link against standard tags in another table and apply indexes
    Or make a binary tree of tags by letters in the tag starting at level one with all the first letters etc and store references to the original object and either serialize the structure to disk for easy reload or make a file format to do the same
    Simple
    That’s literally how I believe it’s done
    So it is pretty standard
    For different document types that store different data eg a hash of the video or photo etc or it’s length or resolution just create a different table that links to the same foreign key relationship
  • 0
    So I mean it is pretty standard and it’s not a lot of work
  • 1
    Would digiKam serve your purpose, at least partially?
  • 0
    @nonox I looked at that actually, but I don't think digikam can tag people positionally in photos, and can't relate those people to each other which is a big part of what I'd want.
  • 0
    @killames Sure, I could write my own "standard". But despite your claim, doing all of that properly, dealing with all the corner cases, and documenting it as a standard *is* a lot of work. It's not *hard* per-se, but it's definitely tedious and time consuming.

    Even if I did that, I'd then have to publish & maintain that standard somewhere, and hope that whoever found my collection in the future knew about that standard and how to apply it.
  • 0
    @AlmondSauce you’re talking about tagging something
    As in adding an ad hoc label or category to it ? That is not a lot of work. And It’s not worthy of being cased as something that needs a specialized “standard” it’s literally making a keyword system to describe some other data

    Yeah I just reread the rant dude you’re making this sound harder than it is
  • 1
    @AlmondSauce DigiKam can do people recognition in photos (it actually improved its recognition a lot), but of course you can't really tell it the connections between people
  • 1
    @killames Nah, much more than that. Tagging is just an example.

    I want to be able to tag people positionally in photographs, not just assign one or more tags to a picture. I want those photographs to be relatable to other photographs or documents still to get the wider contextual data around them (perhaps as part of a page in an album). I want the people I tag to be relatable to each other, I want genealogical metadata to be stored for all those people. I want to do the same with multi-page documents for things like diaries as well, as well as sound clips, video clips, and a whole bunch of other stuff.

    I *could* just write my own spec to do this, but as someone who's written & maintained far simpler specifications before - it's a whole lot more work than it first seems.
  • 0
    @AlmondSauce sounds like another child table or two and a few relational tables

    Does not compute lol
  • 0
    @killames When you've worked on a few specs, let me know 😉
  • 0
    @AlmondSauce you don’t need a spec for everything man
    And this is an example
    I’ve worked on large databases enough to see how something like this which is very small could be implemented
    It sounds like the largest part would be the front end and it’s not even that complex sounding just selection and highlighting
    What I’ve had thrown at me at one point is a customer who basically wanted an enterprise level video stream server developed by one guy who didn’t want to spend any money that would allow people to view streams across multiple devices from the outside world now that was a complex situation given some companies like Skype made all their money off things like
  • 0
    So we can argue scope again till we are blue in the face and it won’t matter you want a spec for this ? Pay me and I’ll make one and I guarantee you it won’t be that involved
  • 1
    @killames It doesn't need a spec if I just want to create an implementation for *me* that no-one else cares about. If I want to be able to bundle all of this stuff up and share it, then it absolutely needs a spec. Otherwise how will anyone else open it, unless they reverse engineer the entire thing?

    Regardless, even if I thought you were correct, the spec is only half the issue. I'm most surprised that an existing, accepted, widely used spec doesn't exist for this. You or I can come up with anything we want - that doesn't make it accepted or widely used.
  • 0
    @AlmondSauce what are you suggesting a more of a standard than a spec ?

    A spec is a plan to build software or a specification of how something works
    Maybe our lingo is not in sync

    This sounds like a library project to me in all honesty with a few scripts to populate a database being it a SQLite data store or something more permanent depending on how big of a usage were talking or just a Series of data files to be loaded by an application and arranged into a few data structures for relationship definition

    So you mean some kind of best practices guide ? Or are you imagining something far grander and more vastly complicated than you’re portraying ? I honestly do want to understand now since I’ve reinvested so much time into arguing this point
  • 1
    @AlmondSauce the issue you've pointed out is exactly the "road block" that somewhen stopped other devs to maintain a spec for it. Maybe somewhere in the GitHub slums you'll be able to find a ready project for this purpose, maybe not.
Add Comment