Skip to main content

How would you like your Java? Sunny or Googly?

Whatever little bit I read about recently held JavaOne 2006, the biggest news undoubtedly was created by the man at the helm himself. Whole world (well almost complete Java Developer's community) waited with baited breath as Sun Microsystem's new CEO Jonathan Schwartz raised the issue about Java being open sourced and then left it open!

There are those who love its being open sourced, those who hate its being open sourced and those who simply don't care now and won't care about its getting open sourced till they come up against any compatibility issue or something that really makes using Java simpler or better or both (Imagine an integrated AJAX-like API in Java6.0!)

Apart from that the conference was buzzing loud (again this is what my RSS Feeds have told me!) with chatter about new Frameworks, Web 2.0 (O'Reilly please don't send me a legal notice for using that term!) and obviously AJAX. And due to all this 'new stuff' there was another question: Has J2EE become too old and bulky for Web Application Development? I can't answer that question but I would love to hear Rod Jhonson's take on that (I am very sure that he will find some arguementto blame EJBs for this!)

But for me as a developer, Google releasing their new API, Google Web Toolkit (GWT) for AJAX development in Java was the greatest news. Not only they have made AJAX development easier, but also opened this for many more developers worldwide who wanted to do AJAX but couldn't due to JavaScript being involved!

In past couple of years, Google has almost routinely come up with new Java APIs for developers. They started with Google WebService API, which was an instant hit and produced many applications with developers being able to access Google Database and simulate it's features. I am not very sure about who was the first to release Map API, Yahoo (their API is based on JavaScript and Flash) or Google (again JavaScript based). Then there is Google Desktop API for creating desktop applications, mainly search and indexing tools. A few weeks ago Google released Google Sitemaps, an API for submitting your URL to Google and it involves creating sitemap for a site. And now this GWT.

I think Google is playing well. They don't have a reputation in OpenSource arena and hence need not be bothered about not being sufficiently 'open' and that's pretty understandable as well. And on the same note by giving the Java Community these APIs to play with they position themselves as a 'friendly' company. You might even say that they are sufficiently open, as much as they could!

Lately most of the companies have started following this route. Microsoft wants you to develop your own widgets to be used with Live.com and Yahoo has a really interesting Yahoo Developer Network (even for PHP Developers!)

So amateurs like me can tweak around with these biggies and create something amusing! Who cares if Java is open source or not!

Comments

Popular posts from this blog

How to upload to Google Cloud Storage buckets using CURL

Signed URLs are pretty nifty feature given by Google Cloud Platform to let anyone access your cloud storage (bucket or any file in the bucket) without need to sign in. Official documentation gives step by step details as to how to read/write to the bucket using gsutil or through a program. This article will tell you how to upload a file to the bucket using curl so that any client which doesn't have cloud SDK installed can do this using a simple script. This command creates a signed PUT URL for your bucket. gsutil signurl -c 'text/plain' -m PUT serviceAccount.json gs://test_bucket_location Here is my URL: https://storage.googleapis.com/test_sl?GoogleAccessId=my-project-id@appspot.gserviceaccount.com&Expires=1490266627&Signature=UfKBNHWtjLKSBEcUQUKDeQtSQV6YCleE9hGG%2BCxVEjDOmkDxwkC%2BPtEg63pjDBHyKhVOnhspP1%2FAVSr%2B%2Fty8Ps7MSQ0lM2YHkbPeqjTiUcAfsbdcuXUMbe3p8FysRUFMe2dSikehBJWtbYtjb%2BNCw3L09c7fLFyAoJafIcnoIz7iJGP%2Br6gAUkSnZXgbVjr6wjN%2FIaudXIqA

Running Apache Beam pipeline using Spark Runner on a local standalone Spark Cluster

The best thing about Apache Beam ( B atch + Str eam ) is that multiple runners can be plugged in and same pipeline can be run using Spark, Flink or Google Cloud Dataflow. If you are a beginner like me and want to run a simple pipeline using Spark Runner then whole setup may be tad daunting. Start with Beam's WordCount examples  which help you quickstart with running pipelines using different types of runners. There are code snippets for running the same pipeline using different types of runners but here the code is running on your local system using Spark libraries which is good for testing and debugging pipeline. If you want to run the pipeline on a Spark cluster you need to do a little more work! Let's start by setting up a simple standalone single-node cluster on our local machine. Extending the cluster is as easy as running a command on another machine, which you want to add to cluster. Start with the obvious: install spark on your machine! (Remember to have Java a

java.lang.IllegalArgumentException: Malformed \uxxxx encoding

I was getting this exception during build while running ant. Googling didn't help much and I was flummoxed because the same code was running fine till now. My code reads a text file and does some operations on the basis of values read. It was only when I saw the text files I understood the error. I had copied the text in wordpad and saved it as .txt file. Wordpad had put lot of formatting information before and after the content. Also there was "\par" after every line, which was giving this error. So moral of the story: if you get this exception check your properties file (or any other file that your code might be reading.)