Self-Directed Learning with Online Resources

An independent study of challenges, opportunities and strategies for encouraging feedback between tools and resources in online learning systems

aquariums and cave diving


might as well be a request for proposal


Self Directed Learning

Autodidactism: Self-Directed Learning

And tools that augment learning in application to:

  • Theory
  • Knowledge
  • Wisdom

Aquariums and Cave Diving

Aquariums and Cave Diving
  • Jacques Cousteau
  • Edutainment/Infotainment
  • Documentary :: Reality
  • Information Chunking
  • Market Study Confidence
  • Attention Retention

Undergradate STEM Graduates

“We need one million more STEM trained:”

  • Qualified, Knowledgeable Consumers
  • Efficient, Sustainable, Creative Producers
  • Data Science Influencers


Learning Resource Timeline

          Printing   Newspaper
           Press      Telegraph
                            Internet: URLs
                              Wireless Internet
                              Mobile Internet
Stone Papyrus        Copper   Fiber
BC    CE    1800     1900     2000     2100


Knowledge Economy Roles


  • Creating
  • Synthesizing
  • Distilling
  • Adding Value


  • “Smart Consumer”
  • Searching for Value


  • Continually learning the market
When are the dances?

Yearly Knowledge/Data Graph

Stream/stacked graph by source with rough yearly data transfer



  • Room to Grow
  • Resource Efficacy
  • Cost/Return Curve
  • Creativity & Process Control
  • Tool Frustration -> Resistance to Change
  • Taking a step back

Reaching People with Busy Schedules

  • Data
    • Charts
    • Analyses
  • Opportunities
  • URLS
    • Bookmarkable
    • Shareable
    • Referenceable
    • Archivable

Resource Constraints

Learning Materials

Learning Resources

Course Artifacts and Components

“I want to download all of this as a zip file”
  • Syllabus
  • Lectures
  • Slides
  • Quizzes
  • Assignments / Activities
  • Expected Assignment Durations
  • Documents: PDF, HTML
  • Audio
  • Photo
  • Video
  • Books
  • Web Pages
  • Datasets
  • Linked Data
  • Knowledge Triple Repositories
  • URLs
  • Notes
  • Questions
  • Answers

Resources: Course Lifecycle

“Why do we do it this way?”


We used to ___________, but __________,
so we tried __________, but __________,
and now ______________________________,
so what we’re looking to do is
on the web

Topics -> Requirements -> Research -> Expertise (Reivew) ->
   Chunking Wisdom -> Formatting -> Publishing

      Knowledge Repositories

Employer Acceptance



Human Motivation


Learning Assessments

Self Evaluation

Standard-Normal Testing

Voting Choice Theory

Essay Qualification & Quantification

Sharing Resources

Creating and Updating Resources

What does it mean to produce a hyperlinked document?

  • Why HTTP?
  • Why HTML?
  • Why Javascript?

Information Access Optimizations

  • Table of Contents
  • Index: Terminological Lexicon
  • Glossary: Compendium of Definitions
  • Search

Bibliographic Citations

Maintaining structured links to reference and documentation sources

  • Document title
  • Page Number
  • #URL Fragment
  • Attachment Revisions

Sharing Data Resources

Neat, Awesome Study, but
  • What is this named
  • How easily can our tools share data?
  • Where can I download the checksums?
  • How do I download it?
  • What do you want to do with it?
  • What concepts and keywords does it reference?
  • Which part of this should I translate?
“One of them is ‘Naming Things’” – TODO

Resources: Bookmarks

  • Bookmarks are great
  • Bookmarks are resources
  • I need to consolidate my bookmarks
  • I need to manage my bookmarks
  • I need a bookmark manager
  • I want a bookmark management system
  • I want to upload my bookmarks
  • And search them
  • And paste them to you
  • At opportune moments
Check this out.

Document Capturing Process

Wait? What? You want to scan this? Awesome.


  • Why tag things?
  • Why name them?
  • Why label them?

Workflow: Sharing Documents as Email Attachments

I want to email a document that would be better if we were to revise collaboratively.

Why would it be inefficient to email variously named and occasionally versioned versions of a document resource?

