You can’t change who you were, only who you allow yourself to become

Warning; openness approaches.

It’s been quite a decade.  It started on the floor, drinking away loneliness (perceived loneliness) and ended with everything that I saw in a vision at 22 coming true.  There were many ups and down, too many downs considering.  Mentality changes, reversals, twists, and turns.  When I turned 20 I got a card from my parents that said (paraphrase): Life is like a movie, it has ups and downs, parts that make us scared and parts that are happy.  But through it all, we love you.

I’m able to look back now and see how critical that card was (I still remember it) and just how obvious my sadness must have been.  I was in a funk.  I had been dating for the better part of 5 years consecutively.  Fell hard too many times, fell harder in succession (ahh puppy love).  But now, I found myself here.  On the floor. Unable to move. Unable to think.  Wallowing in self-loathing.  I hated who I was, what I had become, the person I had lost (myself).

It was there, laying on the ground in the fetal position, knowing I didn’t want to be who I was. “Pick yourself up” a voice said.  I suddenly felt calm.  I wasn’t happy, I didn’t know what just happened, but I knew in the silence and sadness, something finally made sense: I had to correct who I was.

Over many, many years (4 or so in fact) I started a slow, gradual climb away from the person I was letting myself become and towards the person I wanted to be everyday.  I don’t talk about those times much and I rarely reference that person because I don’t typically consider it myself.  I wasn’t myself, or at least not the myself I wanted to be. I had 2 blogs across many years of ranting through the pain, trying to figure out who I was.  I was so embarrassed of that person that I created multiple identities to break from my current persona (btopro in all things).

I’m not entirely sure why I’m writing this.  As was the case with Knowing How to Smile, a listing of truths that I formulated in my times of darkness, I guess I’m leaving a record incase anyone else finds themselves in those dark times and needs something, even just a web search to suggest that It gets better.

I don’t regret anything in my life, you can’t change who you were, only who you allow yourself to become.  But if I could have told myself anything through the last decade now, especially the early times, it might have gone something like this.

Dear 20 – Sadness is ridiculous.  At this age the only direction is up yet you are lost; without purpose. Everywhere you can go, no idea how to get there. Be still, listen, and find yourself and find your purpose.  Pick yourself off the floor, go out for the things that make you happy, they will lead you to who you want to be. Play Hockey, but don’t abuse it as an outlet for your hated of yourself.  Also, walls, particularly stucco walls; are not breakable.  Your right hand, your dominant hand, is.  “I didn’t know you were that kind of person” — allow this phrase to consume you, he is correct, you aren’t the person that you want to be (far from it).

Dear 21 – Don’t be afraid to love. Don’t be afraid to fail.  Don’t be afraid to have fun, your only this young once, but do nothing you’ll regret.  Stop being selfish, it won’t get you anywhere you want to go.  Deal with your doubts head on and for the love of God stop listening go 45 by Shinedown.  You have far too much going for you to focus on negativity.  Pick your head up as you walk, see and actively experience the beauty around you.

Dear 22 – Don’t let your wife get up from the table just friends.  You will see the next 8 years in an instant and two divergent paths.  Yes, you will need to make this important a decision this early on.  Be not afraid, she is your wife, be happy with how many of your days the two of you will have with each other.  She’s your best friend, the love of your life, your better half, and your soul mate.  Stop taking her for granted, treat her the way she deserves.  Stop being an idiot, be still, listen, this is purpose.  Apply to grad school, ignore DC; there’s nothing but broken promises there.  Many of your “friends” will go, you’ll never see them again.  Go to grad school, stay in the state, stay near State.

Dear 23 –   You are starting to pursue your purpose, code is more than a job, it’s the ability to change things.  Identify the impediments to progress, document their behavior, remove them.  Information Altruism is the wave of the future.  Donating time is the way to change things.  Donating code and time, you will be unstoppable.  Buy your first house, realize it’s not your last.  Be ok with the transition to “real life” from “college town”.

Dear 24 – Marry your best friend, trust her, always.  Be happy in her job transition, it will only be to both of your benefit.  The only thing constant is change, be ok with this.  Never allow the negativity of others to dissuade you.  Little people make their business creating and focusing on little problems.  Don’t hide your joys and successes.  Don’t be embarrassed with how happy you are and the life you’ve been given. What you will do to deserve it is seek to earn it every day.

