Thursday, February 11, 2010

Google Buzz - A better Twitter?

Buzz Me...This is what people might say sometime from now instead of saying Tweet Me. Google Buzz is a new app similar to Twitter. However, it extends the functionality to share photos, videos and much more.  Some features are like Facebook postings where it automatically pulls thumbnails from the links, you can like the Buzz or comments on it. It sits right inside gmail and integrates with the inbox. It also provides integration with the already existing popular sites such as Twitter, Flickr, Picasa and Google Reader. Google Buzz is also available from mobile phones. You can share your Buzz publicly or with a private group. It will also pull frequently contacted friends from gmail automatically and starts following them. 

Quite a cool app huh? But the main question here is why Twitter is so popular? and Can Google Buzz be a better Twitter? The main reason for the popularity of Twitter is its simplicity. No fancy stuff. Just write short updates. Now with Google Buzz you can do a lot. Will people consider this as a cool way of sharing stuff or a burden of loaded features? The time will tell. So far Google Buzz looks cool as it offers many cool features. And who says you need to stop using Twitter and leave your friends. Google Buzz lets you integrate with Twitter as well.

I think Google Buzz is a better Twitter. What do you say?

Tuesday, January 19, 2010

Three steps to pass ACE exam for Flex 3 and AIR

Yesterday I appeared for Adobe Certified Expert test for Flex 3 and AIR. Yes, I passed it. Though I could have scored better, I had to satisfy myself with 84%. 

I had given myself lot of time to prepare for this exam. I have been googling for resources to prepare for the exam. I was able to find useful information on some sites/blogs. However, most of them scared me with their experiences of the exam. People had prepared for 3-4 months but still they were not able to pass it. Whenever I felt I was ready for the exam, I remembered these sites and got scared. I had been pushing the exam date for so long because of this fear only. Finally I decided to appear for the exam. After answering about 5-10 questions I started feeling very comfortable. I completed the exam in about 30 mins and passed it comfortably. Though I was not very happy with the result, I also felt relieved that it wasn't that bad as mentioned on those blogs. 

Believe me there is nothing to worry. You can easily pass this exam by following three simple steps mentioned below. 
  1. Download the exam preparation guide from adobe. This pdf lists all the topics covered in the exam.
  2. Go through the Flex help of Live Docs to study about the topics mentioned in the pdf. Maintain your focus on the topics mentioned in the pdf.
  3. Test your knowledge with Attest.
You are all set for the exam after following these three simple steps. Attest is really helpful. You will find similar questions asked in the actual exam as given in Attest. 
All the best.

Friday, September 11, 2009

Wave @ Adobe

Today, we are involved in many activities on web. Be it social networking, forums, blogging, shares or anything that is of our interest. We also want to keep ourselves updated on the latest happenings of our interest. ¬¬¬¬What do we do to see if there has been any update on the website we are following? We simply navigate to the website login and check if there has been any update or not. Well, if I look at it from the productivity and ease of use perspective, it sucks. I need to constantly navigate to the websites of my interest and see if there has been any update. Many times there would be no update and we would be wasting our time in just checking that there is nothing new. Also, I need to open many websites to get to the updates of my interest in all the areas I like.

How about a notification system right there on your desktop which keeps track of all the websites of your interests and notifies you of any update which has taken place? That’s what Adobe Waves does. Adobe Wave is a combination of Adobe Wave Publisher Portal, Adobe Wave Services and Adobe Wave Desktop Client. Publishers need to use REST API to publish the updates of their websites in the form of notifications. Each notification contains a direct link to the update on publisher’s website. These notifications can be customized for branding with logo, background colors etc.

Users need to install Adobe Wave Desktop Client on their desktop. Since this is an AIR application, users also need to have AIR runtime installed. Once installed, user can configure the client to follow websites of his interests. If the website requires login credentials, the client will ask the user for it once. Adobe Wave is committed to not share user’s personal information with anyone including login credentials. User can stop following any website anytime. Whenever, there is an update on the websites a user is following, Adobe Wave will display a notification on the desktop itself.

Looks good to me…What do you say...?

Monday, July 27, 2009

Wave @ Google

Google Waves is an exciting collaboration and communication platform to be released later in the year of 2009. This is, as conceived by Google, not only a platform but also a product and protocol. Waves will open new dimensions for collaborating and communicating on the web. Some of the most popular methods of collaboration and communication on the web are E-Mail, Instant Messaging, Blogs, Social Networking Websites and Wiki. Waves aim to bridge the gap between all these methods and provide one platform to integrate all of these.

