Tuesday, March 18, 2014

Cloud Computing

Cloud Computing 
Cloud computing is the delivery of computing services over the Internet. Cloud 
services allow individuals and businesses to use software and hardware that are 
managed by third parties at remote locations. Examples of cloud services include 
online file storage, social networkingsites, webmail, and online business 
applications. The cloud computing model allows access to information and computer 
resources from anywhere that a network connection is available. Cloud computing 
provides a shared pool of resources, including data storage space, networks, 
computer processing power, and specialized corporate and user applications. 

The following definition of cloud computing has been developed by the U.S. National 
Institute of Standards and Technology (NIST): 
Cloud computing is a model for enabling convenient, on-demand network 
access to a shared pool of configurable computing resources (e.g., networks, 
servers, storage, applications, and services) that can be rapidly provisioned 
and released with minimal management effort or service provider interaction. 
This cloud model promotes availability and is composed of five essential 
characteristics, three service models, and four deployment models.

Characteristics


The characteristics of cloud computing include on-demand self service, broad 
network access, resource pooling, rapid elasticity and measuredservice. On-demand 
self service means that customers (usually organizations) can request and manage 
their own computing resources. Broad network access allows services to be offered 
over the Internet or private networks. Pooled resources means that customers draw 
from a pool of computing resources, usually in remote data centres. Services can be 
scaled larger or smaller; and use of a service is measured and customers are billed 
accordingly. 

Service models
The cloud computing service models are Software as a Service (SaaS), Platform as a 
Service (PaaS) and Infrastructure as a Service (IaaS). In a Software as a Service 
model, a pre-made application, along withany required software, operating system, 
hardware, and network are provided. In PaaS, an operating system, hardware, and 
network are provided, and the customer installs or develops its own software and 
applications. The IaaS model provides just the hardware and network; the customer 
installs or develops its own operating systems, software and applications. 
Deployment of cloud services:

Cloud services are typically made available via a private cloud, community cloud, 
public cloud or hybrid cloud. 

Generally speaking, services provided by a public cloudare offered over the 
Internet and are owned and operated by a cloud provider. Some examples include 
services aimed at the general public, such as online photo storage services, e-mail 
services, or social networking sites. However, services for enterprises can also be 
offered in a public cloud. 

In a private cloud, the cloud infrastructure is operated solely for a specific 
organization, and is managed by the organization or a third party. 

In a community cloud, the service is shared by several organizations and made 
available only to those groups. The infrastructure may be owned and operated by the 
organizations or by a cloud service provider.

A hybrid cloud is a combination of different methods of resource pooling (for 
example, combining publicand community clouds).  
Why cloud services are popular


Cloud services are popular because they can reduce the cost and complexity of 
owning and operating computers and networks. Since cloud users do not have to 
invest in information technology infrastructure, purchase hardware, or buy software 
licences, the benefits are low up-front costs, rapid return on investment, rapid 
deployment, customization, flexible use, and solutions that can make use of new 
innovations. In addition, cloud providers that have specialized in a particular area 
(such as e-mail) can bring advanced services that a single company might not be 
able to afford or develop. 
Some other benefits to users include scalability, reliability, and efficiency. Scalability 
means that cloud computing offers unlimited processing and storage capacity. The 
cloud is reliable in that it enables access to applications and documents anywhere in 
the world via the Internet. Cloud computing is often considered efficient because it 
allows organizations to free up resources to focus on innovation and product 
development.

Introduction to Cloud Computing

Introduction to Cloud Computing 



When you store your photosonline instead of on your home computer, or use 
webmail or a social networking site, you are using a “cloud computing” service. If 
you are an organization, and you want touse, for example, an online invoicing 
service instead of updating the in-house one you have been using for many years, 
that online invoicing service is a “cloud computing” service. 
Cloud computing refers to the 
delivery of computing resources over 
the Internet. Instead of keeping data 
on your own hard drive or updating 
applications for your needs, you use a 
service over the Internet, at another 
location, to store your information or 
use its applications. Doing so may 
give rise to certain privacy 
implications. 
For that reason the Office of the 
Privacy Commissioner of Canada 
(OPC) has prepared some responses 
to Frequently Asked Questions 
(FAQs). We have also developed a 
Fact Sheet that provides detailed 
information on cloud computing and 
the privacy challenges it presents.

To know more about cloud Computing click here

Thursday, March 13, 2014

INTRODUCTION TO ANDROID

Introduction

The Android OS is currently the most popular OS in the world today, running on everything from
watches to HD smartphones to touchscreen tablets to eBook readers to interactive television sets.
Since there are billions of Android consumer electronics devices owned by people all over the world,
it stands to reason that developing applications for these people might just be an extremely lucrative
undertaking, given that you have the right concept and design. This book will go a long way toward
helping you to learn how to go about creating an attractive Android application which spans multiple
types of Android device types and supports multiple Android OS versions.
I wrote Learn Android App Developmentas the next level up from my Android Apps for Absolute
Beginnerstitle, targeting those readers who are more technically proficient, and who are familiar
with computer programming concepts and techniques. That being said, this would be a good
follow-on title to the Android Apps for Absolute Beginnerstitle, and both cover the latest Android 4.2.2
Jelly Bean Plus Android operating system version.
I designed this book to be a far more comprehensive overview of the Android application
development work process than most Android app development books. For this reason, this book
covers the use of a wide variety of other open source software packages, such as GIMP and
Audacity, for instance, and how their usage fits into the overall Android application development
work process. This approach serves to set this book distinctly apart from the other Android
application development titles currently on the market.
The book starts out with installing the latest Java and Android SDKs and the Eclipse IDE with the
Android ADT Bundle, and then progresses through creating a basic Android application and then
adding to that application with each chapter. We continue this process until all the major concepts
are covered and implemented in one comprehensive Android application. This approach more
closely parallels real world application development, where an application is continuously added
to over time, making it more and more robust and feature filled as time goes on, while making sure
each new feature does not cause the application to crash.
We look at Java objects and constructors, user interface design using XML mark-up, digital imaging
and graphics design, digital video and animation, audio sampling and audio sequencing, and other
advanced new media concepts and multimedia application features, as that is what is popular
xxviii Introduction
in Android application development today. We look at core Android OS areas, including Content
Providers (SQLite Databases), Broadcast Receivers, Services, and using Events, Intents, and
Activities, all in great detail.
We cover the foundational knowledge that you will need to be able to work in the more advanced
areas that the Android OS encompasses. Some of these include digital image compositing, digital
video optimization, procedural animation, database design, multi-screen resolution support, 3D
rendering, and similar advanced topics regarding which an Android developer needs to know at
least the basics in order to work intelligently within their application design and development work
process.
If you want a comprehensive overview of Android, Eclipse, Java, XML, and the Android Developer
Tools environment, as well as knowledge about how to optimally use these technologies with leading
open source new media content design and development tools, then this book will be of great
interest to you