Dear 25 – “Let no one live in your head rent free”.  Ignore distractions both in and out of the office.  Allow yourself to escape work now and again, downtime is just as important as on-time.  Put the time in now so you can focus on the news at the end of the year.  Make things happen, don’t let things happen.  Invest in yourself, figure out how to go about your mission in life.  Merge politics in all aspects of life, but never speak of politics.

Dear 26 – Trust in yourself, you are ready to be a father.  Be confident in your decisions, put him and your wife above everything.  Yes, even work.  Work hard, work additional, but take breaks often (I know you won’t though).  Don’t work yourself to sadness, money is not a requirement of happiness. Be not afraid, birth will be scary but everything turns out ok.  There will be family job transition again, be happy, your best friend will make sure your son is safe, happy, and loved.  Don’t backdown on coaching, keep going, be true to yourself.  Ignore those that want to dictate to you how your team is run, this is part of your family, do it the right way and you will win.

Dear 27 – You will be disillusioned as to what your purpose is.  Don’t get caught up in the ripples, look for the waves and shoot for them.  Take the 40 day, 40 night challenge, be a different person.  Be still, listen, He is speaking through everyone if you only listen.  You will be pushed to your breaking point with your work.  Stick with it, the rabbit hole goes deeper and you will pick up skills that will last a lifetime through the experience.  Use everything as an opportunity to learn, great failure = great growth.

Dear 28 - You will defeat your opposition if you continue to push forward with consistency, passion, and openness.  Information altruism reigns supreme, victory is at hand, the ball rolls slowly but it will get there.  Make time for your family, they are more important than anything you could “accomplish”.  Always remember, you are doing this to improve your son’s life and potential outcomes.  Never lose sight of that fact, his future is more important than your own.

Dear 29 – All change is good if perception is good.  Change is constant, embrace it, adapt, and revolutionize.  Strike a new tone with your work, no one joins efforts through verbalization of destruction; create as always, but speak of creating and building.  The future is now not only about you and your son, it is about both of them.  Be picky in your consultations, your children’s hourly rate is far greater than any rate of a client.

Be happy, live healthy, Pray daily, be thankful, be charitable, give away everything and you will gain everything.  Thank you 20, through great pain comes great growth.  I thank God daily for the growth that I have undergone and the increased awareness I have of others.  Understanding needs in a context more than just work, and making sure it is always His work being done, not the Joker like schemes of my own.

I told myself at 26 that I’d be burned out and dejected with my attempts to create a movement by my 30th birthday.  I used this as additional motivation to keep pushing forward, putting in far more work “hours” then I will ever be compensated for.  Compensation isn’t the point, transformation is.  Keep building, keep innovation, keep donating, and the future only gets brighter.

I wrote those here in part because while it’s not related specifically to any work project I ever do, it drives and influences everything I’ll ever do.  It is who I am, who I’ve wanted myself to become and who I’ve been allowed to become through Grace.

I won’t stop pushing, won’t stop donating, won’t stop responding positively, won’t stop trying to improve educational outcomes with better educational technology.  I’ve come too far from who I once was to want anything less then a world without boundaries for my kids.

Products are Ephemeral, Movements are Eternal

Much has changed in the landscape and culture surrounding the ELMS platform since I first began calling things by that name 7 years ago. There have been changes in leadership, IDEs, hosting, Drupal versions, but most importantly; culture. I knew after my first year or two of development that I couldn’t just create a packaged system for people to use. Anyone can do that, people do that every day as I sit here writing.

No, I had to create something more—something lasting.—something about which I could write and tell my children someday. Anyone can write code, and many do. But code is only as successful as the community built to sustain that code. There are plenty of examples of this in which tribes culminate around a common technology goal and we get things such as Drupal, WordPress, Joomla, etc.

But, what if you started building a platform and didn’t have a support network? What if there was no community? What if people were all part of different tribes and you had to win them over to your side? What if you believed in your platform and ideals so much (too much), you’d put your research, platform, and life on hold to see that it was ultimately successful?

This is one such story. This is the previously unspoken story of the rise of the Drupal @ Penn State community.

Drupal Is a Tool, Among Many Tools

