17 – 1

He sets up behind his own net, walks out in front, defender 1 attacks (toe drag), defender 2 goes for the poke check (play off the boards and past him). Defender 3 is out of position and now only 1 defender left, a simple inside out move, now we’re on the outside on the backhand. Time to apply “the can opener”. This involves 3 weight transfers while doing a short tap on either side of the ball, followed by a toe drag. Now, instead of a normal approach where this would involve a shot 5-hole, I do a 180 hop and then drag to the far post around the poke check while moving left to right and tap the ball in while falling down (the directional transfer at my weight is still too much for my like-new skates with indoor wheels to handle).

Nothing but net (and congratulations from teammates / the opposing goalie because it’s men’s league and quite friendly). 26 years of practice leading to this moment, being able to awe 20+ people in a no-name town with all the speed and stick handling practiced in my driveway. Reliving past memories, or simply escaping reality for a bit. Usually, it’s enjoyable, a way of reliving a bit of my past when I did play some competitive hockey for the school team. Reliving that play in my head against Drexel in the post season where I walked the entire team in my 1st season with my best friend growing up watching me torch his college. This day though, was about something else though; escapism.

I don’t write about hockey, and I don’t talk about how much I play because I try to compartmentalize the worlds a bit. But I noticed something in me that I haven’t felt in a very long time. It wasn’t enough to just score, or to setup teammates. I wanted to.. no, HAD, to embarrass the competition. I wouldn’t just play to relax or have fun, I was playing to escape. And I haven’t felt the desire to escape in over 12 years. Hockey to escape, as friends have noted previously, isn’t the same as hockey to have fun. When I’m having fun, I try stuff, I mess up, I play a typical lackadaisical pick up style. We score some, we let up some, someone steals it (oh well).

No, this wasn’t fun hockey. This was escapism hockey (we’ll get to from what). When I play to escape. I don’t just play, I destroy. For example. I missed the 1st period of our game. At the end of 1, the score was 2-1 our team. At the end of the game, it was 17-1. When I play to escape, I don’t let up. I don’t just want to win the game, I want to make it boring for all involved with how much non-stop scoring there is. I want to toe drag every member of the opposition then tip it off to a teammate for a tap in. I don’t like that person. I’ve kept escapism hockey down for a long time not because I don’t like winning; but because I don’t like the person I am that “accomplishes” the winning.

What am I running from?

I’m running from being trapped in this career without any real way of expressing it that doesn’t seem like it would “get me in trouble”. I’ve always been told I have a “don’t give to F’s” attitude which gets others in trouble and leaves me unscathed. Trust me, it doesn’t make me friends when applied to a work context. I’d love not to be this way, that would be really nice at times.

But I can’t deny who I am. I want to make education a better place. I also believe in pursuit of singularity technologies; technologies that bring about a fundamental transformation in a space of practice, where the previous laws that dictated norms in the space are no longer valid. I’m trying not to allow the words of a keynote speaker drown my enthusiasm (and hopefully at the end of writing this I’ll be back on track) but….

“There has never been a successful open source project that’s stemmed from academia” – Computers and Writing 2016 keynote speaker

This and a few other platitudes that seem incongruent with how our project team sees things:

  • Academia doesn’t produce software, that’s for industry.
  • Have you thought of making this a company, companies can do what the academy cannot?

I’ve been wrestling with these harbingers of doubt. Why keep going? Who’s “Waiting for Superman” (movie, see it) that you are supposedly going to help? No one cares, no one gets it, no one here believes in you that wields power.


These thoughts keep haunting me, especially when overloaded with projects that I push myself to get done by impossible deadlines that seemingly have no end in sight (even if “finished”). Why keep fighting, what’s the point? I don’t write to dissuade you from pursuing dreams, but only to realize that imposter syndrome strikes us all from time to time.

After hockey, a friend who I’ve been a sounding board for years returned the favor and I can appreciate why advise seems to go on deaf ears at times. Through all this ranting (though with the real issue at hand involved), he just kept telling me to have fun. To remember, that all of this is about fun. If it’s not fun, it’s not worth doing. And I kept trying to find in my mind more and more “Ya but…” ‘s. My mind wants to rationalize that things couldn’t be that simple. That it couldn’t be me allowing things to crush me in my mind more then they should.

“You’ve built an empire, stop and appreciate that”

In a world where our empires are digital, it’s so hard to actually appreciate them. Anything can be built up and torn down with a simple series of rm -rf *

‘s. When this is true, it is hard to stop some times and realize there are real world consequences for the technologies we build, advocate for and implement….

