Wednesday, September 16, 2009

Microsoft Doloto

Those who have built rich, highly interactive, Ajax applications, tools like these are surely a boon. As we know, next generation interactive web applications are built primarily using XHTML, JavaScript, CSS. Number and size of these files grow rapidly as the application grows. This is where tools like Doloto comes in handy.

Microsoft research has put up a new tool called "Doloto" to tune the download performance of these files especially JavaScript. This tool profiles the application, converts the method calls into stubs, and as these are actually called, downloads them. This allows large applications to not download full files before it can even start and does a lazy download. If you are a developer who builds highly interactive, rich, Ajax based applications, check this tool out.

Interview with Chairman UIDAI

Nandan was interviewed by Thapar as part of CNN-IBN's program "Devil's Advocate". Thapar surely asked all right questions except the UK card part. I have spoken to several people and everyone believes no such program can succeed unless people find a good reason to have them. In UK, no one knows why they should have a national ID. Same goes in US too (they eventually are not doing any similar projects except in the case of immigration or FBI).

In India, we keep aside 1000's of crores for pro-poor programs and we don't even know who is supposed to get. Only if we know who the people are, we can hope to reach them effectively. UID project attempts to identify these "face-less" people of India and provide these benefits to them directly through a micro-banking account. This can save huge sum of money for government and we can make sure it reaches the right people. We currently pay pensions for people who have died long back and we provide ration cards for "ghost" residents! I think UID will allow most of these systems (PDS, NREGA, LIC, PAN, etc.) be more efficient and hence be a self-sustaining system.

Here is the interview video link. have fun watching!

Cloudloop - a Universal API for Cloud Storage

It was expected sooner or later. With all the rush and hype towards cloud computing, it is important that a common API layer for access to resources in the cloud is developed. That's exactly what Cloudloop has done. Currently applications wanting to write applications that can access cloud file system need to write different code for different providers and having an abstraction layer above specific implementations make it much easier for these applications. Currently this API is restricted only to storage in the cloud. There are several providers such as Amazon, Microsoft, etc. who today who provide cloud storage and Cloudloop provide a clean standardized API layer on top of these providers.

For the people who do not know what cloud computing is, it is a mechanism by which software applications and computations are done in the cloud or simply on computers connected on the Internet compared to servers inside your private network. Of course, this is a minimalist definition.

I really do hope to see lot more such APIs evolve and eventually a standardized cloud computing platform. I am sure they will evolve soon since no one wants to develop applications for the cloud and get tied into one of the providers. This is no different from the way J2EE standard evolved and made the life of application developers easy compared to life the 90's where we were writing different code different distributed computing platforms.

Sunday, September 6, 2009

Interesting Patents

These days anything can be patented, like "Method of Swinging on a Swing", or "Method to watch TV, talk to your wife, and work at the same time" (by the way, I am planning to patent that!). World patent system, especially USPTO, has become an overworked and revenue driven institution that require a complete overhaul.

This week I came across 2 interesting patents - one from Google and one from IBM. Google patented the classic "search page" with a big text box in the middle with minimal buttons. Yes, this is for an HTML page with a text box and couple of buttons. Be careful creating simple HTML pages, you may be in violation of something!

Second was more interesting. IBM patented a gadget such as TV remote that can Tweet and participate in other social conversations. Yup, you don't even need to type in anything. With a click of a button, you can post what you are watching to your favorite social networking website. I am sure, this will surely start an avalanche patents such as "cars that can tweet where you are going", "microwave that can tweet what you are cooking", and so on. See the patent automatic blogging while media viewing.

As long as patent lawyers exist and they drive the reforms, I doubt we can see any improvement on mad rush for patents and lawsuits. I am all for patents to drive innovation and do believe credit should be given to inventors. But, I am totally against patent enforcements and lawsuits. It's time for an "Open Source Patent" system.

Start-up Experience

Last time, way back in '96, I landed up in Boston just before spring to be part of a start-up. We were about 4 people in office sitting around and dreaming big. My role was to imagine, design, and architect our eCommerce product for sell side and buy side collaborations. Devdutt, our CEO, was surely ahead of time in ideas and he kept me on my toes to get the system done in 3 months (I had to come back to India end of 3 months!). Amazingly enough we were able to achieve all that including a sale to Rockport (Now part of Reebok).

Even with all the issues, I think start-up environment somehow inspires people to produce way beyond what is normally accomplished in large companies. Our office was not fancy at all and we barely had the luxury to indulge in expensive employee activities as large companies do. We had no typical frills such as gym or game room, but, we still ended up spending long hours at work. It was sheer excitement of creating something new from scratch believing in the ideas.

Now, I find myself again in very similar environment (except the fact that I have grown older!). Our office, a corner of an apartment, is where we come together for work, sitting around couple of makeshift tables, and going through intense discussions. Unlike last time around, we are better equipped in terms of laptops, broadband connection, and heavily collaborating electronically (thanks to free email, chat, and open source tools!). We are surely having fun and doing all that we can (even with lots of constraints) and trying to pull off an enormous task in a short period of time. I am getting a distinct sense of déjà vu!