Open Source eLearning

 
P2P  
 

How much of eLearning should be in the public domain? What should be proprietary?

Training has a history of taking advantage of tools that were invented for other purposes. Consider the VCR. Or intranets.

If you are a large, global enterprise, you're going to spend big bucks on a robust, scalable learning infrastructure. Even so, you'd needn't reinvent the wheel. You'll complement whatever you pay for with things like email, instant messaging, NetMeeting, and Java scripts.

I envision a future for shared content. If Linus Torwalds can line up an army of programmers to add functionality to the Linux kernel, why couldn't we (you and me) enlist a core group of organizations and individuals to share learning objects?

Send me an email if you'd be interested in joining such an effort.

Tim O'Reilly positions peer-to-peer

 

  Update. 6/2001. Aside from swapping a few emails with kindred spirits, I hadn't done much thinking in this area until a couple of weeks ago, when I led a session of eLearning Forum on Peer-to-Peer. Here's my write-up.  


Free stuff
.
With no advertising or presence at conferences, some great eLearning tools are easy to overlook.

Instant messaging. This is how kids do their homework (generating 12 times more messages daily than email). It's how business people will interact soon. Real time. It will be play a major role in eLearning. (You heard it here first.) PowWow wins first prize, runs on AOL or Microsoft or its own platform, and can be turned into a platform for conferencing. There are many others. Aimster rides Instant Messenger but lets you grab files (like Gnutella) but is only open to your buddies (i.e. colleagues).

Web-logs or blogs are annotated lists of pointers, updated by enthusiasts daily or weekly, for the sheer joy of turning others on to interesting stuff on the Web. Bloggers build reputation by pointing out useful or interesting items. This is gift-economy Knowledge Management in action. I learn as much from CamWorld and Tomalak's Realm as I do from the Wall Street Journal. If I ran the zoo, every business unit manager would maintain a blog for peers and comrades. Popularity is on the rise.

You can pay thousands of dollars, sometimes thousands per seat, for fancy conferencing software, but Centra, Placeware, and WebEx offer free "lite" versions.

For collaboration, turn to eGroups or Delphi for sharing documents, broadcasting messages, hosting discussions, and chat.

Authoring? HTML, DHTML, and JavaScript. Hot Potatoes (from Half-Baked Software; I am not making this up) creates learning exercises in HTML.

Knowledge management? Gnutella or its brethren should do the trick. Regular ol' knowledge management suffers from a number of problems. It is often top-down, and of course the top can't define a workable structure for those on down. It assumes that more is more; this is like the situation with off-site storage -- you put everything in a box, ship it to a warehouse, and pay annual fees for the rest of time because you've forgotten what's in the box and are afraid you'll need it some time. (KM boxes resemble data warehouses.) Lots of knowledge has a short shelf life; I don't need yet another 1998 corporate phone list, thank you.

The beauty of a Gnutella database is that it is organic. It grows on its own. It's self-organizing. It scales. It routes around broken servers. It requires no central adminstration. Imagine trading ideas instead of MP3 music files. Do it behind a firewall to contain it. Here's more about the Gnutella philosphy.

P.S. Email's not bad for communication.

 

Using PowWow in the Academic Environment

Powered by Blogger

 

 

"Never doubt that a small group of thoughtful, committed citizens can change the world; indeed, it's the only thing that ever does." -- Margaret Mead

Free content?

Not quite yet. But why not? Proprietary learning technologies have a spotty track record. Isn't it time to, um, come together?

Call me Linus?

Open Content

 

View Source... Lessons from the Web's Massively Parallel Development

"The Web grew as quickly as it did because the independent rate of site design, freed from the dictates of browser engineering, was much faster than even its inventors had predicted. Tools that allowed designers to do anything that rendered properly, that allowed for lateral conversations through the transparency of the HTML source, and removed the need for either compiling the results or seeking permission, certifcation or registration from anyone else led to the largest example of parallel development seen to date, and the results have been world-changing."

"Furthermore, while there were certainly aspects of that revolution which will not be easily repeated, there are several current areas of inquiry - multi-player games (e.g. Half Life, Unreal), shared 3D worlds (VRML, Chrome), new tagset proposals (XML, SMIL), new interfaces (PilotOS, Linux), which will benefit from examination in light of the remarkable success of the Web. Any project with an interface likely to be of interst to end users (create your own avatar, create your own desktop) can happen both faster and better if these principles are applied."

Web without a weaver.

Lessons without an authoring system.

Massively parallel bootstrapping.

 

 
   2000 heads are better than one jay @ 03-Jun-00
 

the first lesson: 1. Every good work of software starts by scratching a developer's personal itch.

2. Good programmers know what to write. Great ones know what to rewrite (and reuse).

While I don't claim to be a great programmer, I try to imitate one. An important trait of the great ones is constructive laziness. They know that you get an A not for effort but for results, and that it's almost always easier to start from a good partial solution than from nothing at all.