We’ve mobilized everyone* (almost everyone) in a uniform development paradigm. We’re on the edge of the industry right now when it comes to Web Component architecture (Youtube and McDonalds just released, but I mean, other then them what REAL people are using polymer?).

And maybe because it’s the edge, that’s why it feels so lonely…. but my friend is right. It’s important to keep perspective. To stop, and listen. To enjoy the spring time, focus on what is attainable and keep polaris fixed in her seat as that north star. That ultimate goal of transforming education and educational technology. I’ve been buying too much of my own marketing.. and wanting us to be something more then we are. But then again, no one said there wouldn’t be repercussions, and self-doubt associated with the intentional by-pass of management tracks. It’s just so hard to get over sometimes when the people you trust the most abandon not you, but your ideas…

The game is scheduled, it’s sunny weather outside, it’s time to play… I just need to talk to the sports psychologist before puck drop if I’m going to actually have fun playing the game. Because.. if it’s not for fun… what’s the point of playing at all?

5 reasons to come to Open Apereo 2017 in Philly

I’m here to tell you, yes you, that you should join us at Open Apereo 2017 in Philadelphia June 4th – 8th. Why though? Well, as someone who only attended last year by accident (a friend invited me to join him in his presentation) I can say that I was overwhelmingly impressed by the event. I attend a lot of education / ed-tech / Drupal events, and Open Apereo was by far and away my favorite event I’ve been to; right up there with DrupalCon, OpenEd and UniversityAPI UnConference.

Early bird registration ends this Friday (May 5th) so now is a great time to register and save some coin.

So, here are my 5 reasons you should be there (ok well 6):

1. The people

This beyond any other reason is why you should attend. I absolutely loved the people of Open Apereo when I went in 2016 at NYU. I knew 1 person coming into the event (Dr. Chuck Severance) and left with a nice little network of people that I’ve still been keeping in touch with regularly a year later! Everyone I talked to was interested in why “A Drupal person would be here?” and would leave our conversations with a greater understanding of where I was coming from and why I felt (increasingly as the event went on) that it was important that I be there and get our community to unite with this one.

As an example, I had a 15 minute speaking slot in a session and when I mentioned “I’m thinking of pursuing incubation to join this community” the room of 50 or so people all started clapping (mid session). It was cool to know there’s a group of people beyond my traditional communities that was openly encouraging a technological outsider (nothing there is GPL and nothing there is PHP to my knowledge, and no way is anything there Drupal till now..) to unite with them.

The only other audience of attendees I can relate Apereo to is Open Ed. If you’ve been to OpenEd you know that everyone there has this unified mindset of “We are going to make education better by making open textbooks, open materials, and lowering costs to access as a result, through free or at least advocating cheaper solutions”. Well, take that and apply it to educational platform development. Everyone there whether administration, developers, management, faculty or staff, EVERYONE is unified in mindset that we can improve education and innovate best when we do so as an open community.

2. The mission

Open Apereo is like the Apache Foundation but for educational technologies (What do you mean?). Think of Open Apereo as a way for open source edtech communities to all get together and speak with one unified voice. Does it mean that everyone in the community HAS to use other platforms of the community? No. But it does mean that cross pollination can happen more easily because of proximity and it never hurts knowing what other people with similar mindset (open source all the things!) are up to and thinking about for their next releases.

3. The sessions

[See schedule here] Sunday has a lot of training opportunities and is sort of a “pre-event” if you will with workshops including one on xAPI from the Aaron Silvers and company! The bulk of the sessions of the event run Monday through Wed morning with related events specific to communities within Open Apereo taking up Wed afternoon through Thursday.

One thing I loved about the session selection last year is that it’s all over the place. By that I mean there’s something for everyone to learn and find something at their level. If you want to just get an intro to something there’s Audience tags on all sessions and these are very different from most events I’ve been to. Audience tags include: New comer, student, developer, faculty, staff, Technical, Administration member and Advocate. This along with the Project tag, help to indicate the types of users this is speaking to but also the project it’s about.

*There are four ELMS:LN related sessions this year so we’ve got our own tag 🙂

4. The platforms

Sakai, Open Academic Environment, CAS, Xerte, and uPortal are just a few of the communities involved that play a prominent role at Open Apereo. “But we don’t use Sakai as our LMS?” – Me neither. The best conferences where I’ve learned the most are the ones where I “didn’t fit in”. Innovation doesn’t lay with the same group of people with the same platform all talking to each other, it’s when an “outsider” comes in and provides a new perspective based on their experiences. Open Apereo is an incredibly diverse group on multiple levels, very important for educational technologists though is thought diversity. So many different platforms with different use cases, different countries and world views of education, different clients, different different different. It’s awesome!