When do we file this?

Designing URIs for Resource Collections

What page number was that? If this was a web page, I could just __________?
  • Which page is it on?
  • What is the URL ?
  • Why doesn’t this PDF Bookmark include the document title?
  • This page does not include content mentioning these keywords.
  • Can I link to a document subsection with a URL Fragment?
  • How should I organize course files for a zip archive?
  • How should I organize course files for packaging?
  • How do I watch/listen to course lectures on a phone, tablet, TV, mac, pc?
  • How can I adjust the font?
  • Where should the presentation mix with the Content?
  • “Data not available”
  • How do I search based on metadata?
    • Can I facet the search query with certain criteria?
  • Can I share this link?

Versioning Project Resources

Managing a Project as a Resource with versioned links to additional Resources

Comparing wikis and version control


  • Revision Trail: “History”
  • Talk Page: Commentary, Feedback

Version Control

  • Revision Trail: “Commit Log”

Interface Usability and Accessibility

Interfaces for Online Learning

“Really what I want is...”
  • Focused learning activities
  • search
  • animated
  • four-dimensional
  • through my phone/tablet

Managing and encouraging feedback at scale

Designing flexibly linked data models to support cool UIs.

Interface Criteria

  • Where is the table of contents?
  • What do Page Up and Page Down do?
  • What about Tab?
  • Why do I have to click next and previous?
  • Can I Ctrl-F to search within the resource?
  • Can I tab through these?
  • What can I link to?
  • Can I link to a URL fragment in a new tab?
  • Can I scroll with the mouse wheel?

Interface Questions

  • Can I download a list of my assignment due dates?
    • To my iCal
    • As a list of tasks with duration
    • As an RSS feed
  • What does it mean that a course is worth N credit hours?
    • How many hours a week is that?

Separating Content and Presentation

Which page number is it on my device?
|      ________________|
|     |   _____________|
|     |   |   _________|
|     |   |   |    ____|
|     |   |   |   |    |

I want to review this course on my

  • Laptop
  • TV
  • Tablet
  • Phone
  • Screen Size
  • Bandwidth
  • External Media
    • USB Drive
    • SD Card
    • MicroSD Card

Web Standards

Cascading Style Sheets

  • Text Reflow
  • Fluid Layouts

Privacy and Security


“How do we verify this curriculum vitae?”

Status Quo

  • Limited Records
  • Access Logs
  • Retention Policies


  • FOAF (Friend of a Friend)
  • OAUTH API Controls
  • OpenID


Health Photo Journal Balancing Act

  • Personal student health information?
  • Privacy Controls for remotely hosted resources
  • Difficulties of data scrubbing


Which email is this linked to?

Assurances Necessary for Measuring Learning

  • Confidentiality
  • Integrity
  • Availability


Direct Returns

Teacher Salaries

Indirect Returns / Externalities

Network Effects


Knowledge Economy

STEM Theory, Process, and Knowledge

Learning STEM Theory, Process, and Knowledge through applied data science.

  • Linking things together
  • Feedback and Collaboration
  • Communication Channels
  • Q&A

Goal: Maximize Collaborative Output

Criteria for evaluating collaborative learning products

Network Effects n^2

  • Jointly Authored Pages
  • Information Access
  • Streaming


Generalizing Educational Momentum

  • Stratified skills objectives
  • Measuring for
    • Ability
    • Aptitude
    • Proficiency
  • Serial Order Effect

Knowledge Graph

Ontologically related fields

Graphs of Knowledge, Skills, Competencies

Overlaid onto a knowledge graph of resources and their artifacts



Linking Between Things with URLs and Metadata

Tools: Pushing for Better Calculators

“Where do I set the calculator?”

Why is it that we would be interested in pushing for:

  • Better Personal Calculators
  • Computers, Notebooks, and Tablets

Publishing, Storage, and Presentation

Where should I put my slides?


  • The Shared Drive
  • Your USB drive
  • Your Cloud Drive
  • Cloud Presentation Services
    • Commenting


