Paper Example Undergraduate 17,284 words

Cross Platform Mobile and Web

Last reviewed: July 26, 2010 ~87 min read

Cross Platform Mobile and Web Widgets Installation

Computer-mediated communication and decision-making applications for teams are extremely varied and ubiquitous, ranging from e-mail to shared bulletin boards for classrooms to remote conferencing. As the potential to put these applications onto the Web becomes better exploited, computer-mediated communication and coordination of teams of individuals will become even more widespread. Although the Web is normally thought of as an individual-to-mass form of communication, it actually has a great deal of potential to serve team collaboration. This is largely due to the cross-platform nature of Web design. It is also partly due to the fact that Web-based applets do not require the team members to have specialized software installed on their machines in advance (Proctor & Vu, 2005). Likewise, mobile commerce is gradually emerging as a new commercial environment in the U.S., facilitated by the increasing numbers of consumers who have mobile phones and other portable wireless electronic communications devices. No longer simply a mobile telephone, mobile phones offer new communications and information services. Mobile commerce will enable consumers to use their mobile phones to conveniently purchase goods and services (like parking passes or theater tickets) and to receive timely information content (like directions and maps). Mobile commerce is also generating new advertising opportunities for suppliers of new and existing products and services directed at consumers through their mobile phones (King, 2008). In addition, Mobile phones may well be the next big consumer marketing opportunity. M-advertising is a form of mobile commerce (also referred to as m-commerce or mobile e-commerce). In m-commerce, wireless devices such as mobile phones, wireless-enabled handheld computers, vehicle-mounted technologies, and personal message paging devices are used to connect to mobile services. M-commerce applications include m-advertising that is directed at or accessed on consumers' mobile phones, such as advertising sent in text messages to consumers (King, 2008).

Statement of the Problem

Despite the spread of software development and software usage, there remains a dearth of cross-platform applications which run on PC operating system, web browsers and mobile as well. In this regard, Wallen (2010) emphasizes that, "From Windows to Linux to Mac and back, it's becoming more and more difficult for companies to pin themselves down to one single platform. As a result, we need applications that can span those various platforms" (para. 3). Since technologies are no longer different from each other in today's era, we can develop such application with ease. The study sought to undertake the deployment of one such cross platform application. For web browsers this application will make it possible to install widgetsmobile applications on a website's user view without communicating with the website owner. The application or widgets installed on the site user's view will be non-modifiable by the user. The widgets installed on one site cannot be used in another site. The user will be able to install mobile applications on Desktop OS as well and vase versa.

This study determines how it is possible to install these applications and widgets on the user's site view without communicating with the site owner by installing a platform on the site user's operating system which will provide services to all user web browsers. This platform (micro engine) will set the location, the size and the site user by parsing the incoming HTML stream and reformat it to the desire presentation. The user will have the freedom of choosing the desired applications or widgets from the set of available applications in the markets existing today with no relation to the platform he run on his machine and install them on his own site view as well for Mobile application installed on Desktop OS. This will open such market to new customers which will consume applications with no relation to the platform he run and increase market monetization. My understanding and experience in Mobile and Web 2.0 Applications market will help me to bind them together and to open more monetization options.

According to Thompson (2008), the term "Web 2.0" refers to the next generation of Internet applications that allow (even encourage) the average Internet user to collaborate and share information online. It signals a major change in Internet use, since in the computer world "2.0" indicates a major upgrade to an original program. Web 2.0 sites allow anyone to contribute content and to participate with other users in editing and even combining or remixing existing content with other material to repurpose it for additional uses. Thus content on the Internet is no longer static; it is changing and dynamic. A distinguishing Web 2.0 feature is the increasing significance of the individual user, as anybody (even a fifth-grader) can create and upload text, as well as audio and video, to the Internet. Another characteristic is the reliance on user participation, often referred to as the "wisdom of the crowd" and the "architecture of participation." Web 2.0 has an inherent trust in people and what they can contribute when working together toward a common goal for the greater good. Unlike developing a cross platform application, this study focused on installing the cross platform application (deployment) on cross platform environments without changing or interrupting the application source code.

Specific Objectives of Research

The study's objectives were four-fold as follows

1. The researcher wants to expose how it is possible to install the widgetsmobile applications on the web site user's view without even communicating with the web site owner. A widget's end user experience is solely controlled by a widgetmobile applications manager which is part of the widgetmobile micro engine manage the applications the user installed on his site view. The widgetmobile application manager will manage the application source and private parameters such as registration username and password if needed.

2. The researcher aims to develop a micro engine which will manage the installed applications, the positions, sources and the conversion from such platform to a web application stream. This micro engine which can be effectively implemented in a cross platform environment will serve the system and the web browsers using the HTTP stream by interpreting to HTML and JavaScript application. The micro engine will bears several advantages such as flexibility, strength, staff, location and operations, hence the same micro engine will be developed for multiple platforms covering web browsers elements, personal computer Operating Systems and mobile Operating Systems speed, resolutions and unique components such as GPS and Rotation.

3. The widgets/mobile applications installed by the users cannot be modified by the other net users and the widgetsmobile applications installed on one user's website view cannot be used by the other user in his/her website view over the net. The Choice of the widgetsmobile applications to be installed will be made by the user and will depend upon the set of available widgetsmobile applications in the market with no relation of platform dependences.

4. Rather than having multiple environments, the researcher wants to have a common environment for running applications or widgets for almost any platform be it a mobile phone, a web browser or Windows desktop. There will surely be Application Programming Interface (API) and Data Object Model differences (DOM) differences to extend the micro engine system to support more capabilities and new incoming technologies. For example Windows widgets allow access to Windows Management Instrumentation (or WMI) so that an application having all the system functionality provided by WMI can be use these resources, but the mobile is limited to web-services-based development and really basic DOM, but even though HTML/JavaScript/CSS can be used as a standard for running cross platform applications.

Importance of Study

Services like iGoogle, Netvibes, and Pageflakes make available to users a large number of widgets they can add to their personal pages. In addition, there are sites that offer collections of widgets, such as Widgetbox, Widgipedia, and Clearspring. They allow for search or category-based browsing. On the largest of these sites, Widgetbox, a search reveals some 2,600 widgets in the education category and some 80 for language learning. The latter tend to be applications such as flashcards, Web page translators, dictionaries, or word of the day, but also include mini-apps like a multi-lingual text-to-speech engine, a Second Life language learning integrator, and HowStuffWorks (for content-based English language learning). Not all widgets found in collector sites will work in all environments. In fact, there are two principal kinds of widgets: desktop and Web (Godwin-Jones, 2009).

Desktop widgets are designed to run in particular environments, such as the Dashboard system for Macintosh OS X or the "sidebar" in Microsoft Vista. Web widgets, on the other hand, can be deployed more widely (Godwin-Jones, 2009). While they may be designed for a particular service, they can generally work on any Web page. This may require some adjustments to the code, which, if created in one of the widget authoring environments, will be done automatically through the export/integration process (Godwin-Jones, 2009). Web Widgets allow users to include Java effects without scripting, support for most common streaming media, and Web windows that enable users to view multiple Web pages simultaneous (Schneider 2000, p. 82).

Both desktop and Web widgets have the same basic components. Fundamentally, they use Web compatible formats, even if intended to run in a desktop environment. This means that the core of the widget is HTML and CSS code which contains the actual content of the widget, namely text, linked images/video or content pulled from a server of Web service. Alternatively, the widget content can be created using Flash, although this may limit its use on some mobile devices. The content is contained within an XML file that provides essential metadata about the widget, such as its name, version, language, etc. The third component of most widgets is JavaScript, which is used to provide the programming logic behind any interactivity in the widget. To make widgets run in different environments typically necessitates only changing elements of the metadata contained in the XML file. There are sites such as Wix.com or Sproutbuilder.com that provide tools for creating widgets through a simple drag and drop interface (Godwin-Jones, 2009).

