Strathspey SCD Database To-do List

This list is supposed to provide a glimpse on my plans for the database. It is grouped in categories that roughly correspond to the magnitude of the job in question. The occurrence of an item on this list does not imply that it will ever actually be tackled, nor does the order the items are listed in imply priority.

Apart from the items on this list, the database will soon get a big UI makeover in an attempt to get all of the Strathspey sites onto Bootstrap 3.x. This is supposed to add consistency (and thereby make life easier for the developer, i.e., myself), improve the user experience, especially on mobile devices, and generally make things cooler and easier to maintain. Unfortunately this means rewriting many of the rendering templates the database uses, which unlike most of the rest of the Strathspey sites have so far been geared towards jQuery UI, and is therefore a major undertaking.

If you have any comments, additions, or suggestions then please send them to me directly.

Thanks to Eric Ferguson for helping to compile this list.

Pending Bug Fixes

Crib/Diagram Availability
Right now, the »has crib« and »has diagram« icons in tabular dance output do not take into account the crib/diagram source preferences on people's profile pages. In other words, the database may claim that there is a crib for a dance even when that crib is part of a crib source you don't actually want to use (same with diagrams). This ought to be fixed. In the same spirit, the corresponding boxes in the Complex Dance Search form do not respect the crib/diagram source preferences, either. (The reason for this is that the crib/diagram source preferences were added much later, and at the time their effect on icons and searches was simply overlooked.)

Low-Hanging Fruit

Rendering Boldface in ACE Text
Eric's »while{}« notation in cribs is not satisfactorily rendered in boldface, which ought to be fixed. (minor)

I'd also prefer »while« to »while{}«, which looks ungainly. (I don't have an issue with the variation that actually gives a bar count.)

Grey Out (or omit) Empty Tabs
Tabs with no information on them should be marked as such, in order to reduce false expectations on the part of users. (Some tabs have an »add …« button on them, and should not disappear altogether if they're otherwise empty. On the other hand it would be good to have some consistency.) (wishlist)
Include DI/bpc Data From Eric's Cribs
The »dance intensity« and »bars-per-couple« data from Eric's cribs should be added to the corresponding dances. (Get Eric to write user-level documentation, and/or pinch it from the crib file.) (minor)
Copy Crib Comment to Comment Submitter
Right now there is little feedback for submitters of crib comments. The suggestion (by Eric and Roland) is to send a »Cc:« of the crib comment mail to the submitter when it is sent to the crib source maintainer. It would also be good to make clear that the crib comment system has nothing to do with the issue tracker for the database. (minor)
Use Localised Date/Time Format On Issue Pages
Eric points out that issue pages display the date/time in a 12-hour clock format. This should probably be changed to display a localised time if possible. I should also check where else in the UI this could be an issue. (minor)
Make URLs With No Trailing Slash Work
Right now, database URLs (like most URLs in Django) require trailing slashes. Investigate whether /dd/ URLs with no trailing slash should redirect to the same URL but with a slash tacked on, to make life easier for people who type in URLs by hand but forget the trailing slash. (minor)
Allow Users To Contact Dance List Owners
There should be a way for database users to send messages to the owners of dance lists (e.g., to point out errors). (Suggested by Truus de Ceuster.) (wishlist)
»Editor's Pick« for Dance Videos
Allow database editors to designate at most one video for a given dance as an »editor's pick«, i.e., the best available video. This video would be displayed in preference to all others in situations where only one video per dance is called for. (wishlist)
Storing Search Results as Dance Lists
There should be a way of appending the results of a Complex Dance Search to a dance list (probably the »WORK« list; one could conceivably allow arbitrary lists, but that might make things too complicated in the GUI). (Suggested by Eric Ferguson.) (wishlist)

Rainy-Afternoon Projects

Dances/Tunes Mapping Should Allow Tune Aliases
The mapping from dances to suggested tunes should support »tune aliases« in a form that is similar to that from recordings to tunes. (wishlist)
Publication dates
When a publication is edited, the date in the database is displayed in full form (»27 May 2011«) but must be rewritten to ISO format (»2011-05-27«). This ought to be changed to either make the output format acceptible as input, or else fix the output format to be ISO. (minor, django-admin)
Imprecise dates
Most other date fields require the day, month, and year to be specified even if the date is not known with that level of precision. The plan is to change the date representation to allow dates to include just the year, or just the year and month. (wishlist)

Various entries contain the actual (imprecise) date in the »extra info«. Once the change is made, then that information can be transferred to the date field in question. (wishlist)

Spurious »complete and correct« flags
Many dances are spuriously and/or wrongly marked as »complete and correct«, especially where steps and/or formations are concerned. The plan is to reset the flags in question for dances where the editing history contains no changes after the dance has been first imported from Alan's data. (major)
Deviser/Publisher/Composer/Musicians
These flags on a Person entry need to be set manually when they could just as well be set automatically based on whether a person actually has any dances/publications/tunes/recording to their name, and be removed from the editing interface. (wishlist, django-admin)
New-Issue Metadata
Database editors should be able to set assignment/severity/disposition directly when they submit new issues. (wishlist)
Rating and Comments for Albums
Allow users to rate and submit comments for albums, as a buyer's guide. (wishlist)

Major Jobs

Improve Generation of Crib/Diagram Sheets
Right now the various options for generating crib sheets (with or without diagrams) and diagram sheets for dance lists are fairly confusing, and people have been asking for even more features. It would be good to figure out a way of making this more straightforward. (wishlist)
Crib Download in Editable Formats
The database currently produces crib sheets but only in PDF. It might be a good idea to support a suitable word-processor-type format, too, for those people who want to embellish their crib sheets with decorations or add supplementary information or cribs for dances that haven't made it to the database yet. The obvious format choices would be HTML or ODT, both of which could probably be set up such that they are reasonable to import into popular word processors. (Suggested by Eric Ferguson and Truus de Ceuster.) (wishlist)
Better ACE Documentation
Fix/improve the documentation for the ACE markup language (which derives from Markdown but includes tweaks) for the benefit of database editors and the user community at large. (wishlist)
Tagging for Dances
Allow users to add publically-visible »tags« to Dance items for better classification, e.g., to make it easy to identify dances with a Robert Burns connection or dances that have been dedicated to a Scottish landmark. (wishlist)
Through-The-Web Editing Of Dance Extra Info
Allow database editors and/or logged-in users to submit and/or edit material on the »Extra Info« tab of Dance items. Details to be worked out. (wishlist)
Bulk-adding Items to Collections
Come up with a method of letting people add publications (and possibly dances) to a collection without having to enter them into the search box one by one. This could conceivably take the shape of showing a DataTable of all publications (including the DataTables search facility) with a check box, where checking the box will automatically add the publication in question to the collection. (wishlist)
Collections for Albums/Recordings
Extend the collections facility to cover albums/recordings in addition to publications/dances. (wishlist)

Include a method of conveniently adding recording information from a local SCD music directory tree to a collection. (In the first instance this will fit my way of of arranging MP3 files and will work on Linux. The code will be made available so other people can tweak it if they want.) (wishlist)

Include a method for generating an MP3 play list for a dance list, from the recordings available in a collection. Again, this will do what I personally need at first; suggestions from other potential users will be entertained with no guarantees. (wishlist)

Difficult To Tell

Weird Rendering for Crib Sheets
With combined crib/diagram PDF files, sometimes the crib body and the bar numbers end up on different pages. This is an artifact of the way PDF is prepared, and might have gone away when the PDF formatting was revised the other day.
You see things, and you say »Why?« But I dream things that never were, and say »Why not?«
– George Bernard Shaw