The Internet has emerged from obscurity to become a dominant platform for application development and is integral to the idea of Software as a Service (SaaS). Unfortunately the demand to build applications of increasing complexity has continued to outpace the ability of traditional Web applications to represent that complexity and expectation. Utilisation of AJAX technologies attempts to reconcile some of the issues, but frequently the result is a frustrating, confusing or disengaging user experience resulting in unhappy customers, lost sales, and increased costs.

We are in a period of expanding opportunity for Internet and intranet applications. The growth in adoption and usage of the Internet has acted as a driver behind technology spending, spawned such terms as Service Orientated Architecture (SOA), Software as a Service (SaaS) and Web Services, and enterprise integration trends that seek to combine back-office infrastructures with new front-office applications and the Internet.

Integral to this is the need to communicate better with employees, customers, suppliers, and partners. Intranet applications, including enterprise information portals and employee facing applications, are increasingly depended upon to share information across a company, while outwardly focused extranet applications seek to more tightly bind networks of partners, suppliers and customers and make communication, business transactions and support easier.

A key reason Web applications cannot represent these types of complexity is because of the limitations of HTML pages. The Internet grew up on the notion of a network of loosely coupled, unintelligent clients that communicate with increasingly intelligent servers by sending requests for pages. The emergence of Rich Internet Applications (RIA’s) has served to blur the distinction between the desktop and the Web and has resulted in smart, powerful and dynamic user interfaces. RIA’s seek to combine the best of the desktop, Web and communication technologies.

As one would expect, the driving forces behind Rich Internet Applications are the big guns in the technology and Web industry; namely Adobe, Google and Microsoft. Each company has produced their own RIA platforms:

Rich Internet Applications

Adobe Integrated Runtime (AIR)

AIR is a cross-operating system runtime that allows developers to leverage their existing web development skills Flash, Flex, HTML, Ajax) to build and deploy desktop RIA’s.

Applications can be built using the following technologies:

  • Flash / Flex / ActionScript
  • HTML / JavaScript / CSS / AJAX
  • Combination of these technologies
  • PDF can be leveraged with any application

Adobe Integrated Runtime can be found at http://labs.adobe.com/technologies/air/

Google Gears

Google Gears is an open source browser extension that lets developers create web applications that can run offline.

Google Gears consists of three modules that address the core challenges in making web applications work offline.

  • LocalServer Cache and serve application resources (HTML, JavaScript, images, etc.) locally
  • Database Store data locally in a fully-searchable relational database
  • WorkerPool Make your web applications more responsive by performing resource-intensive operations asynchronously

Google Gears can be found at http://gears.google.com

Micrsoft Silverlight

Silverlight is a cross-browser, cross-platform plug-in for delivering the next generation of .NET based media experiences and rich interactive applications for the Web. Silverlight offers a flexible programming model that supports AJAX, VB, C#, Python, and Ruby, and integrates with existing Web applications. Silverlight supports fast, cost-effective delivery of high-quality video to all major browsers running on the Mac OS or Windows.

Microsoft Silverlight can be found at http://silverlight.net

Rich Internet Applications (RIAs) combine the best user interface functionality of desktop software applications with the broad reach and low-cost deployment of Web applications and the best of interactive, multimedia communication. The end result is an application which provides a more intuitive, responsive, and effective user experience.

Rich Internet Applications Venn Diagram

More specifically, the best of the desktop environment includes providing an interactive user interface for validation and formatting, fast interface response times with no page refresh, common user interface behaviours such as drag-and-drop and the ability to work online and offline. The best of the Web includes capabilities such as instant deployment, cross-platform availability, the use of progressive download for retrieving content and data, the magazine-like layout of Web pages and leveraging widely adopted Internet standards. The best of communication means incorporating two-way interactive audio and video technologies.

This means that in a RIA environment, the client is capable of doing more than just rendering pages. It is able to perform computations, send and retrieve data in the background asynchronously from the user’s requests, redraw sections of a screen, use audio and video in a tightly integrated manner, and so forth, independently of the server or back end to which it is connected.

An RIA environment provides a strong technical platform that effectively restores the client’s abilities to be more like that of desktop software applications, or a traditional client in a client/server system. It fits into the traditional n-tier development process and integrates into legacy environments to extend existing applications without the need to rework them. And it also can serve as an interactive presentation layer above underlying Web Services. It is able to address various kinds of complexity. It enables development of applications that have complexity requirements, reducing the cost of development and frequently making development of such an application possible in the first place.