In 2007, Drupal was a dirty word. Drupal was not the blessed platform and, much like today, is not an officially supported platform. As someone who doesn’t believe in such a thing and who knew Drupal, this was odd to me. Why would we not cast a wide net and support a number of of tools? The reason was somewhere muddled in politics, in-fighting, and most importantly, a fundamental philosophical difference in community design. One that is at the heart of many of the political battles we see on a national stage, today: the notion of centralized authorities versus decentralized autonomy and, potential chaos.

So, how were we to go from Drupal being a bad word to it powering psu.edu and hundreds of other systems? If it wasn’t going to come through centralized support, it would have to come from grass roots.

Drupal Is Just a Learning Tech

When ELMS was being showcased in its Drupal 4.7 edition, it was only used to power one thing: a course collaborative space—as in a single course. Collaborative space—as in upload photos and leave comments. That was it. This tool was so powerful a notion at the time though, to build your own space for engagement, that it was a shock to the system. Few were doing this and even fewer were doing it in Drupal.

The desire to convert to the Drupal platform was almost immediate. From that one Drupal system, we built three more and ran tiny Drupal 5 instances on our own. This was neat, but certainly not a threat. It also didn’t scale. It required a full-time employee to manage and build and (constantly) fix four Drupal sites. What threat could four little Drupal sites be?

Five different colleges requested a demo of our four-course, Drupal-based environment. Four, unrelated colleges that were not talking, suddenly wanted to see this rogue college’s work; my work. Why are you using something different? How do you get support? You actually build your own tools?! Who supports that?! There was much dismay and gnashing of teeth—not because we were doing this—but because others didn’t have it!

I Want Shiny Toys

We started to get into the monopolization of our unit’s time simply demo-ing, discussing, and trying to get others up to speed with what they would need to do in order to run something similar. Suddenly, everyone wanted to jump into the deep end and take this previously unheard of risk and put their courses into a CMS. Not just any CMS, mind you; the wrong CMS. The shiny toys syndrome was in full effect and it was a great place to be in. It took up a lot of time… but it was cool. After some time, the “wow” and “scary” factors began to wear off, and we began to form a fledgling community of developers and site builders of drastically varying abilities. We’d meet once a month or so to talk about modules that we had found and how things were going.

It was about this time that Drupal 5 was nearing the end of its life cycle (which in Drupal terms means it was just getting really good) and Drupal 6 was about to be debuted. I was also getting bored. I had four courses. Cool. But I couldn’t really scale myself to meet my current demand . I quickly realized I didn’t want to just be the guy that built new sites in a week or so and talked about it. I wanted more out of life; I wanted automation.

I slapped a hacked D5 system together. We went from four to eight courses in a similar level of scale, but then we kind of hit a wall. I was constantly in maintenance mode fixing issues and meeting very specialized requests. At the same time, people were asking for our “architecture.” Providing this code to others, managing their deployments, and getting them up to speed sucked up a lot of valuable time. Sometimes, I “lost” over half of my week. It was a frustrating and unintended consequence of our success. But in that frustration, I started to notice something: The automation changed the nature and scale of those units that got their hands on it. No longer were IDs glorified HTML developers. No longer did they muck with CSS, JavaScript and HTML on a daily basis. They had a workable tool that allowed them to focus their real talents on thorough instructional design.

School Falls to the Wayside to Save School

It was around this time that I began to get so overwhelmed with all this work that I couldn’t do much with grad school. True, I had joined graduate school to help better prepare me for “the real world” but I felt that I was immersed in it at this point.  After engaging with it, I didn’t really like grad school; I hated the busy work, but I loved the theories and the concepts of technological design.

Something that really stuck with me was the idea of technological artifacts. That technology all throughout history has been intentionally (or unintentionally) designed to have political implications. This was a world-view changing notion for me. Not just that technology was this thing people did, but that it could be used for perceived good or to alter the behavioral patterns of others.

Oddly enough, it was around this time that wiki pages were being populated to spread fear, uncertainty, and doubt (FUD) about Drupal. A lot of it had cropped up over the last two years as use of ELMS/Drupal for IDs spreading around. ELMS/Drupal was not something that could be controlled, and this wildfire threatened the stability of established technologies. If people worked and did business for themselves autonomously without blessing, authorities would cease to exist.

Achieving the goal of enabling others to be fully autonomous became my life.  I won’t say how much time I was working officially, but it’s a good thing that at that time my wife was working the night shift. Those days of work could easily stretch into nights with a small break for dinner in-between. School couldn’t even find a place in this new world in which I found myself trying to build. I became quite literally addicted to Drupal. There was just so much to learn and so many cool things really smart people were doing, and I wanted to learn it all. It was the educational experience I never got in college: the practical, hands-on, by-example type of training that just clicked for my mind.