ELMS:LN will be represented as well formally now that we’ve gotten into their incubation program (and believe me, we’ve got nothing in common with Sakai, this ain’t no Sakai exclusive event if my rag tag band is accepted to speak anywhere in public).

5. The location

Philadelphia is a hub of educational institutions, along with PA in general. It’s not far from major cities and has a lot to do on its own if you want to roam around post conference / find great places to eat while there. Make sure you spring for a Cheese steak or two (with or without “Wiz”).

6. Lightning Talks (BONUS REASON)

There are 3 lightning talks scheduled for Tuesday afternoon. One of which is mine entitled: You can’t buy the ocean so PLEASE stop trying to purchase your way to NGDLE. I highly recommend you attend if your looking for someone to just “be real with you” about NGDLE and where open source and edtech are situated currently. As someone building in a completely different community (intentionally) I think I bring a very unique perspective to more traditional edtech world views.

Also given the fact that I recently gave a talk at DrupalConNA (Drupal’s yearly, US based national event) and said (well, my colleague Michael Potter said) we are here to save Drupal from itself by declaring the end of the web as we knew it. We plan to do this by eliminating the Drupal Front end way of authoring content in Drupal, I’m not above being as provocative as possible to forge a new vision of the world.

I spent much of this post talking about how much I need / love Apereo, but I think Apereo needs me and what our team is working on just as much. How can ELMS:LN be the best platform it can be? By actively building up communities and technologies not currently in ELMS:LN (huh?). I’ll explain it in this talk and how it applies to everyone in the room working in their cubby-holes on different UX patterns when we could all be working on open UX elements via LRNWebComponents and disrupting ourselves to prevent anyone else from doing so.

What is LRN? What are Webcomponents? Why is it the future?

If you’ve been paying attention to twitter, I’ve been rambling on and on about 1 thing lately. #Webcomponents / #Polymer. Depending on the tweet I use one or both. It’s not that I’ve left the #drupal community or converted elmsln over to a different platform; it’s that I’ve found a design paradigm that I can’t un-see.


Let’s back up a bit.. What are Web Components? Webcomponents (of which you can find many on the webcomponents.org community site) are moving along as a recommended W3C specification (hasn’t 100% stabilized yet but it’s been in the works since about 2014 when Google really started pushing the idea and currently all major browsers can support them via polyfills or javascript filling the gaps). In other words, really smart people that meet to discuss the direction the web should go have said that all browsers should natively support the concept and are largely in agreement about the way to do it (very different from when they were proposed in 2014 with no route to implementation).

Webcomponents aren’t actually 1 standard, they are 4 standards that when paired together, make web components possible. If you are interested in the 4 specific standards you know how to google but TL;DR version:

  • Webcomponents are made up of Custom Elements that are Imported into the page
  • This is a fancy way of saying a <custom-html-tag-like-this> can be added to any webpage like this <link rel=”import” href=”../custom-html-tag-like-this/custom-html-tag-like-this.html”>
  • Modern browsers implement a “shadow dom” approach meaning that it renders the contents of custom-html-tag-like-this.html meaning that it doesn’t need a compiler like Angular or other web framework in order to render (which means much faster then them at doing so), then at run time sees the <custom-html-tag-like-this> tag and goes “Oh, I should throw this in its place!”. Shadow Dom also enables “scoped CSS” which basically means that elements present themselves exactly like they do in documentation as opposed to influenced by global CSS.
  • Browsers have all agreed (to varying degrees of implementation thus far) that these make sense
  • This isn’t really that different from the HTML5 <video> tag as far as how the browser processes that to build a player to run the video

What’s in a custom-html-tag-like-this.html file?

That’s the best part, everything required for just that single tag to do it’s magic. So you get a very clean file that has dependencies (since webcomponents can reference other webcomponents), css for this component, normal looking html (though it could also be other <custom-tags-that-you-made> since they stack just like normal HTML), and javascript to define custom properties and functions.

We’ve been working on many but I think lrndesign-blockquote is one of the most straight forward examples we’ve produced thus far. This allows us to wrap the <blockquote> element in a structured way so that we can provide new options / attributes. This will allow our end users the ability to write something like:

<lrndesign-blockquote decorate quote=”It was the best of times, it was the worst of times” citation=”An old dusty book”></lrndesign-blockquote>