3. ``Plan to throw one away; you will, anyhow.'' (Fred Brooks, ``The Mythical Man-Month'', Chapter 11)

Or, to put it another way, you often don't really understand the problem until after the first time you implement a solution. The second time, maybe you know enough to do it right. So if you want to get it right, be ready to start over at least once

Perhaps in the end the open-source culture will triumph not because cooperation is morally right or software ``hoarding'' is morally wrong (assuming you believe the latter, which neither Linus nor I do), but simply because the closed-source world cannot win an evolutionary arms race with open-source communities that can put orders of magnitude more skilled time into a problem.


Necessary preconditions

It's fairly clear that one cannot code from the ground up in bazaar style [IN] . One can test, debug and improve in bazaar style, but it would be very hard to originate a project in bazaar mode. Linus didn't try it. I didn't either. Your nascent developer community needs to have something runnable and testable to play with.

When you start community-building, what you need to be able to present is a plausible promise. Your program doesn't have to work particularly well. It can be crude, buggy, incomplete, and poorly documented. What it must not fail to do is (a) run, and (b) convince potential co-developers that it can be evolved into something really neat in the foreseeable future.

it is not critical that the coordinator be able to originate designs of exceptional brilliance, but it is absolutely critical that the coordinator be able to recognize good design ideas from others.

Human beings generally take pleasure in a task when it falls in a sort of optimal-challenge zone; not so easy as to be boring, not too hard to achieve. A happy programmer is one who is neither underutilized nor weighed down with ill-formulated goals and stressful process friction. Enjoyment predicts efficiency.

Relating to your own work process with fear and loathing (even in the displaced, ironic way suggested by hanging up Dilbert cartoons) should therefore be regarded in itself as a sign that the process has failed. Joy, humor, and playfulness are indeed assets; it was not mainly for the alliteration that I wrote of "happy hordes" above, and it is no mere joke that the Linux mascot is a cuddly, neotenous penguin.

It may well turn out that one of the most important effects of open source's success will be to teach us that play is the most economically efficient mode of creative work.

``Given enough eyeballs, all bugs are shallow.'' I dub this: ``Linus's Law''

10. If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource.

11. The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.

13. ``Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away.''

Eric Raymond


   The Cathedral and the Bazaar jay @ 03-Jun-00
 

while coding remains an essentially solitary activity, the really great hacks come from harnessing the attention and brainpower of entire communities. The developer who uses only his or her own brain in a closed project is going to fall behind the developer who knows how to create an open, evolutionary context in which feedback exploring the design space, code contributions, bug-spotting, and other improvements come back from hundreds (perhaps thousands) of people.

Cathedral


   Andrew Leonard on the Free Software Movement jay @ 30-May-00
 

As far as I was concerned, thumping away at my runaway running bamboo, the story of the free-software movement was equal parts political revolution, cultural upheaval and economic tidal wave.

Free software is the leading edge of what is to come, the first product of the indigenous culture of cyberspace. That shouldn't be a surprise. Programmers built the Net and were its first inhabitants; naturally, they would be the first to understand how to most fully exploit its potential. What is really eye-opening, however, is how different the culture that those programmers created online is from the culture that dominates the offline world. One can even argue that this new programmer culture -- the culture of free software, the so-called gift economy -- has grown up in resistance to the standard operating procedures of the technoeconomy.

Berkeley's most important contribution was not software; it was the way Berkeley created software. At Berkeley, a small core group -- never more than four people at any one time -- coordinated the contributions of an ever-growing network of far-flung, mostly volunteer programmers into progressive releases of steadily improving software. In so doing, they codified a template for what is now referred to as the "open-source software development methodology." Put more simply, the Berkeley hackers set up a system for creating free software.

Even if, by 1975, Berkeley's Free Speech Movement was a relic belonging to a fast-fading generation, on the fourth floor of Evans Hall, where Joy shared an office, the free-software movement was just beginning.

McKusick outlines an organizational model that grew up in the wake of the departure of Joy and Leffler. At the center, there is a "core group" -- a set of programmers who control access to the code, by granting or revoking the right to modify or "commit" new code to the code base. Spreading out from them are the "committers" who have that right. Extending out beyond the committers are the general community of developers who submit changes, bug reports and fixes to the committers. Most of today's high-profile open-source projects, such as the Apache Web server and the GNU project, use a similar form of organization. Linux is the major exception. There is no core for Linux -- just Linus Torvalds, followed by a tier of trusted "lieutenants."

"The open-source movement is a free speech movement," says Gage. "Source code looks like poetry, but it's also a machine -- words that do. Unix opens up the discourse in the machinery because the words in Unix literally cause action, and those actions will cause other actions."

Salon


Peering into the World of Peer-to-Peer

By Kevin Werbach Originally published in Release 1.0, November 2000