“How do we make this better?”
“There has to be a better way of doing this”
  • I need to write this down
  • Can I just lay it all out?
  • Can we list it in a table?
  • Can I add columns?
  • Which columns can I add?
  • Which columns are already there?
  • Which columns should I add?
  • What did they call a Widget?


Publishing Static Documents


  • Growth Metrics
  • Bandwidth minimzation
  • Broadband availability
  • Replicated hosting
  • Metadata API
  • Subtitles API
  • Referencability



“But they are sharing the answers!”

Asking for answers.

“You want to answer questions?”

Social Media

  • Whiteboarding
  • Games with friends
  • Video, Audio, Text Chat
  • Linked Personal Profiles



MOOC: OpenCourseware, Coursera, EdX

MOOCs: Massive Open Online Course

Foregoing the unused 80% of LMS and LCMS features for scalability

MOOC Online Course Features

  • Web Hosting
  • Video Hosting
  • Linking with readings
  • Optional Books
  • Relevant papers
  • Device/Browser Support: Mac, PC, Android, iOS

Online Course Experience

I was listening to Andrew Ng’s 2012 Machine Learning course and glancing at the subtitles streaming over a wireless laptop, and thoroughly appreciated the ability to rewind.


Software Programming: CodeCademy

Math-based web game design

University Online Offerings


Learning Dashboard

Annotated countour/heat maps

* Activity/Objectives
* Student/Objectives

Charting Competencies

  • Signing Authority
  • Activity Metrics


Authoring Tools


Authoring Tool Features

Standard Output Formats

  • Mobile Support
    • What is the page number on my device?
    • How deep are these links?

Format Support

Standards: Web

What is the link?


HTML * Storage * Archival * Versioning

Metadata: Searching & Indexing

  • RDFa
  • Microdata
  • GIFT

Web Video


Standards: Education

Means for linking between learning objects




  • Glossary Vocabulary Model

TinCan API

TinCan API Activity Metrics

  • Verbs
  • Scores
  • Times


Standards: Markup Languages

Markup Languages

Standards Graph

RST -> Latex

TODO: dot rendering

Standards: TinCan API

Recording Activity Metrics into a LRS.





Signing Authority


The subjectivity of activity pings

SCORM in HTML5: TinCan Activities

SCORM containers

TinCan API:


Lightweight Markup Languages

Simple Plaintext Markup Language for generating Multiple Output Formats:

  • Books
  • Web Sites
  • Documentation Sets


  • Bold, Italic
  • Inter/Intra- document linking
  • Footnotes
  • Citations
  • Figures
  • Tool Chain
    • Language Portability
    • Web Editor Support
    • Syntax Feedback Loop

Transformed between various Markup Languages at build/compile time:

Stored in a changeset of a DVCS repository.

Organizing a Sphinx Documentation Project

Folder of files with:

  • an index manifest
  • intra-document links
  • citations
  • glossary terms

The root index.html is expected to branch (and link) into the document graph.

To write a paper, which may later be a book:


Knowledge Resource Criteria

  • Does it have permalinks?
  • Is it possible to reference media repository and external URL resources in an authored SCORM course?
  • What is the best way to represent a sequence of graph constraints as rules? (RIF?)
  • Can I bookmark this part?

Authoring: Sequencing Learning Objects

For & Against Task/Skill Dependency Models

Cost / Complexity / Waste


  • Browser
  • Game Console
  • PC Game
  • Virtual Learning Environments
  • MOOCs

Learning Sequences and Curricula

Sequencing Exercise: Pen and Paper

  1. Generate: Brainstorm 50-100 sheets of paper
  2. Reduce:
  3. Clarify:
  4. Organize:
  5. Evaluate:
  6. Build Consensus

TODO:cite: Process: Six Patterns of Collaboration

Curriculum Interfaces

would be great if I could schedule sliding windows of content sequences with expected exercise durations.

A Curriculum Sequence

  1. Read A1 Reading

    Consume document resource

  2. Watch A1 Video: Lecture 1 Consume resource

  3. Answer A1 Quiz Questions Check for comprehension.

  4. Apply A1 Project

    Apply and synthesize.

Comprehension testing, Peer-reviewed annotations

Sequencing Tagged Resources

“Twist until it feels correct.”

