UKOLN Cultural Heritage Documents » Web Technologies http://blogs.ukoln.ac.uk/cultural-heritage-documents A commentable and syndicable version of UKOLN's cultural heritage briefing documents Fri, 17 Sep 2010 09:32:22 +0000 en-US hourly 1 http://wordpress.org/?v=3.5.2 An Introduction to Cloud Computing http://blogs.ukoln.ac.uk/cultural-heritage-documents/2010/09/02/an-introduction-to-cloud-computing/ http://blogs.ukoln.ac.uk/cultural-heritage-documents/2010/09/02/an-introduction-to-cloud-computing/#comments Thu, 02 Sep 2010 09:41:18 +0000 Brian Kelly http://culturalheritagedocs.wordpress.com/?p=162 What is Cloud Computing?

Cloud computing is an umbrella term used to refer to Internet based development and services. The cloud is a metaphor for the Internet. A number of characteristics define cloud data, applications services and infrastructure:

  • Remotely hosted: Services or data are hosted on someone else’s infrastructure.
  • Ubiquitous: Services or data are available from anywhere.
  • Commodified: The result is a utility computing model similar to traditional that of traditional utilities, like gas and electricity. You pay for what you would like.

Software as a Service (SaaS)

SaaS is a model of software deployment where an application is hosted as a service provided to customers across the Internet. SaaS is generally used to refer to business software rather than consumer software, which falls under Web 2.0. By removing the need to install and run an application on a user’s own computer it is seen as a way for businesses to get the same benefits as commercial software with smaller cost outlay. Saas also alleviates the burden of software maintenance and support but users relinquish control over software versions and requirements. They other terms that are used in this sphere include Platform as a Service (PaaS) and Infrastructure as a Service (IaaS)

Cloud Storage

Several large Web companies (such as Amazon and Google) are now exploiting the fact that they have data storage capacity which can be hired out to others. This approach, known as ‘cloud storage’ allows data stored remotely to be temporarily cached on desktop computers, mobile phones or other Internet-linked devices. Amazon’s Elastic Compute Cloud (EC2) and Simple Storage Solution (S3) are well known examples.

Data Cloud

Cloud Services can also be used to hold structured data. There has been some discussion of this being a potentially useful notion possibly aligned with the Semantic Web [2], though concerns, such as this resulting in data becoming undifferentiated [3], have been raised.

Opportunities and Challenges

The use of the cloud provides a number of opportunities:

  • It enables services to be used without any understanding of their infrastructure.
  • Cloud computing works using economies of scale. It lowers the outlay expense for start up companies, as they would no longer need to buy their own software or servers. Cost would be by on-demand pricing. Vendors and Service providers claim costs by establishing an ongoing revenue stream.
  • Data and services are stored remotely but accessible from ‘anywhere’.

In parallel there has been backlash against cloud computing:

  • Use of cloud computing means dependence on others and that could possibly limit flexibility and innovation. The ‘others’ are likely become the bigger Internet companies like Google and IBM who may monopolise the market. Some argue that this use of supercomputers is a return to the time of mainframe computing that the PC was a reaction against.
  • Security could prove to be a big issue. It is still unclear how safe outsourced data is and when using these services ownership of data is not always clear.
  • There are also issues relating to policy and access. If your data is stored abroad whose FOI policy do you adhere to? What happens if the remote server goes down? How will you then access files? There have been cases of users being locked out of accounts and losing access to data.

The Future

Many of the activities loosely grouped together under cloud computing have already been happening and centralised computing activity is not a new phenomena: Grid Computing was the last research-led centralised approach. However there are concerns that the mainstream adoption of cloud computing could cause many problems for users. Whether these worries are grounded or not has yet to be seen.