I increasingly abandoned active participation in schoolwork and mostly just investigated theories of technology, started to become more civically engaged, and researched all things Drupal. It is in this intersection of theory, politics, and Drupal, that I began to develop a plan.

The Plague Campaign

I formulated a long document entitled “Plague campaign,” and all communications hinting at the fact that there was a larger plan to everything was tagged with plague from that point on.  There were a few ground rules to the Plague campaign, the first of which was that you didn’t talk about the plague campaign until such a time that the effects were irreversible. Sure, I could ramble to my wife and a few trusted friends about what I envisioned. The rules were simple:

  1. Don’t tell anyone.
  2. Don’t lose yourself in obsession over this
  3. Always remember this is to make this place a better place for everyone, not just you.
  4. Document events and turning points to learn from this later.

“Technology is just technology.” “You need to let it go.” “This isn’t worth making a fuss about just work.” This is what I was told, but this was no longer just a “tech is tech” argument. Drupal had grown leaps and bounds beyond all competition with the maturation of Drupal 6. It was now more of a “what you don’t know can hurt you” argument and, quite frankly, we were wasting time. There were important, world-changing problems we could be addressing if we weren’t so busy arguing about technology solutions and HTML.

The Plague campaign would have to be multi-tiered and untraceable. It had to essentially “just happen” organically.  Political movements of the day drove what I imbued in my technology implementation.. After all, all tech is political. Why not give my tech a political identity and mission with which to alter behavior? I found one, analyzed its methods—not its message—and went about my business.

Information Altruism is Discovered

Plague was the first step of a five-year plan (from my initial employment because that’s when Drupal really started). The goal of that five-year plan (of which I was into two years already) was to completely alter the technical landscape of the university to change the dirty word “Drupal” into the de facto standard. I knew that we were gaining momentum, but I needed a way to accelerate it.

I was still in grad school actively at this point and doing some light research. In analysis of some interviews, I noticed a few patterns. One, everyone who was using the system had talked or heard about the system through me.. Two, they were extremely appreciative of the time I had donated to them in order for them to get up to speed and stand on their own. I knew what had been the impetus of organizational change even in this minor way: altruism. The gift of time. The hours spent working beyond what was required or oftentimes outside the scope of my actual job. Time invested wasn’t just in my own work, it had the power to change more then just systems implemented. It remade the technology of units, increased their efficiency, which would then alter the employees they would hire and the skill sets required of those employees.

Technology had the ability to change the rules by which the people working on the web and online education played. The act of giving away time to achieve transformation would work with an exponential effect if I could give and have others pay it forward. At this time, I started to give my time forward. Not just to learning design shops anymore, but to anyone who had any contact with web systems in any way. By giving away my time, I could replicate what was happening in the ID space with the web-shops and lone-wolf developers around the university.

Simultaneously, if I could get everyone at the University on a unified platform, I would be building a community, and in doing so, have the community pay forward the skills acquired through my initial paying forward. I started to respond “Yes” to any and all work others at the university needed help with in achieving their CMS needs, going even further into time-debt.  I no longer cared about my time, it was more important to supplant Drupal everywhere I could.

And just like that, a community started to form. After I’d help get people on their feet, they’d have a local expert built up with knowledge of how to maintain that system.  Their paying forward often times would be telling someone down the hall about Drupal, or applying knowledge gained to the next Drupal project.  No longer was it one or two doing Drupal, it was a bubbling community.  And the community was getting so large, it needed a flag in the ground.

The Tipping Point: Drupal Camp 2011

Now that we had people who could be vocal, I wanted a Drupal camp. After all, there were events for other CMSs on campus—so why not us? I quickly found that no one was willing to put up the time or voice to support it. Without funding and backing by any authority, we had no camp. And with no camp, there would be no additional community growth.

At the time I was putting out feelers for people who might be interested in a Drupal camp (getting several positive responses), I learned a Learning Design summer camp was scheduled on campus. Learning Design summer camp and Drupal Camp have nothing in common; but, many learning designers developed content in Drupal thanks to ELMS. So, people could potentially see them as related. Someone asked me if I’d be willing to put together a session of some kind about Drupal for educational systems development and I got to thinking…

