My Lifelong Learning Lab - High-Level Design Document

Tony Atkins tony at
Thu Aug 4 08:04:15 UTC 2016

Hi, Alan:

I tried out your repo.  I wasn't able to successfully run *npm install*, as
the chart authoring dependency fails to install.  I suspect it's because
grunt and its plugins that are used in your post install step within that
package are dev depencies and not plain old dependencies.  Thus, they are
not available for the postinstall step within the chart authoring
dependency itself.  You might not see this if you have the required
packages installed globally, but it fails at least for me in OS X, and in
my experience will also fail in CI environments.  It's worth addressing
(for example, by moving the required dependencies to the main block).

I also don't tend to have anything lying around to host content, and that's
required to work around the file:// sandboxing of XMLHttpRequest calls in
Chrome.  So that I could try out your work, I threw together a quick
harness based on gpii-express that will host all your content:

If you save that to the root of your package and install gpii-express and
infusion as dev dependencies, you'll have a standalone server for demo
purposes.  As the current gpii-express code is not merged and published
yet, you'll want to use a command like the following to install it:

*npm install --save-dev

Once you register your module's content using *fluid.module.register,* the
above can be made to use package-relative paths and moved somewhere more
appropriate.  Of course, if your tests are better suited for testem, you
could also use that to host your demo content by just adding a testem.json
configuration file.

With those bits of initial setup out of the way, I was able to try out your
work.  I can see a few areas where at least some of us should get together,
for example:

   - user management: This is something I know Simon and Cindy are busy
   with already, and I've done a lot with local user management.
   - CouchDB and/or gpii-pouchdb:  Antranig, Cindy, Simon and I have been
   talking through some of these issues each week, I suspect you might get
   something out of those meetings.  It sounds like you'd also be interested
   in more advanced topics than we've hit yet, for example, views, and full
   text searching.
   - Other tools to try:  We've already discussed gpii-binder and
   gpii-handlebars, but we should talk through whether and of the following
   might also  be of use:
      - gpii-pouchdb: as a replacement for CouchDB in tests and demo
      - gpii-pouchdb-lucene: provides test and demo integration of Lucene
      and gpii-pouchdb.  If you need full text searching at all, it could be of
      - gpii-location-bar-relay: Allows you to bind particular variables to
      the browser state and location bar.  I'm imaging you would use this with
      your navigation controls, so that (for example) a user who navigates to
      yesterday's timeline and hits "back" in their browser will come back to
      - gpii-webdriver: Real world browser testing, including full keyboard
      navigation and browser state (i.e. hitting the back button) testing.

As I've mainly mentioned each of these in passing in various meetings, I'm
happy to arrange a demo and Q & A session for any that are of interest to
you or the wider group.
Anyway, exciting stuff, keep in touch as you make progress, I'm excited to
see how it goes.



On Wed, Aug 3, 2016 at 8:17 PM, Harnum, Alan <aharnum at> wrote:

> I'd like to draw the attention of the Fluid community to a new document on
> the wiki at
> This is a high-level philosophical/technical document intended to help
> shape the development activities of the My Lifelong Learning Lab (My3L)
> project, which has emerged as part of the work on Floe preference
> exploration and self-assessment (
> as well as starting to build self-assessment components for the APCP
> metrics project. While we've sometimes referred to this work collectively
> as a "dashboard" project, this has been largely because it's been the
> closest shorthand for what we want to achieve, which I think is something
> rather more expansive.
> At the moment the document represents my attempt to grapple with the
> development side of the larger space being explored by those working on the
> project (my existing development exploration along these lines can be found
> in the repository at
> I think
> it's quite a big, exciting space to explore, and an opportunity to pursue
> some of our interests in end-user computing in a targeted way.
> I'd very much like to hear the opinions of the community in general about
> both the document's general philosophical direction and specific technical
> recommendations.
> -Alan
> *E *aharnum at <//aharnum at>
> 100 McCaul Street, Toronto, Canada, M5T 1W1
> <>
> _______________________________________________________
> fluid-work mailing list - fluid-work at
> To unsubscribe, change settings or access archives,
> see
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the fluid-work mailing list