Programming custom e-learning might be one of the most deceptively awesome jobs in existence. I'm not even joking--I love what I do. Somehow I've convinced these fools to pay me to make games all day, and it's an absolute blast. I'll get into the specifics of why and how programming can be so satisfying, but first let me explain its role in e-learning.
Making an Angry-Birds-style physics game or an immersive simulation is a joy to create, but luckily it also has real utility: cool interactives are entertaining, and when entertainment is used properly, it helps learners to be far more engaged with your content. It's all done with an eye toward effective teaching, and it can hardly be achieved without the use of custom programming.
EMBRACE THE FOUR PILLARS FOR CUSTOM E-LEARNING DEVELOPMENT
We talk a lot about engaging all four pillars for custom e-learning development, and programming tends to be the pillar that most training organizations and instructional designers don't think about. Yes, custom programming enables all sorts of incredible elements in a course, but a programmer also brings a unique point of view to the design process.
When you begin learning the more abstract concepts of coding (I'm looking at you, Object Orientation), it gives you a new lens through which to see the world. Every real "thing" can be broken down into a set of its properties, and those properties can be represented in computer language. And as easy as it is to deconstruct a thing, it's just as simple to create.
PROGRAMMING IGNITES INNOVATION
Coding is extremely creative. Before I became a programmer I worked in animation, did woodworking, and dabbled in motorcycle mechanics. Thus far, not a single medium has been more enabling to my creativity than code. As esoteric as programming may seem, it's just the means to an end: a tool for creation and a method for solving any particular problem. It can be used to create art, map the earth, organize medical records, and yes, ESPECIALLY to create mind-blowing e-learning. It's a medium that allows you to incorporate a wide range of skills, from trigonometry to solve trajectories in a game, to sound science for automatic music notation. The possibilities for creation are limitless. If it exists in real life, it can be represented in code.
As a simple example, an artist group based in Stockholm created one of the coolest physical installations I have ever seen. Their name is Humans Since 1982, and the piece is titled A Million Times. They essentially created an array of analog clocks, and using complicated algorithms and mechanical controllers turned them into one giant digital display. Watching the clock hands morph from shape to shape, letter to letter is absolutely mesmerizing. I had to know how they accomplished this, and I wanted my own! It would take a team and a lot of money to build, but not if I just recreated it with code! It took two months to deconstruct and program the logic, but NogginLabs now has its own digital homage to A Million Times, displayed on a large flat screen in our lobby.
Why do I find all of this so amusing? I often tell people that being a programmer is like solving puzzles all day. You're presented with a task you have no idea how to accomplish, and it's entirely up to you to figure out how to make it happen. You create your own pieces, and you decide how they fit together. It's as if the job itself is gamified--you're solving a logic puzzle and eventually get to conquer it. Along the way, you slowly watch this inert blob of text take life in the form of graphics, animation and sound. It's unexplainably gratifying.
With the level of talent and imagination at NogginLabs, we're able to create some of the coolest games, interactives, and mobile apps in the industry. Rapid development tools, such as Articulate and Lectora, certainly have their place in the e-learning world, but they don't come close to the rich interactivity, fidelity, and granular tracking that custom e-learning can provide. With a programmer under the hood, the possibilities are literally endless. If you've ever asked yourself, "I wonder if they could build something that could...", the answer is yes. Given enough time, we can build absolutely anything.