If it was really that informal—this learning design session—why not just have a Drupal camp during that time? I mean, if I announced something, found a room and people would listen, who would stop me from talking?? I quickly threw together a wiki page for the Drupal talk but it was no longer just a session: it was for an entire day of Drupal talks; a Drupal Camp I thought I had a lot of slots available when I put down 40 total and was excited to see if anything came of it.

On the first day, we had 40 registrants from just posting the page and sharing with a few list serves. By the end of the month, we had 100. On the day of Drupal camp, six weeks later; we had 130+ people registered and eager to attend PSU Drupal camp. People who registered reached out and asked if I needed help with presentations. Little did anyone know that we accepted everyone who asked, because the “we” was really me and a coworker who helped reserve the location for the event, which was originally only one room, so it was easy!

On the day of the camp, one of the key slides in my opening talk was about the “Pay it Forward” culture. I said this is a key principle in the Drupal community, and we, as participants, needed to mirror the Drupal community as a whole. Even as I spoke, I knew we didn’t really have a community. People were at the camp to listen to people ramble about web technologies, not discuss community and engagement. I knew I lost many, but the key is that I wasn’t trying to recruit many. I was just trying to recruit one “true believer”. One champion who would join me and be as vocal as I was to kick things up to another level. All it would take was just one to be successful…

Unfortunately (for others), we didn’t get one…we got about eight very vocal members and another eight modestly vocal ones. From there, we went forth and started the Penn State Drupal Users Group (PSU DUG) which began to meet on a monthly basis to discuss all things Drupal.

Our users group has grown to as many as 24 people who attend monthly meetings on a regular basis. And the three Drupal camps that we’ve put on (no longer I—but WE) have hit 100+ attendees every year. Next year, we are even talking about having a for-pay, sponsored event where people are brought in to give presentations and people external to PSU could attend…something unheard of just three years ago.

This Is Just the Beginning

And so, any of you out there reading long enough to find this line—I hope you take away this:

As Steve Jobs said..

“When you grow up you tend to get told the world is the way it is and your life is just to live your life inside the world. Try not to bash into the walls too much. Try to have a nice family, have fun, save a little money. That’s a very limited life. Life can be much broader once you discover one simple fact: Everything around you that you call life was made up by people that were no smarter than you and you can change it, you can influence it, you can build your own things that other people can use. Once you learn that, you’ll never be the same again.”

Go out there dreamers. Get passionate, get excited, and go change the world. I’ve put out multiple calls to action to get developers off the bench and into the game for not just ELMS but Drupal development at large.  Developments that, when seemingly are for other purposes, always come back around to benefit the ELMS platform.

‘Cause all it takes is one of you to build an army of developers and site builders looking to change things.  Never sit down, never accept the status quo, pay everything you can forward in time, energy and love.  Build these things and give them away for the world to experience and grow from.

Imagine what will happen when more communities come online thanks to this story.  Imagine what we’ll all build together!

ELMSLN: State of the screencast (repost)

Note: This is a repost that originally appeared on the elms blog.

This is one of the first ramble-laden screencasts I’ve done in awhile demonstrating the state of the ELMS Learning network.  I talk and blog about ELMS Learning Network a lot, but I’m often bogged down in supporting legacy architecture as well as ramping up for new functionality in ELMS LN to really stop and have a day of investment in communicating about the platform.  Today’s our lucky day!

This video shows the state of some of the following pieces in the network and how they all play together.

  • LTI replication to spider the ELMS learning network based on a single call
  • How the CIS and MOOC distributions have a conversation based on needs
  • CIS as logistics engine for managing the setup and long term life of courses over time
  • How this is (so) different from ELMS in Drupal 6 and infinitely more powerful / flexible an approach
  • Talking a bit about the structure and plans for the network
  • Showing basic usability and experience design elements across the platform
  • The basic functionality of the MOOC distribution after it’s been automatically setup via LTI launch
  • Some other stuff I probably forget now

I apologize for now showing more, I had some technical difficulties with firewalls just before recording so once I get those resolved I’ll be posting another video stepping through the launch, to the backend implications, to the site creation, which should have all come prior to this video.  It takes me a long time to show and talk through how this all works; please realize it is years of work in the making and basically what I think about and do all the time.  This has consumed much of my 20s and I’m very happy with what my 20s are making possible.