Peer-to-Peer (P2P) applications rely on intelligent and independent peers at the edge of the network to take the place of central servers. P2P links together three pre-existing categories of services: distributed file sharing (Napster, Gnutella and Freenet), instant messaging (ICQ, AOL Instant Messenger) and distributed processing (SETI@Home, Distributed.net). Technology is evolving in each of these areas, but new P2P application classes are also developing. The P2P space is growing up, from non-commercial efforts and creative hacks to more robust platforms.

 

  Dave Winer: ...t's what makes all weblogs interesting. This is what the New Economy is about to me. An open-ness to your thinking process. Welcoming other people in. Creating value by inclusion, and using that to help perpetuate the process. No lines between reportage and politics, a routing-around of the stubbornness of the business and technology press to stick to their well-rehearsed stories.

All people who participate in open development processes will someday have weblogs. How do I know this? Because it vastly amplifies your effectiveness. What do you give up by running one? As long as you allow for off the record conversations, nothing. And in an open process how many conversations require it? Ideally none. If the technologies we're deciding on are as revolutionary as some think they are, don't we want to leave a trail behind of our thought processes, and when connections were made and how they came about?

 
 
   A World Without Microsoft jay @ 09-Jun-00
 

It will be difficult for Microsoft to compete against at such collaboration and software development, as their software development process has been closed for years, and shows no sign of changing anytime soon. Microsoft believes that to control a market, one must also control the standard. From an Internet perspective, this is severely flawed logic, and also why so many old-timers and geeks give Microsoft such a hard time. The Internet was founded on collaborative software development by programmers solving specific problems and needs, not by a company out to make as much money as possible. Unfortunately, Microsoft's PR machine churns the exact opposite with its "innovation" claim.

Regardless of what happens, Microsoft has vowed to appeal, which will likely be the beginning of their downfall. Developers, corporations and Internet users are not likely to wait around while Microsoft takes their case all the way to the Supreme Court. The rapid adoption of Linux, the resurgence of Apple, and the development of a modern desktop environment by Apple (Mac OS X) are only the beginnings of a change in the way we all work and live with our computers.

The future of software development is collaboration. From that comes true innovation. From those fundamentals we, as daily software developers and users will ultimately benefit.

Makes Jay ponder how much of the New Economy uses software development as its model for prod/service development. Is Collab.Net one of the conversations the Cluetrain Manifesto calls for? [Damn. Collab.Net crashed in the dot.bomb debackle.]

Cameron Barrett


 
     
 

More about Gnutella, from the Gnuella web site...

Gnutella is a fully-distributed information-sharing technology. Loosely translated, it is what puts the power of information-sharing back into your hands.
When the World Wide Web started, that's how it was. It used to be that I would put up a web page, you would link to it, and I would link to yours. To get around, we would all "surf the links". The web was a web. But shortly after, the likes of Yahoo! and Lycos came on the scene to build search engines, or information portals. You go to one place to find all the information. Ideally that would be true. The problem with portals? They stuff you with ads. They are outdated. They basically control the flow of information. (Proven in a recent IBM/Altavista study of the Internet.)

Now, however, Gnutella puts the personal interaction back into the Internet. When you run a Gnutella software and connect to the Gnutella Network, you bring with you the information you wanted to make public. That could be nothing, it could be one file, a directory, or your entire hard drive (I wouldn't recommend this option).

The power behind this is amazing. That data which you have bothered to keep on your hard disk is what you found to be valuable. So when you share it you are sharing what is most valuable on the entire Internet. And you control its sharing. Decide to stop sharing? Go ahead and take those files offline. Want to share more? Select more files and share them. It's really that easy, and the power of sharing information is just unquantifiable.

Gnutella client software is basically a mini search engine and file serving system in one. When you search for something on the Gnutella Network, that search is transmitted to everyone in your Gnutella Network "horizon". If anyone had anything matching your search, he'll tell you.

So, time to give a brief explanation of the "horizon". When you log onto the Gnutella network, you are sort of wading into a sea of people. People as far as the eye can see. And further, but they disappear over the horizon. So that's the analogy. When you log on, you see the host counter start going crazy. That's because everyone in your horizon is saying "Hello" to you. After a while, it stops counting so rapidly, because you've counted most everyone in your horizon. Over time the people in the horizon change, so you'll see the counter move slowly.

If you log in another day, you should see a whole bunch of fresh faces, and maybe you'll have waded into a different part of the network. A different part of the crowd. Different information.

You might say, "Well, what if what I want doesn't exist within my horizon? The horizon never seems to grow beyond 10000 hosts!" True. If the information you want isn't in your horizon, you're out of luck. But hopefully it is. It's a probability game. Fortunately information is duplicated. Everyone's got that joke about the way men choose urinals, for example.

And what of the 10000-user horizon? That's just the network "scaling". The Gnutella Network scales through segmentation. Through this horizoning thing. It wouldn't do to have a million people in the horizon. The network would slow to a crawl. But through evolution, the network sort of organizes itself into little 10000-computer segments. These segments disjoin and rejoin over time. I leave my host on overnight and it will see upwards of 40000 other hosts.

Source

 


© 2003 Internet Time Group, Berkeley, California