A powerful feature of widgets is the ability to pull information from a server in order to continuously update data displayed to the user, or to have data pre-loaded to browser memory, so as to be available for quick display as needed. This kind of background server-client interaction is often described as AJAX (Asynchronous JavaScript and XML). There are many AJAX code libraries available, which make the tasks of creating widgets on Web pages using AJAX much easier. There is an effort underway, called OpenAjax Alliance, which aims to make it easier to mix and match components from different AJAX libraries. Another effort to achieve increased interoperability is OpenSocial, from Google. OpenSocial defines a set of APIs for social networking services to be accessed and run within different Web environments, including widgets.

One of the more popular tools for building social networks, Ning, has adopted the OpenSocial standard, as has iGoogle (Godwin-Jones, 2009). In addition, organization-wide information access, and the ongoing requirement to provide value for money, will increase the demand for tools to enhance collaboration and the sharing of information and knowledge. The effort to develop tools that support collaborative working across the workplace will become even more critical as professionals seek to foster, support and record collaborative innovation. The demand for Web 2.0 and beyond in the workplace-using tools such as SharePoint, blogs and aggregate tools such as Pageflakes to encourage collaboration-seems destined to continue (Hill, 2008).

Scope of Study

Rationale of Study

Overview of Study

This study used a five-chapter format to achieve the above-stated research objectives. To this end, chapter one was used to introduce the topics under consideration, provide a statement of the problem, the purpose and importance of the study, as well as its scope and rationale. Chapter two provides a critical review of the relevant and peer-reviewed literature, and chapter three presents the study's methodology, a description of the study approach, the data-gathering method and the database of study consulted. Chapter four is comprised of an analysis of the data developed during the research process and chapter five presents the study's conclusions, a summary of the research and salient recommendations.

Chapter 2: Review of Related Literature

1.

The idea of putting web-application as widgets right on the desktop was invented way back by Microsoft in 1994 (in Windows Nashville which was to be released in 1996). You could use an HTML and JavaScript page as you desktop background which would be running in the Internet Explorer. Microsoft even had a set of Active Desktop widgets. Java applets are dynamically downloaded Java code used to provide processing capability at the user's machine. Java applets make a thin client thick (see discussed of thin/thick clients below) (Proctor & Vu, 2005).

2.

One more technology that played a role in inventing desktop widgets is HTA (HTML application) which runs as a standalone application for that you were required to put you VBScript or JavaScript code and style in a single HTML file and rename it to .hta extension. The HTA is a thin client as opposed to a thick client application; the terms refer to a continuum of processing capability at the user's machine in a client-server environment. With a thin client application, there are few data and little processing capability at the user's machine; with a thick client application, data and computing capability are at, or transferred to, the user's machine. A pure HTML application would be an example of a thin client (Proctor & Vu, 2005, p. 496).

3.

Netvibes has developed its universal widget API (UWA)[6] which is a free and elegant widget framework that uses XHTML for its structure, CSS for styling and JavaScript/AJAX for Data Object Model control. UWA has support for all the major widgets platforms e.g. "Netvibes, iGoogle, Windows Vista, Mac OS X, iPhone."

Historically, a major type of software platform consisted of operating systems that run on personal computers or on servers that are nodes in an organization's network of computers. Software applications such as Microsoft Word that run on operating systems are also installed on these desktop or server computers.42 the software platforms that are central to Web-based businesses reside on servers that are attached to the Internet. Moreover, applications that work with these platforms may reside on other servers that are attached to the Internet. This has resulted in what is sometimes called "cloud computing," in which the software platform and possibly the application primarily reside on several interchangeable computers that the individual user accesses through the Internet. Google's search-based advertising platform is an example. The search engine that individuals use to conduct search queries, much of the software that advertisers rely on for advertising campaigns, and much of the software that publishers rely on for inserting advertisements into their Web pages reside on vast interconnected but indistinguishable "server farms" that Google operates around the world (Evans, 2008, p. 1987).

According to Godwin-Jones (2009), "Like iGoogle, Netvibes uses 'themes' to allow for different looks and also allows creation of widgets. Netvibes allows for users to easily designate pages as private or public" (p. 4).

An example of how to put together a Netvibes site for educational/institutional use is the home page for the Kankakee (Illinois) Public Library. The Bamboo Project blog describes a number of interactive widgets used in a Netvibes PLE. The service that seems to currently be among the most popular with teachers is Pageflakes. In fact, Pageflakes has a specific starting page designed for teachers, which features widgets such as a teaching schedule, Google Research search field, grade tracker, and free access to a file server service. It has an especially large number of widgets available, called "flakes," and features a full, multipage desktop interface. It has some innovative features which have contributed to its popularity, including drag and drop of widgets from one page to another (not only within the same page), and a very nice user interface. Like other integration tools, Pageflakes has recently increased the options for integrating social networking services into its sites (Godwin-Jones, 2009).

4.

The Fox Interactive media has developed a widgets platform called SpringWidgets[9] which works on most of the websites as well as the desktop in contrast to the widget platforms which work today on either websites such as Google Gadgets4, WidgetBox[10] or desktop such as Yahoo Widgets[3].

A listing of featured Google Gadgets is provided in Table ____ below.

Table

Google Featured Gadgets

Gadget Name

Description

Sample User Reviews

Google Calendar gadget

Provides a Google Calendar on the desktop.

1. Definitely could have been more features in this. Quick add and popup alerts especially would be extremely handy for managing the calendar from the desktop completely without having to keep the browser version open.

2. The only complaint is about resize when you change resolutions or screen sizes (netbook - external screen). The gadget size sometimes gets stuck and you have to close and open the sidebar to fix it. Great Gadget.

3. Looks good, except everything on my side bar has a black background except for this calendar.

4. Add Tasks! Would be nice to have the option to see only Weekdays, it would make the display cleaner.

Google Docs

Find, open, and upload Google Docs documents

1. The ability to choose which browser to automatically open docs with would be helpful.

2. Terrible gadget. Doesn't let you upload any files (e.g., image files) like you can with browser Google Docs. Doesn't show shared folders or view in tree structures.

3. Missing too many basics, must have features.

4. Does not recognize PDF files.

YouTube

Watch today's most popular YouTube videos

1. Need to be able to select playlists/subscriptions/favorites.

2. Could definitely be better if it would set the REFFERER header tag as youtube.com / I personally think that piracy is easier from the YouTube site than an official widget. As such I think that you should be able to watch music videos from your desktop.

3. We need to be able to sign into our YouTube account to view subscriptions.

Gmail

Gmail on your desktop

1. Needs to have built in refresh capability. Also, the refresh option should not be right next to the sign out option. If auto-refresh were implemented it would not be a problem.

2. I am running Windows 7 Pro. Have the GMail gadget and the Docs and Calendar on the page. The GMail shows the first 3 e-mails in my inbox. However, right click on the e-mail and select any option. Trash for example and it fails to work. Left click on the message that you want to read and a window slides out to show you a message. This however, only shows a blank box with the word "loading" nothing happens. I like the potential that this thing has if it worked but unfortunately in its current version it won't.

5.

Opera Widgets are also set of widgets which are self-contained and are built using standards such as HTML, CSS and JavaScript. These are cross-platform and cross-device, which means they can be deployed anywhere from desktop to mobiles to TV[3]. According to Opera Widgets (2010), "Opera Widgets are small web programs running outside the browser. Widgets can be both fun and useful, like games or development tools. They float on your desktop for quick and easy access to information or services. There are many kinds of widgets. Examples include games, news feeds, weather information widgets, and web developer tools like color pickers, pixel rulers and others. Opera Widgets are made using standard web technologies, such as HTML, CSS, JavaScript, SVG, AJAX" (What are opera widgets?, para. 2).