Enjoy.

ELMS Learning Network: Systems

There are many systems that comprise the ELMS Learning Network.  We’ve discussed theory and background reading up to this point, now let’s dive into some of the systems both planned and theorized for this network of systems.

Importing things to note:

  • The structure of the network is built to grow is a circular pattern
  • There is theoretically no limit to how many tools one can use
  • The minimal number of tools envisioned currently is the CIS (center of the network) and Course outline space (MOOC distro).  You could technically run without an outline but it probably wouldn’t make much sense unless augmenting other environments
  • This is all subject to change in terms of the tools and their scope; that’s the point of this structure

I’ve discussed what these systems are previously so here’s a quick list as I’ll give each of these a proper run through based on what’s currently available.

  1. ULMUS – Tool to rapidly build new tools for the network
  2. CIS – Central brain, logistics, and communications portal for courses
  3. MOOC – Course outline and instructional objectives communication platform
  4. CLE – Collaborative submission and open critique environment
  5. ICOR – Interactive components like flash, hmtl5, and complex learning objects
  6. Helpdesk – Ticketing and issue support system, everything is plugged into it
  7. Compliance – Distributed Accessibility and Copyright management engine
  8. Media* – asset management system (or systems depends on where you store it)
  9. LAR – Analytics capture and recall system, everything is plugged into it
  10. Rubrics* – Rubric and assessment engine for CLE submission environment
  11. Reactions* – Distributed comment and discussion engine to power all systems

*Media, Rubrics and Reactions are not final names, this currently runs in house under the name ELIMedia (elmsmedia in public) but will not be called that in the D7 version

ELMS Learning Network: Design Philosophy / Theory

Far more important then the technology you select for anything is the design.  Quality, well thought out and executed design is difficult to accomplish and requires many iterations over ideas.  You need to allow certain concepts to fail and others to flourish and be willing to switch to better ways of thinking mid development at times (and refactor and refactor again..).  This is true of any technology you select and as such, philosophy of design and theory are paramount in the development of the ELMS learning network.

Design Philosophy

In a world of constant chaos of technological design where any 12 year old prodigy can disrupt your entire business model, it’s critical to stick to a method of tool development that can stand the constant winds of disruption.  I won’t go into great detail as to why I chose Drupal over an actual educational platform but the primary reason is flexibility.

A community so vast will breed superior solutions to those found purely within edtech. Have you used or seen any of the popular MOOC authoring experiences? Drupal from 4 years ago slaughters it let alone today or tomorrow’s Drupal!  It is for this reason that the solutions to save edtech don’t lie in the vendors traditionally pushing you edtech.

It is with this philosophy that we’ve won multiple awards for “Innovation” and plan to do so with a development team of 1.  This is possible because the reuse of the work of others leads to a development team of thousands.  While the implementation is only one; the available code-base is produced and refined by thousands upon thousands of developers’ eyes daily.

In the Learning Network though there is one primary implementation philosophy that powers everything: RESTful APIs which in the current Drupal 7 portion of the CIS is powered by the RESTful Web Services Module (restws).

Network Topology

Stepping back from Drupal to network implementations in general, we need to find a structure that best mirrors a need for structured yet loosely connected environments.  For this reason, I’ve decided to base the ELMS LN on a combination of Star and Fully Connected Topology.  The deployment methodology of the Course Information System being the center of the ELMS universe, drives the creation of course networks.

Star Topology

CIS Star Topology

CIS Star Topology

This topology enables the CIS to have a say in coordinating the connections between all other systems in the network.  While all of these services pictured could live on their own, it’s obviously more helpful that they have a consistent connection back to the CIS when needed.

This is just for the initial setup of the network.  Data systems can then be wired into the CIS so that information is populated automatically and propagated back down to the rest of the services that it is aware of.  This is critical towards making the learning network effectively self aware; this base architectural decision.  Without understanding that this is the base layer, the rest will appear as chaos (and very quickly).

Fully Connected (through the sub-net)

Fully Connected

Fully Connected, distributed systems to power the course

 

