"Google it!" is a more popular term than "Just do it!". The search engine giants have had more success stories than anyone could have thought.
From Google search to Gmail, Youtube, Google code and what not, everyone loves Google, even guys at Microsoft. Their workplace, open culture, Phd employees, the whole network is cherished.
They have become the godfather of technology, controlling things they want to, the way they like. Taking high tech companies (e.g. Youtube) within their umbrella and blessing them with more fortune.
On the development end, Google has backed open source. Google Code has evolved into a healthy project repository (competing SourceForge), their developers contributing heartily to the open community, establishing open standards etc. All of this is great but at the same time it is just like Bill Gates running charity foundations or a corporate company going green, just to win the votes of their consumers.
Google promotes openness, yet it's search engine technology is proprietary, they have created Google App Engine (GAE), yet your applications have to run in Google's created JVM which abstains you from using Threads, some standard Java classes etc. They say that their JVM alleviates the need for threading by using their Cloud intelligently. This is SOC, which is good but if I want to deploy my project on GAE then my code will be restricted to their SDK only.
Another example is the upcoming Google Wave, where again the Robots can only be hosted on GAE. Robots seem to be the most useful component of the Wave, yet again we are constrained with GAE. In this case their move seems correct because after all Wave is their own platform yet at the same time they promised open source.
One example, that I encountered currently is the OAuth protocol which is an open protocol for secure API authorization. Google, Yahoo, AOL, Twitter etc. have been the active participants of the protocol and they are also implementing and supporting it on their systems as well. We have the open protocol available but why not have the open implementation as well from these vendors?
There are core implementations of the protocol on OAuth.net but we aren't sure if these vendors use the same in their production environments.
Google extends OAuth by defining it's own parameters for it's own services like 'scope' but it's not documented anywhere. Here the ideal case should've been a published OAuth extension that is inline with their own implementation.
This very blog is hosted on Google's Blogger/Blogspot, I use gmail everyday, I love Google services and maybe that love forces me to think critically of them. I maybe wrong in some points but in the end I've termed them the godfather. Let me know if I'm wrong.
Showing posts with label OAuth. Show all posts
Showing posts with label OAuth. Show all posts
Tuesday, June 16, 2009
Sunday, March 8, 2009
Connected
Web 2.0 complemented with Social networking has been responsible for a plethora of web applications of unique nature in the near past. Various frameworks, technologies and protocols have emerged to support this trend. Even the server technologies are emerging to support the movement (e.g. by solving the scalability issue with cloud computing).
Some applications are so dense in terms of user base and features that they didn't care about collaborating with others. On the other hand, the small ones (web applications) emerge with some unique idea needing the larger apps to support them and share their user base. However recently the larger apps are becoming less self-centered in providing this connectivity (loose coupling :)).
Open standards like OAuth, OpenID etc. have paved way in this direction by enabling inter-operation among web applications an established technology rather than an idea pursued differently by different apps. Still the implementations vary depending on the nature of apps.
All of this comes down to USER POWER, where the user is given precedence over the applications. User's profile, image, credibility is carried over from application to application spanning a network of user-app with a two-way directed graph. Combine this user-app set with your browser and you are ready to get a smooth experience resulting in YOU seamlessly using applications throughout the world connected via internet, be it services, social networks, email, forums, blogs, business apps or your own creation.
My proposal is for the already-too-powerful browsers to become more powerful and play a central role in this connectivity business. Like tabbed browsing was an automatic step in aiding this experience by sharing/saving the session throughout the tabs (I'm not sure about Chrome's processes though). If the browsers are responsible for implementing the open standards then all the web apps need to do is suppor the standard. What browsers have been doing for CSS, HTML, AJAX, Javascript, SVG etc. they can do the same for this central connectivity concept, after all they have been termed as the modern OS.
Some applications are so dense in terms of user base and features that they didn't care about collaborating with others. On the other hand, the small ones (web applications) emerge with some unique idea needing the larger apps to support them and share their user base. However recently the larger apps are becoming less self-centered in providing this connectivity (loose coupling :)).
Open standards like OAuth, OpenID etc. have paved way in this direction by enabling inter-operation among web applications an established technology rather than an idea pursued differently by different apps. Still the implementations vary depending on the nature of apps.
All of this comes down to USER POWER, where the user is given precedence over the applications. User's profile, image, credibility is carried over from application to application spanning a network of user-app with a two-way directed graph. Combine this user-app set with your browser and you are ready to get a smooth experience resulting in YOU seamlessly using applications throughout the world connected via internet, be it services, social networks, email, forums, blogs, business apps or your own creation.
My proposal is for the already-too-powerful browsers to become more powerful and play a central role in this connectivity business. Like tabbed browsing was an automatic step in aiding this experience by sharing/saving the session throughout the tabs (I'm not sure about Chrome's processes though). If the browsers are responsible for implementing the open standards then all the web apps need to do is suppor the standard. What browsers have been doing for CSS, HTML, AJAX, Javascript, SVG etc. they can do the same for this central connectivity concept, after all they have been termed as the modern OS.
Labels:
browser,
Cloud computing,
OAuth,
OpenID,
Social networking,
Web 2.0
Subscribe to:
Posts (Atom)