I’ve always thought I hated Java. Turns out, the language isn’t actually that bad. I still don’t think much ofong.silly.descriptors.connected.with.completely.superfluous.dots or idioticCamlCase. Nor do I care for a typed language whose compiler can’t keep track of its own typing. Seriously, people. If someObject.String returns, well, a string, then typing things like String someCopy = someObject.String is just silly infuriating. It’s tempting to refer to Java’s designers’ insistence rules over simple common sense in a way that would invoke Godwin’s Law. Beyond those annoyances, though, writing Blackboard building blocks is less frustrating that I thought it was going to be, at least on the Java end.
Blackboard itself is a different story. The API is one of the most poorly-documented I’ve ever seen. And I’ve seen some doozies. The worst part is that they lure you in with a false sense of professionalism. There is nice, hefty Blackboard Building Blocks Developers Guide with the complete spec for the manifest XML. There is also a wonderful getting started guide that walks you through your first module.
There is nothing bridging the two.
The getting started guide walks you though creating a hello world module that can be added a course tool. It covers data access and documents the most common methods Bb provides. It presents several was to handle data persistence. It is, in other words, a good piece of documentation.
However, I don’t want to create a course tool. I want to create, in Bb’s jargon, custom content. I know I can do this. I’ve seen it done. I know that module creation routines have to accept certain parameters. It’s all in the manual. What isn’t there is a description of the action the building block has to take to actually insert the content into a page. Persist to a data store? Print to STDOUT? Submit a POST to some url?
Probably it’s in there somewhere, and I’m just missing it. I’ll get it out of the docs eventually. That’s fine. What’s really bugging me is the great example that told me absolutely nothing I need to know. There was agreat deal of time and effort put into showing me how to replicate functionality the system already has, and in a way that neither I nor most users care about. Blackboard is a content management system. Why is there no documentation on how to actually create content?
I’d be a lot less ticked off right now if they’d just said “sorry, can’t be bothered” up front, instead of letting me find out at the end of several hours of work that they’d only pretended to tell me what I need to know.
Turning off…
June 8, 2007
…the daily Twitter Tools digest. They’re boring even me. Stay tuned to the sidebar, though.
Tweets for 2007-06-03
June 3, 2007
- Trying to grab files off an old, broken laptop with Slax. There’s got to be a better way. #
- Kill Bill Slax + pcmcia ethernet + sshfs = files off ancient laptop. It’s not pretty, but it works #
Powered by Twitter Tools.