This is what the CIS starts to allow to be generated: chaos downstream.  The instances are formulated based on data thats shipped to the CIS / Middleware (other LMS APIs and what not). These instances could connect to all other instances but the only way this would make sense is when the instances are related.
For this, we use a consistent pattern match against the services used in a course network loop.  This can be engineered in a consistent manner as follows: {service}.{college}/{course}.  
Example course sub-net for Math 100:
  • online.college.com/math100 — markets the course and helps organize internal logic for staff roles and web service agent accounts
  • courses.college.com/math100 — the primary outline of the course that helps form a logical instructional flow for students
  • studio.college.com/math100 — the place assignments are submitted
  • analytics.college.com/math100 — an invisible RESTful engine that aggregates data silently for instructors and staff to gain insight into the analytics of the course
This allows all services in the network to easily sniff out other services in the network and broadcast RESTful API communications back and forth.  The CIS can be utilized to understand the topology of a CIS Sub-net as some sub-nets may be made up of a different set of course tools then another.  Maybe the only thing required for a course is the outline tool, why clog up the feature set with tools that are unneeded?

Time frame

ELMS LN is being designed and implemented with a goal of powering the next 10 years of innovative, free, open systems I seek to develop.  To do this, I’ve created several tools over the years to help bring me to this point.  The most important currently is known as Ulmus.  It is a distribution that was specifically created to allow for the rapid creation of new tools to plug into ELMS learning network.  Think of it as the framework of a tool with all the modules, connections and features required at a base-layer to enable a smooth transition into a course sub-net as a new tool.

Web Services also help open the door for bringing non-drupal tools into scope of a traditionally all drupal network.  RESTful APIs can be implemented by any system in any language, as well as the use of LTI to help bridge communications.

At the time of this writing, I am running the CIS (online) and MOOC (courses) distributions in production with several courses.  If I had to rate them in terms of completion, I’d say both are at about 95% stabilization and well on their way to being finalized systems with only minor UI, UX, and bug fixes to go.  CIS’s theme is still in active development as well as a professionally produced ELMS Learning Network Design Guide with detailed visual descriptions of the ELMS “brand”.  Documentation needs a lot of love, but that’s what things like this blog hope to help bridge!

The ELMS: CLE (studio) distribution is available as a proof of concept and will receive full development focus over the next 4 months. Some additional distributions being developed in tandem with hopes of being released over the course of the next year include a centralized helpdesk, a centralized accessibility and copyright auditing system, a semi-centralized error reporting system, a learning analytics repository (lar) and an interactive course object repository (icor).

ELMS Learning Network: Introduction

I am finally starting to have enough development and design put in to consolidate my thoughts on a topic I’ve been asked about a lot: “What is ELMS?”  ELMS has morphed substantially since it started out as 1 Drupal module on my localhost environment 6 years ago.  To clear up this question, I will be distilling all thoughts and documentation here into a series of posts on the topic.

ELMS is no longer an alternative to existing tools for me. It is a way of life.  Here’s some background reading to get the established articles I usually reference out of the way.

Background reading

Sections

ELMS Learning Network: Design Philosophy / Theory
ELMS Learning Network: Systems
ELMS Learning Network: Visualizations

The post LMS era: Suite of Tools learning networks

*This post is essentially a compilation of work I’ve been spreading out amongst many different mediums, both here on this blog and elsewhere around the inter-webs.  This also isn’t the most logically connected argument, I just needed a break from code.

The first step to changing the ocean is to stop looking to it and instead step in.  Properties of basic physics and hydrodynamics kick in and you are in effect changing the environment that you previous only observed.  Instead of talking about the LMS, the MOOC market, or anything else that I often see learning designers discuss.  Let’s skip ahead a bit. 

Let’s talk about the post LMS society that we wish to create.  The how, where and why.

How do we get to a post LMS era?  I’ve talked about what I felt would cause the eventual end of the traditional LMS before.  Talk is cheap, so diagrams about how to accomplish this would be the next best thing, right?

This video then goes on to show these diagrams produced as a fully functional prototype, with video introduction to the work.

 

http://www.youtube.com/watch?v=DY7U0cDVtlY&feature=share&list=PLJQupiji7J5f2S0jy05aFjMwGYGEpB4GF

And this talk, which is a rebroadcast of my DrupalcampNJ presentation “Using Drupal to Transform Education” http://vimeo.com/60084560 consolidates the entire thing into one presentation.

The structure and nature of education system deployments is wrong

This is probably one of the more controversial statements that I stand by but typically don’t say.  It shows my generally libertarian, small central authority mentality, for one, and for two: no one is doing anything but it.  Come to us, we are the hub, we can provide everything you need in one place says every vendor out there, and the new MOOC platforms are simply replicating this model in a different location and calling it open.