Because of their architecture and capabilities, RIAs have the potential to fundamentally change the way companies engage and interact with their Web users, leading to more effective user experiences with top- and bottom-line results.

Media philosopher Marshall McLuhan observed that “The Medium is the Message”. That is, the form of media is what changes consciousness irrespective of the content of that media.

Michael Wesch speculates that the accessibility of the internet both to add and receive content is leading to a massive paradigm shift in human thought and society.

However:

The internet still follows the fundamental form of the written word and the motion picture: non-participatory reception of information.

The exact interface of scripting language is irrelevant. The internet is essentially a series of Guttenberg presses and Edison kinetoscopes connected by telegraph wire.

The accessibility of these devices to add content had only changed the scope of the content, not the basic form. Regardless of who made it, I’m still reading text and watching movies.

A semi-global library is a remarkable acchievement (Remember that most people in the world still don’t have net access).

But the real acchievement of the internet has been to SIMULATE participation. It has made non-participatory addition of responsive content more rapid; even instantaneous.

E-mail or a chat room, for instance, has infinitely sped up communication across distances. But it is still not a fully sensory, participatory conversation, and we’ve had to find ways to compensate for that.

This trajectory will eventually lead to virtual reality. Increasingly sophisticated pseudo-sensory simulations of the full sensory, participatory reality of which we are a part.

This is a movement towards making the non -participatory form imitate the participatory reality.

We’re trying to make the printed word imitate what we already experience every day.

The natural interaction between us and the world.

Zeit·geist (tsÄ«t’gÄ«st’, zÄ«t’-) n.
The spirit of the time; the taste and outlook characteristic of a period or generation.

Zeitgeist is a term that refers to the ethos of a cohort of people, that spans one or more subsequent generations, who despite their diverse age and socio-economic background experience a certain worldview, which is prevalent at a particular period of socio-cultural progression.

The Web 2.0 trend, as first postulated by Tim O’Reilly, is now being discovered and championed by a new era of internet entrepreneurs. These entrepreneurs and companies have already attracted interest from more established players in the online arena. This is exemplified by Yahoo’s purchase of Del.icio.us, Flickr and Upcoming.org. Sites branded “Web 2.0″ are experiencing phenomenal success on the wave of enthusiasm associated with the social, sharing nature of the new paradigm.

A subset of the Web 2.0 ‘Zeitgeist’ is the concept of Social Bookmarking.

What is it?

Social bookmarking is a popular way to store, classify, share and search links through the practice of tagging them with informal assigned, user-defined keywords that describe their content, and saving these bookmarks to a public website. This is in contrast to the classic idea of bookmarking, which is the practice of saving the website address to your web browser.

To create a collection of social bookmarks, it is necessary to first sign-up to one of the many providers, add tags of your choice and designate whether the bookmark is public or private. Some of these providers periodically verify the links to ensure they are still available and verify users if the URL no longer exists.

Most social bookmarking services allow users to search for bookmarks which are associated with given “tags,” and rank the resources by the number of users which have bookmarked them. Many social bookmarking services also have implemented algorithms to draw inferences from the tag keywords that are assigned to resources by examining the clustering of particular keywords, and the relation of keywords to one another.

Who is doing it?

Social bookmarking websites are now numerous and include, but are not limited to: Del.icio.us, digg, furl, blinklist, blinkbits, blogmarks, reddit, fark, de.lirio.us, newsvine and ma.gnolia.com.

Social Bookmark Logo Strip

How does it work?

The creator of a bookmark assigns tags to each resource, resulting in a user-defined method of classifying information. Tags are one word descriptors that don’t form a hierarchy and as a result a resource can have as many tags as is necessary, with these tags being modified and deleted as required. So, tagging can be a lot easier and more flexible than fitting your information into preconceived categories or folders.

If you save an article about how to make a certain kind of cake, you can tag it with recipes sweets yogurt or whatever other tags you might use to find it again. You don’t have to rely on the designer of a system to provide you with a category for French cake recipes. You make up tags as you need them, and use the tags that make the most sense to you.

This is a great method for organising data. When someone else also classifies their resource with the same tags the result is a collaborative repository based on similar ideas and creative thoughts. This concept has become known as a “folksonomy”.

Why is it significant?

Social Bookmarking allows different users the opportunity to express different perspectives on the classification of a particular resource. The process also allows like minded individuals to form communities that continue to influence the evolution of folksonomies and common tags for a particular resource. Therefore, using folksonomy tools, relationships between different subjects are created in interesting and previously unrecognised ways. For example, if you are researching television, other users may have seen the connection with video podcasting, taking you to new, potentially valuable directions. These tools also encourage return users as the folksonomy of a particular topic is continually changing and evolving in interesting and exciting directions.

