One of my main objectives here at Off Course – Off Target is to share and explain some of the key concepts and models that I have developed or adopted, and then provide examples that show how these concepts are becoming a reality.
Those who are familiar with me through my blog, my presentations, or just casual conversations know that I am driven by my passionate belief that personalization at the global level—what I call “the Snowflake Effect”—can now be achieved. I’ve often described this effect as getting it “just right”, as in just the right content, to just the right person, at just the right time, in just the right context, on just the right medium or device, and any number of other “just rights” that you might imagine.
One of the fundamental enablers that make this Snowflake Effect possible is the universal application of a “Lego block” conceptual model—having a large collection of very small individual components (the Lego blocks), each of which has an equally small set of common standards (such as the common “pin” size of each block), so that it is possible for any block to be “snapped” together with any other block.
You can choose any combination of blocks and assemble them together to form a unique result matched to a unique purpose and context. A finite set of blocks can be combined together in nearly infinite combinations, providing the potential for massive amounts of personalization. And talk about scalability! As the number of blocks grows linearly, the number of combinations grows exponentially.
This same idea is at the root of “mashups”, a term commonly used to refer to a unique combination of software code. But the notion of mashups is MUCH more universal, and can and will be applied to more purposes. I’ve made several presentations on this idea in the past few years. You can read more about it in my previous post The Future is a Marvelous and Monstrous Mashup. I believe that restricting mash ups to software code is completely arbitrary. When we treat it as a concept and apply it to many other things, it becomes truly powerful and profound. My personal definition of a mash up is simply:
A mash up is a unique assembly of bits and pieces from more than one source into a single integrated whole.
So “mashup” as a concept can and already does apply to almost everything. Some examples previously noted included:
- Music: Pandora.com, Last.FM
- Content: wikis, blogs, rich media
- Events: Mashup Camp, Tim O’Reilly’s Foo Camp
- People: Finding the right ones for a project team via their competencies, preferences, etc.
The Universal Widget API
So I was so intrigued to read the recent announcement from Netvibes.com called the “Universal widget API”. I see this as a very significant step towards this more universal application of mashups and an example of the Snowflake Effect.
What is a Universal Widget API? One of their bloggers said:
"It’s simple: Write once. Run everywhere.
- Netvibes UI library to help make widget building quick and easy
- Connects communities together across all platforms and APIs"
If you are not familiar with this use of the term “widget” it has most recently been used to describe a bit of software code that can be embedded into any Web page and creates a little onscreen element that the user interacts with, such as a YouTube clip. For example, I’ve used the SlideShare viewer “widget” here on Off Course – On Target to embed my slides directly into a posting. You have probably seen and used examples of widgets that display a clock or maps on a page.
If you’d like to check out more examples and start using some of these widgets, you can look at:
API is the acronym for Application Programming Interface, a set of tools that makes it easier for programmers to build a software application by providing all the building blocks (that Lego approach again!). The Webopedia definition of API is:
“Abbreviation of application program interface, a set of routines, protocols, and tools for building software applications. A good API makes it easier to develop a program by providing all the building blocks. A programmer puts the blocks together.”
In his recent “e-Clippings” blog entry about Netvibes Universal Widget API, Mark Oehlert said:
“I do have to wonder though, how one company will develop a universal API....good for Netvibes for taking the lead on this.”
I certainly agree. Whether Netvibes pulls this off or some other group does so later on, any step toward a more universal and standard API for widgets would be welcomed. A standard would allow for:
- The universal development, sharing, and reuse of such marvelously useful widgets.
- Help make their use much more ubiquitous.
- Shift the focus onto the actual content and usefulness of these widgets.
To learn more about the Netvibes Universal Widget API, check out Niall Kennedy’s detailed explanation “Universality of the web widget”.
What I would ask YOU to think about and comment on, is what widget would you most like to have? If we were to have a giant repository of widgets, what would you want to find there?
Let’s get creative and start building the demand for widgets, so as they become more ubiquitous, the supply will match our demand and real needs. To help you do so, be sure to try out some of the widget libraries I already noted and the many others you can easily find online. They will help you see their underlying power and value. Soon you’ll be saying, "This is great, but if I could only find one that would let me ………."
Happy finding and learning in widget world!