and have it show up in the browser like it does here.


So now that we have working knowledge of what a Webcomponent is we can jump ahead to Polymer. Polymer is a google backed community / open source project that effectively helps solve the chicken and egg issue of developing against new standards:

  • Chicken: Developers will only implement the standards browsers have
  • Egg: Browsers only implement the standards developers will use

To combat this (and provide general efficiency when building) Polymer has created what are known as Polyfills, or javascript that fills in the gaps in browsers to support different aspects of a specification. These Polyfills progressively enhance IE 11, Edge, Firefox, and Safari in order to make them able to support all aspects of the Webcomponent specification as best they can. The idea being that these training wheels can be taken off / modified as the other browsers implement the 4 parts of the webcomponent specification.

You didn’t mention Chrome or Opera

Correct, because all aspects are natively implemented in both which means your webcomponents you produce run crazy fast in Chrome and Opera, as if it’s no different from normal HTML!

Polymer also comes with a Command Line Interface and some other efficiencies when building webcomponents that make it much faster then building without. Basically a single command of polymer init in a blank folder asks you prompts and then starts downloading and positioning code in the right places.

Then running polymer serve –open and polymer will start a mini-webserver to serve up your element as a documentation site like this one. It’s pretty damn magic and incredibly easy to get oriented to.

So this is all on your generally less-technical ELMS:LN blog because…

Because we’re working actively on building out our own series of custom HTML elements intended for ELMS:LN but we are planning and developing them in a way that they will be usable by any educational or non-educational solution. These tags will all be open source individually and packaged in a way via our ontology that allows for remix and reuse in amazing ways.

LRN – Webcomponents for learning

We’ve prefixed these tags with three letters to make them very easy to read and say as a sentence: LRN. This also is abstracted from “education” so that we can share terminology and design needs with training and mooc communities of practice. You can see demonstrations of our current tags we’ve built through our webcomponents.org organization page.

lrn is broken into 4 levels of tags which you can read about in our ontology documents. These are:

  • lrn – an instructionally focused group of elements
  • lrndesign – a design focused group of elements
  • lrnsys – a behavior / system layer group of elements
  • hax – lrnsys tags which are more repurposable then even lrn so named differently

Together, we can build a well documented style guide for the expression of educational concepts that will have no system specific boundaries. These elements can be loaded into any system connected to the internet so long as the tag definitions are imported. In ELMS:LN we are obviously doing this via a Drupal integration, but there’s nothing stopping us (or you) from running these in any other solution you can come up with!

Design elements (lrndesign) are abstracted from logic (lrnsys) and purpose (lrn) driven elements. Instructors / instructional designers would then be able to write an html tag that has the exact purpose of what is instructionally significant about what they are trying to write instead of constant translation of concepts and assets to code tags. It also will allow us to build a method of content construction we are code naming HAX (short for headless authoring experience).

Video showing our shared future

This is a video I shot just as I was about to make a new webcomponent. It jumps in right at the point that I’ve copied an existing one and renamed it, so it’s a bit of jumping around talking through what works and how it works while at the same time me just coding / fixing some issues that pop up. We’re always looking for people to join us both as developers and idea people sharing how they could utilize something like this best for their needs. Let us know what you think!

University API Un-conference Debrief

I recently attended a new conference (well new to me anyway) called University API Un-conference. This is the 3rd time it’s run at BYU and is sponsored by the CIO / BYU Enterprise Architects group. They didn’t ask me to write this but in favor of transparency they sponsored me coming out to talk to expose attendees to the ideas driving ELMS, especially in areas of xAPI.

But anyway, I’ve been to plenty of “unconference”-ish events given that Drupal is usually pretty informal, hosting Birds of a Feather (BoF) rooms where anyone can write down a topic and meet informally. Room number, whiteboard, and go. I was pleasantly surprised by the quality of a facilitator lead unconference!

We started the day writing a brief topic descriptions on big sheets of paper, then we sat in a circle and gave like a 20 second pitch of what our topic idea was. Then we put them up on a board based on room and timeslot we wanted. It was an interesting collaboration and meet and greet in one. There were also ground rules associated with no worrying about who was in your session or how many and also not getting offended if people moved around.

Topics were all over the place. From university API (they have an API-frist architecture that all systems integrate with, it’s pretty incredible in and of itself), “help me learn about API” style working sessions, pet projects, LRS development, Swagger.io documentation talks, Event management APIs, ELMS / OER family of topics; really anything edtech builders it was there. As I expected, there were several past Apereo attendees / member organizations including Duke represented. I figured as much because I felt incredibly comfortable with the audience, people knew how to build things instead of just buy them, and the open culture really creates a vibe not present at some other edu events.