6.

The Opera has also proposed a draft to W3C (World Wide Web Consortium)[11] called widgets- the concept of small HTML/CSS/JavaScript application running inside a browser.

Ning is one of a set of Web services that aim to be easily customizable portals for interest groups. Several such services have been designed specifically for educational use, such as Colloquia and Elgg. Both are free, open-sources groupware systems. Colloquia, formerly known as Learning Landscapes, features off-line access to learning materials. Elgg features multipage page views (i.e., for mobile devices), easier theme-based customization and a widget framework.

Other systems have been built to have widgets as their core. This is the case with LAMS, Learning Activity Management Systems. The creators of LAMS have designed the integration of widgets as a means to extend the concept of "learning design" (LD), as exemplified in the IMS LD specification. The main focus in this sense of LD is on collaborative, activity-based learning, rather than on content delivery and formal sequencing. LAMS uses a graphic workflow model for authoring, which is quite different from authoring in a traditional LMS. Authors drag and drop the widget-like "activities" and then determine display and sequencing. LAMS allows instructors to share activities and to easily customize activities to one's own needs (Godwin-Jones 2009, p. 4).

Widget Collections include the following:

1. Clearspring;

2. Etiqueta Language Learning -- Widgets de Netvibes;

3. Gadgets API -- Google Code;

4. Gadgets MS;

5. Language Widgets From Widgipedia;

6. SpringWidgets;

7. Top iGoogle Gadgets Series -- Continuous Learning & Development;

8. Widgetbox;

9. Widgetbox -- Language Widgets;

10. Widgets 1.0: The Widget Landscape; and

11. Widgipedia (Godwin-Jones 2009, p. 4).

