Linux phone to Debut upgrade at CES
Saturday, January 5, 2008
OpenMoko has announced an upgrade to its Linux-powered mobile phone and plans to present the device at CES. It would be interesting to see how can this initiative change the incompatibilities in the Phone market. Specially will there be a Open Standard being evolved in the Phone OS like we have had in the network area. This is wait and watch foe now.
read more | digg story
Web Services – What – How – Where!!!
Saturday, August 18, 2007
This is the first part of the series of posts that will be published on web services. We are going to start with the introduction, definition, purpose and the theory of some of the technologies involved with web services, and then start with the fun part of creating and using web services.
We will see how to make web services using various tools and technologies and how to make them usable.
The primary reason why am attempting to write this down again, being consciously aware that there are a million people who have already written tons and bibles on this, is to describe it in as simple terms as possible. I realized that enough has already been written and taught and enough is often misunderstood for a simple reason that learning is too focused on technology. This creates two problems in particular i.e. 1) It drives new comers nuts 2) It eludes the topic from everyone who has nothing to do with technology but are involved in decision making process and usually end up making the wrong choices due to lack of knowledge. You would guess right, if you thought about your manager now.
So, the primary objective of making this different is to make it as simple as possible (ASAP) and try and make concepts more clear to understand so that once we do go over to technology part of it, the choices are coherently made rather than having to do what everyone does. I will try and not make this developer centric since the audience I expect to gain from this is much more than just the developers.
So, let’s start with the journey......
What are Web Services? Have you come across it?..... you might have!
I will not define web service for you if you are looking for a syntactical correct statement, then you are welcome to try out typing “define: Web Service” in Google search box and get satisfied.
Consider you have to file your tax returns at year end to the government and you just wished that someone will do all the calculations for you, and leave only submitting the details of your income to you. That someone is your tax consultant. He will ask you to provide your income details and rest will be taken care by him. The Tax Consultant is providing a service that you are using. The service is not owned by you and can be used by number of people who have the same requirement. You are not worried about the details of how the tax returns are filed, what procedure to follow, where to go to file the returns. In the end you receive a receipt saying that your tax return has been successfully filed.
You can safely image Web Service performing a similar function with the only distinction that it deals with software components. The basic idea behind using Web Services is reusability and encapsulation. Why re-invent the wheel. So, if there already exist a service for doing a particular job anywhere in this world, then the best way for you to get the same job done, is to use that service and not re-create on your own.
E.g. Say, if your manager asks you to get software that gives you the latest details of a stock you enter, then the best way would be to find out an existing stock quote service, and re-use it rather than worrying about how to get the latest stock price from the stock exchange. You could rather worry about, how you want the stock price to be displayed or how the users in your organization will use the service. What this will provide is, allow you to concentrate more on the business requirement rather than worry about the technical implementation of retrieving the latest stock details. If you haven’t realized most of the stock details that you see on the money/business sites use an existing stock quote service that is developed by someone else.
Now, if the question has not already popped up, which should to the IT kinds, is this “Haven’t we talked about re-usability and encapsulation of implementation details since a couple of decades now? Didn’t C++ and Java already provide all these features by implementing OOPS? What’s the big deal with Web Services now?
Yes, we have spoken about re-usability and encapsulation since the days of C++ and much before. When Object Oriented development wasn’t so prominent, we still tried to re-use things by writing functions and calling them. Creating APIs we tried to hide the implementation of various complex tasks. Everything did fit in before as well, but that was before the rush of the internet. Today, we haven’t truly realized the thrust being provided by internet to business. The way the business is changing and the way internet is shaping it is truly amazing. With internet, you have convergent systems, at disparate locations, trying to re-use some thing that was written on some language you don’t know. How do you re-use a software code that you do not know where it exists and which language it speaks? With Web Services, you have got re-usability at an altogether different level. You can be in one part of the world, requiring a service which is present in another part. Through internet and internet protocols (which are just means for communication) you can easily use that service. Hence the term Web Services, which are services for the WEB.
You would have already realized that with Web Services there are two things that needs to be done:
- Develop the Web Service or Discover an existing Web Service
- Develop a client that will use the Web Service
The part 2 of the series will deal with how to go about developing a Web Service. We will then cover how to use it and lastly after knowing everything, we will see how to discover an existing web service and use it ourselves.