My big take aways:
– Swagger is something I really need to learn more about. BYU has a system similar to the elmsln read the docs integration where documentation can be ingested and replicated in a drupal site (funny, same workflow, same starting point, same endpoint, different bridge code to do it). It would really help us with our Polymer elements long term I think since it’s for building and documenting APIs clearly.
– Tone is incredibly important. During an OER discussion, I mentioned the notion of overthrowing past governence structures (said much more flippently then this even) and someone challenged me as to what I meant by it. She then described what she thought I was saying, which was the same thing basically but sounded way less threatening. This stuff only happen in Open and when all parties are willing to question and be questioned as equals.
– API centered design, several years after being put into practice, is something incredible to behold. Day 1, it can be painful and those painpoints were expressed, but now a few years out it’s rather amazing the kinds of integrations / solutions BYU can craft as a result of this approach.
– The idea of an “event” / “activity” API endpoint is something I’ve never thought of before and something they have working very well (even if it’s early on) at BYU. The idea is that any action that you want to track / report of any kind gets sent to an events endpoint. Anyone can create a type of event / action and supply the data to back it up
– Sovrin – I’ve never heard of it before but Sovrin the technology for global distributed identity (think blockchain but for identifying individuals securely across any solution out there) is a pretty awesome concept that’s gaining some traction. There were several discussions around the idea of Sovrin the technology and Sovereignty as individual student ownership of data and empowering students to be able to take their credentials / skills / badges with them. They are calling this Learner Profile and while it’s still in the early dreaming phases, I understand why we see eye to eye on so many things. Once you start thinking in terms of redecentralization, you can’t unthink it.
– I love hallway / lunch conversations. I met someone who had a PhD in the History of Technology; which is an STS topic that’s right up my alley from my Information Altruism work.
– Get off the island is more then just code – I was able to provide a unique perspective to attendees (and them to me) as a result of my bulk of experiences. Several times I referenced the Writing conference I attended (cause no one there did), Apereo / Sakai work (which I’ve been to and others have / use Sakai so shared experience from multiple perspectives), and being a hard-core Drupal developer when many people were sysops; which gives me a unique perspective from the “inside” of a very different open source community from the open culture of the event. Overall, this really validated that I need attend less Drupal events with people I’m immediately at ease with and instead try and search out these hidden gem events.

I don’t require it, but wow does it feel good sometimes. It was very nice to be some place with people I didn’t know, who didn’t know me or my work, and have them see the totality of the work our team has been doing (both PSU college centric and ELMS:LN developer centric) and be floored by it. It’s funny, I kept saying how blown away I was with the level of open culture exhibited and the API infrastructure they all were apart of, while at the same time people kept telling me my work was the first sign of a way forward beyond the thinking of the LMS without breaking the student / faculty cognitive load issue of multiple solutions. I had a couple people tell me this was the first tangible example of a NGDLE they had ever seen and I had many long conversations
Other things:
– People are looking for what OERSchema provides but not realizing it. In describing the problem it solves and demo’ing it to a small group they were very impressed with the idea. Always fun to present someone else’s work and have it validated.
– We’re on the right track with Polymer, BYU’s been doing it with different components in the form of straight up webcomponents for some time and have been happy with the results.
– ELMS:LN is maturing to a point that I can present the idea at a high level and delve into the trenches and not have to hide anything along the way

Going forward / Next steps
– Hopefully we can get another voice from Duke to vouch for us to the Open Apereo foundation board of organizations. We need 1 more voice to say ELMSLN should be accepted into their incubation program. This would help the project gain visibility but more importantly provide our community mentorship in what practices we could be doing a better job of with getting people on-boarded and sustain efforts.
– We need to do a better job justifying xAPI in the age of Caliper among some people, but because of our worldview with regards to data (anything is a course, anything an action, anything learning, not just what happens in higher education LMSs) xAPI will always be more flexible. It might be messier, but it’s going to always allow for more flexibility in design over Caliper. This isn’t to say we shouldn’t be open to supporting Caliper, but it might be more of a filter that converts xAPI statements into Caliper ones based on skimming off the ELMSLN context properties we’ll mixing into xAPI to extend it.
– Standards all the things; We need to work more on the external tool integration aspect as well as supporting LMS APIs natively. This would be the next step in suggesting this system is higher then the LMS in what it can do and what it’s meant to provide as an ecosystem driven experience.
– Libraries need an OER hub / routing solution: Members of Duke & BYU had an interesting perspective on the OERSchema / Git ingestion workflow for markdown files. What if a library was the curation engine for OER to vet it for quality, and then much like an old library, provided an open bookshelf of sorts that people could checkout the books from. In this connotation, checking out a book would be cloning the repo so now you have a copy. This would allow distribution and help ensure knowledge never dissipates (a critique Michael Collins has of Database driven / single point blogging platforms / silos). OERSchema becomes icing on the cake as it would incentivize faculty to not just tell people to draw from an online text but allow them to legally and easily pull the book apart and remix it into new forms

