We need one round of feedback from an experienced Drupal developer on the software design for Open Ethnographer, the software for collaborative ethnographic coding that is under development here. This is not a programming task, instead it is tech consulting for software architecture / design. It works like this:
- Read the relevant pieces about Open Ethnographer and its proposed documentation (and if something is not clear then, just ask @Matthias):
- quick overview of how the software will look like
- implementation tasks (rough list so far)
- software requirements
- software design (the most important document here)
- Wait a day while your mind subconsciously processes the proposal … :-)
- Write a report, as a comment to this task or to the software design wiki. A short report is enough: at this stage, I just want to make sure to not start implementing something that I'd have to tear down and re-do lateron. Esp. I'm interested in your feedback to cover the following:
- Where applicable, caveats and alternative proposals for points where the proposed software design would just not work. For example, I'm not so sure if or how my proposed design for annotation storage (the "word ID, code ID" tuples) would be performant and compact enough to support (say) 50,000 annotated nodes/comments and a search by tag / code ("quotation manager") for that content.
- Where applicable, proposals where the same requirements can be implemented with less programming effort. Relates esp. to the chosen base applications eComma and Annotator, and to mapping ethnographic codes to Drupal taxonomy terms.
- Your general notes, Drupal design principles etc. where you'd have designed things differently.
- Other aspects (where you see potential problems, innovation potential, design flaws, over-engineering, reinventing the wheel … whatever).
Some more context that might be missing from the design documents above: The software to develop should finally be an open source module for Drupal 7 that is (1) simple to install (avoiding RDF middleware layers, special databases etc.), (2) takes a low effort for continuing maintenance and bugfixing, and (3) allows other Drupal developers a relatively comfortable and simple start when wanting to contribute to the code. The core functionality to develop for this version is collaborative ethnographic coding; in tech terms, this is logically comparable to adding semantic tagging like RDFa to user-contributed content of a Drupal 7 site. However, adding a quotation manager (“search by tag”) and (later) advanced search and analysis features should be possible in a performant way.
Compensation: 150 EUR (proposed), to be invoiced from Edgeryders LbG
Due date: 2014-11-22 (proposed … and sorry for the tight time plan)