Java powers the Web 2.01
Why is it I have the feeling this Web 2.0 is just for the cool kids, and not for bookish nerds like me who wouldn't know how to strike the pose if my life depended on it? Granted, I cut my teeth on just plain HTML, when having attributes like align and valign on table tags was the height of coding wizardry, but I'm entitled to date the prom queen too, aren't I?
Let me explain.
Take that perennial underdog - also known as Java on the Desktop. Just when Evans Data pronounces that Java Swing has become the dominant GUI toolkit in America.....just when Java desktop browser penetration has really started to go into overdrive....and just when Java desktop apps like Azureus and others start winning accolades and awards left and right, along comes this thing called AJAX to pull the rug out from under it.
You'll have to pardon my confusion, but when I was a young lad in the Philippines, AJAX meant that bar of soap you used for washing your dirty dishes.
But I digress.
One of the ideas that I've recently been absolutely fascinated with is the rise of pervasive or ubiquitous computing, which is why we started a virtual JUG here at Java.net called JavaMeCDC-Group. C'mon over and join if you like good reads, because the hidden focus of the JUG is on the use and promotion of Java as the "glue" that holds together a world that is fast becoming the computer. Sun was wrong. The network isn't the computer - the network is just the veins and nerves that tie the actual construct together and move the flow of information.
Welcome to the coming singularity.
If the Web 2.0 deals with energizing the PC experience for people, then the Web 2.01 deals with something that I think will be much greater - empowering people to become more aware of their near-environment and the world in a way that transcends the limitations of our everyday human senses. Sure, when you sit in front of your PC and call up your newsreader you are in a sense attached to the wider world out there, but just imagine a world where people are constantly aware of the world around them - a world without borders (ok, stop me before I go-Neo and start flying like superman).
But there are many problems with Java (and specifically Java ME) as that glue right now.
First of all, it takes real programming know-how to create Java ME applications. The great thing about HTML was that it allowed lazy knuckleheads like me to create cool web sites using nothing more than a text editor and some jumbled tags.
Secondly, the ability of people to take advantage of all the available Java ME application offerings out there is limited. They are commonly herded into "Shopping" sites by the operators, where the available apps are strictly controlled, or if they manage to make it out into the WAP world, they encounter strangely confusing sites which urge them to download JARS (heaven forbid!) and Java JADs (whatever for???).
Thirdly, there is currently a dearth of content available that would entice most people to take the trouble to jump into the data plan jungle offered by carriers. Not everyone out there is a bejeweled fanatic, and not everyone is enchanted by the thought of blasting critters with mini-guns on tiny LCD screens.
A rose by any other name is still a rose.
But perhaps some companies and organizations offer a way out of this conundrum. They all sport cool Web 2.0 monikers like Plusmo, and BluePulse, LiteFeed, and Widsets - but they all pretty much do the same thing, which is to enhance the experience of consumers when it comes to the smaller mobile world.
People initially download a Java ME client, usually via a link delivered to their devices using SMS. They can then use this client to seamlessly download mini-applications called "widgets" on demand, and synchronize the client with the server (which, almost like Opera Mini, has become tightly-integrated with the client app). Each lightweight widget performs a specific function, whether it be a weather widget that gives the current weather, or one that shows RSS news feeds from the BBC. More interestingly, the framework allows common people with some basic knowledge to wrap their web content into widgets and deploy them quickly using standard templates! I created one for my former Java Kecil 2x blog and deployed it onto my Nokia 9300 in about 3-4 minutes using the Widset templates.
The very new Nokia Widset in particular bears special mention because of the nice user-interface that it sports. The pic below shows how the server state (as depicted on the Mac desktop) is perfectly synchronised with the mini Java apps deployed on my Nokia 9300 smartphone.
As the browser-based Web 2.0 revolution marches on, events are taking place on a potentially grander scale in the small devices arena that are mirroring events in the PC world. But in this case, the oft-used mantra "Java Everywhere" could actually be descriptive of the platform's essential role as the glue upon which the entire framework flourishes.
You might call this the rise of the mobile widgets, but you might also think of it as the coming of the Mini Application Portals, or perhaps the Mobile Application Portals, which is abbreviated in the same way.
Either way, welcome to the Web 2.01, my friend!