Overall this was an awesome event and everyone was very approachable. Thank you all so much more having me and I can’t recommend this event enough and hope it comes out East Coast (Duke tossed out the idea of hosting toward the end of the year which I’d be up for coming down to).


I’ve written before about the journey I’m on. How I see our work, where I think it’s going and some of where it’s been. Call it high altitude, conference high, I don’t know what; but I had to do stream of consciousness for the thoughts in my head. This is what spilled out, turned into paragraph form instead of 140 characters at a time

I was in deep thought / meditation / prayer one day in 2014. I said, my work life has no real purpose, the thing I do every day at work, it’s just that, work. It only benefits a few 100 people, which is neat; I contribute code, help people in small ways which is great, but not lasting.

In that quiet. I found clarity. I found a design for what I should be doing, abstraction beyond abstraction. Designing for the unknown and encouraging the unknown, designing to be able to capture and sustain innovative efforts instead of losing them in one-offs and white-boards. A problem that everyone seemed to articulate but no one could recognize an answer it. I said this doesn’t exist, and I couldn’t unseen the picture in my head. A series of interconnection following the same pattern. A fractal in my mind.

I had to pursue it. I drove myself into the ground physically working towards it while trying to be a good husband and father to two under age three; struggling to be a good family member in the ways I knew how. The parent dilemma as I’ve been told it’s called. The vision was a huge time blackhole.. and the more I talked about it, the more I realized no one got it. I was alone in my own head, no one to look to for advise, no one to collaborate with, no one to encourage my idea. They couldn’t see the picture in my head or understand why as a concept it would be useful.

I had a talk accepted at a small event in Ohio, 100s of miles from where I work. I was really excited to talk about this idea and show, something, anything that would start to demonstrate it. My heart sank as only 5 people we in attendance for that talk, 2 of them people from back home that were good friends of mine. I swallowed and said “screw it, it’s still worth it” and laid out the vision, starting with my moral obligation to my kids to build a better world in whatever way I knew how.

And for the first time in a year, they got it. People I knew and had been explaining this to for months finally had their eyes opened to what I was trying to express. This was early 2014. Later that year, I had a talk accepted at DrupalCon (1st time ever). I laid this concept out and the state it was in. There were 100 ~ 120 people there, and there was interest and some excitement… but nothing happened.

I got accepted to OpenEd 2014. I presented on this idea as being key to laying the groundwork for open publishing systems, an OER factory and the way of liberating our institutions knowledge silos while achieving their public-good mission we are all put in place to serve. A friend from twitter tweeted “LOOK AT THE PASSION” as I was practically brought to tears describing the thing in my head to a group of people that would be eager to hear about it. I had a few questions, some good ideas and enough energy to generally sustain me emotionally afterwards. But still. Nothing happened.

I dug deeper then I knew I could and took my game to another level as a developer. I went from being a simple Drupal developer with dozens of contributions to a Full-stack developer versed in Javascript, CSS, Bash, Drupal, PHP, GIT, and any library I could get my hands on that I knew I’d have to figure out in order to achieve my dream. My friends started to notice the change in me. That this incredibly unserious, sarcastic late 20s colleague, wasn’t just working to get the job done; he believed in something. And finally, after years in the dark and almost 2 years of rambling about this vision… something happened.

My friends and colleagues started to believe in what I was talking about. They saw how passionate I had become about not just code and donation of effort. They brought their code, their time, their ideas, their take on what I was doing, and together, we all started to make it our own. They started looking into jobs they could take where the jobs could be accomplished using the approach I was talking about. At times, they took opportunities paying less money and having less job security to get a chance at working on this vision. They started working after hours, nights, weekend commits would roll in, issues would be discussed at social gatherings. And not only did the vision become shared, but our friendships grew stronger. “They” don’t work for Me or “My” project, we work toward our shared vision of the world we can make possible. Better, together, forever open source.

