My Pages

Monday 18 July 2011

Cloud Computing

Introduction

What is Cloud Computing ? Trying to define cloud computing is not as straight forward as it seems. First we’ll discuss what cloud computing is so that a common understanding is reached. Cloud computing get its name from the cloud network diagram. The cloud icon abstracts all the stuff that makes the Internet (network) work. Cloud computing promotes itself by cutting operational costs and let an organisation focus on strategic projects rather than focusing on keeping a datacenter running. But cloud computing is more than just the Internet. To recap cloud computing is a construct that allows for the access to an application that resides at a location other than your computer or to an Internet-connected device. Mostly the application would be residing in a datacenter. The benefits that emerge from such a construct are quite tangible for example to install an application such as Microsoft Office you either insert a CD or configure a software distribution server, using cloud computing the Microsoft Office installation would already be hosted and handled by the company offering cloud services. For a company to offer cloud computing services mean that that company will host your applications, handle costs of servers, manage software updates and depending on an agreement pay less.
Network diagram for an organisation offering cloud services

Like everything cloud services have their pros and cons. If you take a look at the diagram above one can easily notice that the lines connecting to Internet are both potential points of failure. When Internet problems occur all the cloud services provided will be down. Application hosted cannot be accessed. This problem is usually countered by allowing local installations for some of the more critical applications.


Components in Cloud Computing

A cloud computing infrastructure is composed from a number of element;
  • Clients
  • Datacenter
  • Distributed servers

Components for a cloud computing solution

Clients

Clients in a cloud computing setup are the same as that found in current scenarios i.e. normal LANs. Clients are the terminal from which work is done. Clients fall into three categories which are ;
  • Mobile: Mobile devices like PDA or Smartphones
  • Thin: Computers that do not have hard drives and work directly on the datacenter
  • Thick: Computer using a web browser to connect to the cloud.


Thin clients are becoming more popular due to the lower hardware costs, security and ease of repair or replacement.

Datacenter

A datacenter is a group of servers which host the applications required by an organisation. A growing trend is virtualised servers which is the creation of multiple servers on one scalable machine through a program called the hypervisor.
Distributed Servers

There are cases were servers are not housed at the same location. Through a cloud computing setup these distributed servers are visible to the end user as one. For example Amazon has multiple datacenters around the world for disaster recovery.

Virtualisation

Virtualisation is a technique by which one or more machines are installed on one machine. This provides a system which all running software is within a virtualised server.  This sort of deployment allows for different operating systems to run from the same host server. Virtualisation is relevant to cloud computing since through virtualisation cloud services can be accessed.

Cloud Services

Services offered through cloud computing is the concept with which a company can reuse components from a company offering such services. Services provided are categorised into three main categories;
  • Software services
  • Platform services
  • Hardware services


Software services implies applications hosted as a service which can then be accessed through an internet connection. Using software services through cloud removes maintainability and support for that software from the user’s hands. upgrading of the software is done from the cloud services provider. This type of services can have it’s disadvantages especially when a company requires that a given software needs to be integrated with other software.

Platform services as opposed to software services provide the required resources for application building without having to install them. This type of services is usually required when development, testing or hosting is required by the end-company.

Hardware services is actually the simplest and can be thought of as remote resources. Imagine that instead of buying a server and placing it in your datacenter, said server would be installed, maintained and supported at the company providing the cloud services.
Cloud Services Providers

There are some vendors who offer cloud services. Each vendor varies in the type of services offered as well as their pricing modules.

Amazon

Amazon was one of the very first companies which implemented cloud computing. Some of the services offered by Amazon are;

ServiceDescription
EC2Virtual machines and CPU
S3Storage up to 5GB in size
SQSAllows for virtualised machines to talk to each other
SimpleDBA web service for running queries on databases in real time.


Amazon’s virtual machines are versions of Linux which might be a bit tough for companies who are used to Microsoft products.

Google

Google offer cloud services through Google’s App Engine. Using App Engine one cannot write a file in his own directory. The file writing feature was removed due to security issues. Writing data must take place in Google’s own database. Google offers online documents, spreadsheets. Developers can build features for these products.

Microsoft

Microsoft’s cloud computing is called Windows Azure. Windows Azure is an operating system that allows organisations to run Windows applications using Microsoft’s datacenters. Azure Services Platform allow for developers to write custom modules for a given company.

ServiceDescription
Windows AzureProvide service hosting and management
Microsoft SQl ServicesProvides database services and reporting
Microsoft .NET ServicesProvides a service based .NET framework for development
Live ServicesUsed to share, store unstructured data
Microsoft Sharepoint services and Dynamics CRM servicesUsed for business content and collaboration


Conclusion

