Monday, January 31, 2011

Cloud Computing & its Services

Cloud computing is location-independent computing, whereby shared servers provide resources, software, and data to computers and other devices on demand, as with the electricity grid. Cloud computing is a natural evolution of the widespread adoption of virtualization, service-oriented architecture and utility computing. Details are abstracted from consumers, who no longer have need for expertise in, or control over, the technology infrastructure "in the cloud" that supports them.
Cloud computing describes a new supplement, consumption, and delivery model for IT services based on the Internet, and it typically involves over-the-Internet provision of dynamically scalable and often virtualized resources. It is a byproduct and consequence of the ease-of-access to remote computing sites provided by the Internet. This frequently takes the form of web-based tools or applications that users can access and use through a web browser as if it were a program installed locally on their own computer.

Cloud Computing Services:
Cloud computing is broken down into three segments: “software”, “platform” and “infrastructure”. Each segment serves a different purpose and offers different products to businesses and individuals around the world.
 
Software as a Service (SaaS) is the service based on the concept of renting software from a service provider rather than buying it yourself. The software is hosted on centralized network servers to make functionality available over the web or intranet. Also known as “software on demand” it is currently the most popular type of cloud computing because of its high flexibility, great services, enhanced scalability and less maintenance. Yahoo mail, Google docs, CRM applications are all instances of SaaS. With a web-based CRM all that employees need to do is register and login to the central system and import any existing customer data. The service provider hosts both the application and the data so the end user is free to use the service from anywhere. SaaS is very effective in lowering the costs of business as it provides the business an access to applications at a cost normally far cheaper than a licensed application fee which is possible due to its monthly fees based revenue model. With SaaS user need not worry about installation or upgrades.

Platform as a Service (PaaS) offers a development platform for developers. The end users write their own code and the PaaS provider uploads that code and presents it on the web. SalesForce.com’s Force.com is an example of PaaS. PaaS provides services to develop, test, deploy, host and maintain applications in the same integrated development environment. It also provides some level of support for the creation of applications. Thus PaaS offers a faster more cost effective model for application development and delivery. The PaaS provider manages upgrades, patches and other routine system maintenance. PaaS is based on a metering or subscription model so users only pay for what they use. Users take what they need without worrying about the complexity behind the scenes.
There are basically four types of PaaS solutions – social application platforms, raw compute platforms, web application platforms and business application platform. Facebook is a type of social application platform wherein third parties can write new applications that are made available to end users. The CRM solutions provided by the companies are examples of business application platform. Developers can upload and execute their applications on Amazon’s infrastructure which is an example of raw compute platform. While the Google provides APIs to developers to build web applications which is an example of web application platform.

Infrastructure as a Service (IaaS) is delivery of the computing infrastructure as a fully outsourced service. Some of the companies that provide infrastructure services are Google, IBM, Amazon.com etc. Managed hosting and development environments are the services included in IaaS. The user can buy the infrastructure according to the requirements at any particular point of time instead of buying the infrastructure that might not be used for months. IaaS operates on a “Pay as you go” model ensuring that the users pay for only what they are using. Virtualization enables IaaS providers to offer almost unlimited instances of servers to customers and make cost-effective use of the hosting hardware. IaaS users enjoy access to enterprise grade IT Infrastructure and resources that might be very costly if purchased completely. Thus dynamic scaling, usage based pricing, reduced costs and access to superior IT resources are some of the benefits of IaaS. IaaS is also sometimes referred to as Hardware as a Service (HaaS). An Infrastructure as a Service offering also provides maximum flexibility because just about anything that can be virtualized can be run on these platforms. This is perhaps the biggest benefit of an IaaS environment. For a startup or small business, one of the most difficult things to do is keep capital expenditures under control. By moving your infrastructure to the cloud, you have the ability to scale as if you owned your own hardware and data center.

Friday, January 28, 2011

Adobe Flash

Adobe Flash (formerly Macromedia Flash) is a multimedia platform used to add animation, video, and interactivity to web pages. Flash is frequently used for advertisements and games. Flash manipulates vector and raster graphics to provide animation of text, drawings, and still images. It supports bidirectional streaming of audio and video, and it can capture user input via mouse, keyboard, microphone, and camera. Flash contains an Object-oriented language called ActionScript.
The Adobe Flash Professional multimedia authoring program is used to create content for the Adobe Engagement Platform, such as web applications, games and movies, and content for mobile phones and other embedded devices. To explore about flash & its functionality, please follow the following link:
1. Flash Tutorial for Beginners
2. Flash CS3 Tutotial
3. Flash CS5 Help

Sunday, January 23, 2011

Sixth Sense Technology

This Post contains details about Sixth Sense Technology. It contains introduction, components, working & application of Sixth sense technology in the form of pictures. Please go through pictures for better understanding.


















Surface Independent Interactive Computer System

SiiCS is a wearable portable device that can convert any surface into an interactive touch screen and users can interact using natural finger gestures. SiiCS can recognize many objects from the real world and extract related information from the internet and either display it on the object itself or speak it out to the user in case of Visually impaired people. SiiCS derives its motivation from MIT Sixth sense technology, Microsoft surface and Nintendo Wii. The difference here is that SiiCS is dedicated to Visually impaired people and handicapped people apart from regular users.SiiCS represents the intersection of the Computer Science most significant concepts like Human Computer Interaction, Surface independent computing, Machine Vision & Object detection, Gestural computing and Text to speech systems. SiiCS is winner of Microsoft Imagine Cup Software Design Accessibility Innovation Award 2010 and is still in the pre beta stage.
Features:
  1. Portable, scalable and wearable device
  2. Can convert any surface into an interactive touch screen
  3. Users can interact with real time data and information using natural finger gestures.
  4. Can detect real world objects and project their information from the web onto their surface such as bing search results, wikipedia definition, its amazon rating and popularity etc.
  5. Can operate computer screen using a finger in the air, users can draw on any surface, zoom in zoom out things etc.
  6. Supports multi user interaction at the same time.
  7. Watch the following video for more information about SiiCS:

