Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: My3L -> MyL3


My Lifelong Learning Lab (henceforth My3L MyL3) is a web-based end-user computing application focused on supporting non-programmers in building, sharing and evolving inclusive applications based on the quantified self, open data and the general self-tracking ecosystem.

My3L MyL3 could be used for general self-tracking purposes, but is specifically being built for applications in learning, to try and address learning differences, and to support self-reflection in learning. The term learner will frequently be used as a targeted synonym for a user of My3LMyL3; learner is used expansively and does not refer only to students in traditional educational systems.

What Will Using


MyL3 Be Like?

Four central activities inform the expected My3L MyL3 experience, and, therefore, the required software components: Record, Reflect, Build, and Share.


  • Annotations to existing entries, either free text or controlled.
  • Pre-built views to browse, search and summarize data, and the ability to build their own custom views.
  • The export of their data to other formats so it can be analyzed outside of My3LMyL3.


Learners are given tools to build their own tools for recording and reflection. This may include (but is not limited to):


  • Learners will be able to use My3L MyL3 to build their own vision of a self-reflection application, incorporating their desired mix of sources such as:
    • quantitative data
    • qualitative data
    • data incorporated from outside sources
  • Learners will be supported in bringing in outside data sources that may inform their tracking and self-reflection.
  • Learners have the right to control their own data.
  • Learners have the right to exchange their personal data with other learners.
  • Learners have the right to exchange their custom components and layouts with other learners.

For Developers

  • The fundamental goal of My3L MyL3 is to construct a means by which learners can build their own applications to support the refinement and understanding of their own learning process, while more targeted products may be built using software components shared with My3L MyL3 (see What Are Projects Related to My3LMyL3? below).
  • Capacities of modularity and recomposition are especially important principles for My3LMyL3; we are building for modularity and recomposition not only for a target audience of software developers, but for a target audience of non-programmer end users. We want to give learners the tools to choose what they track, how they track it, and how they represent, connect together and share that information.
  • My3L MyL3 should put the power in the hands of learners individually and collectively, encourage self-reflection as well as personal data collection, and respect the uniqueness of learners. The goal is not to build a single application, but to provide a means by which learners can be assisted to bring into being their vision of an ideal application built on activities of data collection, self-reflection and collaboration.

Who Is Building It?

My3L MyL3 is being developed by the IDRC and the Fluid community, and its underlying toolkit will be used to develop applications for the FLOE and APCP projects.


Power and Usability for Diverse Learners

My3L MyL3 should strive to be friendly and welcoming to new learners (including those who do not think of themselves as learners, or as people capable of building software applications) while also having powerful capabilities for advanced use.


A application focused on learner data collection is of little use without persistent storage. In the case of My3LMyL3, persistent storage is needed in two main areas:

  • Persistent storage of end-user design and development for their own unique vision of My3LMyL3, including but not necessarily only:
    • Custom tracking components and corresponding data types.
    • Custom layouts of both pre-supplied and custom tracking components.
    • Custom adaptors to retrieve external data and populate a learner's instance of My3L MyL3 with it.
  • Persistent storage of end-user data, such that it could be reconstructed in a variety of different views
    • Daily journaling.
    • Long-term examination.
    • Search views.
    • Custom user-defined queries and views.


We will take the necessary steps to support learner data security and privacy, whether in the code itself or in any deployed system.

My3L MyL3 should not be deployed in production outside a browser-based context until we feel we have addressed potential security issues.


The browser UI layer will be built using the Fluid community's Infusion Javascript framework. It is anticipated that the gpii-binder and gpii-handlebars projects will be used to supply data binding and advanced templating functionality.

Web Tier

At first, My3L MyL3 will exist as a client-side application to support speed of development and UX testing. The only web tier requirement should be a static means of serving the application's HTML, CSS and Javascript.

As development progresses, My3L MyL3 will need to build out the web tier code to support persistent storage of data in a secure manner in the cloud using kettle or gpii-express.

Persistent Storage

At first, My3L MyL3 will use browser-based storage facilitated by the PouchDB library.

As development progresses, code to persist user data and custom components to CouchDB instances in a secure manner will be added. This will also facilitate the sharing of application components and user data. PouchDB has interoperability features with CouchDB that will ease this goal.

What Are Projects Related to



FLOE Self-Assessment Learning Toolkit

The FLOE Self-Assessment Learning Toolkit will be one exemplar application built from the My3L MyL3 components with a focus on learner goal setting, reflection on learning style, and the integration of preference changes.


The APCP Self-Assessment Dashboard will be one exemplar application built from the My3L MyL3 components, with a focus on allowing users of APCP-enabled systems to reflect on the experience on an ongoing basis.