My take on Cloud computing is that cloud computing has been with us for quite some time. The only difference is that now big companies are giving it names and offering it to other companies. This doesn’t mean that I find cloud computing to be just a hype on the contrary I find it suitable for certain companies that fall within a certain criteria. For example if a company requires a lot of flexibility in terms of its software and integration with existing applications security problems, speed and reliability become an issue. Also when one is contemplating on working on the cloud one should take into consideration Internet connection speed and reliability. My final point on cloud computing is the legal issues where in lies the concern for the sensitivity of private date. Data protection laws on data hosted on the cloud is freer that data hosted on private server.

Sunday 10 July 2011

Social Networking - Google+


Introduction


When people are asked what social networking is immediately some web site allowing for social networking comes to mind such as Facebook or Twitter. But if we want to be precise a social network is a social structure made up of individuals (or group of individuals) which are tied together by one or more relationship or interdependency such as friendship or common interest. Social networking is something that can take place physically as well as on the web. Granted that with the introduction of the Internet, social networking took on a life of its own.

Different social networking web sites offer services which allow for social interaction. Services offered are similar between web sites but then there are certain sites which offer additional features. Some such services are ;

  • Creation of user profiles
  • Blog entries
  • Search for users with similar interests or according to geolocation
  • Sharing of information
  • Post comments on friends or user profiles
  • Instant Messaging


Additional features may include;

  • Creation of groups
  • Group Discussions


Social networking is now available in mobile phones which increased the popularity of social networking sites. As social networking is becoming more popular more technologies are being developed that make use of such services such as live broadcasting of news on social networking sites.

Some of the most popular social networking sites are;
  • Facebook
  • Twitter
  • Bebo
  • Hi5
  • LinkedIn


This blog post will focus on the introduction of Google’s new social networking portal called Google+.
Tasks Overview


Throughout this blog post we will be exploring Google+ and compare it to one of the most popular social networking site Facebook.

  • Introduction to Google+
  • Demonstrating and discuss Google+


Introduction to Google+


The Google+ services have been launched on 28th June 2011 as an invite only phase. Invited people can then create their account and invite their friends to join. The invite phase was paused for some time due to the large demand for accounts. Not all services offered by Google+ are new such as Google Buzz. Google managed to integrate existing social networking services with new ones and provide a holistic experience. Some of the services provided by Google+ are;

  • Google Buzz
  • Google Profiles
  • Circles
  • Hangouts
  • Sparks
  • Huddles



Demonstrating and Discussing Google+


I received my invitation through my web technologies Tutor and was eager to see what all the hype is all about.  Once logged in the first thing I noticed was my name at the front of the top menu Google provides in all their services.


Clicking on your name takes you to the G+ (for short) account. The first time I logged into G+ I had to set my profile information and privacy settings. These settings can be revisited by accessing the button on the far right on the top menu.


When I logged in I also notice that the style used for G+ is different that the style I am accustomed to. Personally I found it cleaner and much more readable.

Adding People To Circles

The home page is the landing page of G+. The first thing I decided to do was to find people so I went to the top search bar  next to the navigation options and started typing some names. While I was typing I noticed that people who are already added are stated as such in auto suggested list.


A circle represents a group of people with whom you have a specific relationship such as work mates or cooking class mates :). Also one does not need to accept add requests since all that is required is to just add them back. When both users have added each other a relationship is formed between the two users.


Adding people is very easy to do from the Circles tab which is the last button in the navigation bar.  Adding people is achieved by dragging a profile from the sorted listed to a circle of your preference.


The Home Page

The main section in the home page is the stream which is very similar to the Facebook Feed. The stream section allows for people in your circles to write comments, upload images and videos etc. To the left hand side of the stream is a list of contacts available for instant messaging. To the right hand side of the stream suggestions and hangouts are displayed.

Sparks

Sparks allows you to add your interests and receive information and news about them. A list of featured interests are shown as well as a search bar which allows you to search about anything you are interested in.



Hangouts

The hangout is a nifty and cool feature which allows for multiple friends to chat together. This feature that audio and video and really easy to set up. At the bottom of the hangout window a button to invite other friends is available  as well as to chat. One could also add a you tube video as part of a conversation by clicking on the You Tube button.



Photos

One of the options available at the navigation bar is photos. This allows you to see photos shared by people in your circles. The photo stream allows you to tag photos using Picasa. Comments can be posted on the right hand side of the opened photo.



The Profile


The profile is quite self explanatory with the exception of 1’s. This 1’s button works like the “like” button on Facebook.  Anything which is tagged throughout the web is listed here. The profile allows you to see your own profile from another user’s perspective by writing the user’s name in the text with the placeholder text “View profile as”.

The posts section allows you to post messages,comments or stories on your profile. The edit post menu allows you to block sharing or commenting on your posts. The fact that one can edit post creates a bit of a dilemma since one can tag your post +1 and then you can edit the post to say something entirely different or worse the complete opposite.

Conclusion

Google+ has great potential when it comes to an online social networking experience. Google might need to make G+ more integrated as there is a lot of potential in other Google apps which can be of great use to the overall experience. As for usability, clarity and the rest as usual Google rocks.