Friday, January 14, 2011

Microsoft Surface

Microsoft Surface (codename Milan) is a multi-touch product from Microsoft which is developed as a software and hardware combination technology that allows a user, or multiple users, to manipulate digital content by the use of gesture recognition. This could involve the motion of hands or physical objects. Microsoft Surface is a surface computing platform that responds to natural hand gestures and real world objects. It has a 360-degree user interface, a 30-inch reflective surface with a XGA DLP projector underneath the surface which projects an image onto its underside, while five cameras in the machine's housing record reflections of infrared light from objects and human fingertips on the surface. The surface is capable of object recognition, object/finger orientation recognition and tracking, and is multi-touch and is multi-user. Users can interact with the machine by touching or dragging their fingertips and objects such as paintbrushes across the screen, or by placing and moving placed objects. This paradigm of interaction with computers is known as a natural user interface (NUI). To get more details, please download the Microsoft Surface.pdf file.

Thursday, January 13, 2011

SQL Server 2008 Features

Microsoft SQL Server 2008 provides a number of enhancements and new functionality, building on previous versions. Administration, database maintenance, manageability, availability, security, and performance, among others, all fall into the roles and responsibilities of the database administrator. This Post provides the top ten new features of SQL Server 2008 (referenced in alphabetical order) that can help DBAs fulfill their responsibilities.
1. Activity Monitor
2. SQL Server Audit
3. Backup Compression 
4. Central Management Servers
5. Data Collector & Management Data Ware House
6. Data Compression
7. Policy Based Management
8. Predictable Performance & Concurrency
9. Resource Governor
10. Transparent Data Encryption
To see the full description of features please explore the below given link: 

Sunday, January 9, 2011

Getting Started with Windows Mobile Application Development

Creating programs that run on Windows Mobile phones is just as easy as writing apps for the desktop. Follow the steps on this page and you'll have a running Windows Mobile application.

Get the Tools

You need the following tools to create a Windows Mobile application:
Get Visual Studio 2005 or 2008. You will need Visual Studio to develop applications for Windows Mobile. It will allow you to author, debug, and package your application for delivery from one easy-to-use interface. Learn more at the Visual Studio Developer Center.
Download the latest Windows Mobile SDK. The SDK contains the API header and library files you will need to access Windows Mobile functionality as well as documentation, sample application projects, and emulators that allow you to deploy and debug your application, even if you don’t have a Windows Mobile device.
Get ActiveSync or Windows Mobile Device Center. You will need to have ActiveSync or Windows Mobile Device Center in order to deploy applications to a Windows Mobile device or to an emulator. Windows Vista ships with Windows Mobile Device Center. For Windows XP, you can download and install the latest version of ActiveSync if you don’t already have it.

Create, Build, and Run an Application

Here's how to create and run an empty Windows Mobile application:
Create a smart device project. Open Visual Studio 2008. On the File menu, select New->Project. In the Project Types pane on the left, expand Visual C# and select Smart Device. In the Templates pane on the right, select Smart Device Project and click OK. When the Add New Smart Device Project wizard pops up, select Device Application and click OK.
Add a little functionality. From the Toolbox pane on the left, select a button and drag it onto the form in the design view. Double-click the button to create a Click event handler. In the handler, type the following line of code:
button1.Text = “Click!”;
Build and deploy your application. To run your application on a Windows Mobile device, make sure it is connected to the desktop. Press the F5 key. From the drop-down list, select a device or an emulator to deploy to, and click OK. Your application should be up and running.

Next Step

Once you’ve completed a simple application, find out what else you can do with Windows Mobile.

Simple Web Service in C#

A web service is typically an application programming interface (API) or Web API that is accessed via Hypertext Transfer Protocol (HTTP) and executed on a remote system, hosting the requested service. Web services tend to fall into one of two camps: big web services and RESTful web services.
The W3C defines a "web service" as "a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically Web Services Description Language WSDL). Other systems interact with the web service in a manner prescribed by its description using SOAP messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards."  
The W3C also states, "We can identify two major classes of Web services, REST-compliant Web services, in which the primary purpose of the service is to manipulate XML representations of Web resources using a uniform set of "stateless" operations; and arbitrary Web services, in which the service may expose an arbitrary set of operations." Follow the below link to see example of simple Web Service in C#. 
 

Apple Push Notification Services

The Apple Push Notification Service is a mobile service created by Apple Inc. that was released with iOS It uses push technology through a constantly-open IP connection to forward notifications from the servers of third party applications to the iPhone or iPod Touch and now the iPad; such notifications may include badges, sounds or custom text alerts. To get more details, Please follow the below mentioned links:

http://mobiforge.com/developing/story/programming-apple-push-notification-services

For othere more information Just copy & paste below link in your browser address bar: 
http://developer.apple.com/library/ios/#documentation/
NetworkingInternet/Conceptual/RemoteNotificationsPG/
ApplePushService/ApplePushService.html