RIA, Web 2. 0 and Curl

In my previous posting on RIA, Web 2.0 et al, I mentioned about some frameworks and toolkits and runtime etc.

And then I get a comment from the Curl Team. Have a look at the comment here.

I still have not evaluated Curl but to get started with, looks interesting. So, at this point in time – I just mention about it that there exists something called Curl. :)

Whether it is suitable or not, or can it scale up to the requirements — I still have to evaluate.

Adobe Flex, RIA and Web 2.0

Last week I delivered a week long training on Adobe Flex 3 (yet again). Apart from the technologies – Adobe Flex and ActionScript – the training aimed to focus on Web 2.0 and RIA.

Web 2.0 and RIA, today, are more or less established philosophies.

However, what I think is that the world is heavily divided on which framework / toolkit to go for. Most of the web revolves around JavaScript & Ajax and/or Flash & ActionScript. Slowly and gradually, Silverlight & WPF/JavaScript seems to be making inroad on the development front – not quite sure how fast.

So, I thought let me try to compile a few frameworks (partial list inspired from the one at Wikipedia):

Barring Adobe Flex, all other frameworks use a common technology – JavaScript and Ajax.

However, some toolkits like Dojo uses / used Flash for offline storage. Some of them are moving to Google Gears for offline store.

And at the moment, I have to rush to the market… will build on this in my subsequent articles.

A Trainer’s Life – Why he must be a team!

Today, I will try to answer a question, “Why an individual, working directly with end client, cannot survive long in training ?”

Well, this question is based on my perspective – “An indiviual cannot go long”.

Or, as we call in Hindi, “Akela Chana Bhaand Naheen Phod Sakta (अकेला चना भाड़ नहीं फोड़ सकता)”

Given below are my justifications, based on my experiences.

Let’s try to look at the activities in a smart trainer’s life:

  • Know / Learn, in depth, about the subject to provide training on.
  • Have / Get practical knowledge to be able to provide effective training. Otherwise, it remains a pure theoretical “teaching” rather than practical “training”
  • Prepare effective case-studies, that more real-world than theoretical. The training should comprise of some “best practices”.
  • Be prepared to answer queries from the “related areas” rather than only “the subject / topics”
  • At times, sit with the team undergoing training to analyze their project and provide best approach for implementing solution to business problem.
    Trainer should understand the business problem as opposed to only technical problem since unless a technology solves the business / human problem, the technology or solution is of no use!
  • Ensure that he is on the cutting edge of the technology, lest he becomes obsolete.
  • Prepare the literate to be handed over to the audience.

However, if the trainer is an individual he will need to, additionally, work on the following:

  • Negotiate price.
  • Check his availability and giving immediate commitment, which he / she may not want to do.
  • At times, run around places at the client premises to get his payments. The payment cycle can be from around 10 days to 60 days.
    Which means that the trainer cannot work with the companies where the payment cycle is long lest he has enough buffer with himself.
  • Look at taxes, especially TDS
  • Ensure that the tax is not deducted for reimbursements. Ensure that Debit Note is taken care of appropriately.
  • Participate in regular “vendor meets” organized by the clients.
  • Prepare the literate to be handed over to the audience. Here, the physical delivery – may be a book or a CD/DVD etc.

Now, my simple question – “How much of this can an individual do effectively ?”

Once he starts running around to collect the payments, his precious training time is gone. Also, once he receives the payment after running around, he may be simply too tired physically to check up with the latest in the world.

At least two people are required. One to focus on the first set of activities, and the other for the latter set.

That’s how we – Yashwanth C and Gaurav Vaish – started Edujini.
I’ll find time to write something on the “history of Edujini” later on…

Dojo on Google Web Toolkit

My real love for GWT started only a couple of days ago… and it prompted me to get started with Dojo on GWT.

I have, so far, written a couple of core-classes in Java mainly to abstract out the interaction with JavaScriptObject.