Learning Objects and Learning Resources into sequences.

Paths of Learning Objects

Paths build upon themselves

Encoding domain wisdom into sequences

Authoring: Generating Curricula Activity Graphs

As knowledge graph traversals that fit degree and resource constraints.

Sequenced graph traversals with boundary-contextual transitions

Process Component Competency Graph

Curriculum/Degree Sequence Requirements

What is the path to the file?

Describing learning areas

  • Goals
  • Modules
  • Assessments
  • Prerequisites as implied paths/sequences

Describing Learning Momentum with stratified skills objectives

Measuring for Ability, Proficiency, and Aptitude

URI-linked resources and reasonable concepts in a linked open data cloud.

Modular interface specifications with prerequisite knowledge linked as part of a traversal through a greater knowledge graph.

Graphs and subgraphs of Learning Resources with URIs according to domain-relevant ontologies.

Reviewing Curriculum Sequences

Is there a book?

Sharing Revisions and Annotations

  • Revisions: Corrections, Extensions
  • Notes/Comments
  • Feature presence and fitness ratings
  • Comparing Citations


ReStructuredText + GIFT + OEMBED

Authoring: Curricula Management

So we have standardized curricula which can be delivered through multiple channels.

  • How do I add/modify this?
  • How do we share challenges & opportunities?
  • How can we compare similarities and differences?

Distributed Revision Control

  • Peer Revision Control
  • Local Forks, Branches
  • Pull Requests, Patches

Learning Metrics

“Is it the course or the student?”
  • Curriculum Goal Sets
  • Optmization
  • Conceptual Routing Algorithms

Software R&D and Learning


clearly, what is being learned is that analysis of structured data interchange in regards to optimizing for outcomes

Learning Comes from a diverse background


it would follow that software development learning best practices are inherent and implicit to best practices for software development process control

Process Wisdom

the software is the person is not the curriculum

Project Based Learning


So, okay, well these assignments look great but we’re going to work on developing projects so that we can focus on specialization and synthesis of TODO

  • How should we measure success?
  • Which feature scores correlate with success?
  • Learning Scientific, Creative and Collaborative Processes

Augmenting Learning

“Here’s a library, knock yourself out”

Simplest, least complex approach Accelerating and Augmenting Learning

Englebart 1964

Standard Project Documents

  • README: Project Goals, Objectives, URLs
  • TODO: Task Lists
  • CHANGELOG: Project Change Log