What are the downsides?

By definition, social bookmarking is carried out by amateurs therefore there are no standard set of keywords (also known as controlled vocabulary), no standard for the structure of such tags (e.g. singular vs. plural, capitalisation, etc.), mistagging due to spelling errors, tags that can have more than one meaning, unclear tags due to synonym/antonym confusion, highly unorthodox and “personalised” tag schemas from some users, and no mechanism for users to indicate hierarchical relationships between tags (e.g. a site might be labeled as both sport and rugby, with no mechanism that might indicate that rugby is a subset of sport).

Where is it going?

The shift from formal taxonomies to a folksonomic approach to classification has important implications for how users interact and how communities are developed. As more users come online, more blogs, wikis and other resources are created, this new form of classification will mature, ultimately influcing how information is stored, how those storage engines are designed and developed, and indeed how that information is found.

A new breed of Web-based data integration applications is emerging across the Internet. Colloquially known as “mashups”, their popularity stems from the emphasis on interactive user participation and the manner in which they aggregate third-party data.

A mashup is a website or web application that seamlessly combines content from more than one source into an integrated experience.

Mashups are an exciting genre of interactive Web applications that are characterised by, and draw upon, content and functionality retrieved from external data sources to create entirely new and innovative services. They are a hallmark of the second generation of Web applications widely known as Web 2.0.

This vague data-integration definition of a mashup certainly isn’t a rigorous one. A good insight as to what makes a mashup is to look at the etymology of the term:

Mashup, or bastard pop, is a musical genre which, in its purest form, consists of the combination (usually by digital means) of the music from one song with the a cappella from another. Typically, the music and vocals belong to completely different genres. At their best, bastard pop songs strive for musical epiphanies that add up to considerably more than the sum of their parts.

Like these songs, a mashup is an unusual or innovative composition of content (often from unrelated data sources), made for human (rather than computerized) consumption.

Mapping mashups

In this age of information technology, people are collecting a immense amount of data about things, activities, events, all of which can be annotated with locations. These diverse data sets that contain location data, are wanting to be presented graphically using maps. One of the big catalysts for the advent of mashups was Google’s introduction of its Google Maps API. This opened the floodgates, allowing Web developers to mash all sorts of data (everything from nuclear disasters to Weather Bonk and Keotag) onto maps. Not to be left out, APIs from Microsoft (Virtual Earth), Yahoo (Yahoo Maps), and AOL (MapQuest) shortly followed.

Video and photo mashups

The emergence of photo hosting and social networking sites like Flickr with APIs that expose photo sharing has led to a variety of interesting mashups. Because these content providers have metadata associated with the images they host (such as who took the picture, what it is a picture of, where and when it was taken, user-defined tags for describing the image and more), mashup designers can mash photos with other information that can be associated with the metadata. For example, a mashup might analyse song or poetry lyrics and create a mosaic or collage of relevant photos, or display social networking graphs based upon common photo metadata (subject, timestamp, and other metadata.). Yet another example might take as input a Web site (such as a news site like CNN) and render the text in photos by matching tagged photos to words from the news. EducationSearch is an education search tool which enables you to search by: Location, Career, Industry/Salary and provides personalized searches to save for future reference. EducationSearch Utilises Flickr, Google Maps and YouTube.

Search and Shopping mashups

Search and shopping mashups have existed long before the term mashup was coined. Before the days of Web APIs, comparative shopping tools such as BizRate, PriceGrabber, MySimon, CrowdStorm, Shopping.com and Google’s Froogle used combinations of business-to-business (B2B) technologies or screen-scraping to aggregate comparative price data. To facilitate mashups and other interesting Web applications, consumer marketplaces such as eBay and Amazon have released APIs for programmatically accessing their content.

News mashups

News sources (such as the New York Times, the BBC, or Reuters) have used syndication technologies like RSS and Atom since 2002 to disseminate news feeds related to various topics. Syndication feed mashups can aggregate a user’s feeds and present them over the Web, creating a personalized newspaper that caters to the reader’s particular interests. An example includes Diggdot.us, which combines feeds from the techie-oriented news sources Digg.com, Slashdot.org, and Del.icio.us. This is in contrast to Google News which aggregates news content through complex search algorithms.