My next target was to directly jump on to dijit, and start creating the UI. And then I realized that it uses mixins. And now I am left wondering what’s the best way to handle mixins.

For the new comers, JavaScript allows single inheritance but Dojo (and other libraries) make use of mixins to pseudo-inherit methods and properties from other objects by copying them to the sub-object.

In Java, this can be achieved only by making use of interfaces. The other possibility is to introduce a class between the parent and the child class that encapsulates the mixin objects.

I think the latter is a better approach. Simply expose the object or may be create delegate methods.

Let me think over it… what’s the best way to marry Java and JavaScript.

19 year-old gamer becomes mayor of Oklahoma town

This is a good news, so it seems. Young blood looking to take control and put things straight. I wish it happens in my country as well. Note that the position is an unpaid post… so, no monetary incentives for Tyler Hammons.

Associated Press reports, “Muskogee, Okla., teen ready for mayoral challenge”. It reads:

The University of Oklahoma freshman is moving out of a dorm and back in with his parents as he gets ready to be sworn in next week as mayor of this 38,000-person city made famous by the Merle Haggard song “Okie From Muskogee.”

However, my favourite is:

As mayor, his first priorities are the creation of an independent ethics commission to monitor elected and appointed city officials. He also wants to establish campaign finance reporting requirements for those running for office.

Media does it yet again

I really don’t know when will the Indian Media become socially responsible.

I cite media as one of the biggest reasons for continuation of Casteism and call for Reservations in the country. I think India is the only country in the world that takes pride in being called backward and people agitating to include themselves in the backward class. What a Shame!

Take the latest incident here, e-Paper from Times of India, May 29th, 2008, Bangalore Edition or directly this item.

I don’t really understand what is the need of the media to dig into such issues. If the categorization is done on the basis of region, gender, age, educational qualification, economic background etc demographics, probably it makes sense. And they are measurable. What’s cast, btw?
Caste! What a ridicule. And unless media gets responsible, I think we will continue to lose lives and property. What do we gain – I am yet to take a note. Some recent incidents:

Hope there’s some saviour who takes off Caste from the political agenda and from the front page in newspaper, and more importantly, does not call for unnecessary articles like the one I mentioned earlier.

Let’s aim towards making an equal India. Classify, but not divide. Segregate but not exclude.

Is anybody listening out there?

Google Web Toolkit

On Monday, I talked about the training on Visual Studio Team System 2005 Extensibility and I said that I would probably post across a sample piece of code.

But I did not get time.

What more interests me is the web. And there is Google Web Toolkit to help us write structured JavaScript in Java. Sounds great, isn’t it?

So, what I did was to quickly compile a couple of articles on GWT and post at Eduzine™ here and here.

Enjoy working with Google Web Toolkit, JavaScript and Ajax!

Windows Image Acquisition and Windows Portable Devices

I had been working with WIA (for Windows XP) and WIA 2.0 (for Windows Vista) to design an application to capture images.

WIA for Windows XP works perfectly fine. And WIA 2.0 is supposed to do the same on Vista.

And then, I hit a hurdle – WIA 2.0 always gives me “0 devices” while using EnumDevices method. Finally, I hit yet another set of documents – Windows Portable Devices (WPD) here.

What the heck! Do I need to rewrite the entire application for Windows Vista? What does Microsoft want? Spend all time and money only to rewrite entire code every time a new version is released from their side?

At times, I really hate to develop any application on Windows.

The only good thing, at least at moment as it seems, is .Net Framework. At least, there I need to do minimal work. I wish it was the same case elsewhere also.

Events during training on Monday

Without any introduction, let me just list down some intersting events of the day…

Reached the entry gate of the company premises only to find that the contact person is on leave.

The contact person did not delegate his responsibilities, if at all any, to somebody else.

Upon reaching the training room, there was not a single computer for the audience to lay hands on for the case studies. Hey, you know that it’s an IT Training.

Read more …