The structure needs to start at a central point but that center ring needs to be as small as sustainably possible.  It needs to help knit things together and keep the “LMS” data that is currently stored in large buckets, spread out and accessible to new buckets (through a process of LTI resigning).

Opening up new off ramps

This is where I’m hoping LTI will be the Trojan horse it appears to be, as someone noted at my talk in NJ (which I wish we had the audio of).

So, you are advocating that people use these tools that you ship them off to and increasingly, they’ll use the LMS less and less.  Eventually.. you’ll do so much outside the LMS that you won’t need an LMS anymore.

Eureka, we have a winner.  If we build enough off-ramps out of the system that while meeting some people’s needs, doesn’t meet everyone’s, we will eventually connect to other areas that people want to hang out.  This pattern is quite similar to the western growth and expansion of America in the early 1800′s.

People slowly were moving away from the major cities to parts unknown after the revolution.  What changed that caused population migration to explode? Mike Rowe will have you believe it was booze, but I’d contend it was gold and rail-roads.

Well gang, LTI is the railroad, and glittering prizes await those that create proper off-ramps for different tool sets that people are dying to get access to.

But, but, but privacy

Absolutely an issue.  What happens when we start letting people go anywhere and everywhere?  The same exact thing that happens now, we just introduce calculated risk instead of unknown risk.

Huh?

Innovation is happening with faculty every day, every where.  This often times I’d guess is at the expense of telling others about it.  The number of threads you can find on the Internet about cool new tools and different edtech applications is staggering.  If we don’t provide a solution to new cool shiny object xyz, people will find a way around the systems in place to get students into the new bucket they’d like to use.

As set in motion in the last 6 months

 

 

Systems

So I’m doing my part to provide options, how bout you?  These 4 tools are all being developed simultaneously (which completely wrecks me mentally some days, hence this brain dump of a post) but it doesn’t mean that all tools in a network NEED to be Drupal.  It’s just to say that it’s the only system that a single developer could even attempt something this insane through automation.

Drush command

Actual drush command to build 183 drupal sites with a single command. Setting up a massively extended, LTI aware series of new buckets to be accessed after creation. This was a test run at the time of publishing.

Course information system (ELMS:CIS) – Center point and middle-ware communications hub that bridges old world to the new one.

Content tool (ELMS: MOOC) – The instructional design centric course outlining tool.  This is the content outline that all instructional flow and material is attached to.

Social critique tool (ELMS:CLE) – A completely free-form social submission space.  Students openly submit and critique as well as receive instructor feedback in this space.  This posting spends time detailing how and why to build this system.

Interactive Course Object Repository (ELMS: ICOR) – A dumping ground of unique and interactive instructionally significant pieces of material.  This could be polls, quizzes, time lines, slide-shows, content players, media, or really anything that might fall outside the norm that can be embedded as a widget in material via an iframe.

Systems waiting in the wings

Asset management system – (we already have this, but re-envisioned for today) and plugged into the LTI network.  This would ideally be integrated with Red5 and FFMPEG for free media encoding and streaming (yes free) of video with secure delivery via RTMP.

Copyright management spider – content production != copyright management on the fly.  Often times these is a significant legal process that needs to happen in parallel to course development.  Also, imagine a world where people are using resources and you have no idea what they are (like oh I don’t know… always).  The copyright management spider is essentially a spider that crawls and ingests all courses in the learning network and digests them.  Once digested, people go through and fill out all required legal information for the media, or help improve upon the earlier justifications for usage.

Analytics engine – Something that sits off by itself and that all other tools can write to.  I believe that a spec like TinCan seeks to achieve this but not sure.  For the time being I’m writing logical chunks where I could tap in and send off relevant analytic data for processing by another system but haven’t done any work here yet.

Interactive Rubric tool – We’ve built and used one through about 3 iterations of the tool, this would actually use LTI (and other Drupal system capabilities if in Drupal).  It would also be optimized for mobile and responsive design.

 

These are just the tools that I’m working on now or am envisioning for the future.  Fortunately, there has been a lot of positive buzz around LTI and Drupal so I guess we’ll see.  Ahh, mind is much clearer now that I’ve dumped all these ideas on to this adorable blogging platform.