Mashups represent huge benefits and challenges to software companies. No longer is the web simply a collection of web pages that a user ’surfs’ through on a day to day basis. The web is becoming an omnipotent tool, a global application along the mold of Microsoft’s Windows OS. People are learning to develop Web 2.0 with much the same energy as seen in the early innovations of the personal computer market. The more people seize control of this new paradigm, the more the long-delayed promise of software and services that can be tapped on demand is realised.

At the same time these bottom-up efforts represent a tough challenge to the service providers upon which the mashup is based. Mashups often use data with out licence, and present this data in unintended ways. For example, Yahoo initially blocked the use of its API by one mashup website that was using it’s content in conjunction with the Google Maps API. Amazon blocked the use of it’s API by Amazon Light until it changed how it linked to rival sites and the GreaseMonkey extension for the Firefox Browser, which allows the quick installation of scripts to manipulate web pages, represents a security threat if exposed to malicious scripts.

Inexpensive Research & Development

Amazon and other giants in the web business are embracing the mashup phenomenon by allowing easier access to their data services. Indeed, these companies are programming their interfaces so that much of the computations are made on the client’s computer rather than a server located on potentially another continent. This allows developer’s to make their own tweaks.

The appeal to web sites is clear. Mashups represent a way to develop creativity, software, tools and communicate messages to the community.

However, mashup business models don’t extend beyond running a few Google ads and collecting fees for sending buyers to e-commerce sites. One reason is that most Web sites don’t allow for-profit use of their data by outsiders. But as traffic to mash-ups grows, companies may cut deals, especially if mash-up sites spur new markets. Map-based mash-ups, for instance, may finally attract local businesses to advertise on the Web.

Link(s)

http://www.programmableweb.com

Web 2.0 will alter the way that businesses develop and apply innovative ideas.

During the 1990s business leaders and venture capitalists grappled with how they would make money from the web. This was tipified by the two VCs, Kleiner Perkins and Sequoia Capital, investing $25 million in Google in the late 1990s; they new the search engine created by Sergey Brin and Larry Page was a winning formula, even though the pair had not yet monetised search. Bricks and mortar compaines were deemed “old hat” as the dotcom bubble was expanding. Companies such as eBay, Amazon and Yahoo! were at the forefront of every investors’ chequebook. Every company needed a 21st Century “Blue Sky” web strategy; every company needed to do e-commerce. However, the bubble burst and everyone was brought down with a bang. Boo.com is a classic example of the fallout from the over speculation.

Today, the reality has shifted from solely bricks and mortar or dotcom, to a balance between the real world and cyberspace, of traditional business operations complemented by the unversality provided by web-based technologies. The web has given businesses a greater understanding of their customers. With Web 2.0 a new type of web is emerging, further enhancing the understanding of a user or customer through the creation of online communities, where information is shared and new ideas evolve.

There are numerous examples of web communities from the early FriendsReunited to MySpace and the more specific Islandoo for the Channel4 TV progamme Shipwrecked. Web 2.0 is all about collaborative networks tipified by Flickr, del.icio.us, Wikipedia and YouTube. However, Web 2.0 has primarily been used in the consumer arena, as identified by the examples, but the use of such technologies has far reaching implications based on understanding how people interact with the technologies and behave online. Linking people across countries, time-zones and company boundaries will enable people to work together without hierarchical boundaries, bringing people together as one team to collate the best input. This is emphasised with the concept of a wiki whereby any end-user can make changes to the shared resource without the need for specialist software and expensive training. This makes sharing knowledge extremely easy.

Other areas of Web 2.0 is the technology identified by the term “folksonomy”. Simply, a folksonomy is defined on Wikipedia as:

… an Internet-based information retrieval methodology consisting of collaboratively generated, open-ended labels that categorize content such as Web pages, online photographs, and Web links. A folksonomy is most notably contrasted from a taxonomy in that the authors of the labeling system are often the main users (and sometimes originators) of the content to which the labels are applied. The labels are commonly known as tags and the labeling process is called tagging.

While it takes time for an expert to create a taxonomy specific to a particular organisation in order to categorise or define data, folksonomies do not require fixed taxonomies. Instead, users define their own descriptions of the data to be described by applying tags to the data, whether it is a bookmark in terms of del.icio.us, an image on Flickr, a video on YouTube or a document in a company repository. Over time, these tags can be amended by other users resulting in a definition that is more specific. This enables users to find information with relative ease, without having to type the exact keyword.

Web 2.0 will bring a whole host of issues into the business arena. While there are clear benefits from establishing communities and social networks, people with different views, be it political or religious, can drive the agenda. Further complications arise through the necessity to audit changes to the data and ensuring the data is indeed accurate (Wikipedia has had cases where people have maliciously altered data to either enhance their own profile or devalue the significance of historical events).

