The case for an agile and user driven approach to digital preservation development (Or why user driven hackathons kick ass)
The case for an agile and user drivenapproach to digital preservationdevelopment(Or why user driven hackathons kick ass)Paul WheatleySPRUCE Project ManagerUniversity of LeedsTwitter: @prwheatleyhttp://openplanetsfoundation.org/blogs/paul
What I’m going to talk about...All about SPRUCE Mashups:http://bit.ly/spruce-mashupusers/practitioners/problem ownersdevelopers/techs/hackers/solution providersImage:DimaYagnyuk,fromTheNounProject
What’s the problem with developing DP tools?Rants and examples, just in case you don’t believe me:http://openplanetsfoundation.org/blogs/paul• Great solution to thewrong problem• Even with a good result,no users = no feedback,no bug reports: tool dies• Reinventing the wheel,getting nowhere• And lots more...Without strong user focus, awareness and communications...
Putting the user in the driving seat• working with specific,concrete user challenges• actual user data• make the user own theproblem• separate problem ownerand solution provider roles• engage with problem ownerat *each* iteration ofdevelopmentImage:P.J.Onori,fromTheNounProject
Sharing and communications• Capture and *share* therequirements/challenges/use cases.–Eg. Datasets, Issues, Solutions,http://bit.ly/spruce-results• Publicise intention to pursue aparticular approach, to validate it• Share the data–Eg. OPF Format Corpus on Githubhttps://github.com/openplanets/format-corpus• Make results easy for others to pickup and reuse: atomic tools,packaging, simple interface...
Example: Broken JP2s and Jpylyzer• More information:–http://openplanetsfoundation.org/software/jpylyzer• Also see page on JP2 preservation risks:–http://wiki.opf-labs.org/display/TR/JP2Before and after:Broken JP2exampleJpylyzer waswritten by@bitsgalore of the@scapeproject
Blatant plug...OPF Mashup, Disk images, emulation and forensicsChapel Hill, North Carolina, 3rd - 5th June 2013More information and registration:http://bit.ly/dft-ch
Mashup Manifesto (SPRUCE)• Make it practitioner/user led– Solve concrete problems• Re-use, dont re-invent the wheel– Most problems have already been solved, although often not by this community– Re-use existing code where possible• Keep it small, keep it simple– Functional preservation tools should be atomic– Modularise in the face of growing requirements– Ensure results can be exploited and integrated with other orchestration/repositoryplatforms• Make it easy to use, build on, re-purpose and ultimately, maintain– Share your source– Automate your build– Package for easy install• Share outputs, exchange knowledge, learn from each other– Write up dev and user experiences and share them– Publish data about usage– Shout about it, blog it, tweet it, and add it to tool/service registry (or three)• Adapted from: the SPRUCE Mashup Manifesto