Revision Control

  • Commit changes to files
  • Commit Log
  • Manifest
  • Link to TODO/Issue/Ticket item numbers
    • working on #123: this, this, and this
    • working on #123
    • task:course/project/n: this, this, and this`

Open Source Software Development Community

Healthy Online Communities

  • Documentation: Sphinx/ReStructuredText
  • Issue and resolution tracking
  • Proposal Review Workflow
  • Learning Community
    • Wikis, Blogs
  • Books: Paper, Digital, Web
  • Distributed Version Control


Version Control Workflow Development

1. edit, edit, commit
2. edit, commit
3. todo, edit, commit
4. todo, edit, test, commit
5. todo, test, edit, test, commit
6. todo, test, edit, test, commit, tag

7. todo, branch, test, edit, test, commit, tag, push
8. todo, branch, test, edit, test, commit, tag, send patch

Collaborative Review



  • Patches & Comments
  • Review & Approval Workflows
  • Changesets as versioned patch queues

Compile a Course

  • Choose Sequence Representation Standard
  • Check/Verify Content Links
  • Flatten Metadata to Bibliography
  • Link References, Footnotes, Citations, Glossary Terms
  • Generate Sequence Manifest
  • Link Activities to a LRS
  • Generate Indices
  • Template Packaging
  • Schedule Course Dates
    • Calendaring

Continuous Regression Testing for Learning

  • Testing Linked, namespaced components
  • Test Cases
  • Build & Test Metrics
  • Test Coverage


  • Linear
  • Goal Objective
  • Path-Based Routing
  • Serious Games

Spaced Repetitions


spaced repetition chart

Optimization: Machine Learning for Sequence Optimization

Optimizing yields from activity graphs and Activity Metrics

  • Variance
  • Confidence
  • A/B Split Testing
  • Cost/Flow algorithms
  • Rotation, Mutation, Mutability
  • Logarithmic Logistic Crossover
  • Mutual Information Coefficient
  • Learning Perceptron Weights
  • Perceptron Graph Serialization
  • Vertex Messaging
  • Event Queues

Optimization: A/B Testing

This document modification yielded this increase/decrease.

TODO: Content Branch Crossover

Optimization: Cost/Flow

Cost flow calculation of a path toward subgraph objectives.

TODO: a river

Optimization: Receiver Operating Characteristics

  • Learning Process Knowledge
  • Identifying Productive Personal Behaviors
  • Identifying Productive Organizational Behaviors


similar to optimizing for conversions

TODO: ROC quadrants

Optimization: Streamgraph Conversion Funnel

            STEM Specialization

General Education    Undergrad   Grad  Doctorate

stacked/stream graph

Searching and Indexing

  • Index
  • Cluster
  • Archive
  • Share
  • Normalizing
  • Eventual Consistency
  • Document Checksums
  • Computed Attribute Indexing
which part do I copy to the search service?



  • Namespace:
  • URL:
  • Query:

Finding and Disambiguating Concept & Instance Identifiers

How do our fields link together? What do they call a _____ ?
  • Concept: Bookmark

  • Instance: bookmarks/{id}:

    { 'ID': ID,
      'isA': Bookmark,
      'title': TITLE }
  • User Instance: bookmarks/{username}/{id}


Nodes and edges with activities whereupon potentiation potentiates with behaviors determined by namespaced attributes

Collaboratively linked ontologies for augmenting sequence authors

Cognitive Ontological Knowledge Graph

  • Concept Trees
  • Concept Vines
  • Namespace Prefixes
  • Typed Links/Edges

Linked Open Data: Wikipedia and DBPedia


Shared, Multi-Lingual Concept Identifiers



Wikipedia is written in MediaWiki syntax


STEM Labs: Laboratory Based Learning

  • Learning process knowledge
  • Team Collaboration
  • Experimental Design
    • Null Hypothesis testing
    • Drawing conclusions about correlation and causation

STEM Labs: Data Science Laboratory


  • Data Science
  • Sequence Modeling
  • Software Development
  • Process Modeling
  • Process Controls

“Development Lab” of virtual services and resources, per-course and/or per-student.

  • Objectives
  • Processes
  • Tools
  • Data
Theory      Procedures     Tools          Knowledge

Books       Repeatability  Spreadsheet    Wisdom
Libraries                  Notebook       Metaheuristics


STEM Labs: Services

  • Q&A
  • Apps Accounts
  • Web Hosting
  • Repository Hosting
  • Project Hosting
    • GitLib
    • Fossil
    • Trac
  • Cloud Service

STEM Labs: Student API

  • Name
  • Courses
  • Skills
  • Activity Metrics
    • Tasks / Activities / Implemented Services
    • Completions / Activity Logs
    • Badges
  • Implemented Services
  • Grid Resources
  • Resources

STEM Labs: Student Assignment API

What is a continuous learning ensemble?

Activity Objectives:

  • Complete an ipython notebook worksheet
  • Run functional tests
  • Store changes in a repository
  • Integrate the worksheet with an API interface for grading
    1. Create a POST HTTP Request to an API.
    2. API returns HTTP Response with evaluation
“Make yours like mine.”
Code Repository      Code Repository
Local Workspace      Activity Tests
API     <--------->  Build Server

Student              Course

Testing Components of a Learning Ensemble


Increasing test coverage.

Repository Event Hooks

def on_commit(repository):
    # check syntax
    # strip answers

URL Schema:{coursename}/{courseunit}/{taskname}#{task_link}

Grading Criteria:

  • Does it match tolerances?
  • Is it repeatable?

STEM Labs: Setup Python Application Framework

Objective: Continuously test submitted problem/test solutions with a controlled build server that requests answers from a student-implemented API.

  • Application Framework Scaffold/Skeleton
  • With a build script
  • And documented extension points

Relevant Courses:

  • Software Development
  • Web Development
  • Agile Project Mangement

STEM Labs: Python Tools

Tools for Developing STEM Python Applications

  • ipython notebook
    • visual charting
    • repeatable processes
    • procedural spreadsheets
    • testable spreadsheets
  • Science Libraries
    • scipy
    • numpy
    • pandas
    • scikits
    • statsmodels
  • Version Control
  • Issue Tracking
    • Trac
  • Python(X,Y)


STEM Labs: Cloud Services

Primary Services

  • Deploy Applications
  • Perform Load Balancing
  • Allocate Identity Service Credentials
  • Allocate Grid/Cloud/Stack Resources
  • Alloccate IP Adresses
  • Allocate Service API Keys
  • Allocate Grid Credentials

Configuration Management

  • Bootstrap Server
  • Freeze/Save/Snapshot Server
  • Generate new home directories

STEM Labs: Open Learning Stacks

STEM Labs: Media Repository

Storing versioned media resources

Resource Repository Standards

Build a Bookstore API

  • Citations, References
  • Books
  • Films

API Lookup

  • Bookstores: AMZN, APPL, GOOG
  • Social Web: GoodReads, LibraryThing
  • WorldCat API

Identifying Tools Gaps as Opportunities

# TODO -> Feature Requests

Communicating Feature Requests

Sample Templated Use Case:

As a _________ <user>,
when I ______________,
it ________________,
but it/I ________ <would/should/could>
which would save __________ <amount of time>.


Eliciting Value Criteria Matrices

Achieving Feature Decision Consensus

  • Feature Value Elicitation
  • Solution Evaluation
  • How important is this feature to you? 1-10
  • How many _____ <noun> is this feature worth?
  • How many ______ <noun-plural> do we have?

Learning Content Management Systems

Examples of Learning Content Management Systems

  • Sakai
  • Moodle
  • Blackboard

Someone has a LMS/LRS Feature Matrix

Rubrics and Feature Matrices

Grading Rubric :: Feature Matrix

Document Publishing Feature Comparison Matrix

A feature matrix for comparing components of a document publshing system

Feature                    Choice-0    Choice-1    Choice-n
   .Feature A
   .Standard Web Hosting
   .Local Application
   .Hosted Application
   .Open Source

Gap: Freemind to ReStructuredText

Objective: Transform between a ReStructuredText document set and a Freemind mind map

Value: Generate document outlines from mindmaps

MindMap to Paper

If I am creating a linearly sequenced book, I am essentially creating a
depth first search/walk of an ordered graph of document sections with
hopefully compile-time checking for links and references
hyperlinked within and between documents with markup.

Gap: sphinxcontrib-courses

  • Language to describe questions, answers, and sources
  • Roles and directives for referencing Q&A with learning object resources
  • Check and cite links to learning resources
  • Metadata attributes with URIs


  • Roles
  • Directives
  • Publishers

Language to describe the course curricula

  • Processes
  • Content
  • Questions
  • Answers

Q&A Authoring

Syntax for expressing Questions and Answers in ReStructuredText

Re-sequencable tests for comprehension:

1,2,3,4 ; 4,3,2,1 ; 2,1,3,4

Similar to web commenting services, but with questions and various categories of answers

Allow for question/label randomization and optmization

  • If 85% answer correctly with sequence 0 and wording 1
  • If 95% answer correctly with sequence 1 and wording 0


Audience testing

“But they are sharing the answers!”

Branch Commit Preprocessing Hooks


Gap: Per-Course Sidewiki

  • Per-course sidewiki
  • with scholarly overlays
  • and an answers tab, for teachers

Process: Citations

Tools: Managing Bibliographic Sources

How best should I reference source materials?

  • How should I link to a table?
  • Can we archive these links at compile time?
  • Would we draw the same conclusions?
  • Repeatability

Publishing Research Metadata

So, I have now prepared roughly 100 slides with pen and paper, and now need to lookup which references I browsed, bookmarked, and slept on.

  • Tagged Bookmarks (Per Browser)
  • Zotero References
    • Archived Resources
    • ISBN, DOI
    • URLs
  • Mendeley References
  • Course Syllabi
  • Course Readings
  • Research Journal Databases
  • OpenCyc Concept Identifiers
  • Wiki Resource Identifiers
  • Video URLs
  • Media Repositories

That I would like to reference, and draw from

  • As footnotes
  • As links in blogs & wikis
  • As project and career relevant knowledge
  • As stable, permalink URLs

Which textual citation serialization?

  • Zotero Styles


Tools: Managing Bibliographic Sources

Artifacts -> Repository
Metadata -> Citation Knowledge Graph
Groups   -> Citation Knowledge Graph


Storing Media
   Logical Filesystem Naming



Gap: Managing Structured Citations

Preprocessing and Serializing Structured Data in ReStructuredText


  • Journals extract and compile bibliography citations in various formats.
  • Academia demands citation tracking

Use Cases

  • Sort, name, and link to structured citations
  • Reference and link to a collection of bibliographic references within ReStructuredText documentation.
  • Extract structured data from abstract and fulltext HTML pages in various databases aggregate and feed journals
  • Store research snapshots and research logs
  • Store local cache of bibliographical references and citations that can be synchronized, read from, and shared with groups.
  • Create a footnote with links to more information
  • Create a Zotero Object in a Zotero Repository
  • Drag and drop a ReStructuredText Citation selection from Zotero into a text editor, as a bibliography list
  • Link to a global citation identifier in ReStructuredText inline and within footnotes and citations
  • Link to DOI, ISBN, and WorldCat
  • Sort and format bibliograpy entries for a given citation format
  • Archive bibliographical reference repository snapshots in a
    • Curriculum Vitae
    • Paper
    • Blog
    • Wiki
    • Phone
    • Tablet





Zotero will export a resource collection to BibTeX

ReStructuredText Citations

Managing structured citation references

Convenient globally non-unique hashed identifiers.

Maintaining Bibliographic citations with BibTeX

Managing citations as structured data with a plain text lightweight markup format.


.. reference a citation from sphinx
.. bib_identifier = {user}/{collection}/{docid}
..                 {group}/{collection}/{docid}

:bibref:`bibliographical reference <bib_identifier>`

.. format(get_metadata(id) for id in bib_identifiers)

.. bibligraphy::
   :format: <Citation Format>
      [ Reference Collection URLS ]
      [ Reference Collection Namespaces ]


:pypi:`sphinxcontrib-bibtex` solves for part of these requirements


Footnote naming simplifies reference lookup.


Gap: Sphinx Widont

Jinja2 Typography extensions

Gap: TinCan Server Python Reference Implementation

Objective: Record structured data from event-based Web Hooks

  • Python
  • WSGI
  • Store, verify, and forward upstream activity metrics
  • Design Q&A Quiz UI
  • Draw heat map

Python API Tools

Javascript Activity Metrics

  • TODO


Gap: Security: Student API Access Control

How do I share this API with a limited set of people?

Access Control

  • Reverse Proxy
  • API Token

Gap: ReStructuredText Outlines and S5 Presentations

Chunking for Presentation and Delivery

Point outlines which map into slides of a document in serial order containing references to sources of information regarding the contextual subject being discussed.

Slides have a next and previous and can follow a question & answer format


presentation timing with sliding windows

Gap: Sphinx Glossary Thesarus

Linking words together.



This report was prepared for English 3980 Technical Writing at the University of Nebraska Omaha, Fall 2012. The views expressed herein do not necessarily reflect the views, positions, or policies of the University of Nebraska. No official endorsement by the University of Nebraska is intended or should be inferred.

This report is a non-profit scholastic work. Third-party content included, cited, and referenced in this report is considered to be fair-use in regards to 17 U.S.C. § 10 and the Copyright Act of 1976.

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License


Permission to reprint, share, and remix this report is not necessary. The suggested citation is:

Turner, Wesley. *Self-directed Learning with Online Resources*,
   Omaha, NE, USA. 2012.


   author      = "Wesley {Turner}",
   title       = "Self-Directed Learning with Online Resources",
   institution = "WRD",
   year        =  2012,
   address     = "Omaha, NE, USA",