From those days, and meetings and blog posts, and videos, and code commits, we started to slowly attract adopters. People could see not only that this was an interesting idea, and that they wanted to play with it, but that they actually could play with it. The vision was becoming a real, tangible thing. No longer a dream in my head, our diagrams on our whiteboard, but a real thing people could touch and experience, people who had no idea what it was starting to grasp the concept in less and less time. My tone changed, my duration of session to get to the payoff changed. Hour long talks could be consolidated into 30 minutes, then 10, then 5, and now an elevator pitch with visualization to back it up.

Excited, I submitted for OpenEd as did a friend, but we got rejected. And for the first time ever, I said “I love and support this event, I’m going anyway” (something difficult to justify financially to the same degree as presenting as unfortunate reality). I listened attentively, picked up new ideas, new ways of speaking, new design patterns / use-cases I hadn’t thought of and others that were validated by going. The whole time I worked. And people in the audience, a solid mix of builders and users of OER, kept peaking over my shoulder, saying “Ooo.. what’s that?” seeing a terminal window, code, and a webpage that looked like something worth OOO’ing about.

Then, I sat in a session by people I respected a lot at a technical level. A random person in the audience asked a question about LRS technology. The answer, while valid, wasn’t really in depth. He seemed genuinely interested in seeing an LRS. So, as an LRS is part of ELMSLN (via Learning Locker though any will work), I walked over and asked if he’d like to see the one we use. As I started to show him learning locker and where our statements came from, he kept saying “No no, wait, what’s that, show me that system”, referring to ELMS:LN. I detoured a bit, showing him ELMS integration w/ Learning Locker via xAPI, how well that works, how early we were in doing it but that it’s the way forward. He gave me his card, said we needed to talk some time (a line I’ve heard too many times to ever get excited about beyond validation in that moment of work).

And an email showed up a day later, asking to do a little Skype call. Cool I thought, I’m always happy to show people Learning Locker.

We got on the call, and then another with more people, because little did I know, I wasn’t there to show them learning locker, the CIO’s office of BYU was extremely interested in ELMS:LN and my design methodology as it related to xAPI for distributed learning profiles. We discussed how we all envisioned using a distributed series of solutions controlled by the institution (or at times, not, just recommended) and developers to improve upon, bend and eventually break the LMS paradigm of singular, giant systems into a lego grid. We talked xAPI and how it’s critical in achieving this objective.

Someone got it. From no one in months, to someone in seconds. They got the approach and wanted me to show other people, so I just attended BYU’s UniversityAPI Unconference. It was a pretty incredible experience which I’ll do a separate debrief on because it’s a great event and I learned a lot.

For me though, to be presenting to members of BYU, Duke and other institutions, and have it be about the big picture (I talk on the minutia of Drupal usually) it’s a dream come true. I feel like my life’s work is starting to stick, because I laid down my shields, contribute openly, pursue contributors openly, build others up, help and reach out to anyone I can and try to get them using Drupal, Open Source, and maybe, someday, ELMS:LN to achieve the mindset that we have about education and it’s influence on society through technology.

We’re at a tipping point, I can feel the wave of emotion that comes with that tip. We’re not just onto something, we can demonstrate worth and it makes me want to NEVER discourage a big idea ever again. No matter what it is, if you can dream it, if you can stick with it,you can do it. This is fuel as much for you the reader, as it is for me, as it is a life lesson for my children when they get older.

Be. Just Be.
Be laughed at. Be ignored. Be told to shut up. Be told it’ll never work. Be told no one will get it. Be told you can’t make the world a better place. Be told “no open source project has ever been successful when originating in Higher Education”. Be told no one will adopt Drupal, let alone ELMS:LN. Be hated. Frowned upon. Misunderstood.

Just be, who your God, your worldview, your community, your industry, NEEDS YOU TO BE. And nothing less. Ignore the doubters, the naysays, the negativity. Because if people are telling you it’s impossible, in the age of singularity, automation and mass creativity at scales the world has never seen before, then you know you must be onto something.

Seek out those who build you up, distance yourself from those who tear you down, but always be willing with open arms to welcome them back in. Don’t scoff. Don’t “I told you so” or “That’s what I’ve been saying”. Just smile, be happy that they’ve escaped the trappings of their mind to see the world you are expressing (again, no matter what that world is).

We don’t just have code. We have an idea; and to quote V, from V for Vendetta; “Idea’s Mr. Creedy… Are bullet proof”. You can speak anything into existence if you just keep believing in it. Don’t back down, don’t let the negativity of this world, of the social media sphere, or your community get you down.