Not quite Alex Tew’s dollar-per-pixel advertising page that raised over a million dollars in just a few months, the Million Dollar Homepage, but Beggr brings internet money making scams to a new level! With no tangible benefit to those donating money, this simply is scrounging … brilliant!

Beggr Scrounging 2.0

What is AJAX?

Asynchronous JavaScript and XML. It’s a whole new way of looking at the web where HTML page makes asynchronous calls to the server using JavaScript and loads the data in bits and pieces as needed. Ajax is not a new technology. It’s a new developing approach, based on the following existing technologies:

  • XHTML and CSS for standard presentation,
  • DOM (Document Object Model) for dynamic and interactive presentation,
  • XML and XSLT for data exchange and manipulation, and
  • XMLHttpRequest for asynchronous data retrieval

The term “AJAX” was first muted by Jesse James Garrett of AdaptivePath and has become synonymous with the ideas and concepts of Web 2.0. Ajax has been popularised by the likes of Google in their Gmail and Google Suggest applications, Flickr and del.icio.us, now both owned by Yahoo!.

Below I have listed a few of the frameworks available to the ColdFusion community. I will leave it up to you to decide which one is the best and easiest to implement. Please tell me your experiences.

AjaxCFC

AjaxCFC, created by Rob Gonda, is a ColdFusion framework meant to speed up Ajax application development and deployment by providing developers seamless integration between JavaScript and ColdFusion, and providing built-in functions, such as security and debugging, to quickly adapt to any type of environment and helping to overcome cross-browser compatibility problems.

  • ColdFusion components following the best practices of object oriented programming and design patterns. Programming with ajaxCFC involves extending components and creating your own ajax façades.
  • Intergration with Model-Glue, one of the most popular MVC frameworks widely used by the ColdFusion community.
  • Works with ColdFusion MX 6.0, 6,1, 7.0 and Blue Dragon.
  • Automatically handles complex object transmitted from the client to the server and vice versa.
  • Server returns pure JavaScript code to the callback handler (instead of XML or JSON) to vastly improve performance.
  • On-the-works: Built-in base64 and/or blowfish encryption.
  • Licensed under the Apache License Version 2.0, by Rob Gonda.

The project can be downloaded from Rob Gonda’s website at the following address: http://www.robgonda.com/blog/projects/ajaxcfc/

JSMX

JSMX is a simple API available for connecting your Web Applications to an AJAX front end. The main difference between JSMX and other AJAX implementations is that JSMX allows you to pass either XML or JavaScript to the API. JSMX was originally created to be used with ColdFusion applications because of how easy it is to create JavaScript Strings natively within ColdFusion (using either the CFWDDX tag or the ToScript() function). However, because there is no server-side component to be installed, JSMX can really be used with any programming language.

  • Using the CFWDDX tag, or the toScript() function, within ColdFusion makes converting your ColdFusion Objects to JavaScript a SNAP!
  • Smaller Packet Sizes over the wire (JavaScript Vs. XML).
  • Reduced latency due to less parsing of the responses.
  • Parameters can be sent to the server in multiple formats including, strings, objects, and entire forms without having to build extra logic to handle each type.
  • API has no Server Side components which makes it more portable.
  • Extremely simple syntax shortens the learning curve and speeds up development.
  • Open-source (Creative Commons Attribution-ShareAlike License).

JSMX is the creation of Todd Kingham at LaLaBird.com and can be downloaded from the following link: http://www.lalabird.com/?fa=JSMX.downloads

CFAjax

CFAjax is the AJAX implementation for coldfusion. It makes ColdFusion method calls on server directly from HTML page using JavaScript and return backs the result to the calling HTML page. CFAjax comes with simple to use JavaScript API and simple ColdFusion implementation that marshal’s the response between your ColdFusion methods and HTML page. Using CFAjax you can create highly interactive websites with greater performance and usability.

CFAjax can be downloaded at the following link: http://www.indiankey.com/cfajax/project.asp

SAJAX for ColdFusion

Sajax is an open source tool to make programming websites using the Ajax framework — also known as XMLHTTPRequest or remote scripting — as easy as possible. Sajax makes it easy to call PHP, Perl or Python functions from your webpages via JavaScript without performing a browser refresh. The toolkit does 99% of the work for you so you have no excuse to not use it.

Sajax for ColdFusion is the creation of Steve Smith at Ordered List and can be downloaded from the following link: http://www.orderedlist.com/downloads/SAJAX_ColdFusion.zip

Newer entries »