Well, after 3 tries at finding a visualization library capable of timeline display that is both simple and flexible, it ended up being kind of a Goldilocks situation – Google’s libraries were too dependent on off-site resources and couldn’t do point data display (like a single date such as “company formed” or “merged with so-and-so”), and my second try was using the boated, outdated and super-buggy MIT visualization libraries (broken, broken, broken abandonware from ’09, which you wouldn’t know unless you started diving into the bug reports), I finally settled on vis.js, which is lightweight, flexible, resizes well, does point data and runs from the local server. Vis.js was “just right”.
That much done, I moved onto finishing a semi-functional mockup of what the TWDB Delta “brand” pages might look like. The above screenshot is the first bit. Then of course comes the list of models, and that’s where I ran into the first of the half-million little *gotchas* I’ll prolly run into while doing this.
The problem is, for LC Smith in particular, and certainly other manufacturers, the fact that the LC Smith brand label continued to be applied to machines that were absolutely “Smith-Coronas”, long after LC Smith was merged with Corona. This means there are a few models labelled “LC Smith” that aren’t LC Smiths at all and don’t follow LC Smith’s serial numbering.
Here’s what I mean. When it came down to building queries to pull out the LC Smith model names from the Galleries, I found all those “LC Smith Portables” and “LC Smith Super-Speeds” that aren’t actually LC Smiths. For the Super-Speeds, I *could* just re-file them as Smith-Coronas so they link to the right serial number page (Smith-Corona Super-Speed), but the Portables? Take a look:
I started re-filing the “LC Smith Portables” as “Smith-Coronas” and quickly realized that wasn’t going to do any good. In the screenie above, note that there are two “LC Smith Portables”, and neither one is either an LC Smith, nor (in terms of model naming normalizations) a “portable”. Instead, you have a “Smith-Corona Silent” and a “Smith-Corona Standard”, both labeled as “LC Smith Portable”.
Thus, in order to set these guys up so they link to the proper serial numbers and are fit into the proper place in the manufacturer’s history, I’d basically have to file them as something completely different than what the labeling says. So, I’m having a bit of a problem figuring out what to do. I suppose I could create specific model designations and serial number pages for these fringe cases, but I’m not entirely sure that’s the best way to handle it. Fringe cases are always bad when you’re talking about relational data handling, and things could get very fragmented and hypercomplex very quickly (and I’m trying hard not to think too much about what a hellspawn that “Brother” will be to shoehorn into this data format).
I’m sort of feeling that the nature of the data, with all of the blending of brands, outsourcing after 1950, and just plain goofy labeling and incestuous relationships between companies might just make the idea of truly rendering the TWDB data in a relational, tightly structured format just plain impossible, and that’s frustrating because it’s for stupid reasons.
In the end, if I do end up doing timelines, they’ll probably be hand-built and riddled with special case provisos, just like the serial number pages themselves (yeah, they’re still flat text/html files just like in Alpha, and when I make changes, I open the file up in a text editor and edit the HTML tables by hand, just like it was 1994). I doubt there’s gonna be any way to auto-generate them with any accuracy that matches up with the serial numbers and labeling on the machines themselves. *sigh*
and I’d gotten so far with the visualizations too…