A report from Brynko (2007) notes that, "Widget. it's a pint-sized term for a powerful tool that's now making a serious impact on consumer desktops and corporate bottom lines" (p. 26). The folks at Serence, Inc., an Ottawa-based company, have turned their sites to developing a full menu of widgets: Klip-Folio (a free collection for users), KlipFolio Branded Desktop Applications (bringing your company's message to customers), KlipFolio Dashboard for SugarCRM (just for SugarCRM), and KlipFolio Enterprise (giving users "real-time awareness of key performance metrics"). Allan Wille, president and CEO, said, "We're still just scraping the tip of the iceberg." The company, which launched in 2001, has survived and thrived on "sales and hard work" and what he considers "sweat equity." He said he's had plenty of aha moments and oh-no moments over the years, but making the move to focus on the enterprise side of widgets was a solid business decision (Brynko, 2007).

Widgets took consumer desktops by storm when these mini-apps were first introduced. Clocks, calendars, stickies, weather, and flight trackers were among the most popular widgets to populate desktops. In fact, weather is the most popular widget in Serence's KlipFolio collection, according to Fred Dixon, vice president of sales. "Users have 4,000 widgets to choose from in KlipFolio, 90% of which [are] user-contributed. Developers use the toolkit to build their own widgets, and then, upload them to the KlipFolio collection for other widget users to use." And while desktop widgets may not be new, the enterprise version has unleashed a world of possibilities. What's the value to the user? Dixon stepped in with a threefold answer: "Widgets can save money, save time, and produce effective marketing results." Serence's client list reads like a who's who for the Fortune 500: Staples, Lufthansa, IBM, PNC Bank, Monster.com, Comcast, and Kluwer (Brynko, 2007). According to Brynko, "Widgets are easy-to-use miniprograms that deliver information at a glance to users. While widgets have been quite popular on the consumer side as entertaining yet useful desktop applications, Serence has taken the leap into finding opportunities for widgets to provide B2B revenues for data publishers. Enterprises, such as Staples and Lufthansa, have found that branded desktop widgets can offer targeted content to specific users, including providing alerts to the "enterprise consumer" when the product price is right, whether it's a sale, "an Easy button" price search at Staples, or a special airfare offer from Lufthansa (Brynko, 2007, p. 35).

"Today, enterprises are finding two major avenues for widgets," said Wille. "They can be used internally for employee alerts, and they can also be used for marketing purposes that retain and drive traffic to the company's site." For example, when one company experienced an electrical outage, the company's desktop widget alerted 7,500 employees at once about the service disruption. "Ultimately, the alert prevented thousands of calls to the help desk," said Dixon. "For it, this is a lightweight solution that only requires minimal resources." A simple widget can prevent an enterprise from hitting a pain point, he said. To make good decisions, you need good information. And the widget dashboard can be configured to reflect company or individual needs (Brynko, 2007).

Staples' signature Easy Button widget is a mini-app that links directly to products as well as codes and prices with just one click. In the past, companies made appeals to customers via email blasts; today, widgets take the message one step further. The link to any enterprise can be just a click away. A company can push timely, targeted information via its widget to users' desktops quickly. "You can't control email's effectiveness, but with widgets, you have more control over the message and delivery, and you can even personalize the message in the process," Dixon said. He was a bit surprised at how quickly widgets have gained acceptance on the marketing side. Publishers and online businesses have more exposure to RSS feeds, he said. Since widgets are a fairly natural extension of the RSS feeds, adapting to widget use was a relatively quick step. When client Lufthansa sought a site license via Serence's platform, it was "the right time to move and the right opportunity" for the company, according to Dixon. "It's easy to get company data into the product and, when you want to deploy it, we have a product called KlipFolio Enterprise that can help get that information to user desktops." Enterprises can access Serence's product line and tools with a monthly subscription fee that covers licensing, support, maintenance, and daily usage stats (Brynko, 2007).

Any of the KlipFolio widgets can snap into existing systems with little it intervention, making them easy for anyone to install and use, according to Dixon. Dashboard widgets, such as those for Apple's Mac OS X v. 10.4, are created using HTML, cascading style sheets, and JavaScript. For example, the Google Search widget opens the user's browser and does a Google search, and the Wikipedia widget secures the Web pages and displays the content in the desktop dashboard. Users can add widgets by simply opening them through a menu bar and dragging the icon onto the desktop. After loading, the widget is ready for use and can be moved around to wherever the user wants them (Brynko, 2007).

At the 2-day Widget Summit in mid-October 2007 in San Francisco, Dixon sat on the enterprise widget panel along with Jeff Ragusa from Google Apps Solutions. For 250 widget aficionados, the conference was a gold mine of information on building, syndicating, tracking, and monetizing widgets. This was the second annual widget conference; the first one held last year attracted about 100 innovators to the 1-day event.

The enterprise panel was a new addition to the conference lineup. While Ragusa spoke about Google's Web-based platform for search, email, and portals, Dixon focused on "our real-world successes," those customers who are deriving value from a desktop dashboard within the enterprise. "It was great to be able to talk about our customers (Lufthansa, PNC, EMC, and IBM) and their deployments of our product," said Dixon.

From his standpoint, Dixon saw a few themes emerging from the conference:

1. Companies are now springing up to support widget vendors.

2. In 2006, only the widget vendors attended the conference; by 2007, more companies are tracking widgets and managing ads in widgets.

3. No companies seem to be making much money yet.

4. Business models for widgets (companies that are in the business of building widgets) are still being worked out. Developers are starting to move from stand-alone widget platforms and to integrate them with social networks.

5. Enterprise applications are still in their early days. Not many companies have started using widgets in the enterprise yet, but many of the companies attending the conference could see the value of a dashboard and alerting platform.

6. Widget providers are starting to go vertical, such as the gydget platform for entertainment.

7. Facebook is making a big impact. More than half the Web-based widget providers talked about their experiences creating widgets for Facebook, especially rockyou.com and slide.com (Brynko, 2007).

For Dixon, the Widget Summit served as a barometer for the emerging widget industry. He's the widget advocate. "They are small, easy to use, easy to install, and can provide plenty of value to a business," he said. And he's busy watching the horizon on the widget movement from Microsoft, Google, and Yahoo! Desktop. From his standpoint, the industry buzz affirms Serence's focus on the enterprise. "Facebook has widgets, and you're looking at 15 million users," he said. "The community is there already." (Brynko, 2007, p. 26)

A report from Pain (2007) emphasizes that there are some security-related issues related to the use of widgets. According to Pain, "Seemingly innocent widgets - otherwise known as gadgets - are exposing computer users to a whole host of potential hacker attacks. The findings are one of a number uncovered by Finjan's Malicious Code Research Centre (MCRC), whose report reveals the innovative add-ons that add functions to websites contain code that is vulnerable to exploitation by hackers and criminals. Widgets are vulnerable to a breadth of attacks and can be used to endanger a user's PC as part of an attacker's weapon arsenal. Research also suggests new attacks that exploit the insecurities of widgets and gadgets are imminent, and a revised security model should be explored in order to keep users protected. All types of widget environments - OS, third party applications and web widgets - were found to be plagued with inadequate security models that allowed malicious widgets to run (Pain, 2007).

In addition, vulnerable widgets are already available - some in default installations. These findings have already prompted Microsoft and Yahoo to issue security advisories and patches and an overhaul of the security models used to host these widgets and gadgets online, as well as in the operating systems that provide them. As widgets become common in most modern computing environments - from operating system to web portals, their significance from a security standpoint rises. Vulnerabilities in widgets and gadgets enable attackers to gain control of user machines, and thus should be developed with security in mind. This attack vector could have a major impact on the industry, immediately exposing corporations to a vast array of new security considerations that need to be dealt with. Organisations require security solutions capable of coping with such a changing environment with the ability to analyze code in real time, and detect malicious code appearing in innovative attack vectors to provide adequate protection (Pain, 2007).

Since major portals such as iGoogle, Live.com and Yahoo! all offer personalized portals that utilize widgets, the growing popularity of these innovative add-ons is likely to result in their increased use as an attack method. Adequate protection from this new attack is dependent upon a major overhaul of the security model of these environments by the vendors (Pain, 2007). In the meantime, it has advised users to following a number of best practices:

1. Refrain from using non-trusted third party widgets. Widgets and gadgets should be treated as full blown applications, and the use of unknown and untrusted widgets is highly discouraged.

2. Use caution when using interactive widgets. Widgets that rely on external feeds such as RSS, weather information, external application data, etc., may be susceptible to attacks that exploit this trust by piggybacking a malicious payload on such data.

3. Organisations should enforce a strict policy for their users on using widgets and widget engines. Since these are not considered business critical applications, or even productivity enhancers in some cases, the use of widgets and gadgets by corporate users should be limited.

4. Additionally, blocking widget and gadget file types could be enforced at the gateway in order to prevent the downloading of such mini-applications to the corporate network.

To give an idea of the number of widgets and gadgets available there are 3720 available on google.com, 3197 on apple.com and 3959 on Facebook. Many of these applications are already being used by millions of people. Crimeware is used to steal valuable business data that can be turned into money in the burgeoning cybercrime market. Hackers are focusing their efforts on stealing sensitive corporate, customer, financial and employee data, which can then be sold online to criminal elements (Pain 2007, p. 22).

One of the most prominent promoters of widgets is Apple Computer, whose sheer presence in the market with its new Mac OS X Tiger operating system guaranteed attention for this feature. Dashboard, the Apple widget program, keeps widgets hidden until a press of the F12 key brings them to the fore. This is a different approach that is used by Konfabulator; however, a number of users and developers seem to like it: According to this author, "In the slightly more than two months that Tiger has been out, more than 720 widgets have been developed" (Kellner, 2005, p. 8). According to Hane (2005), "First introduced in 2002 for Apple computers, Konfabulator lets developers create miniapplications, or widgets, to monitor weather, stock prices, and other customized information within a Web browser. Konfabulator will display info drawn from Yahoo! services through an animated desktop icon. The software previously cost $20, but Yahoo! is now offering it for free" (p. 7).

This author is also quick to point out that all widgets are not perfect and performance remains uncertain in some cases: "Performance of widgets can be uneven. The lyric-displaying widget, for example, won't scroll no matter how hard I try. The AusWebCam widget won't let me view any of the '100 Australian webcams' it advertises. These hiccups may vanish the next time I start my computer, or they may require a tweak to the widget by the creator. Some widgets are clearly on the edge of software development, but often there are alternatives. One on-screen reference tool hung up often, while another worked superbly" (Kellner, 2005, p. 8).

Because most widgets are "freeware" or "shareware," you can shop around before settling on any item. And because Konfabulator supports Mac, there is an alternative to Dashboard if you don't like it, and vice versa. A caveat about widgets is to guard your screen "real estate." My gallery of Dashboard widgets looks far more crowded on a 12-inch notebook display than it does on a 20-inch desktop screen. It would seem that caution in selecting widgets to fit a given area is in order, or perhaps developing different sets of widgets for different situations (Kellner, 2005, p. 8).

According to Meier (2008), the online social networking revolution has given users the desire for a very personal experience on the web. Websites are frequently the first - or only - point of contact with users, but even with the best usability studies and universal design, the sites can still be confusing. One way to help users navigate our electronic (virtual) libraries is to be there. An instant response is what they want and need. Asynchronous methods such as email can fix problems later, but a synchronous conversation will help someone at their point - and time - of need. Chat, or instant messaging, provides this method for talking to users. Libraries have been using chat for quite some time, from bulletin board systems to enterprise virtual reference software. However, only recently has this live interaction between libraries and users truly been "live" (Meier, 2008, p. 10). Through the development of more web-based applications, chat can now run in simple interfaces directly inside web browsers using widgets. Widgets are small, "replaceable parts" of webpages. Chat widgets come in a variety of shapes, sizes, and functionality. How they are used on library websites affects the public interface online. But chat widgets also have far-reaching effects on daily work and organizational culture. (Meier, 2008, p. 10).

It's easy enough to create a chat widget. Most instant messaging services will generate the JavaScript code based on a few parameters. This creates a window that looks similar to the traditional chat client application. There is an indication that the "librarian is in" or an "away" message shown. The user can immediately begin typing in the window to send messages from a default guest identity or can specify a nickname. Since the technology was so easy to use and some librarians already had chat accounts, chat widgets caught on very fast. They were added to personal websites, blogs, and individuals' pages. The biggest early winner was Meebo, which also offered a service that integrated multiple chat accounts into a single web interface. Other popular widgets are associated with IM services such as AIM and Google Talk, or new companies such as Plugoo. The key is that each chat widget is tied in some way to an account with a service. This is important because each service works differently and offers various features. (Meier, 2008, p. 10).

The appearance and placement of the widget involves identifying where it goes and how the user wants it to work. Users can place and size a widget so it fits on their website and is still very visible. The space and location should show that the service is available but not distract from the content of the page. This is one reason why many websites link to a separate page or pop-up window for their chat widgets. Another reason for this strategy is that many widgets reset the session if the user navigates away from the page. Think about how users will see and use the service; for quick messages and comments this would not be a problem, but for an extended consultation the conversation is important. If you can, set a default greeting in the widget to advise the user to "please stay on this page." (Meier, 2008, p. 11).

The customizable color of a widget should use eye-catching hues but should draw from the website's color palette to fit with the design of the page. The title of the widget and the account name are the first greeting that the user will see, even before sending a message.

The most elementary type of chat widget is that of an individual in the library. It is very suitable for pages that already contain contact information such as staff directory entries, personal newsletters and blogs, or services with a specific person responsible. The chat widget can be placed alongside current phone number and email information so that alternate modes of communication are offered in the same place. Users can have a very personal experience while chatting with an individual, so this opportunity should be taken to configure identity into the widget messages or chat account. In a small library a single person could be responsible for all chat work, so his or her identity can also be that of the institution. From the staffing side, there are a few simple issues that need to be addressed. The most important is how often the individual will be online and how they handle incoming messages. Another key issue is that this type of widget does not scale well to larger websites, since the single individual needs to be familiar with the information for every page containing the widget. The more portions of the website that supply this service, the more time and expertise is expected from the staff. (Meier, 2008, p. 11).

Another type of use is a single chat account shared by several people who work closely together. The username and password for this account are shared among multiple people, and in some cases the account is used only on a shared computer. These widgets are useful on more pages, since institutional knowledge is shared and can be available more frequently since it is not dependent on an individual. The identity of the chat account is frequently less personal, since different "voices" are speaking to the user with various experiences and styles. The widget should be configured to represent the group in name and when deciding which pages use it. Not only can webpages for the group as a whole use the widget, but individuals and specialized pages can also draw on the increased strength of this model. (Meier, 2008, p. 11).

A close relative of the shared chat account is a shared widget with multiple accounts. These widgets, such as those tied to Meebo Rooms, can be placed on websites and work much like chat rooms, where users can begin chatting instantly. Some of the features of single account widgets, such as "away" messages and personal identity, are lost in widget rooms. It is sometimes difficult for users to tell if anyone is there to answer their question, unless the library accounts in the room have names that indicate they are not simply other users. There is no privacy to the rooms either, since more than one user can enter the same widget simultaneously. Despite these concerns, there are many advantages. (Meier, 2008, p. 11). One is that multiple accounts can staff this service without the need to share a single login or computer, thus preventing difficulties in overlap of shifts. More than one staff member can be brought in to help the user as well, helping to triage or refer specialized questions to the best person. The personalized account names also give the user a more engaging experience more similar to the one-on-one individual chat session. (Meier, 2008, p. 11).

These levels of chat service can be used simultaneously in one website to produce a distributed, multitiered service. If individuals have personalized accounts, a single-user widget can be set up on all pages where they are the contact. In addition, on most other pages a shared widget, such as the room or a shared account, can be used. The benefits are that the service is active for longer periods of time, since the staffing time can be distributed or shared. (Meier, 2008, p. 11).

Staff can also share expertise and collaborate to better help users despite any physical distances. At larger institutions, each of these smaller collaborative groups can correspond to a similar location such as a branch library, or to a group with a similar userbase such as science librarians. In these library systems there may also be a need for "higher level" chat service, which can provide service to all the main pages of the site. The role of this service is to address the information needs of all users, which can focus less on expertise and more on general knowledge and the ability to make referrals. (Meier, 2008, p. 11).

A smooth referral transition is more difficult for widgets since the user is chatting from one specific page. The "rooms" can most easily be used to bring in another staff specialist without the need to end or restart the session. The alternative is to transition the user to another website where he or she can be introduced to another online staff member. The more integrated the service is in each webpage and into staff practice, the easier users will find the interaction. Maintaining the consistent look and feel of a website by placing these widgets (or the link to them) in similar places can also increase user familiarity and comfort. Remember that the distinct identity of the chat widget and account can allow you to differentiate between each service point and the expertise or scope the staff have. "Away" messages and the default message should be carefully worded to give the user an accurate expectation while remaining welcoming. Since that "away" message isn't what users want to see, staffing is very important to providing these services. (Meier, 2008, p. 11).

How can these services be staffed so users don't see "offline" or "away" messages? The single person staffing model is the least formalized, though there are a number of decisions to make about when to be online. One approach is to set an hour when the individual will be consistently available, which has the advantage of reliability and usually results in few total live hours. The peak use of the pages with widgets can identify the best times to be available, which may be outside standard working hours. The alternative is to have the service constantly on when working at a computer, putting up "away" messages when leaving or when your attention is diverted. Since the user is chatting from an anonymous account, it is very difficult to follow up if you miss a conversation. Take advantage of features that allow users to send an email, or have your "away" messages encourage them to leave contact information if they want a follow-up. A single staff member can be on multiple widgets if the others are "rooms" or if the chat accounts are aggregated into one interface. (Meier, 2008, p. 11).

For the single shared-account widget there can be only one staff member logged in at a time. These widgets can be staffed with techniques that should be used to best fit the organizational culture. A common example is to tie the staffing of chat to a public service desk, so that whenever there is someone available to help in person, he or she is also available online. The benefits of a set schedule, reliable availability, and tasks that "jive well" are weighed against the likelihood of distractions and split attention between the services. Staff training in how to chat quickly and establish priorities can go far to help set a balance that works within the group. If the use of individual chat accounts is common and can be relied upon, a widget that allows multiple accounts such as "rooms" can be used to allow overlap of staffing, referrals, and more flexibility in staffing time. The pitfalls remain frequent downtime and a lack of indication that all staff members are away. These methods are best suited to websites where staff can communicate informally often enough to share experiences and transmit information about staffing changes. (Meier, 2008, p. 11).

For large institutions, the main pages on a website often require more reliable services and formal coordination to be effective. A team drawn from different areas in the organization or a group specialized in serving general users are two staffing models that can address a general user's needs. Having a large group with time committed allows the service to have extended hours and the users to experience continuity. If a similar service, such as email, already exists, the structure and operation of that team could accommodate chat services fairly easily. It can be difficult to coordinate communications among multiple groups operating in each paradigm, but the most global can play a key role in communication during live referral and offline planning. (Meier, 2008, p. 11).

The use of chat widgets can be as simple or confusing as the website itself, but it helps to make choices that fit the web design and the organizational culture. Too often change is driven from outside, which can make technology changes more challenging. Libraries are already institutions grounded in helping their users, and chat widgets can be another bridge of communication. Assessment in different organizations will show a diversity of frequency and depth of interaction with users via chat, and in an era of web-based social interaction the results could be impressive. Webpages aren't the only place chat widgets have found a use in libraries. A great example of service at the point of need is a chat widget appearing after an unsuccessful library catalog search. In websites and web-based interfaces where there is opportunity for point-of-need contact with users, the chat widget can be a powerful communication tool. (Meier, 2008, p. 11).

Cross Platform Applications

One of the best -- and not surprisingly most popular cross platform applications, is Apache Lucene, described by the designers as "a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform. Apache Lucene is an open source project available for free download" (Apache Open Source Foundation, 2010, para. 1).

Likewise, wxWidgets is a C++ library that lets developers create applications for Windows, OS X, Linux and UNIX on 32-bit and 64-bit architectures as well as several mobile platforms including Windows Mobile, iPhone SDK and embedded GTK+. It has popular language bindings for Python, Perl, Ruby and a number of other languages. Unlike other cross-platform toolkits, wxWidgets gives its applications a truly native look and feel because it uses the platform's native API rather than emulating the GUI. it's also extensive, free, open-source and mature (wxWidgets, 2010). A cross-platform application that uses wxWidgets known as GeoDa that was reported under development by Anselin, Syabri and Kho (2008) notes that, "GeoDa is a work in progress and still under active development. This development proceeds along three fronts. First and foremost is an effort to make the code cross-platform and open source. This requires considerable change in the graphical interface, moving from the Microsoft Foundation Classes (MFC) that are standard in the various MS Windows flavors, to a cross-platform alternative. The current efforts use wxWidgets, which operates on the same code base with a native GUI flavor in Windows, MacOSX and Linux/Unix. Making the code open source is currently precluded by the reliance on proprietary code in ESRI's MapObjects. Moreover, this involves more than simply making the source code available, but entails considerable reorganization and streamlining of code (refactoring), to make it possible for the community to effectively participate in the development process" (p. 5).

A second strand of development concerns the spatial regression functionality. While currently still fairly rudimentary, the inclusion of estimators other than ML and the extension to models for spatial panel data are in progress. Finally, the functionality for ESDA itself is being extended to data models other than the discrete locations in the "lattice" case. Specifically, exploratory variography is being added, as well as the exploration of patterns in flow data (Anselin et al., 2008, p. 6). Based on its initial rate of adoption, there is a strong indication that GeoDa is indeed providing the "introduction to spatial data analysis" that makes it possible for growing numbers of social scientists to be exposed to an explicit spatial perspective. Future development of the software should enhance this capability and it is hoped that the move to an open source environment will involve an international community of like-minded developers in this venture (Anselin et al., 2008, p. 6).

A recent report from Clay (2009) notes that in November of 2007, Google shocked many when it announced that it was entering the mobile phone market with an ambitious plan. Google's plan had two prongs: (1) Android, its open-source platform for mobile devices, and (2) the Open Handset Alliance (OHA), which is a consortium of companies from various phases of the wireless industry who are "strongly committed to greater openness in the mobile ecosystem." In particular, Android would be a groundbreaking offering, "built from the ground up with the explicit goal to be the first open, complete, and free platform created specifically for mobile devices." Android offers all the necessary requirements for operators, handset manufacturers, and developers to create services, devices, and software all while working on the same operating system. Google and other members of the OHA believe that Android will play a significant role in developing breakthroughs in the mobile market. (Clay, 2009, p. 716)

Members of the OHA, as well as outsiders, believe that Android can revolutionize the way that innovations come about in the wireless industry. The OHA believes that the open nature of Android will lead to faster discoveries and more timely responses to the needs of consumers. These factors should lead to less expensive handsets and applications, as well as making these products easier to use and more consumer friendly. Lower-cost handsets presumably would mean lower service costs because network operators would no longer need to subsidize handsets. Handset manufacturers potentially would be able to spend less time on the development of handsets, and be better able to differentiate their products from their competitors. Developers will be able to create new applications rapidly because of the "comprehensive platform that gives them full access to the device ... [and] rich built-in libraries that bring powerful and well-developed functionality that can easily be integrated into applications." (Clay, 2009, p. 716)

The OHA has already provided examples of things that Android will be capable of doing, and developers are already salivating at the myriad of possibilities. The OHA has stated that "an application can call upon any of the phone's core functionality such as making calls, sending text messages, or using the camera," which means the innovation possibilities are endless. Potential applications include utilizing unused cell phone computing power to create supercomputers, friend-finding applications using cell phone location technology, and services that track the location of buses to alert riders when their bus is near the stop. Importantly, Android does not make any distinction between the phone's core applications and those developed by outsiders. This means that users have full power to customize their phone to whatever specifications they desire. Many anticipate that Android will work on other consumer electronics, allowing people to take advantage of the dormant computing power of their televisions and other electronic devices. (Clay, 2009, p. 716)

Android is not devoid of potential pitfalls. Many believe that Android will not be successful without broad adoption by handset manufacturers as well as the public. Many also fear that the open nature of Android will lead to the same problem with viruses that infect personal computers. There is also speculation that companies will be reluctant to use Android because the process is so different from the normal method of development (Clay, 2009, p. 716). In addition, "[c]ompanies that build and sell Android phones could always choose to revise it to lock out any tinkering by their customers." Android has not impressed everyone, as it neither supports Bluetooth technology nor has Wi-Fi capability. Others believe that Google's lack of a firm business plan concerning Android makes its viability suspect; in the words of Sun Microsystems Vice President James Gosling, "[u]nless the day comes when they say what they're going to do with it, it's just a bag of code sitting out there." It is hard to deny that the OHA and Android will benefit consumers. While some may question whether Google will ultimately be successful, even the announcement of Google's endeavor has spurred other companies to become more open. Android offers consumers what might be their best chance to experience complete openness in the wireless industry (Clay, 2009, p. 716).

A representative list of currently available cross-platform applications, many of which such as Firefox, OpenOffice and Google Earth have enjoyed enormous popularity in recent years, is provided in Table __ below.

Table

Representative Cross-Platform Applications: Windows

Description

Audacity

This is a free, easy-to-use audio editor and recorder.

HandBrake

This application is a multithreaded DVD to MPEG-4 ripper/converter.

Thunderbird

Simple to use, powerful, and customizable, Thunderbird is a full-featured email application.

GIMP

This application is used for tasks such as photo retouching, image composition and image authoring.

Inkscape

This is an Open Source vector graphics editor, with capabilities similar to Illustrator, Freehand, CorelDraw, or Xara X.

Pidgin

This application is a multi-protocol instant messaging (IM) client.

Google Earth

This application combines satellite imagery, maps and the power of Google Search to put the world's geographic information at users' fingertips.

OpenOffice.org

OpenOffice.org is a multiplatform and multilingual office suite and an open-source project. Compatible with all other major office suites, the product is free to download, use, and distribute.

Password Gorilla

This application manages user names and passwords in a securely encrypted file. A single 'master password' is used to protect the file.

RSS Owl

RSSOwl allows users to gather, organize, update, and store information from any RSS-compliant source in a convenient, easy to use interface.

Firefox

The award-winning, free Web browser is better than ever. Browse the Web with confidence - Firefox protects you from viruses, spyware and pop-ups.

Nvu

A complete Web Authoring System to rival programs like FrontPage and Dreamweaver.

Source: Cross Platform Applications.org (2010) at http://www.crossplatformapplications.org/

In fact, Firefox and Open Office are among the top ten choices for versatile cross-platform applications recommended by Wallen, senior editor for Tech Republic. These top ten selections and Wallen's supporting rationale are described further below:

1. Firefox. There is little doubt that one of the most popular cross-platform applications is Firefox. No other browser has come as close to usurping Internet Explorer as the reigning king of the Web as Firefox has. A good cross-platform browser has become essential, since so many applications and services are now handled online. Thankfully, the rise in popularity of cross-platform browsers like Firefox has helped ensure that companies don't lock down their sites and services to a single browser.

2. OpenOffice. Applications like OpenOffice enable those who can't afford Microsoft Office to function in a business (business-like or educational) environment. OpenOffice is one of the pillars of the open source communities and is one of the most important cross-platform applications available.

3. TeamViewer. If you do any support, you know the importance of a good application that allows you to remote into a client's machine. There are plenty of them out there; some of them are cross platform by way of being used within a browser. But few of them are truly cross-platform applications. TeamViewer is one such beast. With a client for Windows, Linux, Mac, and iPhone, there will rarely be a client or situation you can't support.

4. Adobe Reader. There's no shortage of PDF readers out there. And for every platform, there is a unique PDF reader. But none of those unique viewers offers the quality and ease of use that Adobe Reader provides. It is the standard for PDFs, and with clients for just about every platform, it's a clear winner over the competition.

5. Chrome. Never before has a Web browser caused such a buzz. Not only did Google Chrome turn heads, but it also gave the competition reason for concern. Google Chrome is fast (the Linux version has been tested as the fastest rendering Web browser on any platform), it is stable, extensible, and as cross platform as any other browser (not called IE).

6. Thunderbird. If you're looking for a stand-alone email client and you need it to traverse the landscape of all your platforms, look no further than Thunderbird. Thunderbird is a true emailers' email client. With its slick, tabbed interface, you will find no email client that looks and performs as well across your operating systems. And like its cousin, Firefox, Thunderbird is theme-able and has a vast repository of plug-ins to make it even more useful.

7. Apache. Apache is one of the most-used Web servers in the world. When you add to that the fact that you can use Apache on Windows, Linux, and Mac, it's hands down the winner among Web servers. And to top it off, Apache is free. How can the competition win against such a mighty contender?

8. MySQL Workbench. Although this tool is new to the world, you will not find a better database administration tool anywhere for any platform. With this MySQL admin tool, you can work your MySQL magic on all platforms. The only downfall? For some platforms, you have to use the development release. But according to my experimentation, the development release is as stable as any other database admin tool available.

9. VMware. Although I am a HUGE fan of VirtualBox (which is also cross platform), VMware can be used across platforms for just about any reason. From a single user wanting to experiment with other OSes to massive enterprise rollouts, VMware can do pretty much anything. it's proprietary, but it's worth every penny.

10. VLC. You will be hard pressed to find a more flexible, useful media player than VLC. VLC is available for Linux, Mac, Windows, *BSD, UNIX, Solaris, and more. It can play nearly everything and even do it across a network. It has a tiny footprint, it is open source, and it's free. What more do you want in a media player? (Wallen, 2010, para. 4-5).

Other applications are designed to allow for real-time collaboration across time zones, including the following:

1. Calendars -- a calendar is one tool that any team needs in order to keep track of dates-due dates, milestone dates, group meeting dates, etc. If people on your team use a social calendar already, you will also be able to see when team members are available for synchronous working-their schedules will already be in the calendar for others to consult when setting up meetings, chat sessions, or the like. Two of the more popular choices in this area are 30 Boxes (www.30boxes.com) and Google Calendar (www.google.com/calendar). Both of them offer sharing, multiple editors, support of the iCal format, and RSS feeds of the data stored within them.

2. Bookmarking Sites-Social bookmarking sites, such as Delicious (http://delicious.com) and Google Bookmarks (www.google.com/bookmarks), give teams a place to store online citations and data. They are an excellent way to share information and keep a repository of data, research, references, and easy links to the projects own resources. Delicious gave collaborative teams the option to share data with teammates using the "foridelicioususer name" convention. Tagging a link "for" another user lets that user see the link in their own Delicious account and gives them an easy way to save it themselves. The new version of Delicious gives you the ability to tag a link for another user with a single click -- the foridelicioususername convention still works, but if you forget it, there is now a list of people in your network available below the posting form to whom you can send links without the arcane syntax of the "for" command.

3. Cloud-Based Social Desktops -- the cloud-based social desktop is a new tool that is becoming more popular with the proliferation of highspeed connections to the internet. These social desktops offer a single desktop area where applications, data, and utilities can be accessed by all the collaborators in a familiar way. They offer most of the applications mentioned so far-shared calendar, messaging, office software -- and they offer them all in a unified environment. Two of the options in this category are CentralDesktop (www.centraldesktop.com) and MyWebDesktop (www.mywebdesk top.net).

4. Wikis-Wikis were created to be collaborative in nature. They lend themselves perfectly to collaborative work. Some of the current wiki offerings give you more than just an easy way to create documents with automatic versioning and commenting built in. Both Wetpaint (www.wet paint.com) and PBWiki (www.pb wiki.com) are remotely hosted-so you do not have to worry about maintaining the server or the software -- and free for basic accounts. They provide a centralized, structured repository for documents either created on the wiki or uploaded to the wiki. They also provide an easy editing interface for documents created on the wiki, as well as built-in rollback and revision features (Hastings, 2008, p. 16).

All of these tools can be used for a variety of different kinds of projects. The Library of Congress recently used Flickr as a platform for providing photos they had archived to the public. Many organizations have used wikis, blogs, and other social tools to facilitate the organization of training workshops or conferences. Others are using social sites and tools without collaborative projects in mind-just as a space to store documents, ideas, and assets "in the cloud," as a sort of backup solution that requires little intervention from the user (Hastings, 2008).

Chapter 3: Methodology

Description of the Study Approach

1.

Literature review on how the other cross platform widgets or applications make use of the available cross platform development techniques and APIs such as Netvibes, FLTK, wxWidgets, iPhone, Android, Google Gadgets, etc. According to Fraenkel and Wallen (2001), "Researchers usually dig into the literature to find out what has already been written about the topic they are interested in investigating. Both the opinions of experts in the field and other research studies are of interest. Such reading is referred to as a review of the literature" (p. 48). Wood and Ellis (2003) identified the following as important outcomes of a well conducted literature review:

1. It helps describe a topic of interest and refine either research questions or directions in which to look;

2. It presents a clear description and evaluation of the theories and concepts that have informed research into the topic of interest;

3. It clarifies the relationship to previous research and highlights where new research may contribute by identifying research possibilities which have been overlooked so far in the literature;

4. It provides insights into the topic of interest that are both methodological and substantive;

5. It demonstrates powers of critical analysis by, for instance, exposing taken for granted assumptions underpinning previous research and identifying the possibilities of replacing them with alternative assumptions;

6. It justifies any new research through a coherent critique of what has gone before and demonstrates why new research is both timely and important.

2.

Collect appropriate amount of cross platform application code from open source repositories such as SourceForge.net, Free Software Foundation and Apache Open Source Foundation.

3.

Compare the literature on how these cross platform applications make use of the available APIs and toolkits vs. how these APIs and toolkits are actually implemented.

4.

Identify the problems and opportunities that exist with the way cross platform applications are actually written using several available methodologies, patterns and standards for designing and programming.

5.

Evaluation of the tools for deploying the application for different platforms. The mobile may use for example two platforms; one will be iPhone for which the researcher will be using objective-c. The reason for which this language is selected by apple for the development of applications for mac and iPhone is justified by a website: http://www.roseindia.net/iPhone / objectivec/why_objective_c.shtml as it is an object-oriented extension of ANSI C. And hence any C. program can be used with this framework. It supports an open dynamic binding which will help in creating a simple architecture to interactive user interface.[8] "To write an iPhone application, I will have to use Xcode and the iPhone SDK." [16]

6.

For another mobile platform which will be Android, the researcher will be using Java. This scenario will make use of the Android SDK which provides tools and APIs necessary to begin developing applications on Android platform using Java programming language. "Android has the potential for removing the barriers to success in the development and sale of a new generation of mobile phone application software." [15] Here I'll be using the concept of AppWidget host which is a component that can contain widgets. "Android allows applications to publish views to be embedded in other applications." [13]

7.

"These views are called widgets and are published by AppWidget providers." [14] These application widgets will be the set of available widgets in the market from which user can choose the desired ones.

8.

The desktop widget application will be developed only for one platform Windows which will be coded using c#. The IE can be proved out to be a perfect host for desktop widget applications. By modifying its User Interface, I can create a generic widget container. The customization of embedded IE browser can be done by removing the scroll bars and 3D border by implementing the IDocHostUIHandler interface[2].

9.

For the web widgets or even the desktop widgets (for Windows Vista or later) a manifest file needs to be created with the gadget settings and the HTML file with the gadget code, CSS styles and JavaScript; then zipping them into one archive and renaming them to .gadget or .wgt extension makes them eligible for getting installed on Windows platform, these widgets use Internet Explorer 8 core to run them, so I can get full support for CSS2.1 and the goodness of JavaScript.

10.

The standard configuration of the widgets within the micro engine will be maintained by the use of a config.xml file which will specify some configuration information.

11.

The cross platform testing of all the widgets will be carried out on each and every platform. The testing strategy will be decided at a later stage, depending upon the design pattern used.

12.

Discussion of the testing results will be carried out.

13.

Report on the results will be generated by writing a thesis.

Data-gathering Method and Database of Study

. This approach is also congruent with the American Psychological Association's Publication Manual (5th ed.), which states, "Word tables present qualitative comparisons or descriptive information. For example, a word table can enable the reader to compare characteristics of studies in an article that reviews many studies, or it can present questions and responses from a survey or shown an outline of the elements of a theory. Word tables illustrate the discussion in the text" (p. 161).

Chapter 4: Data Analysis

Table

Desktop and Web Widgets

Author/Date/Title/Publication

Key Points

Comments

SourceForge (2010) at http://sourceforge.net/projects/widget/

A cross-platform desktop widget framework for developing widgets and simple desktop utilities that look and respond professionally and universally across all desktop operating systems.

Widgipedia (2010) at http://www.widgipedia.com/widgets/search/Mobile+Widgets

A widget is a small application that runs either on your desktop or in a Web page. A Web widget is a piece of code that can be inserted identically in any Web page (such as your personal blog, a MySpace page, an eBay auction or an online store) where it will stand as a standalone section. Most common Web widgets are Flash, JavaScript or Java applets. You can see the Web widgets by simply opening the containing page in your browser. By contrast, a desktop widget is a small application that runs on your desktop.

Users typically find widgets easier to use than regular applications and developers usually find them easier to code. In many cases, but not always, to run desktop widgets you will need to first download and install an "engine."

Kellner, Mark. Widgets Put Fun in Data Access. Newspaper Title: The Washington Times. Publication Date: July 5, 2005. Page Number: C08

Desktop "widget" programs go out to the Internet and pull down desired information, then display it in a format that is generally easy to read. Many of these widgets are reference-oriented, others are just fun, and some are goofy. Most are free, although some - or the program used to run them - can cost a few dollars.

Konfabulator (www.konfabulator.com) is the granddaddy of all this: It publishes a program for Windows and Mac that allows you to put as many of these as you like on the desktop. Konfabulator's widgets appear permanently on a computer desktop, although they can be closed at will via the menu bar and other commands. Well more than 1,000 widgets are available, most for Mac but many for Windows, and include some useful ones such as a gas-price tracker, a countdown calendar to the debut of the next Xbox video game machine, and webcams for traffic spots, surf locations and the like.

Table

Cross Platform Applications

Author/Date/Title/Publication

Key Points

Comments

Widgipedia (2010) at http://www.widgipedia.com/widgets/search/Mobile+ Widgets

The term "widget platform" represents the technology (operating system and engine) behind a certain widget and it usually refers to desktop widgets.

Desktop widgets are seldom cross-platform, so to run a certain widget. users will probably need to install the engine for that platform (such as Yahoo! Widgets Engine).

Fast Light Toolkit (2010) at http://www.fltk.org/

FLTK (pronounced "fulltick") is a cross-platform C++ GUI toolkit for UNIX®/Linux® (X11), Microsoft® Windows®, and MacOS® X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL® and its built-in GLUT emulation.

FLTK is designed to be small and modular enough to be statically linked, but works fine as a shared library. FLTK also includes an excellent UI builder called FLUID that can be used to create applications in minutes.

FLTK is provided under the terms of the GNU Library Public License, Version 2 with exceptions that allow for static linking.

Fast Light Toolkit (2010) at http://www.ohloh.net/p/fltk

FLTK is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and Mac OS X. It provides modern GUI functionality without the bloat, and supports 3D graphics via OpenGL and its built-in GLUT emulation. FLTK is designed to be small and modular enough to be statically linked, and also works fine as a shared library.

FLTK also includes an excellent UI builder called FLUID that can be used to create applications in minutes.

Antitrust Issues Raised by the Emerging Global Internet Economy. Contributors: David S. Evans - author. Journal Title: Northwestern University Law Review. Volume: 102. Issue: 4. Publication Year: 2008. Page Number: 1987+

A software program is a "platform" if it provides services on which other Web software can rely. Typically a software platform includes modules of code that other software programs can access through application programming interfaces (APIs). By relying on these APIs, software developers can obtain services that enable them to write software programs that are complementary with the software platform and useful to those who rely on the software platform.

By relying on Facebook's APIs, Scrabulous provides a game for Facebook users and thereby makes Facebook a more valuable social networking site for those users.

Creating a Librarian's Info-portal with Netvibes and Rss. Contributors: Rachel Singer Gordon - author, Michael Stephens - author. Magazine Title: Computers in Libraries. Volume: 27. Issue: 4. Publication Date: April 2007. Page Number: 44+.

Netvibes helps users easily configure their portal -- and use it on any computer. Access in work area, at the reference desk, at circulation, or even at home is possible with this Web 2.0 tool, which will aggregate new posts and information automatically. Clicking on a subject line will display the full story within the portal. Clicking on the title in display mode will open a new window to the original post.

Netvibes displays a starter page with default options and the following text:

This is your personalized page, you can now modify everything: move modules, add new RSS/ATOM feeds, change the parameters for each module, etc. Your modifications are saved in real-time and you'll find your page when you get back on Netvibes.com. If you want to be able to access your page from any computer, you can sign in (at the top right) with your email and a password.

The iPhone and the DMCA: Locking the Hands of Consumers. Contributors: John Haubenreich - author. Journal Title: Vanderbilt Law Review. Volume: 61. Issue: 5. Publication Year: 2008. Page Number: 1507+.

Wireless carriers can use software locks, hardware locks, or both to disable a handset from being used on any network except the one for which it was purchased. Most handset makers, such as Motorola and Nokia, manufacture almost identical versions of their phones for different networks, making, for example, a new T-Mobile customer purchase a different version of the same phone he used on the at&T network. As a result, most customers choose phones based on the network they plan to use. The practice of linking a specific cell phone handset to a particular network did not, of course, originate with Apple and at&T. T-Mobile, Verizon, and Sprint also lock handsets to prevent them from working on competitors' networks. A network provider may sometimes unlock a customer's handset so that the customer can take the phone overseas to use on a foreign network, but generally, providers operate according to a business model that subsidizes expensive handsets and locks customers into multi-year contractual commitments. The iPhone, for instance, will not appear on networks other than at&T, nor will at&T unlock it for use overseas. If consumers want iPhones, they must use the at&T network and be willing to use locked phones, with all their inherent limitations.

In contrast, an unlocked cell phone offers considerably more freedom than a locked phone: it is available for use on any cellular network with which the customer has an account. If a consumer has an unlocked iPhone, he can use the iPhone on an account with TMobile, O2 (a British carrier), Vodaphone (a European carrier), or any other carrier using GSM technology. Generally, phone owners replace the SIM cards (which carry users' phone numbers and other personal information) in their phones whenever they switch networks. With multiple SIM cards and multiple accounts, an owner can use the same handset on multiple networks. Alternatively, a user could close his account with one network, purchase a new SIM card, and switch to another network. The desire to achieve this level of portability and freedom prompted interested groups and individuals to enter the race to unlock the iPhone, a race that was won less than two months after the phone's release.

You’re 80% through this paper. Sign up to read the full paper.

Sign Up Now — Instant Access Already a member? Log in
130,000+ paper examples AI writing assistant Citation generator Cancel anytime
Cite This Paper
PaperDue. (2010). Cross Platform Mobile and Web. PaperDue. https://www.paperdue.com/essay/cross-platform-mobile-and-web-12505

Always verify citation format against your institution’s current style guide requirements.