References

  1. Software as a service, Wikipedia, <http://en.wikipedia.org/wiki/Software_as_a_service>
  2. Welcome to the Data Cloud, The Semantic Web blog, 6 Oct 2008, <http://blogs.zdnet.com/semantic-web/?p=205>
  3. Any any any old data, Paul Walk’s blog, 7 Oct 2008, <http://blog.paulwalk.net/2008/10/07/any-any-any-old-data/>
]]>
http://blogs.ukoln.ac.uk/cultural-heritage-documents/2010/09/02/an-introduction-to-cloud-computing/feed/ 0
An Introduction To AJAX http://blogs.ukoln.ac.uk/cultural-heritage-documents/2010/09/02/an-introduction-to-ajax/ http://blogs.ukoln.ac.uk/cultural-heritage-documents/2010/09/02/an-introduction-to-ajax/#comments Thu, 02 Sep 2010 09:21:26 +0000 Brian Kelly http://culturalheritagedocs.wordpress.com/?p=143 What Is AJAX?

AJAX (Asynchronous JavaScript and XML) is “a group of interrelated Web development techniques used to create interactive web applications or rich Internet applications[1]. Using AJAX it is possible to develop Web applications which have a rich user interface which can approach the usability of well-written desktop application.

The Origins of AJAX

The key technical components of AJAX are:

  • XHTML – a stricter, cleaner rendering of HTML into XML.
  • CSS for marking up and adding styles.
  • The Javascript Document Object Model (DOM) which allows the content, structure and style of a document to be dynamically accessed and updated.
  • ” The XMLHttpRequest object which exchanges data asynchronously with the Web server reducing the need to continually fetch resources from the server.

Since data can be sent and retrieved without requiring the user to reload an entire Web page, small amounts of data can be transferred as and when required. Moreover, page elements can be dynamically refreshed at any level of granularity to reflect this. An AJAX application performs in a similar way to local applications residing on a user’s machine, resulting in a user experience that may differ from traditional Web browsing.

Examples of AJAX usage include GMail and Flickr. It is largely due to these and other prominent sites that AJAX has become popular only relatively recently – the technology has been available for some time. One precursor was dynamic HTML (DHTML), which twinned HTML with CSS and JavaScript but suffered from cross-browser compatibility issues.

AJAX is not a technology, rather, the term refers to a proposed set of methods using a number of existing technologies. As yet, there is no firm AJAX standard, although the recent establishment of the Open AJAX Alliance [2], supported by major industry figures such as IBM and Google, suggests that one will become available soon.

Developing AJAX Applications

AJAX applications can benefit both the user and the developer. Web applications can respond much more quickly to many types of user interaction and avoid repeatedly sending unchanged information across the network. Also, because AJAX technologies are open, they are supported in all JavaScript-enabled browsers, regardless of operating system – however, implementation differences between browsers cause some issues, some using an ActiveX object, others providing a native implementation.

Although the techniques within AJAX are relatively mature, the overall approach is still fairly new and there has been criticism of the usability of its applications; further information on this subject is available in the AJAX And Usability Issues briefing document [2].

Advantages and Disadvantages of AJAX

As described in Wikipedia advantages provided by use of AJAX include:

  • State can be maintained throughout a Web site.
  • A Web application can request only the content that needs to be updated, thus drastically reducing bandwidth usage and load time.
  • Users may perceive an AJAX-enabled application to be faster or more responsive.
  • Use of Ajax can reduce connections to the server, since scripts and style sheets only have to be requested once.

The disadvantages include:

  • Clicking the browser’s “back” button may not function as expected.
  • Dynamic Web page updates make it difficult for a user to use bookmarks.
  • Browser does not support JavaScript or have JavaScript disabled, will not be able to use its functionality.

References

  1. AJAX (programming), Wikipedia,
    <http://en.wikipedia.org/wiki/Ajax_(programming)>
  2. The Open AJAX Alliance,
    <http://www.openajax.org/overview.php>
  3. AJAX And Usability Issues, Cultural Heritage briefing document no. 20, UKOLN,
    <http://www.ukoln.ac.uk/cultural-heritage/documents/briefing-20/>
]]>
http://blogs.ukoln.ac.uk/cultural-heritage-documents/2010/09/02/an-introduction-to-ajax/feed/ 0