The philosophy of Waves is to have single application providing various types of collaboration and communication methods. A conversation thread is called Wave in Waves product. A user starts communicating with another user by creating a new wave and adding participants in that wave. Following are some of the cool features of wave communication:

  • A configurable feature to see what the other user is typing character by character, without waiting for the user to press Done button. This is how Waves extend the functionality of Instant Messaging.
  • The wave acts as an email once the communication is over as it sits in the inbox of each participant. Other participants can reply to this wave just like an email.
  • New participants can be added at any point of time in the conversation and they can see the whole thread of communication and participate in that.
  • If someone wants to reply in the context of some text lying somewhere in the middle of the whole conversation thread, they can just select the text and reply there. This reply will appear ‘inline’ with the text making it more relevant in the context. A Participant can choose to send the replies to only selected participants.
  • Waves can correct the spelling not just by looking in a dictionary for words but it also senses the context and it suggests correct word in the context of the sentence. It also has the support for right to left text with multilingual support.
  • All the participants can take part in editing one wave concurrently (which is live and seen by all participants as it is being edited). One of the reasons you would do that is to take meeting notes while allowing other participants to add/modify notes on the fly without waiting to receive emails from everyone for their notes. Creating a design document collaboratively is another application for this feature. The edited part by other participants than the originator of the wave will be seen as highlighted part making it easy to figure out what was edited. This can also be considered as wiki functionality where participants can edit the document collaboratively.
  • A wave can contain links to other waves making it possible to jump between waves easily.
  • One of the powerful features is to be able to embed a wave in a website. Embedding a wave on a website will provide all the controls to reply back and participate in the conversation.
  • A wave has the support for Google Search which displays the search results right there and links can be embedded in the wave from that search. No need to go to Google Search in a separate window.
  • Waves can also be integrated with numerous applications such as Twitter, Orkut, Bug Tracking systems, Mobiles, Google Maps etc.
  • Integrating Waves with Google Maps not only inserts the map in a wave but also fully functional. If a participant zoom in/out or move the location, other participants also see that live making it possible to discuss holiday plans online.
  • Developers can create extensions which extend the functionality of a wave and can be embedded within a wave. These extensions may be developed for various needs including polls or games. These extensions also update their states on the fly as participants interact with them. One example for such extension is Polly which allows the participants to conduct polls and see the results live with graphs etc. A chess game is another example.
  • Another powerful feature of Waves is to playback the whole threaded discussion. As a new participant is added, he can playback the conversation and see how the discussion took place. Another application is to see all the moves in a chess game. This can also be used for the functionality of source safe as all the versions of the conversation are stored.
  • Waves have the support for rich media including images, audio and video embedding in the wave communication which are seen by the participants of the communication the moment these are added in the wave. Participants can drag and drop media elements from desktop into a wave.
  • All features of Waves have been developed using HTML and JavaScript. Drag and Drop requires a plug-in but Google is proposing this feature also to be built into web browsers itself.
  • Google Waves is open source.

A short note on Google Waves being a Product, Platform and Protocol.

Product: Google Waves is a product with its own set of functionalities as mentioned above, look and feel etc.

Platform: Google Waves functionality can be extended with the help of extensions allowing developers to add more power and fun to waves.

Protocol: Other companies, individuals can develop their own version of Google Waves product and Google is still committed to support the communication with these products no matter if these are the competitors. One such product which exists is ACME Waves. Users of both these products will be able to communicate using their own products.

You can watch a full demo of Google Waves here.

Wednesday, July 8, 2009

Getting Started with Flex – for Newbies

Relax and enjoy working in Flex is what I would like to tell you guys. Flex is a wonderful tool for developing Rich Internet Applications with ease. Pre-requisite to learn Flex is just basic programming logics. Flex takes care of many things for you on its own.

As a Flex developer, you first need to understand its architecture. Flex has component based architecture. That means Flex will provide (or you can create your own) components, you will use these to layout your application and write business logics. In Flex, there are two ways of developing an application, MXML or/and ActionScript 3.

MXML is an xml based language developed by Macromedia before Adobe Systems acquired Macromedia. There is no official meaning for the acronym MXML, but the backronym used by some developers is “Magic eXtensible Markup Language”. MXML is primarily used to layout the application interface (which can be done in Design View of Flex builder which eventually generates MXML tags). However, MXML can also be used to write business logic or application behavior for small applications. MXML can be used in conjunction with Action Script to write complex business logic for applications. It gives an opportunity to a person with not very strong in programming background to be able to develop RIA with ease.

ActionScript is Object Oriented programming language with all the features a programming language provides. ActionScript can be used to write complex business logics for the applications. It can be mixed with MXML code or can be kept in separate files to improve maintainability. You can write your own classes, create custom components and use them in your applications.

The output of a Flex application is SWF which is targeted to Flash Player 9 or above and it runs within a browser. Flex has some effects and transitions which can be used to create cool interfaces. One can also extend and create his own effects in Flex.

Flex applications run on client side and have no direct access to database resources or other resources which are not allowed to be accessed by client applications. However, Flex applications do have a way to connect with such type server side resources with the help of Web Services or Remote Procedure Calls. You can use server side technologies such as Java, .Net to write Web Services and access them in Flex to provide dynamic data.

Application development in Flex can be done by using free open source Flex SDK or Flex Builder 3 (Flex 3 is the latest version of Flex and the next version will be called Gumbo) Software provided by Adobe. Flex Builder can help a developer accelerate application development. If you are looking forward to develop RIA in Flex, there are many nice books available along with the resources/tutorials provided on Adobe site. Some of the books you may consider are McGraw Hill’s ‘Flex 3 A Beginners Guide’ or ‘The Essential Guide to Flex 3’ by friends of ED.

Happy Learning…