Thursday, September 24, 2009

Google Language API ... Revisited

              Google Language API bundled with the jar version 0.8 is impressive in developing a content language scanner application. Simple usage interface has been very useful to me. Biggest advantage has been the support of more than 80 language. Usage of this API is an easiest step  to take to implant the effectiveness in any language classifier application. There do  exist some patented techniques available, which  works on the finding the patterns, associating them and then scaling them with the occurence level in any  language.

              Google language API being in JAVA (not considering the AJAX module which is very much  similar) has the same advantages and short comings as a regular JAVA API will have. I would like to scale this API based on the experience I had with my project with the score of 9/10. Only short coming I faced was in case the Google api fails to recognize the encoding of text or language of any text, then instead of throwing the exception should return  a regular return code with as a status. This would avoid the situation when the API throws exception initiating the exception handles ending of the application using the API.

             This is more or less the methodology of the Java language wherein the application will  discontinue on ecountering exceptions with limited activities allowed. Sun microsystem should provide much  better text encoding and support under their "internationalize Java" flag, especially when application is dependent on JVM. This methodoly has a visible reflection on the effectiveness of the Google Language API.  For consideration if we take an example, if a text like " ? ? ? ? ? ? ? ? ? ? ?? ? ? ?? ? ? ?? ? " or  "5364" is scanned for language detection, the language API throws exception forcing the application to end. This is harsh  in implementation, handling exceptions of others APIs. So If the application has to do  a good amount of processing on the results of the Google language API and continuing a loop of analysis, it just takes an exception from the language api to end the program and analysis.

           But on the part of of the performance and effectivesness Google language API deserves kudos. Very  effective interface provided by the Google under the API project, a small  high performace package.  Using Google language API with Google Web Kit results in cool and a eye catching applications for any  website to host.

         I hope this API project will  give good understanding of end user reuirement, considering the Google's Operating System adventure. The Google web toolkit, Google AJAX APIs and Google JAVA APIs give an very impressive insight into  Google's  ready  to use technologies.

Friday, September 18, 2009

Google's application developement APIs and Toolkit

I am working on a application which can scan the dynamic contents and returns the language its written in (English, Hindi, Greek etc.). The task is pretty complex for me as I need to come up  with the application wherein a desktop application shares information with the web interface and vice a versa. I developed both the ends successfully, but the two way communication between the desktop application and the web based application is still  a puzzle for me.

I tried options like a Java program with JSP , Java with Ajax( Google API), and JSP with Ajax. Nothing worked for me so far. The Google search led me through  lot of  online help but nowhere I got a solution, but came across Google Ajax APIs and Google Web Toolkit.

Google Ajax APIs are wonderful when considered application developement specially the Language API. but unfortunately its not providing the feature I am looking for detecting the language of the content. It do provide the support of translation but not detection. Blogs, open source work and the variants of the application packages available for these packages shrug of the dissapointment. The functionality exposed via this API is effective required and enables to  make a better web rich application, but rich not all. It can serve a impressive add on on the user webpages, like detecting the region of the visiting user and displaying the localized version of the webpage to the user, a charming web tool to translate text to desired language no matter u know the source language. I do seriously beleive Google should have provided a interface to read the detected language of the content via these APIs, and would have helped the Java developers(not experts).

Google did had a assitance some where in terms of Google Web Toolkit, very impressive methodolog to  develop the web applications. A smart way  of processing the Web pages and effectively use the client side and server side scriptings. This technology  translates the Java program in  web based application where in Java codes are converted to Java scripts (so  not fully  compatible with JDK), and refreshes only the required contents of the webpage not all at runtime, taking off the overload from the network. The toolkit gels nicely with the Eclipse editor and is easy to program. I have to learn the features of this toolkit, and design my solution. But this Tooolkit has serious restrictions in accessing the client resources(Local filesystem) one my big requirements. But the Toolkit is feature rich to develop smart web applications and tools.

Different Technologies are meeting my  different requirements but none meeting all alone and not fully interactive with each other. I still have my task in hand even after two  days,  but with the experience I came across another question Google is focusing on web based technology, so is the Microsoft till Windows vista has good dependency on Internet explorer , but is google looking at web platform as future as only the other way to crak the Microsoft's dominace ? As the missing feature from one google offering and availability in other and less interoperability is an upset. Or is it just a verification of the fact that "Google gives birth and then forgets about his childrens".

I got hope with the Google technology but not the solution. Google Web Toolkit is better for developement of smal and interesting web tools but a good all in one application I found only  Microsoft offereing good technology  platform,  may be Google need some more time to mature its technology offerings(Except Search, its awesome).

With my  experience I can rate 7/10 for Google Web Toolkit, good platform, but the foundation needs to eb strengthened.

I would refer Google Toolkit for usage,  but its rich feature support and technology offerings will decide the acceptance level. But I donn find Google Web toolkit in its current shape can revolutionize a new way of application development on large scale.

Good tutorial on Google Web toolkit is: - http://gwttutorials.com/2009/07/23/getting-started/