I am incredibly humbled today and ready to take a much needed break to think and reset. When I return, I’ll be refreshed and ready to keep setting the road ablaze with potential. We are… ELMS Learning Network. And we’d love to have you join us to build a better world! One line of code, one conversation, one course, one solution, one learning, one smile at a time, we will build a better world.

A reaction to “A Spartan LMS”

Original post: http://learningnuggets.ca/ed-tech-thinks/a-spartan-lms

My response below (this may be my new blogging style, reacting to the rest of the world w/ commentary, other person provides the prompt, and then I can word vomit :))


So to do the twitter thing: “This.”

This post is great, I love how you’re viewing the LMS as something that needs to be fragmented because of reasons of ownership, pushing boundaries, and the fact that CMS (which I’ll call Domain of One’s own in this case) based technologies can replace so much of the BS in LMSs without the cruft.

To the point of throwing the baby out with the bathwater (and past arguments of walled gardens vs completely open spaces) I’d like to propose this analogy. Envision the baby in the baby tub. Instead of throwing them out, when the baby grows and matures and there isn’t the same fear of drowning, we submerge the smaller baby tub into a larger bathtub. We do both at the same time for a time to get the baby acclimated to the new environment and the new freedoms of this larger space. We don’t immediately remove the baby tub or throw away the water from this tub, but we submerge it in a larger pool.

This larger body of water slowly, naturally, becomes one with the body of water in the smaller baby tub. Once the child is comfortable with the larger tub, they eventually exit of their own free will and eventually, we don’t need the baby tub.

In this worldview, I see the LMSs of the past 20 years to be that baby tub. A relic of the training wheels of online education. A forum system that needed to exist because well, our learners and instructors had no knowledge of the world. But as we’ve gotten our feet wet in the larger ecosystem of the web, we’ve lost the need for these training wheels. We’ve outgrown them.

So, how best to react when administrations and IT silos for 2 decades have handcuffed our institutions with purchasing decisions which are great for “good enough” but not for Great? Well, we need to take this baby pool submerged into the larger body of the web approach. This is where systems like ELMSLN come in (my baby). We know that you need an LMS (for now) and we structure ourselves in such a way that we assume that we’re going to be integrating with lots of things. We do this, while simultaneously besting the last 20 years piece by piece (which trust me, ain’t hard to do w/ most of the vendors out there).

So the question isn’t do we walk entirely, it’s what’s the course we can chart to make a clean break (some day)? I view elms:ln as part of a journey with the higher educational industrial complex. If it wants to survive the coming singularity, IoT revolution, app-ification of knowledge and eventual commoditization of “learning”, then it needs to lay down the vision of how to get off our single solutions before the baby outgrows the baby tub and has no need for tubs at all but instead gets up, plugs into Google “How do I do my job today?” and goes off to work; never having experienced tubs at all.

I’m not on your blog to pitch a product, I’m here to pitch the same world view you are espousing here (which is awesome). How can we best chart a course to an lms-less world (https://btopro.wordpress.com/2011/06/08/envisioning-a-lms-less-university/)? We’d love to have navigators like you join us in this vision to save (via improvement) the educational establishment we’ve all known and love.

Open Innovation Challenge

*This is my submission to the PSU Open Innovation Challenge. In the event it’s not accepted, I don’t want this text lost because of the implications for accessibility on the internet and our ability to transform it.

Accessibility; it’s not just a concept, it’s people. It’s people we make accommodations for; people we do testing for, and people we dedicate resources to in order to ensure they have their unique needs addressed in their educational journey. On campus, we make ramps, brail signage, bumped plates at crossings and other physical things that anyone can see and use, including those who rely on them.

Unfortunately, digital realms structure environments with asterisks. We accept that a website is optimized for accessibility based on highly specific browser versions and downloaded toolsets on the part of those in need. The Universal Design for Learning (UDL) framework, suggests environments should be universally accessible to all without need for additional accommodation.

What if instead of requiring those in need of assistive technologies to have them, we included them natively in all of our experiences?

What if users didn’t need JAWS or Dragon Naturally Speaking and we provided those capabilities natively in our systems?

By leveraging specifications from the W3C found in the Web Speech API, we can have the browser talk to us. The specification also can be used to listen to and process our voice in real time. Using the two together we can make conversational systems with no plugins required that also work on mobile phones!
I currently have this working in our courses but want to utilize the expertise of TLT to produce a more generalized version that could be applied to all websites at the university with little effort! You can see an example of this working in our ELMSLN Learning environment below