<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-27924845</id><updated>2011-08-23T17:46:30.857+05:30</updated><category term='SunTechDays'/><category term='jdbc'/><category term='JSP'/><category term='IT'/><category term='Repository'/><category term='donate'/><category term='BarCamp'/><category term='open source'/><category term='applet'/><category term='childhelp'/><category term='Trekking'/><category term='jar'/><category term='Merger'/><category term='WSDL'/><category term='Nucleus'/><category term='Community'/><category term='Trends'/><category term='sapient'/><category term='ATG'/><category term='Axis'/><category term='FormHandlers'/><category term='windows'/><category term='wealth management'/><category term='IT News'/><category term='Apache'/><category term='travelling'/><category term='stocks investment trading'/><category term='PDF'/><category term='Java SCJP'/><category term='tata'/><category term='bcb4'/><category term='object'/><category term='Tech'/><category term='Jobs'/><category term='Entertainment'/><category term='hcl'/><category term='Banking'/><category term='Java'/><category term='web services'/><category term='google sms'/><category term='DevCamp'/><category term='Stocks'/><category term='Profession'/><category term='Business'/><category term='SOAP'/><category term='Careers'/><category term='movie'/><category term='AdSense'/><category term='Sun'/><category term='Firefox'/><category term='DAF'/><category term='software'/><category term='Maven'/><category term='Eclipse'/><category term='search'/><category term='soapui'/><category term='fresher'/><category term='iText'/><category term='Curriki'/><title type='text'>&gt; My Space, My Voice ***</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>61</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-27924845.post-5454838635150480631</id><published>2010-11-25T21:25:00.001+05:30</published><updated>2010-11-25T22:03:24.492+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ATG'/><category scheme='http://www.blogger.com/atom/ns#' term='FormHandlers'/><title type='text'>11 most commonly used FormHandlers in ATG</title><content type='html'>&lt;p class="MsoNormal"&gt;Here are some of the commonly used FormHandlers, although &lt;a href="http://www.atg.com/"&gt;ATG &lt;/a&gt;provides many out of the box FormHandlers and even we can write our own custom FormHandlers by extending GenericFormHandler class provided by ATG.&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;CartModifierFormHandler&lt;/b&gt; -- This formhandler is used to modify a ShoppingCart by adding items to it, deleting items from it, modifying the quantities of items in it, and preparing it for the checkout process.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;ExpressCheckoutFormHandler&lt;/b&gt; -- The ExpressCheckoutFormHAndler is used to expedite the checking out of an Order. This supports creating a maximum of one Profile derived HardgoodShippingGroup and one Profile derived CreditCard, followed by committing the Order.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;SaveOrderFormHandler&lt;/b&gt; -- The SaveOrderFormHandler is used to save the user's current Order based on a descriptive name that the user specifies. A new empty Order is then made the user's current shopping cart. If a descriptive name for the Order is not specified, then one is created based on the user's Locale and date and time.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;ShippingGroupFormHandler&lt;/b&gt; -- The ShippingGroupFormHandler is used to associate ShippingGroups with the various Order pieces. This component is used during the Order checkout process, and any Order successfully processed by the ShippingGroupFormHandler is ready for the next checkout phase, which may be Payment.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;PaymentGroupFormHandler&lt;/b&gt; -- The PaymentGroupFormHandler is used to associate PaymentGroups with the various Order pieces. This component is used during the Order checkout process, and any Order successfully processed by the PaymentGroupFormHandler is ready for the next checkout phase, which may be confirmation.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;CommitOderFormHandler&lt;/b&gt; -- The CommitOrderFormHandler is used to submit the Order for final confirmation. This calls the OrderManager's processOrder method. If there are no errors with processing the Order, then the current Order in the user's ShoppingCart will be set to null and the submitted Order will become the ShoppingCart's last Order. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;CancelOderFormHandler&lt;/b&gt; -- The CancelOrderFormHandler is used to cancel the user's current Order, which deletes the Order from the ShoppingCart.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;RepositoryFromHandler&lt;/b&gt; -- Saves repository data to a database.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b&gt;ProfileFormHandler&lt;/b&gt; -- Connects forms with user profiles stored in a profile repository.&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;b&gt;SearchFormHandler&lt;/b&gt; -- Specifies properties available to a search engine.&lt;/p&gt; &lt;b&gt;SimpleSQLFormHandler&lt;/b&gt; -- Works with form data that is stored in a SQL database.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5454838635150480631?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5454838635150480631/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5454838635150480631' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5454838635150480631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5454838635150480631'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2010/11/11-most-commonly-used-formhandlers-in.html' title='11 most commonly used FormHandlers in ATG'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-815405670710091354</id><published>2010-11-20T21:00:00.010+05:30</published><updated>2010-11-25T21:23:48.323+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ATG'/><category scheme='http://www.blogger.com/atom/ns#' term='Repository'/><title type='text'>ATG's Data Anywhere Architecture</title><content type='html'>&lt;span style=";font-family:arial;font-size:100%;"  &gt;Just read one of the white papers from &lt;a href="http://www.atg.com/"&gt;ATG's site&lt;/a&gt; , liked the way they have explained about Data Anywhere Architecture. Thought to share the important points about it. Here we go :-)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Challenges --&lt;/span&gt;&lt;br /&gt;All enterprise applications need to access and manipulate data in some shape or form. Common challenges that have been found in building scalable, object-oriented, data-centric applications are:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Object-to-relational mapping –&lt;/span&gt; Issues surrounding how a relational data representation can be appropriately mapped to an object oriented programming language in a way that does not impact simplicity or data integrity.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Data source insulation –&lt;/span&gt; Issues surrounding the fact that relational/SQL database may not be the only form of data that the application requires. Other data source types may include LDAP directories or XML file-based assets.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Data caching –&lt;/span&gt; Issues surrounding the appropriate use of data resources without inflicting the high volumes of data source ‘hits’ common in high-traffic Web applications. Caching issues include the integrity and cache invalidation of the data used throughout a distributed application.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solutions --&lt;/span&gt;&lt;br /&gt;ATG’s Data Anywhere Architecture (DAA) meets all of these challenges. DAA gives developers a single API, called the Repository API, for using data resources in their applications. Behind the Repository API, DAA insulates and abstracts application developers from the specifics of the data source, so much so that the nature of the underlying data source may completely change without major impact. For example, customer data may reside in a SQL/JDBC database today, but will move to an LDAP directory in the future. DAA could handle this without having to touch any code within the application. The fundamental construct in the DAA is a ‘Repository’. A Repository is a logical view of a data resource (or resources), and to a developer, manifests itself as a set of JavaBeans to be used within their application. Like everything else in an ATG application, Repositories are represented as Nucleus components.&lt;br /&gt;&lt;/span&gt;&lt;p class="MsoNormal"  style="text-align: center;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GUolZ33RL9k/TO6COgpG6CI/AAAAAAAAA7o/_J8EhylCxY8/s1600/image1.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 239px;" src="http://1.bp.blogspot.com/_GUolZ33RL9k/TO6COgpG6CI/AAAAAAAAA7o/_J8EhylCxY8/s400/image1.png" alt="" id="BLOGGER_PHOTO_ID_5543511377131792418" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;The &lt;span style="font-weight: bold;"&gt;Repository &lt;/span&gt;is described in a Repository Definition XML file, which holds all appropriate information about the data’s physical location and how it is mapped to the logical view. The DAA consists of three primary Repository types for data access and manipulation.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SQL repository –&lt;/span&gt; A SQL Repository presents a logical view of data stored in a relational database, accessed through JDBC. The Repository definition file defines how the databases, tables, rows, and columns of a relational database are presented through the Repository API. It also defines the item caching strategy to be employed to optimize database read/write performance.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LDAP repository –&lt;/span&gt; An LDAP Repository presents a logical view of any data source that has an LDAP interface, typically used to store user data. The Repository definition file defines how the hierarchical structure and contents of an LDAP directory are presented through the Repository API.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Integration repository –&lt;/span&gt; In some cases, data sources may not be directly accessible, or information may be returned by an application rather than directly from a database or directory service. The Integration Repository presents a Repository API in front of some remote application processing. For example, an Integration Repository may be implemented to facilitate integration with SAP’s BAPI interface, or to retrieve information through the execution of a Web Service SOAP call. The Integration Repository is an open architecture into which these specific integration technologies can be plugged, while still presenting the same Repository API to the application developer. It also gives developer sophisticated data access and caching strategies to protect the application from remote latency and downtime.&lt;br /&gt;In addition to the primary types of Repository mentioned so far, there are two types of ‘overlay’ repository types that can be used.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Secure repository –&lt;/span&gt; A Secure Repository introduces application level security and access control to the data being accessed and manipulated. Working with ATG’s Security Management Framework, varying levels of security can be defined on the Repository contents, all the way down to individual data properties. Access Control Lists (ACLs) are written to describe the different levels of access that are provided to ATG’s User Model, which itself provides a rich structure to model user, organizational hierarchies and roles.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Versioned repository –&lt;/span&gt; A Versioned Repository introduces a versioning mechanism to one of the other primary Repository types. It provides all of the required tools to maintain, version and roll-back versions of a Repositories contents. Any existing SQL Repository may be turned into a Versioned Repository through additional configuration files. The Versioned Repository architecture is heavily used by ATG’s Content Administration product, but the versioning features are open for any other type of application usage that may be customer specific. Versioned Repositories integrate closely with ATG’s workflow capabilities that reside in the ATG Adaptive Scenario Engine. A Composite Repository is the final construct that can be especially useful for building applications requiring access to data in multiple data sources and formats.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Composite repository –&lt;/span&gt; A Composite Repository represents an aggregate view over other repository types, or over other composite Repositories (although one should not create too many layers of Composite Repository). The most common use of a Composite Repository is where a businesses customer data is distributed over multiple SQL databases and an LDAP directory, but a Web application wants a ‘single view of the customer’ to reduce application complexity.&lt;br /&gt;&lt;br /&gt;A Composite Repository provides some welcome simplicity.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GUolZ33RL9k/TO6CtK9gX2I/AAAAAAAAA7w/VkmXLUZL49w/s1600/image2.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 193px;" src="http://1.bp.blogspot.com/_GUolZ33RL9k/TO6CtK9gX2I/AAAAAAAAA7w/VkmXLUZL49w/s400/image2.png" alt="" id="BLOGGER_PHOTO_ID_5543511903887712098" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;To ensure scalability of Web site usage of SQL database, the DAA provides sophisticated caching and cache invalidation mechanisms for SQL Repositories.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;DAA provides all of the necessary tools to manage and flush caches at the repository item level. There are also mechanisms for managing distributed caches&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" face="arial"&gt;&lt;span style="font-size:100%;"&gt;and cache invalidation via JMS or TCP/IP. All in all, ATG’s Data Anywhere Architecture provides a rich, robust, and highly scalable set of tools to facilitate the use of enterprise data resources, while providing a loose coupling approach between data source and application.&lt;/span&gt;&lt;/p&gt;      &lt;p  class="MsoNormal" style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;If you want to further explore features of ATG repository or may like to compare it with Hibernate then follow the below link which points to ATG community site - &lt;a href="https://community.atg.com/docs/DOC-1894" target="_blank"&gt;https://community.atg.com/&lt;wbr&gt;docs/DOC-1894&lt;/a&gt;&lt;div style="display: inline; cursor: pointer; padding-right: 16px; width: 16px; height: 16px;"&gt; &lt;/div&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-815405670710091354?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/815405670710091354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=815405670710091354' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/815405670710091354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/815405670710091354'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2010/11/atgs-data-anywhere-architecture.html' title='ATG&apos;s Data Anywhere Architecture'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_GUolZ33RL9k/TO6COgpG6CI/AAAAAAAAA7o/_J8EhylCxY8/s72-c/image1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-1599779774090426989</id><published>2010-10-05T23:51:00.003+05:30</published><updated>2010-10-06T00:05:31.269+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ATG'/><category scheme='http://www.blogger.com/atom/ns#' term='Nucleus'/><category scheme='http://www.blogger.com/atom/ns#' term='DAF'/><title type='text'>ATG Dynamo Application Framework (DAF) and Nucleus</title><content type='html'>&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: small; "&gt;&lt;b&gt;H&lt;/b&gt;ope most of you must be knowing about Dynamo Application Framework (&lt;b&gt;DAF&lt;/b&gt;) and &lt;b&gt;Nucleus &lt;/b&gt;concepts in &lt;a href="http://www.atg.com"&gt;ATG &lt;/a&gt;. I have just tried to summarized the basic idea about it which I read mostly from ATG white papers. Hope it will be useful for someone who is new to the world of ATG. Any comments or suggestions are most welcome. Would try to write more practical examples about dynamo and commerce related topics.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial; font-size: small; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "&gt;The ATG Dynamo Application Framework is an application framework designed to help simplify the creation of Web applications. It provides a large number of the common services, components, and frameworks that an application developer needs when building highly scalable, feature-rich, enterprise Web applications. DAF provides three core ‘pillars’ to help a developer construct an application.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_GUolZ33RL9k/TKttMuvu5eI/AAAAAAAAA6Q/AqFqtRqgmG4/s1600/image001.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 202px;" src="http://2.bp.blogspot.com/_GUolZ33RL9k/TKttMuvu5eI/AAAAAAAAA6Q/AqFqtRqgmG4/s320/image001.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5524629433374139874" /&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;b&gt;Component model&lt;/b&gt; – Any software application requires a component model that provides structure and coherence to an application. The component model used by DAF is JavaBeans, managed in a component container called the Nucleus (read about it in below section).&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;b&gt;Data access model&lt;/b&gt; – All recent Web applications require information access and an ability to manipulate data. DAF’s data access and manipulation model is called the Data Anywhere Architecture.&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;b&gt;Messaging model&lt;/b&gt; – Responsive applications require a messaging architecture that allows events to be fired and appropriate actions to execute on the occurrence of those events elsewhere in the system. The JMS messaging model implemented by DAF is managed by a service called the Patch Bay.&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;Although not classified as a ‘main pillar,’ the user interface (UI) programming model by which these previously mentioned elements can be used is also important, and an area where ATG has innovated ahead of the general market. DAF uses JavaBeans as the primary, lightweight, component model. These JavaBean components are configured and linked together by .properties files within Nucleus. The DAF application framework can also be run on all major J2EE application servers (JBoss, WebLogic, WebSphere etc.).&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;b&gt;Nucleus&lt;/b&gt; is a ‘light weight’, yet feature-rich component model. It adheres to the “Inversion of Control” design pattern, whereby software components are discrete entities coupled together by the Nucleus container, rather than through direct reference. The services and structure provided by Nucleus makes building Java applications much simpler than when starting with the base set of Java and J2EE services. It promotes good interface-based programming principles and helps application developers take a modular approach, resulting in more modularized, maintainable, and understandable applications.&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;Nucleus is DAF’s component namespace for building applications from JavaBeans. Nucleus allows the assembly of applications through simple configuration files that specify what components are used by the application, what properties they should have, and how components hook together. Nucleus itself provides no application-specific functionality, since it is only a container in which components live, discover, and interact with each other. It is the collection of components that make up the functionality of an overall application. Nucleus organizes these application components into a hierarchical namespace.&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;A lot of what makes Nucleus special is encapsulated in the following core areas:&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;b&gt;Component creation and administration – &lt;/b&gt;Nucleus provides a simple way to write new components. It is a simple process to take any Java object and allow it to act as a component in Nucleus. Nucleus takes on the task of creating and initializing components. A very useful aspect of Nucleus is that applications don’t need to contain code to create instances of components. Instead, components can be created and administered through configuration files that specify the component and the initial values of its properties. If needed, administrators can alter the properties of ‘live’ components within the application. The component instances are then initialized automatically at start up time, rather than programmatically created. Nucleus employs a ‘lazy instantiation’ policy for creating components. One component is only created at the point it is referenced by another.&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;b&gt;Component layering and combination –&lt;/b&gt; Nucleus provides a convenient way to modify and extend component properties by organizing configuration files into layers. This layering allows application developers to add new components or override the settings of existing ones without modifying the configuration files shipped by ATG. Nucleus automatically combines the layers at application start-up. These layers are organized into ‘modules’ so the associated Java class files can be maintained with the configuration files, simplifying application maintenance and upgrade.&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;&lt;b&gt;Component scoping –&lt;/b&gt; To further increase its usefulness as a component model for Web applications, Nucleus makes it very easy for application developers to set the scope of their components. The scope can be set to ‘global’, ‘session’, or ‘request’,. Nucleus takes care of how the components are managed so that developers do not have to do any specific coding.&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;Nucleus includes a large number of out-of-the-box generalized service components that can be used in many ways within an application. Service components include TCP Request Services, Scheduler Services, ID Generation Services, Resource Pools, Queues, Email Senders and Listeners, and many more. Each Nucleus service has a unique Nucleus name. For example, the default javax.sql.DataSource component is located at /atg/dynamo/service/jdbc/&lt;wbr&gt;JTDataSource&lt;/p&gt;&lt;p style="margin-bottom: 0.0001pt; "&gt;It is clear that emerging models typically tackle one or the other element of DAF but not everything. Hibernate tackles the data access problem, Struts tackles the UI development problem, etc. It is often left to the application developer to figure out how these different initiatives are used together.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  &gt;&lt;span class="Apple-style-span" style="border-collapse: collapse; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-1599779774090426989?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/1599779774090426989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=1599779774090426989' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/1599779774090426989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/1599779774090426989'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2010/10/atg-dynamo-application-framework-daf.html' title='ATG Dynamo Application Framework (DAF) and Nucleus'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GUolZ33RL9k/TKttMuvu5eI/AAAAAAAAA6Q/AqFqtRqgmG4/s72-c/image001.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-5319672667399782856</id><published>2010-04-16T12:12:00.000+05:30</published><updated>2010-04-16T12:13:51.240+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='object'/><title type='text'>playing around equals() and hashCode() methods of Object class</title><content type='html'>Why, when &amp;amp; how of overriding equals() and hashCode() methods of Object class&lt;br /&gt;&lt;br /&gt;As we know the Object class has five non final methods namely equals, hashCode, toString, clone, and finalize.&lt;br /&gt;I believe they were primarily designed to be overridden according to specific needs.&lt;br /&gt;I am just trying to summarize my understanding around these two methods. When should we override these and how we should implement these etc. Any comments/discussion/feedback would be highly appreciated on above topics.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Overriding the equals method -&lt;/span&gt;&lt;br /&gt;Ideally you should override the equals method when you want to specify the rules of logical equality of objects. Two objects are logically equal if they have the same values for the same uniqueness attributes.&lt;br /&gt;&lt;br /&gt;We need to implement an equivalence relation between non null object references. The rules to override equals method can be found on sun's site. They basically talk about Symmetry , Reflectivity Consistency &amp;amp; Transitivity among the objects.&lt;br /&gt;&lt;br /&gt;The rule for the null reference is that any non-null reference value x, x.equals(null) must return false.&lt;br /&gt;&lt;br /&gt;Object class already provides an implementation of the equals method. It is&lt;br /&gt;          public boolean equals(Object obj) {&lt;br /&gt;                             return (this == obj);&lt;br /&gt;          }&lt;br /&gt;&lt;br /&gt;The method above simply tests for equality of object references. This is not always the desired behavior, particularly when comparing Strings. That's why the String class provides its own implementation of the equals method.&lt;br /&gt;&lt;br /&gt;For example suppose we have a Student class which has a constructor like this.&lt;br /&gt;        public Student(String name, String id, int age) { …}&lt;br /&gt;&lt;br /&gt;Now if you create two student objects with the same attributes, you'd want those two objects to be the same student. If you write a code like below then you will get false as result.&lt;br /&gt;&lt;br /&gt;       Student student1 = new Student("sajid", "456789", 28);&lt;br /&gt;       Student student2 = new Student("sajid", "456789", 28);&lt;br /&gt;       System.out.println(student1.equals(student2));&lt;br /&gt;&lt;br /&gt;Result is false because student1 and student2 are different references and the equals method being used here (from the object class) is comparing references. So here we need to override the equals method to check for our uniqueness attributes for our comparisons to work.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Caution: we should not do a mistake of overloading the equals method instead of overriding it. So the argument to the equals method must be an Object.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;See the difference between below two statements. You will understand it.&lt;br /&gt;        public boolean equals(Object obj)&lt;br /&gt;        public boolean equals(Student student)&lt;br /&gt;&lt;br /&gt;A good implementation of equals should start with symmetry test. Means x.equals(x) should always return true. If this it self is failing then no need to proceed further.&lt;br /&gt;&lt;br /&gt;Another important point would be to test the instance of the object passed to equals() method. People might pass a String object instead of Object in the argument. Here instanceof operator helps us to check this.&lt;br /&gt;&lt;br /&gt;instanceof also eliminates the trivial cases when the object passed is null because it returns false if the first argument is null.&lt;br /&gt;&lt;br /&gt;So whole implementation might look like this …&lt;br /&gt;&lt;br /&gt;       public boolean equals(Object obj) {&lt;br /&gt;                   if (this == obj) {&lt;br /&gt;                             return true;&lt;br /&gt;                    }&lt;br /&gt;&lt;br /&gt;                   if ( !(obj instanceof Student)) {&lt;br /&gt;                              return false;&lt;br /&gt;                    }&lt;br /&gt;&lt;br /&gt;          Student student = (Student)obj;&lt;br /&gt;                           return age == student.getAge() &amp;amp;&amp;amp; name.equals(student.getName())&lt;br /&gt;                                                  &amp;amp;&amp;amp; id.equals(student.getId());&lt;br /&gt;&lt;br /&gt;           }&lt;br /&gt;&lt;br /&gt;Now System.out.println(student1.equals(student2));  will print true.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Food for thought -&lt;/span&gt;&lt;br /&gt;Note that we deliberately compared the ages (integers) first. The &amp;amp;&amp;amp; operator has short circuit behavior, meaning that if the age comparison fails the rest of the comparison is abandoned and false is returned. It is therefore a performance advantage to have the cheaper (memory wise) tests first and the more memory demanding tests last.&lt;br /&gt;&lt;br /&gt;Is there any situation when we should not override equals() ?&lt;br /&gt;Yes. When the references check is sufficient. This is when each instance of the class is unique. Other situation could be when parent class already has implemented the desired behavior then we need not bother.&lt;br /&gt;&lt;br /&gt;Now whenever we override the equals method, we must also override the hashCode method.&lt;br /&gt;So let's move ahead to hashing …&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Overriding the hashCode method -&lt;/span&gt;&lt;br /&gt;Why hashcode ? Simple the hashCode method is supported for the benefit of hash based collections. Basically this hash code value is used by hash based collections such as Hashtable, HashMap, HashSet, etc. for storing, retrieving, sorting, and other data structure operations.&lt;br /&gt;&lt;br /&gt;The contract says that If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result. It also says that the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified.&lt;br /&gt;&lt;br /&gt;It further says that It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results.&lt;br /&gt;&lt;br /&gt;So equal objects must have equal hashCodes. An easy way to ensure that this condition is always satisfied is to use the same attributes used in determining equality in determining the hashCode. Now we should realize why it is important to override hashCode every time we override equals.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The story of  hashtable and buckets .. (Some useful history)&lt;/span&gt; -&lt;br /&gt;we can think a hash table as a group of buckets. When you add a key-value pair, the key's hashCode is used to determine which bucket to put the mapping.&lt;br /&gt;Similarly when you call the get method with a key on the hash table, the key's hashCode is used to determine in which bucket the mapping was stored. This is the bucket that is searched (sequentially) for the mapping.&lt;br /&gt;If you have two "equal" objects but with different hashCodes, then the hash table will see them as different objects and put them in different buckets. Similarly you can only retrieve an object from a hash table by passing an object with the same hashCode as the object you are trying to retrieve. If no matching hashCode is found, null is returned.&lt;br /&gt;So let's say it again, "Equal objects must have equal hashCodes".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The best hashcode approach - &lt;/span&gt;&lt;br /&gt;We should try to make all unequal objects have unequal hashCodes. This means each mapping is stored in its own bucket. This is the optimal case for the hash table and results in linear search times because only the correct bucket needs to be searched for. Once the correct bucket is found, the search is complete. That's why the API docs said&lt;br /&gt;&lt;br /&gt;"However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables."&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;How do I implement hashCode ?&lt;/span&gt;&lt;br /&gt;Well we want it to be linked to the equals method in some way and so it must use the same attributes as the equals method.&lt;br /&gt;&lt;br /&gt;The hashCode method signature in Object class is -&lt;br /&gt;         public native int hashCode();&lt;br /&gt;&lt;br /&gt;The key thing to note here is that the method returns an integer. This means that we should try to get an integer representation of all the attributes that were used to determine equality in the equals method. The trick is that we should get this integer representation in a way that ensures that we always get the same int value for the same attribute value.&lt;br /&gt;Once we have the integers, it's up to us to find a way of combining them into one integer that represents the hashCode for our object.&lt;br /&gt;&lt;br /&gt;Whatever algorithm we use, we must make sure that the result is always an integer and will be the same integer returned for equal objects.&lt;br /&gt;So how do we determine the hashCodes for the attributes themselves?&lt;br /&gt;&lt;br /&gt;For the individual attributes values, you can use the following popular approach&lt;br /&gt;(Source: http://bytes.com/topic/java/insights/723476-overriding-equals-hashcode-methods  )&lt;br /&gt;&lt;ul&gt;&lt;li&gt;For boolean variables use 0 if it's true and 1 if it's false.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Converting byte, char or short to int is easy. Just cast to int. The result is always the same for the same value of the attribute.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;A long is bigger than an int. You can use (int)value^(value &gt;&gt;&gt; 32) . This is the method used by the java.lang.Long class.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;If the field is a float, use Float.floatToIntBits(value).&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;If the field is a double, use Double.doubleToLongBits(value), and then hash the resulting long using the method above for long type.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;If the field is an object reference and this class's equals method compares the field by recursively invoking equals, then recursively invoke hashCode on the field as well.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;If the value of the field is null, return 0 (or some other constant, 0 is more common but you might want to distinguish it from the boolean case).&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;Finally, if the field is an array, go through each element and compute each element's hashCode value. Use the sum of the hashCodes as the hashCode for the array attribute.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Let's look at some ways of doing it.&lt;br /&gt;A common approach is to choose a multiplier, say p, and then compute an int value by applying the following formula&lt;br /&gt;        hashCode = multiplier * hashCode + attribute's hashCode for all the attributes.&lt;br /&gt;&lt;br /&gt;For three atributes (a1, a2, a3), the hashCode would be computed in the following steps&lt;br /&gt;       hashCode =  multiplier  * hashCode  +  a1's hashCode //step 1&lt;br /&gt;         hashCode =  multiplier  * hashCode  +  a2's hashCode //step 2&lt;br /&gt;       hashCode =  multiplier  * hashCode  +  a3's hashCode //step 3&lt;br /&gt;&lt;br /&gt;Now putting it all together our Student class will look like this. .&lt;br /&gt;&lt;br /&gt;   public class Student {&lt;br /&gt;   String id;&lt;br /&gt;   String name;&lt;br /&gt;   int age;&lt;br /&gt;   private volatile int hashCode = 0;&lt;br /&gt;&lt;br /&gt;   public Student(String name , String id, int age) {&lt;br /&gt;       this.name = name;&lt;br /&gt;       this.id = id;&lt;br /&gt;       this.age = age;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;    String getName() {&lt;br /&gt;       return name;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   int getAge() {&lt;br /&gt;       return age;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   String getId() {&lt;br /&gt;       return id;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   public boolean equals(Object obj) {&lt;br /&gt;       if(this == obj) {&lt;br /&gt;           return true;&lt;br /&gt;       }&lt;br /&gt;       if (!(obj instanceof Student)) {&lt;br /&gt;           return false;&lt;br /&gt;      }&lt;br /&gt;       Student student = (Student)obj;&lt;br /&gt;       return age == student.getAge() &amp;amp;&amp;amp; name.equals(student.getName())&lt;br /&gt;       &amp;amp;&amp;amp; id.equals(student.getId());&lt;br /&gt;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;   public int hashCode () {&lt;br /&gt;       final int multiplier = 23; // we should use any prime number here like 23 or 31 etc&lt;br /&gt;       if (hashCode == 0) {&lt;br /&gt;           int code = 133;&lt;br /&gt;           code = multiplier * code + age;&lt;br /&gt;           code = multiplier * code + id.hashCode();&lt;br /&gt;           code = multiplier * code + name.hashCode();&lt;br /&gt;           hashCode = code;&lt;br /&gt;       }&lt;br /&gt;       return hashCode;&lt;br /&gt;   }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt; &lt;br /&gt;To test we can use a main() method in the above class like this -&lt;br /&gt;&lt;br /&gt;public static void main(String args[]){&lt;br /&gt; Student student1 = new Student("sajid", "456789", 28);&lt;br /&gt; Student student2 = new Student("sajid", "456789", 28);&lt;br /&gt; System.out.println(student1.equals(student2)); // prints true&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Another way to implement hashCode would be&lt;br /&gt;Similar to how we implemented hashCode our hash code calculation must involve all attributes of the class that contribute to the equality comparison of the class. For Car class example, the following would work:&lt;br /&gt;public int hashCode()&lt;br /&gt;{&lt;br /&gt;int hash = 7;&lt;br /&gt;hash = 31 * hash +&lt;br /&gt;  (null == this.licensePlate ? 0 : this.licensePlate.hashCode());&lt;br /&gt;hash = 31 * hash +&lt;br /&gt;  (null == this.vinNumber ? 0 : this.vinNumber.hashCode());&lt;br /&gt;&lt;br /&gt;return hash;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Java provides an implementation of hashCode for built-in classes such as String and other wrapper classes. If you have an int data type that is part of your equals comparison you can simply add, subtract, multiply, or divide it into your hash code value.&lt;br /&gt;Several APIs demand that the user must implement the hashCode() method. The reason is that these APIs are using hash based containers (like HashMap) to have a fast means of managing lots of objects (always comparing objects using equals() would need endless time).&lt;br /&gt;&lt;br /&gt;I will try to further dig into the internals of hashing and difference between different hash based collections and the best performance strategies around it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5319672667399782856?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5319672667399782856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5319672667399782856' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5319672667399782856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5319672667399782856'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2010/04/playing-around-equals-and-hashcode.html' title='playing around equals() and hashCode() methods of Object class'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-510836912670699716</id><published>2010-01-27T18:06:00.002+05:30</published><updated>2010-01-27T18:10:20.971+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='childhelp'/><category scheme='http://www.blogger.com/atom/ns#' term='donate'/><title type='text'>Lets come forward</title><content type='html'>I don't know but it really gives me eternal happiness to help people around and i feel that's the way to live.&lt;br /&gt;we should always be concerned about others around. in recent times i have come across quite some statements , calls , adds , interview which attracts me to come forward for such good cause.&lt;br /&gt;&lt;br /&gt;I came across -&lt;br /&gt;&lt;a href="http://www.childlineindia.org.in/"&gt;CHILDLINE (1098)&lt;/a&gt; -- Country's first toll-free tele-helpline for street children in distress. just dail 1098.&lt;br /&gt;&lt;a href="http://www.worldvision.org/"&gt;WorldVision&lt;/a&gt; -- Here you can sponsor a child across the world , you can donate money and much more.&lt;br /&gt;&lt;br /&gt;I am trying to spread the word here and would like to get involved with them. i think your contribution is important no matter big or small.&lt;br /&gt;I also feel that these organizations need to come forward and bring greater transparency to common people. there is help available but most of the time people dont know about it.&lt;br /&gt;I request you all to share your experiences and association if any with any such organizations/NGOs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-510836912670699716?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/510836912670699716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=510836912670699716' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/510836912670699716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/510836912670699716'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2010/01/lets-come-forward.html' title='Lets come forward'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-5626614686917474724</id><published>2010-01-20T16:02:00.001+05:30</published><updated>2010-01-20T16:06:28.400+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sapient'/><title type='text'>The brand Sapient</title><content type='html'>Its been more than a year now at Sapient , i still remember few people used to tell me don't change company ,its not a good time(at end of 2008) , few told that you cant even survive 6 months at sapient due to slogging etc.. but i feel i made a right move and joined the right company.&lt;br /&gt;I can say its my kind of place. some of the things I really enjoy here is the open culture and unlimited freedom.&lt;br /&gt;Sapient is very unique in its own way. we follow different kind of processes here to make things work better.&lt;br /&gt;&lt;br /&gt;Some of the terms i learned/heard being at sapient (call it sapient lingo)--&lt;br /&gt;Retrofit&lt;br /&gt;Caveats&lt;br /&gt;Sync-up&lt;br /&gt;Gated&lt;br /&gt;Head-on&lt;br /&gt;Triage&lt;br /&gt;&lt;br /&gt;I wanna thank Rupinder for providing me an opportunity to join Sapient in the worst of economic conditions way back in Oct,2008.&lt;br /&gt;i am lucky indeed :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5626614686917474724?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5626614686917474724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5626614686917474724' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5626614686917474724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5626614686917474724'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2010/01/brand-sapient.html' title='The brand Sapient'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-7493164632624209613</id><published>2009-12-28T23:50:00.003+05:30</published><updated>2010-01-20T16:08:52.237+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='movie'/><title type='text'>Why just 3 Idiots? Why not the entire nation?</title><content type='html'>I truly enjoyed the latest flick of &lt;a href="http://www.aamirkhan.com/blog/login.php"&gt;Aamir&lt;/a&gt;, the preacher. It’s interesting to see Bollywood coming up with good messages  and this time for better education system. Its second tryst by Aamir, the first one was taare zamine per, where he tried to show the challenges around a student’s life and now again in 3 idiots he has brought some good points about the process we follow in colleges.&lt;br /&gt;Although this movie is loosely based on &lt;a href="http://www.chetanbhagat.com/blog/"&gt;Chetan bhagat&lt;/a&gt;’s 5 point someone but it has got its own charm and an entertaining way to put across the strong message. I believe it’s a good eye opener for all Indians including students, parents, teachers and honorable education minister. It a must watch for one and all. If you think you will go and get tickets at show time then you are wrong. Go with an advance booking. By the way I managed to get ticket in black :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-7493164632624209613?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/7493164632624209613/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=7493164632624209613' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7493164632624209613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7493164632624209613'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2009/12/why-just-3-idiots-why-not-entire-nation.html' title='Why just 3 Idiots? Why not the entire nation?'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-4897762571105331823</id><published>2009-12-22T17:35:00.000+05:30</published><updated>2009-12-22T17:37:42.829+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='jar'/><category scheme='http://www.blogger.com/atom/ns#' term='applet'/><title type='text'>Signed Applet and how to make a signed jar</title><content type='html'>&lt;span style="font-size: 100%;"&gt;&lt;span style="font-family: arial;"&gt;A signed Applet is a trusted Applet (applet will reside inside a jar). In order to get access to the file system all jar files in an application must be signed. By default for security reasons, Java applets are contained within a sandbox.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;This means that the applets can’t do anything, which might be threatening to the user’s machine (e.g. reading, writing or deleting local files, putting up message windows, or querying various system parameters).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Early browsers had no provisions for Java applets to reach outside of the sandbox. Recent browsers, however have provisions to give “trusted” applets the ability to work outside the sandbox. For this power to be granted to one of your applets, the applet’s code must be digitally signed with your unforgettable digital ID, and then the user must state that he trusts applets signed with your ID. The mistrusted applet can request to have privileges outside the sand box but will have to request the user for privileges every time it executes. But with the trusted applet the user can choose to remember their answer to the request, which means they won’t be asked again.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;Let’s see what it takes to create your own signed applets.  There are few tools given by &lt;a href="http://java.sun.com/"&gt;Sun&lt;/a&gt; to create your own signed applets. It mainly comprise of three main steps.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;   (1) First step is generating a keypair with the keytool.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;          &lt;span style="font-weight: bold;"&gt;D:/j2sdk1.5/bin/keytool -genkey -alias green -keypass greenpass&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;         green is the alias for the keypair, and greenpass is the password to access that alias(or keypair). The keypair&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;         will be stored in the file .keystore in your homedirectory unless you specify otherwise.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;         You'll be asked a lot of questions, you may lie or just hit enter!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;    (2) Create a self-signed certificate.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;         &lt;span style="font-weight: bold;"&gt;D:/j2sdk1.5/bin/keytool -selfcert -alias green&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;    (3) After the keypair has been generated the jar file can be signed with jarsigner.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;          jarsigner YourJarFileName alias&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;          &lt;span style="font-weight: bold;"&gt;d:/j2sdk1.5/bin/jarsigner Test.jar green&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;          It will ask for both passwords specified while generating the keys.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;The jar file has now been signed. Now you can distribute this jar file to anyone or it can run on any system with the privilege to access your file system.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;&lt;span style="font-weight: bold;"&gt;Note&lt;/span&gt;: this signature is only valid for 6 months. After that it will expire so you probably need to sign it again after 6 months. &lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-4897762571105331823?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/4897762571105331823/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=4897762571105331823' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/4897762571105331823'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/4897762571105331823'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2009/12/signed-applet-and-how-to-make-signed.html' title='Signed Applet and how to make a signed jar'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-2461365874314648542</id><published>2009-11-03T19:40:00.002+05:30</published><updated>2009-11-03T20:40:07.777+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='jdbc'/><title type='text'>New features in Java 6.0 (Mustang)</title><content type='html'>In this &lt;a href="http://java.sun.com/"&gt;Java &lt;/a&gt;release SUN has not done much changes at language level rather major enhancement is done in core, XML and desktop sections.&lt;br /&gt;&lt;br /&gt;Any feature or enhancement in Java is encapsulated in the form of a JSR (Java Specification Request) which details the need for a specific functionality to be available in the Java Platform that can be used by Applications. These JSR's will be reviewed and released by Java Expert Groups (JEG).&lt;br /&gt;&lt;br /&gt;Following the major list of features (JSRs') that comes with the Java 6.0.&lt;br /&gt;&lt;br /&gt;    Java Compiler API (JSR 199)&lt;br /&gt;    JDBC 4.0 (JSR 221)&lt;br /&gt;    Scripting in the Java Platform (JSR 223)&lt;br /&gt;    Pluggable Annotation Processing API (JSR 269)&lt;br /&gt;    Common Annotations (JSR 250)&lt;br /&gt;    Java API for XML Based Web Services - 2.0 (JSR 224)&lt;br /&gt;    JAXB 2.0 (JSR 222)&lt;br /&gt;    Web Services Metadata (JSR 181)&lt;br /&gt;    Streaming API for XML (JSR 173)&lt;br /&gt;    XML Digital Signature (JSR 105)&lt;br /&gt;    Java Class File Specification Update (JSR 202)&lt;br /&gt;&lt;br /&gt;I will try to explore and explain each of these JSR's in my future articles.&lt;br /&gt;The latest java 6.0 can be &lt;a href="http://java.sun.com/javase/downloads/index.jsp"&gt;downloaded from here&lt;/a&gt;. I am really excited about scripting framework, scripting API and new JDBC 4.0 API in this release.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;List of top 10 features in Java SE 6.0 adapted from  &lt;a href="http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javase6/beta2.html"&gt;SUN's site&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Web Services&lt;/span&gt;&lt;br /&gt;You get first-class support for writing XML web service client applications (death of Apache Axis?). No more messing with the plumbing (unless you really want to). You can also expose your APIs as .NET interoperable web services with a simple annotation.&lt;br /&gt;For developers who want to handle XML directly Mustang adds new parsing and XML to Java object-mapping APIs, previously only available in Java EE platform implementations or the Java Web Services Pack.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Scripting&lt;/span&gt;&lt;br /&gt;You can now mix in JavaScript technology with your Java technology source code, useful for prototyping. Also useful when you have teams with a variety of skill sets.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Database&lt;/span&gt;&lt;br /&gt;The final Mustang development kit will co-bundle the all-Java JDBC database, Java DB based on Apache Derby. This should enable developers (new to Java) to get a jumpstart on java development.&lt;br /&gt;Developers will get the updated JDBC 4.0, which focuses on ease of use. It contains many feature additions like support for XML as an SQL datatype and better integration of Binary Large OBjects (BLOBs) and Character Large OBjects (CLOBs) into the APIs. Additional features that improve ease of use include removal of some JDBC boilerplate and some of the new annotations that make SQL strings embed better into your JDBC application - like decorating your getAllUsers() method with an @Query(sql="select * from user") annotation, and that being all you need. More annotation love for you.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;More Desktop APIs&lt;/span&gt;&lt;br /&gt;GUI developers get a large number of new tricks to play like the ever popular yet newly incorporated SwingWorker utility to help you with threading in GUI apps, JTable sorting and filtering, and a new facility for quick splash screens to quiet impatient users.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Monitoring and Management&lt;/span&gt;&lt;br /&gt;The really big deal here is that you don't need do anything special to the startup to be able to attach on demand with any of the monitoring and management tools in the Java SE platform. Mustang adds yet more diagnostic information, and we co-bundled the infamous memory-heap analysis tool Jhat for forensic explorations of those core dumps.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Compiler Access&lt;/span&gt;&lt;br /&gt;Really aimed at people who create tools for Java development and for frameworks like JavaServer Pages (JSP) or Personal Home Page construction kit (PHP) engines that need to generate a bunch of classes on demand, the compiler API opens up programmatic access to javac for in-process compilation of dynamically generated Java code. Finally you don't have to save your code as a Java files and invoke javac to generate a classfile, a clumsy procedure at best.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Pluggable Annotations&lt;/span&gt;&lt;br /&gt;Java tool and framework vendors (and you) can define annotations and have core API support for plugging in and executing the processors that do the heavy lifting. It seamlessly integrates your custom annotations .&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Desktop Deployment&lt;/span&gt;&lt;br /&gt;Better platform look-and-feel in Swing technology, LCD text rendering (more clarity on LCD monitors like Vista), and snappier GUI performance overall. Java applications can integrate better with the native platform with things like new access to the platform's System Tray and Start menu. At long last, Mustang unifies the Java Plug-in technology and Java WebStart engines, which just makes sense. Installation of the Java WebStart application got a much needed makeover.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Security&lt;/span&gt;&lt;br /&gt;Mustang simplified the job of security administrators by providing various new ways to access platform-native security services, such as native Public Key Infrastructure (PKI) and cryptographic services on Microsoft Windows for secure authentication and communication, Java Generic Security Services (Java GSS) and Kerberos services for authentication, and access to LDAP servers for authenticating users.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Quality, Compatibility, Stability&lt;/span&gt;&lt;br /&gt;Sun has around 80,000 test cases and several million lines of code testing conformance. People have been downloading (and testing) snapshots of Mustang for the last 15 months and filing bugs. So even before beta several quality and regression issues were fixed. Performance is claimed to be better than J2SE 5.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-2461365874314648542?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/2461365874314648542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=2461365874314648542' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/2461365874314648542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/2461365874314648542'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2009/11/new-features-in-java-60-mustang.html' title='New features in Java 6.0 (Mustang)'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-4224729538490678777</id><published>2009-10-30T13:11:00.002+05:30</published><updated>2009-11-10T17:36:49.980+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='hcl'/><category scheme='http://www.blogger.com/atom/ns#' term='fresher'/><title type='text'>LAKSHYA program by HCL for freshers</title><content type='html'>HCL has introduced a unique program called LAKSHYA for 2009 and 2010 BE and MCA freshers where by they are proving an assured placement after the completion of this program. other features include live industry project wi-fi campus.&lt;br /&gt;&lt;br /&gt;To register visit &lt;a href="http://www.hclcdc.in/lakshya/registration.aspx"&gt;click here&lt;/a&gt;.  see the details below in their advertisement.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_GUolZ33RL9k/SvEw4MO4MrI/AAAAAAAAAl4/lvj3pCPem9w/s1600-h/hcl.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 369px; height: 400px;" src="http://4.bp.blogspot.com/_GUolZ33RL9k/SvEw4MO4MrI/AAAAAAAAAl4/lvj3pCPem9w/s400/hcl.JPG" alt="" id="BLOGGER_PHOTO_ID_5400151170108371634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;One thing i don't appreciate about this program is that students need to buy HCL laptops.&lt;br /&gt;i don't know why people have hidden agenda behind good work. I feel HCL is doing this program to boost their own revenues rather than helping the fresh talents :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-4224729538490678777?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/4224729538490678777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=4224729538490678777' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/4224729538490678777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/4224729538490678777'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2009/10/lakshya-program-by-hcl-for-freshers.html' title='LAKSHYA program by HCL for freshers'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GUolZ33RL9k/SvEw4MO4MrI/AAAAAAAAAl4/lvj3pCPem9w/s72-c/hcl.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-5146151296927368432</id><published>2009-08-26T18:23:00.004+05:30</published><updated>2009-08-26T18:34:25.821+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Stocks'/><title type='text'>Stock details on Gtalk by Zibika.com</title><content type='html'>It's really cool to see &lt;a href="http://www.zibika.com/"&gt;Zibika &lt;/a&gt;stockbot, a chat-based stock search service that allows users to check the current stock prices on BSE and NSE through Google Talk.&lt;br /&gt;You just need to add &lt;a href="market.zibika@gmail.com"&gt;market.zibika@gmail.com&lt;/a&gt;  as a friend in GTalk.&lt;br /&gt;Its so easy to use it, now no need to login to different sites to check stock prices. They have few very simple commands like&lt;br /&gt;&lt;br /&gt;Sensex                    --&gt; gives you sensex current points&lt;br /&gt;Nifty                       --&gt; gives you nifty current points&lt;br /&gt;BSE jindal steel     --&gt; gives you current price of jindal steel on BSE&lt;br /&gt;NSE axis bank      --&gt; gives you current price of axis bank on NSE&lt;br /&gt;&lt;br /&gt;Type BSE or NSE followed by the company name.&lt;br /&gt;&lt;br /&gt;I think stockbot is a good idea, since many people check stock updates on their mobile, it becomes easy and convenient. Secondly if you are traveling then you don't need to open your laptop and check for the updates.&lt;br /&gt;&lt;br /&gt;See the screen below.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GUolZ33RL9k/SpUyJJxVIcI/AAAAAAAAAkE/hXxkqsIABZ8/s1600-h/Zibika.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 153px; height: 320px;" src="http://1.bp.blogspot.com/_GUolZ33RL9k/SpUyJJxVIcI/AAAAAAAAAkE/hXxkqsIABZ8/s320/Zibika.JPG" alt="" id="BLOGGER_PHOTO_ID_5374256863159591362" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5146151296927368432?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5146151296927368432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5146151296927368432' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5146151296927368432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5146151296927368432'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2009/08/stock-details-on-gtalk-by-zibikacom.html' title='Stock details on Gtalk by Zibika.com'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_GUolZ33RL9k/SpUyJJxVIcI/AAAAAAAAAkE/hXxkqsIABZ8/s72-c/Zibika.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-7227218920671086196</id><published>2009-08-14T11:17:00.002+05:30</published><updated>2009-08-17T11:34:35.832+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Careers'/><category scheme='http://www.blogger.com/atom/ns#' term='tata'/><title type='text'>TATA second career for women professionals</title><content type='html'>&lt;span style=";font-family:Arial;font-size:85%;"  &gt;&lt;a href="http://www.tata.com/"&gt;Tata group&lt;/a&gt;, a well know name and pride of nation. Truly Tata’s are the creative thinkers.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;You name it they have it. From steel to cars, from software to hardware they are into everything. The brand is so huge that it has impact on our daily lives. The good thing is that they into education as well. Their new initiative is really a big leap towards women empowerment. Yes I am talking about &lt;a href="http://www.tatasecondcareer.com/"&gt;second career program for women by Tata group&lt;/a&gt;. &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;This programme is currently open only to women who have work experience of at least 4 continuous years or more in specific domain areas.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Currently SCIP II is open only to candidates who are currently residing in Mumbai and &lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Bangalore&lt;/st1:city&gt;&lt;/st1:place&gt;. SCIP II is extension of SCIP which once again focuses on women professionals. This program is intended to spread over 6 months.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;There is no placement guarantee at the end of the project.However, the women professionals have the option of exploring full-time employment on mutually acceptable terms with the respective Group Company.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;They are looking for people from various fields like &lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Marketing&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; , &lt;/o:p&gt;&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Sales&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; , &lt;/o:p&gt;&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Advertising / Communications&lt;span style="font-weight: bold;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Human Resource Management &lt;span style="font-weight: bold;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Finance / Accounting&lt;span style="font-weight: bold;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Legal &lt;span style="font-weight: bold;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Manufacturing , &lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Engineering&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; , &lt;/o:p&gt;&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;IT&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;, &lt;/o:p&gt;&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Corporate Planning,&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt; Hospitality &lt;span style="font-weight: bold;"&gt;,&lt;/span&gt; &lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Retail &lt;span style="font-weight: bold;"&gt;, &lt;/span&gt;&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;CSR&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; , &lt;/o:p&gt;&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt;Other Corporate Functions.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="letter-spacing: 0.35pt;font-family:Arial;font-size:85%;"  &gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:85%;"&gt;&lt;st1:place st="on"&gt;&lt;span style="font-family:Arial;"&gt;Main&lt;/span&gt;&lt;/st1:place&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt; highlights of the program&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Attractive project stipend up to Rs. 4 lakhs&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Flexi-time ‘Live’ business projects in Mumbai &amp;amp; Bangalore&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Project presentation to Tata Team&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Management Development Programme conducted by Tata Management&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Training Centre&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;HR helpline during the programme&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Work certificate&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Last date for registration 20&lt;sup&gt;th&lt;/sup&gt; Aug&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;. &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Visit the &lt;a href="http://www.tatasecondcareer.com/inner/the_criteria_faq.asp"&gt;FAQ&lt;/a&gt; section for more details on their site and spread the word &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-7227218920671086196?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='enclosure' type='' href='http://www.tatasecondcareer.com' length='0'/><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/7227218920671086196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=7227218920671086196' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7227218920671086196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7227218920671086196'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2009/08/tata-second-career-for-women.html' title='TATA second career for women professionals'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-8741556556019578768</id><published>2009-06-25T20:45:00.001+05:30</published><updated>2009-11-10T17:46:22.315+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='web services'/><category scheme='http://www.blogger.com/atom/ns#' term='soapui'/><title type='text'>soapUI - super weapon for web services developer and testers.</title><content type='html'>soapUI is a free and open source tool for Invoking, Inspecting, Developing, Mocking and Testing Web Services.It is mainly aimed at developers and testers providing or consuming WSDL or REST based Web Services (Java, .net, etc) .&lt;br /&gt;It can be downloaded from &lt;a href="http://sourceforge.net/projects/soapui/files/"&gt;sourceforge site &lt;/a&gt;.Also see the &lt;a href="http://www.soapui.org/gettingstarted/index.html"&gt;getting started&lt;/a&gt; tutorials at soapui website.&lt;br /&gt;&lt;br /&gt;Below is the sample screen which shows the request and response xml while testing the web service.  you can give specific parameters in request and click on run button and the response xml will be shown next to it.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_GUolZ33RL9k/SvFPRCjqrTI/AAAAAAAAAmI/pqUogrqwcO0/s1600-h/screenshot1.gif"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 277px;" src="http://2.bp.blogspot.com/_GUolZ33RL9k/SvFPRCjqrTI/AAAAAAAAAmI/pqUogrqwcO0/s400/screenshot1.gif" alt="" id="BLOGGER_PHOTO_ID_5400184582356774194" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;below screen has option to specify  WSDL path , you can also specify the output directly where you want it to generate stub. this screen is specific to Axis2.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GUolZ33RL9k/SvFQgQPYI3I/AAAAAAAAAmY/XFn8bvcnwUo/s1600-h/3.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 349px;" src="http://1.bp.blogspot.com/_GUolZ33RL9k/SvFQgQPYI3I/AAAAAAAAAmY/XFn8bvcnwUo/s400/3.JPG" alt="" id="BLOGGER_PHOTO_ID_5400185943239435122" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;below option is cool one. here one can specify various preferences based on their requriement and choice. it has option for almost all the tools/technique to generate your web services. let say if you wanna use axis2 then you should browse the path of your axis2 directory and save the settings.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_GUolZ33RL9k/SvFQVGksuwI/AAAAAAAAAmQ/07pKNyZwO_I/s1600-h/2.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 400px; height: 328px;" src="http://4.bp.blogspot.com/_GUolZ33RL9k/SvFQVGksuwI/AAAAAAAAAmQ/07pKNyZwO_I/s400/2.JPG" alt="" id="BLOGGER_PHOTO_ID_5400185751665949442" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-8741556556019578768?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/8741556556019578768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=8741556556019578768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/8741556556019578768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/8741556556019578768'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2009/11/soapui-super-weapon-for-web-services.html' title='soapUI - super weapon for web services developer and testers.'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GUolZ33RL9k/SvFPRCjqrTI/AAAAAAAAAmI/pqUogrqwcO0/s72-c/screenshot1.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-151020879716898655</id><published>2008-10-10T11:29:00.002+05:30</published><updated>2008-10-10T12:17:06.054+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><title type='text'>Comparing object and sorting them in java using Comparator and Comparable interfaces</title><content type='html'>&lt;div class="Section1"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;As we know sorting is one of the very common tasks especially when we have a list or collection of objects. For example if we have a list of Employees then we would like to display it in some order may be by sorting them by EmpId or name.&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; In these situations both (&lt;/span&gt;&lt;/span&gt;Comparator and Comparable&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;) will become handy.&lt;/span&gt;&lt;/span&gt;&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;u&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;About Comparators and Comparables&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;Simply putting &lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;java.lang.Comparator and java.lang.Comparable are used for comparing objects in java.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="BACKGROUND: white; MARGIN: 0in 0in 0pt; LINE-HEIGHT: 14.4pt"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="FONT-WEIGHT: normal;font-family:Arial;font-size:10;color:black;"   &gt;Comparator&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/h2&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;A comparator object is capable of comparing two different objects. The class is not comparing its instances, but some other class’s instances. This comparator class must implement the &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Comparator.html"&gt;java.lang.Comparator&lt;/a&gt; interface.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="BACKGROUND: white; MARGIN: 0in 0in 0pt; LINE-HEIGHT: 14.4pt"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="FONT-WEIGHT: normal;font-family:Arial;font-size:10;color:black;"   &gt;Comparable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/h2&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;A comparable object is capable of comparing itself with another object. The class itself must implements the &lt;a href="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Comparable.html"&gt;java.lang.Comparable&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt; &lt;span class="klink"&gt;interface&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; in order to be able to compare its instances.&lt;br /&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;h2 style="BACKGROUND: white; MARGIN: 0in 0in 0pt; LINE-HEIGHT: 14.4pt"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;Now lets see how we can use these interfaces &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h2&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;Each of these has one method to be implemented by user.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u b6vqv="0" wfiu1="0"&gt;&lt;span style="FONT-WEIGHT: bold"&gt;java.lang.Comparable: int compareTo(Object obj1)&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;This method compares this object with obj1 object. Returned int value has the following meanings. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;ol type="1"&gt;&lt;li class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1color:black;" b6vqv="0" wfiu1="0" &gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;positive – this object is greater than obj1 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1color:black;" b6vqv="0" wfiu1="0" &gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;zero – this object equals to obj1 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1color:black;" b6vqv="0" wfiu1="0" &gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;negative – this object is less than obj1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;br /&gt;&lt;b&gt;&lt;u b6vqv="0" wfiu1="0"&gt;&lt;span style="FONT-WEIGHT: bold"&gt;java.lang.Comparator: int compare(Object obj1, Object obj2)&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;This method compares obj1 and obj2 objects. Returned int value has the following meanings. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;ol type="1"&gt;&lt;li class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" b6vqv="0" wfiu1="0" &gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;positive – obj1 is greater than obj2 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" b6vqv="0" wfiu1="0" &gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;zero – obj1 equals to obj2 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" b6vqv="0" wfiu1="0" &gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;negative – obj1 is less than obj1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;font-size:10;color:black;"   &gt;Note:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;font-size:10;color:black;"   &gt;java.util.Collections.sort(List)&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt; and &lt;b b6vqv="0" wfiu1="0"&gt;&lt;span style="FONT-WEIGHT: bold"&gt;java.util.Arrays.sort(Object[])&lt;/span&gt;&lt;/b&gt; methods can be used to sort using natural ordering of objects.&lt;br /&gt;&lt;b b6vqv="0" wfiu1="0"&gt;&lt;span style="FONT-WEIGHT: bold"&gt;java.util.Collections.sort(List, Comparator)&lt;/span&gt;&lt;/b&gt; and &lt;b b6vqv="0" wfiu1="0"&gt;&lt;span style="FONT-WEIGHT: bold"&gt;java.util.Arrays.sort(Object[], Comparator)&lt;/span&gt;&lt;/b&gt; methods can be used if a Comparator is available for comparison.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;b&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;font-size:10;color:black;"   &gt;Now let’s do a simple example to see these concepts in real scenario.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;(1) First we will write a simple Employee class as below..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;class&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;private&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;int&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;empId&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;private&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; String &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;name&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;int&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; empId, String name) {       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;this&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;empId&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;=empId;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;this&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;name&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;=name;   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;int&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; getEmpId() {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;return&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;empId&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;void&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; setEmpId(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;int&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; empId) {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;this&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;empId&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; = empId;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; String getName() {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;return&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;name&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;void&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; setName(String name) {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;this&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#0000c0;"&gt;name&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; = name;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;(2) Next we will write a class to implement compare() method of comparator interface. You can see below in the code that we are comparing Employee object by name attribute. Instead of name we can use Empid attribute to compare objects for sorting. The choice depends on the need.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;class&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; NameComparator &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;implements&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Comparator{&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;int&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; compare(Object emp1, Object emp2) {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            String emp1Name = ( (Employee) emp1).getName();&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            String emp2Name = ( (Employee) emp2).getName();&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;return&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; emp1Name.compareTo(emp2Name);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;(3) Finally we will write a test class to use our NameComparator class for comparing and sorting Employee objects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; java.util.ArrayList;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; java.util.Collections;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; java.util.HashSet;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; java.util.Iterator;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; java.util.List;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; java.util.Set;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;class&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; TestEmployeeSort {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;      &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;static&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;void&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; main(String args[]){&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;span style="font-family:Arial;font-size:10;"&gt;                        //create&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; a set of Employee object without any specific order&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            Set&amp;lt;Employee&amp;gt; set = &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; HashSet&amp;lt;Employee&amp;gt;();         &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(3, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Raj"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;));        &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(1, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Sajid"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;));        &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(6, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Sowmya"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;));        &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(2, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Manu"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;));        &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(7, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Larry"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;));       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(4, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Suresh"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; ));        &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(8, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Harry"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;));        &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            set.add(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; Employee(5, &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Ashu"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;));&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;            &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN-LEFT: 0.5in; TEXT-INDENT: 0.5in"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;//converting set to list&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            List&amp;lt;Employee&amp;gt; list=&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; ArrayList&amp;lt;Employee&amp;gt;(set);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            System.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;font-family:'Courier New';font-size:10;color:#0000c0;"   &gt;out&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.println(&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Order of employee before sorting is"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            Iterator i=list.iterator();&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;while&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;(i.hasNext())&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            {&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;                  Employee e1=(Employee) i.next();&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;                  System.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;font-family:'Courier New';font-size:10;color:#0000c0;"   &gt;out&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.println(e1.getEmpId() + &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"\t"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; + e1.getName() );    &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;            //calling sort method and passing the list of employees and a new instance of our &lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;NameComparator class&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            Collections.&lt;i&gt;&lt;span style="FONT-STYLE: italic"&gt;sort&lt;/span&gt;&lt;/i&gt;(list,&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; NameComparator());&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;            &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="MARGIN-LEFT: 0.5in; TEXT-INDENT: 0.5in"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;System.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;font-family:'Courier New';font-size:10;color:#0000c0;"   &gt;out&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.println(&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"Order of employee after sorting is"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:'Courier New';font-size:10;color:#7f0055;"   &gt;for&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; (Employee e: list) {            &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;                  System.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;font-family:'Courier New';font-size:10;color:#0000c0;"   &gt;out&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;.println(e.getEmpId() + &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:#2a00ff;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:#2a00ff;"&gt;"\t"&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt; + e.getName() );       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;            }&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;}     &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;After running this test class we would get following output.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="BACKGROUND: white; LINE-HEIGHT: 18pt"&gt;&lt;span style="font-family:Arial;font-size:85%;color:black;"&gt;&lt;span style="font-family:Arial;font-size:10;color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;Order of employee before sorting is&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;3     Raj&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;8     Harry&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;6     Sowmya&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;1     Sajid&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;4     Suresh&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;5     Ashu&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;7     Larry&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;2     Manu&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;Order of employee after sorting is&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;5     Ashu&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;8     Harry&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;7     Larry&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;2     Manu&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;3     Raj&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;1     Sajid&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;6     Sowmya&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;color:black;"&gt;&lt;span style="font-family:'Courier New';font-size:10;color:black;"&gt;4     Suresh&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Courier New;font-size:85%;"&gt;&lt;span style="font-family:'Courier New';font-size:10;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-151020879716898655?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/151020879716898655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=151020879716898655' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/151020879716898655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/151020879716898655'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/10/comparing-object-and-sorting-them-in.html' title='Comparing object and sorting them in java using Comparator and Comparable interfaces'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-7234027087156664575</id><published>2008-10-10T10:39:00.002+05:30</published><updated>2008-10-10T12:10:15.473+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='google sms'/><title type='text'>Send free SMS using Google Labs SMS channel</title><content type='html'>&lt;div class="Section1"&gt;&lt;p&gt;&lt;span style="font-family:Times New Roman;font-size:100%;"&gt;&lt;span style="font-size:12;"&gt;Google Labs in &lt;?xml:namespace prefix = st1 /&gt;&lt;st1:place st="on"&gt;&lt;st1:country-region st="on"&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt; (&lt;a href="http://labs.google.co.in/"&gt;http://labs.google.co.in/&lt;/a&gt; ) have launched their latest mobile service named &lt;a href="http://labs.google.co.in/smschannels/browse"&gt;Google SMS channel&lt;/a&gt;. This service is designed to enable users to send free group SMS messages across &lt;st1:place st="on"&gt;&lt;st1:country-region st="on"&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;. The good thing is that they currently support messages in several languages including English, Hindi, Kannada etc. You can receive alerts for latest news, cricket updates, blog feeds, daily quotes, horoscope , jokes, news from MoneyControl, and lot more and all for free.&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Times New Roman;font-size:100%;"&gt;&lt;span style="font-size:12;"&gt;I think it would be a great way to connect 200+ million mobile subscribers in &lt;st1:place st="on"&gt;&lt;st1:country-region st="on"&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt; who still don’t have access to valuable information. Subscribers to this service can join as many as 30 channels but they will not receive more than 10 SMS messages a day. Other features are like message senders can send the message using a web based interface and the subscribers can set the time when they want to receive the messages.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Times New Roman;font-size:100%;"&gt;&lt;span style="font-size:12;"&gt;I am also planning to create one SMS channel to connect with friends and family..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Times New Roman;font-size:100%;"&gt;&lt;span style="font-size:12;"&gt;Visit the FAQ section (&lt;a href="http://labs.google.co.in/smschannels/help"&gt;http://labs.google.co.in/smschannels/help&lt;/a&gt; ) for more details.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Times New Roman;font-size:100%;"&gt;&lt;span style="font-size:12;"&gt;Enjoy sending free SMS to your friends and family members.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Times New Roman;font-size:100%;"&gt;&lt;span style="font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-7234027087156664575?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/7234027087156664575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=7234027087156664575' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7234027087156664575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7234027087156664575'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/10/send-free-sms-using-google-labs-sms.html' title='Send free SMS using Google Labs SMS channel'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-7647749635773539972</id><published>2008-08-08T16:47:00.004+05:30</published><updated>2008-08-08T18:14:45.217+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='SOAP'/><category scheme='http://www.blogger.com/atom/ns#' term='web services'/><category scheme='http://www.blogger.com/atom/ns#' term='WSDL'/><category scheme='http://www.blogger.com/atom/ns#' term='Axis'/><title type='text'>The world of Web Services</title><content type='html'>&lt;span style="font-family:arial;"&gt;A web service is a piece of business logic, located somewhere on the Internet, that is accessible through standard Internet protocols such as HTTP or SMTP.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Let’s see &lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;the definition for web service as provided by W3C. According to them, a web service is a software application which is identified by a URI, whose interfaces and binding are capable of being defined, described and discovered by XML using XML-based messages via Internet-based protocols. &lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;A web service is usually identified by a URI (Unified Recourse Identifier). A web service has WSDL (Web Service Description Language) definitions. To communicate with web services we need to use SOAP messages, which are XML based messages transported over Internet protocols like HTTP, SMTP, and FTP. Web services can be better described with the following diagram.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5232125341807055842" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_GUolZ33RL9k/SJw-RwK6k-I/AAAAAAAAAN0/WPynE8q-HmA/s320/webservice.JPG" border="0" /&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;Here, the service requester is the client of the web service, and the service provider is the host of the web service. A requester makes SOAP requests to the provider and the provider responses accordingly. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;A service registry can be thought of as a database of web services. It has the definitions and URIs for web services. Developers of web services can publish their services to a service registry if they wish. After that someone can query the registry and choose the service from the registry. Since a registry has all the information required to develop a web client, developers can search and find necessary information from a service registry using UDDI (Universal Description, Discovery and Integration). &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;A developer usually publishes the WSDL for their services in the registry. A client can query the registry using UDDI and get the WSDL from the registry. After that the client can establish a connection with the service and send SOAP requests to the service, whose response will also be SOAP messages.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is used for communication between applications via the Internet. SOAP is platform independent. SOAP is also language independent; it is based on XML. Each SOAP message has a mandatory SOAP envelope, and multiple optional attachments. A SOAP envelope consists of an optional SOAP header, a mandatory body, and optional fault sections. Usually a SOAP body contains the original requests or the responses.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;WSDL is an XML document, which is used to describe web services. WSDL is also used to locate web services.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;b&gt;&lt;span style="color:black;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:arial;color:black;"  &gt;Let’s define Web services platform elements.&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="color:black;"&gt;&lt;span style="FONT-WEIGHT: bold;color:black;" &gt;&lt;span style="font-family:arial;"&gt;SOAP &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;The basic Web services platform is XML plus HTTP.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul type="disc"&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP stands for Simple Object Access Protocol&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is a communication protocol&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is for communication between applications&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is a format for sending messages&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is designed to communicate via Internet &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is platform independent &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is language independent&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is based on XML &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP is simple and extensible &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP allows you to get around firewalls &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;SOAP will be developed as a W3C standard &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l3 level1 lfo1color:black;" &gt;&lt;b&gt;&lt;u&gt;&lt;span style="color:black;"&gt;&lt;span style="FONT-WEIGHT: bold;color:black;" &gt;&lt;span style="font-family:arial;"&gt;WSDL&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;WSDL is an XML-based language for describing Web services and how to access them.&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;ul type="disc"&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;WSDL stands for Web Services Description Language &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;WSDL is written in XML &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;WSDL is an XML document &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;WSDL is used to describe Web services &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;WSDL is also used to locate Web services &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo3color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;WSDL is not yet a W3C standard &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="color:black;"&gt;&lt;span style="FONT-WEIGHT: bold;color:black;" &gt;&lt;span style="font-family:arial;"&gt;UDDI &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;UDDI is a directory service where businesses can register and search for Web services.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul type="disc"&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;UDDI stands for Universal Description, Discovery and Integration &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;UDDI is a directory for storing information about web services &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;UDDI is a directory of web service interfaces described by WSDL &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;UDDI communicates via SOAP &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;UDDI is built into the Microsoft .NET platform &lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;u&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;Using &lt;b&gt;&lt;span style="FONT-WEIGHT: bold"&gt;Apache Axis&lt;/span&gt;&lt;/b&gt; for developing web services..&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;"&gt;Axis is essentially a &lt;i&gt;&lt;span style="FONT-STYLE: italic"&gt;SOAP engine&lt;/span&gt;&lt;/i&gt; -- a framework for constructing SOAP processors such as clients, servers, gateways, etc.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;Or we can simply say that Axis is an implementation of SOAP which &lt;/span&gt;&lt;/span&gt;turns Java code into Web services.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;The latest version of Axis can be downloaded from their Web site, &lt;/span&gt;&lt;a href="http://ws.apache.org/axis" target="new"&gt;&lt;span style="font-family:arial;"&gt;http://ws.apache.org/axis&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;. &lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo2color:black;" &gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:arial;"&gt;After downloading the latest version of Axis Unzip the package downloaded to a folder in your system. Further we can create on axis.war and copy it to tomcat webapps folder.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:arial;"&gt;To validate the proper installation try &lt;/span&gt;&lt;a href="http://localhost:8080/axis"&gt;&lt;span style="font-family:arial;"&gt;http://localhost:8080/axis&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt; in explorer.. you should see the Apache-Axis start page. If you are not able to see the page then probably your web application is not deployed properly.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:arial;"&gt;We can create one sample web service using axis in few steps..&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="mso-list: Ignore"&gt;(1)&lt;span style="FONT: 7pt 'Times New Roman';font-size:100%;" &gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;first create a normal project in Eclipse IDE by simple importing the axis.war&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:arial;"&gt;use file --&gt; import option and then select War file.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="mso-list: Ignore"&gt;(2)&lt;span style="FONT: 7pt 'Times New Roman';font-size:100%;" &gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;Create a simple Hello.jws and save it in the WebContent folder of Axis project. see the code below.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;public class Hello {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;public String sayHello(String name)&lt;/span&gt;&lt;span style="font-family:arial;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;System.out.println("in hello service"); &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;return "Hello"+name;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Note: any .java file can be simply be saved as .jws&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;(3) Now create another java project (a client) which will use our hello web service. See the sample code below .it shows how we can call our service.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; java.net.URL;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; javax.xml.namespace.QName;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; javax.xml.rpc.ParameterMode;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; org.apache.axis.client.Call;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; org.apache.axis.client.Service;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;import&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; org.apache.axis.encoding.XMLType;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;class&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; HelloClient {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;public&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;static&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;void&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; main(String[] args) {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;try&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;Service service=&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; Service();&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;Call call=(Call) service.createCall();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;call.setTargetEndpointAddress(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; URL(&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#2a00ff;"&gt;&lt;span style="color:#2a00ff;"&gt;&lt;a href="http://localhost:8080/axis/Hello.jws"&gt;http://localhost:8080/axis/Hello.jws&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;call.setOperation(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; QName(&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#2a00ff;"&gt;&lt;span style="color:#2a00ff;"&gt;"Hello"&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;), &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#2a00ff;"&gt;&lt;span style="color:#2a00ff;"&gt;"sayHello"&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;call.addParameter(&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#2a00ff;"&gt;&lt;span style="color:#2a00ff;"&gt;"in0"&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;, XMLType.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;color:#0000c0;" &gt;XSD_STRING&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;, ParameterMode.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;color:#0000c0;" &gt;IN&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;call.setReturnType(XMLType.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;color:#0000c0;" &gt;XSD_STRING&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;Object returnval=call.invoke(&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;new&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; Object[] {&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#2a00ff;"&gt;&lt;span style="color:#2a00ff;"&gt;"&lt;?xml:namespace prefix = st1 /&gt;&lt;st1:place st="on"&gt;&lt;st1:country-region st="on"&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;});&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;System.&lt;/span&gt;&lt;/span&gt;&lt;i&gt;&lt;span style="color:#0000c0;"&gt;&lt;span style="FONT-STYLE: italic;color:#0000c0;" &gt;out&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;.println(returnval.toString()); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color:#7f0055;"&gt;&lt;span style="FONT-WEIGHT: bold;color:#7f0055;" &gt;catch&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span style="color:black;"&gt;&lt;span style="color:black;"&gt;(Exception e)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt; e.printStackTrace();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:black;"&gt;&lt;span style="font-family:arial;color:black;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:arial;"&gt;Now we can run our client which will call our service internally. Make sure that your tomcat server is up and running when you run the client program.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#333333;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:arial;"&gt;We can even use other tools like BEA Weblogic Workshop to create web services. These tools generate most of the code automatically. It also provides features to provide security and test our web services as well.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-7647749635773539972?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/7647749635773539972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=7647749635773539972' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7647749635773539972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7647749635773539972'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/08/world-of-web-services.html' title='The world of Web Services'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GUolZ33RL9k/SJw-RwK6k-I/AAAAAAAAAN0/WPynE8q-HmA/s72-c/webservice.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-5265355167082496212</id><published>2008-07-29T12:02:00.004+05:30</published><updated>2008-08-02T22:05:35.835+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='search'/><title type='text'>For knowledge, ask Cuil</title><content type='html'>&lt;div style="font-family: arial;" class="Section1"&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-size:100%;" &gt;&lt;span  lang="EN" style="font-size:12;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;Well yet another search engine that too from ex-goo&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;glers ..interesting. They have claimed that Cui&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;l searches more pages on the Web than anyone else—three times as many as Google&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt; and ten times as many as Microsoft. I think its too early to compare it with google, th&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;ought Cuil has come up with some cool features like&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt; Drilldown, Tabs and Navigation suggestion et&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;c on the search page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;Their success t&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;ruly depends on the methods and techniques/algos &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;they use for indexing the web because only goo&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:100%;" &gt;&lt;span lang="EN"&gt;d indexing can give you good results.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_GUolZ33RL9k/SJSLbACDo5I/AAAAAAAAANc/YhiAncgXhVg/s1600-h/cuil.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_GUolZ33RL9k/SJSLbACDo5I/AAAAAAAAANc/YhiAncgXhVg/s320/cuil.JPG" alt="" id="BLOGGER_PHOTO_ID_5229958363265344402" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-size:100%;" &gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-size:100%;" &gt;&lt;span style=""&gt;Another Interesting fact is that search technologies continue to come from Stanford University Comp Science PhDs (Yahoo, Google, Cuil…).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-size:100%;" &gt;&lt;span style=""&gt;Checkout the feature and the people behind this new search engine at &lt;u&gt;&lt;span style="color:blue;"&gt;&lt;span style="color:blue;"&gt;&lt;a href="http://www.cuil.com/"&gt;http://www.cuil.com&lt;/a&gt; &lt;/span&gt;&lt;/span&gt;&lt;/u&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p style="font-family: arial;"&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5265355167082496212?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5265355167082496212/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5265355167082496212' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5265355167082496212'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5265355167082496212'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/07/for-knowledge-ask-cuil.html' title='For knowledge, ask Cuil'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_GUolZ33RL9k/SJSLbACDo5I/AAAAAAAAANc/YhiAncgXhVg/s72-c/cuil.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-825787354893741344</id><published>2008-03-03T14:12:00.011+05:30</published><updated>2008-08-02T22:17:05.990+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='SunTechDays'/><title type='text'>Sun Tech Days Plus, Bangalore</title><content type='html'>&lt;div  style="font-weight: bold; font-family: arial;font-family:times new roman;" class="Section1"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;a style="font-weight: normal;" href="http://developers.sun.com/events/techdays"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Sun Tech Days Plus&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-weight: normal;"&gt; was an exclusive annual event of Sun Microsystems which happened in &lt;/span&gt;&lt;st1:city style="font-weight: normal;" st="on"&gt;&lt;st1:place st="on"&gt;Bangalore&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;span style="font-weight: normal;"&gt; on 27&lt;/span&gt;&lt;sup style="font-weight: normal;"&gt;th&lt;/sup&gt;&lt;span style="font-weight: normal;"&gt; Feb, 08 at&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;strong style="font-weight: bold;"&gt;&lt;span style="font-weight: normal;"&gt;Hotel Grand Ashok. Actually it was an extension to the main event which was happening in &lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Hyderabad&lt;/st1:city&gt;&lt;/st1:place&gt;. They started with the &lt;/span&gt;&lt;/strong&gt;&lt;span style="font-weight: normal;"&gt;Keynotes of&lt;/span&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;Rich Green live from &lt;/span&gt;&lt;st1:place style="font-weight: normal;" st="on"&gt;&lt;st1:city st="on"&gt;Hyderabad&lt;/st1:city&gt;&lt;/st1:place&gt;&lt;span style="font-weight: normal;"&gt;. After the speech of Rich green there was a Demo showcase and that was really cool. Guys were showcasing their work using java technologies like Swing, J2me and JavaFX.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: normal;"&gt;After the demo showcase they started with the sessions. The first session was on &lt;/span&gt;&lt;a style="font-weight: normal;" href="https://jdk6.dev.java.net/6uNea.html"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Java SE 6 Update N&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-weight: normal;"&gt;. Update N is the new release of java SE 6 that introduces new features and enhancements. It was pretty interesting to know that how Sun is taking quick moves to enhance java features and capabilities.&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: normal;"&gt;Another interesting session was on Batch processing with &lt;/span&gt;&lt;a style="font-weight: normal;" href="http://static.springframework.org/spring-batch"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Spring Batch&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-weight: normal;"&gt;. Spring Batch is a lightweight batch framework designed to enable the development of robust batch applications vital for the daily operations of enterprise systems. This session was from Accenture and they showcased a simple example as well for doing a batch processing using Spring batch. &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-weight: normal;font-size:100%;" &gt;Apart from other sessions I liked one interesting session on &lt;a href="https://metro.dev.java.net/"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Metro&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; and &lt;a href="http://java.sun.com/developer/technicalArticles/WebServices/restful"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;REST&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;. &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0);"&gt;Project Metro is the new name for the web services stack from Sun. So we can say Metro is nothing but JAX-WS + Project Tango combination.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0);"&gt;&lt;a href="http://jax-ws.dev.java.net/"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt; JAX-WS&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; is the standardized web services stack and &lt;a href="https://wsit.dev.java.net/"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Project Tango&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; (also known as WSIT) is the interoperability toolkit (interoperability with .Net 3.0). REST (Representational State Transfer) describes an &lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0);"&gt;architecture style&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0);"&gt; of networked systems. There’s a debate going on in the industry that says REST is better method for building Web services than SOAP. The whole web services space looks quite interesting and Sun has given good support for web services development in the new release of &lt;a href="http://www.netbeans.org/"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;NetBeans IDE&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color:black;"&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0);"&gt;There were some other sessions as well on &lt;a href="https://openjfx.dev.java.net/"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;JavaFX&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; and &lt;a href="http://java.sun.com/developer/technicalArticles/J2EE/jpa"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Java Persistence API&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; by Sun guys and there was a session on Unit testing J2EE applications using &lt;a href="http://www.junit.org/"&gt;JUnit&lt;/a&gt; by Accenture guys. Overall the event was good with the main focus on showcasing Sun’s new technologies and initiatives which will really create some sort of awareness among the techies about the new technologies.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-825787354893741344?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/825787354893741344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=825787354893741344' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/825787354893741344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/825787354893741344'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/03/sun-tech-days-plus-bangalore.html' title='Sun Tech Days Plus, Bangalore'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-2708134487833716607</id><published>2008-02-15T11:37:00.000+05:30</published><updated>2008-02-15T11:39:59.056+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>A dozen free &amp; essential apps for Windows</title><content type='html'>&lt;p&gt;&lt;a href="http://blogs.zdnet.com/Ou/?p=989" rel="bookmark" title="Permalink"&gt; A dozen free &amp; essential apps for Windows&lt;/a&gt; by &lt;a href="http://zdnet.com"&gt;ZDNet&lt;/a&gt;'s George Ou -- Every time I build a new Windows computer, there are a dozen free and essential applications that I always install for other people. These applications all seem to fill essential functions and they all seem to be well-behaved installers and uninstallers, in other words it won’t crash your computer or drag it down with gunk. [...]&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-2708134487833716607?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/2708134487833716607/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=2708134487833716607' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/2708134487833716607'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/2708134487833716607'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/02/dozen-free-essential-apps-for-windows.html' title='A dozen free &amp; essential apps for Windows'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-5742331064978870511</id><published>2008-02-13T15:45:00.002+05:30</published><updated>2008-02-13T15:50:20.175+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='PDF'/><category scheme='http://www.blogger.com/atom/ns#' term='iText'/><title type='text'>Small utility program to unlock PDF documents</title><content type='html'>&lt;div class=Section1&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;Ever downloaded a PDF document from internet which doesn&amp;#8217;t have print option or its disabled? I hope you must have come across this situation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;Try this small java program to unlock PDF document for printing etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;I am using &lt;a href="http://www.lowagie.com/iText/"&gt;iText&lt;/a&gt; API for doing it. They have a very rich collection of classes and methods to play with PDF files.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;You need &lt;b&gt;&lt;span style='font-weight:bold'&gt;itext-1.4.6.jar&lt;/span&gt;&lt;/b&gt; to run this program. You can download this jar from &lt;a href="http://www.lowagie.com/iText/download.html"&gt;http://www.lowagie.com/iText/download.html&lt;/a&gt; . If you are using eclipse IDE then set this jar in your project build path or if you are running this code from command prompt then you need to set this jar in your classpath.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;So here is the code&amp;#8230; just copy it and run it. You can see we are passing PDF file name to &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;unlockPdf() method though command prompt. inputFile name is your original file which you want to unlock and outputFile name can be anything which you like.&lt;/span&gt;&lt;/font&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;package&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; my.examples;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;import&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; java.io.FileNotFoundException;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;import&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; java.io.FileOutputStream;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;import&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; java.io.IOException;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;import&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; com.lowagie.text.DocumentException;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;import&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; com.lowagie.text.pdf.PdfEncryptor;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;import&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; com.lowagie.text.pdf.PdfReader;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;import&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; com.lowagie.text.pdf.PdfWriter;&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;public&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight: bold'&gt;class&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:black'&gt; UnlockPdf&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;{&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight: bold'&gt;public&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:black'&gt; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:#7F0055;font-weight:bold'&gt;static&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;void&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; main(String[] args)&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; {&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color="#3f7f5f" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#3F7F5F'&gt;&amp;nbsp;&amp;nbsp;if (args.length &amp;lt; 2)&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color="#3f7f5f" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#3F7F5F'&gt;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color="#3f7f5f" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#3F7F5F'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;System.err.println(&amp;quot;usage: java my.examples.UnlockPdf inputfile.pdf outputfile.pdf&amp;quot;);&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color="#3f7f5f" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#3F7F5F'&gt;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color="#3f7f5f" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#3F7F5F'&gt;&amp;nbsp;else&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color="#3f7f5f" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#3F7F5F'&gt;&amp;nbsp;&amp;nbsp;{&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new UnlockPdf().unlock(args[0], args[1]);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 color="#3f7f5f" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#3F7F5F'&gt;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; }&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight: bold'&gt;private&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:black'&gt; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:#7F0055;font-weight:bold'&gt;void&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt; unlock(String inputFile, String outputFile)&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;try&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PdfReader reader = &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:#7F0055;font-weight:bold'&gt;new&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt; PdfReader(inputFile);&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PdfEncryptor.&lt;i&gt;&lt;span style='font-style:italic'&gt;encrypt&lt;/span&gt;&lt;/i&gt;(reader, &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight: bold'&gt;new&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:black'&gt; FileOutputStream(outputFile), &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:#7F0055;font-weight: bold'&gt;null&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New";color:black'&gt;, &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:#7F0055;font-weight:bold'&gt;null&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt;, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='margin-left:1.0in;text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; PdfWriter.&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#0000C0;font-style:italic'&gt;AllowAssembly&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; | PdfWriter.&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#0000C0;font-style:italic'&gt;AllowCopy&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | PdfWriter.&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:#0000C0;font-style:italic'&gt;AllowDegradedPrinting&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt; | PdfWriter.&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:#0000C0;font-style:italic'&gt;AllowFillIn&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | PdfWriter.&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:#0000C0;font-style:italic'&gt;AllowModifyAnnotations&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt; | PdfWriter.&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:#0000C0;font-style:italic'&gt;AllowModifyContents&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | &lt;b&gt;&lt;span style='font-weight:bold'&gt;PdfWriter.&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt; font-family:"Courier New";color:#0000C0;font-weight:bold;font-style:italic'&gt;AllowPrinting&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt; | PdfWriter.&lt;/span&gt;&lt;/font&gt;&lt;i&gt;&lt;font size=2 color="#0000c0" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:#0000C0;font-style:italic'&gt;AllowScreenReaders&lt;/span&gt;&lt;/font&gt;&lt;/i&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family: "Courier New";color:black'&gt;, &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;false&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;);&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;catch&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; (FileNotFoundException e)&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;catch&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; (IOException e)&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;b&gt;&lt;font size=2 color="#7f0055" face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:#7F0055;font-weight:bold'&gt;catch&lt;/span&gt;&lt;/font&gt;&lt;/b&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt; (DocumentException e)&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.printStackTrace();&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;&amp;nbsp; }&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal style='text-autospace:none'&gt;&lt;font size=2 color=black face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"; color:black'&gt;}&lt;/span&gt;&lt;/font&gt;&lt;font size=2 face="Courier New"&gt;&lt;span style='font-size:10.0pt;font-family:"Courier New"'&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=3 face="Times New Roman"&gt;&lt;span style='font-size: 12.0pt'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:10.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p class=MsoNormal&gt;&lt;font size=2 face=Arial&gt;&lt;span style='font-size:10.0pt; font-family:Arial'&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5742331064978870511?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5742331064978870511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5742331064978870511' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5742331064978870511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5742331064978870511'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/02/small-utility-program-to-unlock-pdf.html' title='Small utility program to unlock PDF documents'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-4107810459206556387</id><published>2008-01-22T15:10:00.000+05:30</published><updated>2008-01-23T21:26:58.460+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='DevCamp'/><title type='text'>Here comes DevCamp, Bangalore</title><content type='html'>&lt;div style="font-family: arial;font-family:arial;"  class="Section1"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;Guys DevCamp Bangalore 1 is happening on February 9th 2008. It’s really good news for developer community of &lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Bangalore&lt;/st1:city&gt;&lt;/st1:place&gt;. It will be like most other unconference camps with main focus on developer’s community. I hope to have some real cool application development demos and sessions. This DevCamp will have focus on all aspects of software development and will be an interesting event for anybody who is part of a software development team.&lt;span style="color:navy;"&gt;&lt;span style="color:navy;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style="font-size:100%;"&gt;So what are you waiting for? Register yourself at the wiki (&lt;a title="http://www.devcamp.in/wiki/Register" href="http://www.devcamp.in/wiki/Register"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.devcamp.in/wiki/Register&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;) and if you are interested to give any session then do visit session page (&lt;a href="http://devcamp.in/wiki/Sessions"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://devcamp.in/wiki/Sessions&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;) and put your session details there. &lt;span style="color:navy;"&gt;&lt;span style="color:navy;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;For any further details do visit the wiki: &lt;a title="http://www.devcamp.in" href="http://www.devcamp.in/"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;http://www.devcamp.in&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt; .Alternatively you can also sign up on the &lt;a title="http://groups.google.com/group/devcamp-bangalore" href="http://groups.google.com/group/devcamp-bangalore"&gt;&lt;span style="color:black;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;mailing list&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt; to get the latest updates about DevCamp.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;u&gt;&lt;span style="font-weight: bold;"&gt;Venue detail:&lt;/span&gt;&lt;/u&gt;&lt;/b&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span lang="EN"&gt;ThoughtWorks Technologies (&lt;st1:place st="on"&gt;&lt;st1:country-region st="on"&gt;India&lt;/st1:country-region&gt;&lt;/st1:place&gt;) Pvt. Ltd.&lt;/span&gt;&lt;span lang="EN"&gt; &lt;span&gt;2nd Floor, Tower C, Corporate Block&lt;/span&gt; ,&lt;/span&gt;&lt;span lang="EN"&gt;Diamond District, &lt;st1:address st="on"&gt;&lt;st1:street st="on"&gt;Airport Road&lt;/st1:street&gt;&lt;span style="font-weight: normal;"&gt; ,&lt;/span&gt; &lt;st1:city st="on"&gt;Bangalore&lt;/st1:city&gt;&lt;/st1:address&gt;, KA - 560 008&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-4107810459206556387?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/4107810459206556387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=4107810459206556387' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/4107810459206556387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/4107810459206556387'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2008/01/here-comes-another-camp-called-devcamp.html' title='Here comes DevCamp, Bangalore'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-6967406982717426842</id><published>2007-12-12T13:13:00.000+05:30</published><updated>2008-01-23T21:23:19.415+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='stocks investment trading'/><title type='text'>My Stock Trading Experience</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Well off late I started share trading from November, 07. Here I would like to share my experience for all those novice people who want to know the basics. I am not an expert and I am still in the process of learning lot of things so don’t take my words blindly.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;These all are my personal views and thoughts which may differ person to person..&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-weight: bold;font-family:Arial;" &gt;What you need to get started?&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="Section1"&gt;&lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Capital – 20 to 30 thousand to start with (it depends on your appetite)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Guts – share trading is not for faint hearted people&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Vision – ability to think and analyze &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Patience – power to go through ups and downs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Honesty – stick to your original game plan&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Demat and Online trading account – off course it’s needed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style=";font-family:Arial;" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-weight: bold;font-family:Arial;" &gt;Now before you start checklist..&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Your need for investment – &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;First of all you need to know that why you want to invest, what’s your need &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;and for what time frame you want to invest. You should be clear about these &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;things like is it for short term or for long term etc.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Have a clear target like how much you want to earn – &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;You should have a clear plan before buying the stock like what kind of profits you are looking for and it should be realistic. For example you may except to earn 50% in 3 months from that particular stock.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Gather information about the company in which you want to invest – &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Do the small research on the company’s past and present performance. Go through their website and read recent news about the company and if you feel positive about it then only buy that stock.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Get the information about the sector to which that company belongs – &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Yes it’s very important to know about the sector that company belongs. If the sector itself is performing badly then no point in expecting a good return from the company. For example nowadays the whole IT sector is down so the all IT companies shares are down and nobody is interested in them.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Check the market and economy conditions – &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;You should also see the market conditions before buying. You should look whether the market is over valued or is there any negative trend etc.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style=";font-family:Arial;" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Need more … go through these links and get familiar with common terms and basics.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;a href="http://www.moneycontrol.com/"&gt;Moneycontrol.com&lt;/a&gt; – Great site to learn about market and to get any sort of information about any stock or any sector. Do create a user id for yourself and you can also track your investment in their portfolio tools free of cost.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;a href="http://www.moneycontrol.com/pehlakadam"&gt;Pehla Kadam (First step)&lt;/a&gt; – This provides a basic tutorial about share market and related topics. Very basic and very nicely written. A must read before you kick off.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;And do read &lt;a href="http://epaper.timesofindia.com/"&gt;The Economics Times&lt;/a&gt; regularly and watch CNBC TV18 or NDTV profit.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-weight: bold;font-family:Arial;" &gt;Some of the good sectors to invest in (at present)…&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;&lt;ul style="margin-top: 0in;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Construction &amp;amp; Contracting&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Infrastructure&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Power generation and distribution&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Financial and Banks&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Iron and Steel&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-family:Arial;font-size:100%;"&gt;&lt;span style="font-family:Arial;"&gt;Oil and gas&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;/span&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-6967406982717426842?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/6967406982717426842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=6967406982717426842' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6967406982717426842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6967406982717426842'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/12/my-stock-trading-experience.html' title='My Stock Trading Experience'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-1157313060775749454</id><published>2007-12-11T15:55:00.001+05:30</published><updated>2007-12-17T13:06:50.885+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='travelling'/><title type='text'>Joy Ride</title><content type='html'>&lt;div class="Section1"&gt;&lt;h3&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: normal;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;So finally after 11 long years, the Bangalore-Mangalore train started chugging on December 8, connecting Bangalore to the coastal region (Mangalore).i still remember December of 2006 when me and my friends went for the trekking of Yedakumeri through Donigal. It was just amazing to go through all the tunnels and bridges in the entire route. I think railways have finally done a good work to start a train in this route after a long gap. So now people will be able to travel between &lt;?xml:namespace prefix = st1 /&gt;&lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Bangalore&lt;/st1:city&gt;&lt;/st1:place&gt; and Mangalore with ease. See the complete time table for the train below.&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;&lt;table class="MsoNormalTable" cellpadding="0" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0.75pt; BORDER-TOP: medium none; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; BORDER-LEFT: medium none; PADDING-TOP: 0.75pt; BORDER-BOTTOM: medium none" colspan="11"&gt;&lt;p class="MsoNormal" style="TEXT-ALIGN: center" align="center"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Time Table&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Train No&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Train Name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Date&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Runs From Source&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt" colspan="7"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Runs On&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;6517 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;MANGALORE EXP &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;11/12/2007&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;YESVANTPUR JN &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;MON &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;TUE &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;WED &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;THU &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;FRI &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;SAT &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;SUN &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 12pt"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;table class="MsoNormalTable" cellpadding="0" border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;SNo&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Stn Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Stn Name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Route No.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Arrival Time&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Dep. Time&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Distance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Day&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: bold;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;Remark&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;YPR &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;YESVANTPUR JN &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;color:red;"&gt;&lt;span style="font-family:Arial;font-size:85%;color:red;"&gt;Source&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;20:35&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;0&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;SBC &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;BANGALORE&lt;/span&gt;&lt;/span&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt; CY JN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;20:50&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;20:55&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;6&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;MYA &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;MANDYA &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;22:43&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;22:45&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;99&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;MYS &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;MYSORE&lt;/span&gt;&lt;/span&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt; JN &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;23:55&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;00:10&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;144&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;5&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;KRNR&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;KRISHANRAJANAGA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;00:43&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;00:45&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;179&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;6&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;HLN &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;HOLE NARSIPUR &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;01:33&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;01:35&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;233&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;7&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;HAS &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;HASSAN &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;02:15&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;02:25&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;265&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;8&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;SKLR&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;SAKLESHPUR &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;03:20&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;03:25&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;307&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;9&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;SBHR&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;SUBRAHMANYA ROA&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;05:30&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;05:35&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;417&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;10&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;KBPR&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;KABAKAPUTTUR &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;06:23&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;06:25&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;459&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;BNTL&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;BANTAWALA &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;06:48&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;06:50&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;484&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;12&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;KNKD&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;KANKANADI &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;07:40&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;07:42&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;503&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;13&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;MAQ &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;MANGALORE &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;08:05&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;color:red;"&gt;&lt;span style="font-family:Arial;font-size:85%;color:red;"&gt;Destination&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;508&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="PADDING-RIGHT: 0.75pt; PADDING-LEFT: 0.75pt; PADDING-BOTTOM: 0.75pt; PADDING-TOP: 0.75pt"&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h3&gt;&lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="FONT-WEIGHT: normal;font-family:Arial;" &gt;&lt;span style="font-size:85%;"&gt;You can see the joy among the people in this snap which was published in TOI dated 10&lt;sup&gt;th&lt;/sup&gt; Dec,07.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;&lt;img id="_x0000_i1025" height="335" src="cid:image002.jpg@01C83C0E.391D0130" width="477" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;I am planning to book tickets for Mangalore soon and I wish they will soon start a day train so that passengers will have an opportunity to enjoy the serenity and beauty of Shiradi Ghat.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-1157313060775749454?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/1157313060775749454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=1157313060775749454' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/1157313060775749454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/1157313060775749454'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/12/joy-ride.html' title='Joy Ride'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-7480208017666445598</id><published>2007-07-09T14:38:00.000+05:30</published><updated>2007-07-09T16:02:58.456+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bcb4'/><category scheme='http://www.blogger.com/atom/ns#' term='BarCamp'/><category scheme='http://www.blogger.com/atom/ns#' term='Community'/><title type='text'>BarCamp, Bangalore 4.0 is on 28th and 29th July @IIMB.. Drop in and get collective..</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_GUolZ33RL9k/RpIOq0zFNAI/AAAAAAAAACE/Wg8i3VMBIFM/s1600-h/Barcamp_Bangalore.jpeg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_GUolZ33RL9k/RpIOq0zFNAI/AAAAAAAAACE/Wg8i3VMBIFM/s200/Barcamp_Bangalore.jpeg" alt="" id="BLOGGER_PHOTO_ID_5085143058144900098" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:Arial;"&gt;&lt;a href="http://barcampbangalore.org/wiki/Main_Page"&gt;BarCamp, Bangalore&lt;/a&gt; is back again and it’s slatted for 28&lt;sup&gt;th&lt;/sup&gt; and 29&lt;sup&gt;th&lt;/sup&gt; July @IIMB campus. What’s new this time is the concept of collectives. The idea is to have various small groups on different topics of interest. List of some of the collectives is listed below.. The good thing is that anyone can suggest or form a new collective and people can register for it and discuss further at the event.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p class="MsoNormal"&gt;&lt;u&gt;&lt;span style="font-family:Arial;"&gt;&lt;a href="http://barcampbangalore.org/wiki/BCB4_Collectives"&gt;List of some of the collectives ..&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;/p&gt;                        &lt;p class="MsoNormal"&gt;&lt;u&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;span style="text-decoration: none;"&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/u&gt;&lt;span style="font-family:Arial;"&gt;Open Source Software Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;BangPypers Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Photo Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Mobile Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Internet Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;SocialTech Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Ruby Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;BangAJAX Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Bloggers Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;UnBand Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Invester$ Collective&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;I would like to be part of &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Ajax&lt;/st1:place&gt;&lt;/st1:city&gt;, Ruby, Blogger, Internet and Investors collectives.&lt;o:p&gt;&lt;/o:p&gt;Guys do visit the main BarCamp site and &lt;a href="http://barcampbangalore.org/wiki/BCB4_Collectives"&gt;register&lt;/a&gt; for various collectives there.&lt;o:p&gt;&lt;/o:p&gt;Anybody interested in &lt;a href="http://barcampbangalore.org/wiki/BCB4_Sponsors"&gt;sponsorship&lt;/a&gt; or&lt;a href="http://barcampbangalore.org/wiki/BCB4_Volunteers"&gt; volunteering&lt;/a&gt; then please go ahead here.&lt;o:p&gt;&lt;/o:p&gt;if you are &lt;a href="http://barcamp.org/"&gt;new to BarCamp or wanna know history of BarCamp&lt;/a&gt; then follow the link.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;a href="http://barcampbangalore.org/wiki/BCB4_Venue"&gt;Click here for venue details..&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;Hope to see you guys there at the event :-)   &lt;/span&gt;&lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-7480208017666445598?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/7480208017666445598/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=7480208017666445598' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7480208017666445598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7480208017666445598'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/07/barcamp-bangalore-40-is-on-28th-and.html' title='BarCamp, Bangalore 4.0 is on 28th and 29th July @IIMB.. Drop in and get collective..'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_GUolZ33RL9k/RpIOq0zFNAI/AAAAAAAAACE/Wg8i3VMBIFM/s72-c/Barcamp_Bangalore.jpeg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-962164693595768116</id><published>2007-06-05T14:52:00.000+05:30</published><updated>2007-06-05T15:24:31.211+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><title type='text'>What is Sun Java Studio Enterprise 8.1</title><content type='html'>&lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Sun Java Studio Enterprise 8.1 is the enterprise development platform from Sun for the Java Enterprise System 5, which are also used for deploying Sun's SOA-enabled Web services. Sun claims that Java Studio Enterprise 8.1 is ideal tool for developing, debugging, testing, deploying, and tuning enterprise applications, Web services, and portal components.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Java Studio Enterprise 8.1 supports Java 2 Platform, Enterprise Edition (J2EE platform) 1.4 and integrates the NetBeans 5.0 IDE. NetBeans 5.0 offers a rich set of features with which you can create state-of-the-art Java applications, including stand-alone, Web-tier, mobile, and J2EE applications. To learn the advantages of NetBeans 5.0 and higher versions visit &lt;a href="http://www.netbeans.org/switch"&gt;&lt;span style=""&gt;NetBeans website&lt;/span&gt;&lt;/a&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Also, NetBeans 5.0 supports application development on the J2EE 1.4 Platform and deployment to Sun Java System Application Server Platform Edition 8.2, as well as deployment to the WebLogic 9 and JBoss 4 containers. Note that Application Server 8.2 comes bundled with the &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Derby&lt;/st1:place&gt;&lt;/st1:city&gt; database.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Java Studio Enterprise 8.1 delivers the following capabilities over Netbeans 5.0:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";color:black;" &gt;Integrated modeling with Unified Modeling Language (UML) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";color:black;" &gt;Instant developer collaboration &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:100%;"&gt;&lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;&lt;span style=";color:black;" &gt;Enterprise&lt;/span&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;span style=";color:black;" &gt; Application Profiler &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";color:black;" &gt;Portlet Builder &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";color:black;" &gt;Java Application Verification Kit &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;/li&gt;&lt;li&gt;&lt;!--[if !supportLists]--&gt;&lt;!--[endif]--&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";color:black;" &gt;Sample blueprints for J2EE applications &lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";color:black;" &gt;Deployment to WebSphere 6.0 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;            &lt;p class="MsoNormal" face="arial" style="margin-left: 0.25in; text-indent: -0.25in;"&gt;&lt;!--[endif]--&gt;&lt;/p&gt;    &lt;p  class="MsoNormal" style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;The complete detail of above feaure about Java Studio Enterprise 8.1 can be read at &lt;a href="http://developers.sun.com/jsenterprise/reference/techart/jse8_1/jse8_1_overview.html"&gt;&lt;span style=""&gt;Sun’s website&lt;/span&gt;&lt;/a&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  class="MsoNormal" style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Also &lt;a href="http://developers.sun.com/jsenterprise/learning/tutorials/jse8/overview/index.html"&gt;&lt;span style=""&gt;visit this link&lt;/span&gt;&lt;/a&gt; to see a visual demo of these features online and if you are a &lt;a href="http://developers.sun.com/"&gt;&lt;span style=""&gt;SDN member&lt;/span&gt;&lt;/a&gt; then you can download java studio for free..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-962164693595768116?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/962164693595768116/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=962164693595768116' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/962164693595768116'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/962164693595768116'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/06/what-is-sun-java-studio-enterprise-81.html' title='What is Sun Java Studio Enterprise 8.1'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-7541486225017214766</id><published>2007-05-21T12:25:00.000+05:30</published><updated>2007-05-21T12:56:37.808+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><category scheme='http://www.blogger.com/atom/ns#' term='Java'/><category scheme='http://www.blogger.com/atom/ns#' term='Sun'/><category scheme='http://www.blogger.com/atom/ns#' term='Curriki'/><title type='text'>Sun Technology Summit,07 ,Bangalore</title><content type='html'>&lt;p class="MsoNormal"&gt;Well Fridays are always charming and full of enthusiasm. It was Sun technology summit in &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Bangalore&lt;/st1:place&gt;&lt;/st1:city&gt; at Hotel Taj. Thought it was a working day but I thought to better attend this event. The main reason why I went there is my love for Java and web technologies and &lt;a href="http://www.sun.com/aboutsun/executives/mcnealy/"&gt;Mr. &lt;span style="" lang="EN"&gt;Scott McNealy&lt;/span&gt;&lt;/a&gt;&lt;span style="" lang="EN"&gt; (one of the co-founder of Sun) was coming to address the event. It was great to listen to people like him who really changed the business model of software industry. He talked about how &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;India&lt;/st1:place&gt;&lt;/st1:country-region&gt;’s growing developer workforce and how they can contribute to sun’s overall API development as communities. He also explained how Java will earn profit for Sun after making it open source (Free), similar to the way Google is earning its pie. The whole aim of the event was to showcase the Sun’s complete technology suit and new arrivals for developers.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style="color:black;"&gt;Apart from business and technology McNealy also discussed the concept of providing education material or tutorials for students over the net for free, and the initiative is already up and available called as&lt;/span&gt;&lt;span style=""&gt; &lt;span lang="EN"&gt;“&lt;a href="http://www.curriki.org/"&gt;Curriki&lt;/a&gt;”. I feel this is really noble cause and education should be given 1&lt;sup&gt;st&lt;/sup&gt; priority for any child. I request everyone to register at &lt;a href="http://www.curriki.org/"&gt;Curriki&lt;/a&gt; website and contribute as many learning material as they can to it. They have wide range of topics to choose from and membership is again free and a ClickAway (I think in his whole talk he used this word “ClickAway” most number of times)&lt;/span&gt;&lt;/span&gt;&lt;span style="color:black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style="" lang="EN"&gt;After McNealy’s talk there were sessions on &lt;span style="font-weight: bold;"&gt;New features in J2SE 5 and 6&lt;/span&gt; , &lt;span style="font-weight: bold;"&gt;SOA and Glassfish project&lt;/span&gt; , &lt;/span&gt;&lt;span style="font-weight: bold;color:black;" &gt;NetBeans Extreme&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Open Solaris 10&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;DTrace&lt;/span&gt; , &lt;span style="font-weight: bold;"&gt;ZFS file system&lt;/span&gt; and &lt;span style="color:black;"&gt;&lt;span style="font-weight: bold;"&gt;Java Persistence API&lt;/span&gt; . I was really amazed to see the capabilities of NetBeans 5.5 for developing web apps so smoothly and I realized that it’s a serious kill for MS Dot NET . Now NetBeans gives you a Drop n Drag features to build complex application in no time with all framework support and &lt;st1:place st="on"&gt;&lt;st1:city st="on"&gt;Derby&lt;/st1:city&gt;&lt;/st1:place&gt; database is inbuilt in it.. Loads of features to explore. Another session I liked was about Java Persistence API. Sun has come up with new release of EJB that is EJB 3.0 and it has got lot of new features and few changes in old concepts of Entity Beans. They have extensively used Annotation in persistence API. They also gave free DVD of NetBeans and Open Solaris to all the participants. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="color:black;"&gt;All together it was a nice experience being at the event and I hope more companies will come forward and organize such kind of talks /sessions for developer and let the world what’s really happening out there. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-7541486225017214766?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.sercononline.com/promos/apr/mcneally/speaker.htm' title='Sun Technology Summit,07 ,Bangalore'/><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/7541486225017214766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=7541486225017214766' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7541486225017214766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7541486225017214766'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/05/sun-technology-summit07-bangalore.html' title='Sun Technology Summit,07 ,Bangalore'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-6324013894719037084</id><published>2007-05-08T16:40:00.000+05:30</published><updated>2007-05-08T17:00:14.899+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Apache Software Foundation</title><content type='html'>&lt;div style="text-align: left;"&gt;  &lt;p class="MsoNormal"&gt;I saw this complete Apache Software Foundation stack on Apache website. It’s good to see all the projects from Apache in a single table with various categories. I was amazed to know that apache is really contributing big time to open source arena. Click on the image to have a bigger and clear view. &lt;/p&gt;  &lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_GUolZ33RL9k/RkBdXhQXijI/AAAAAAAAAB8/a5TnUNFKJHU/s1600-h/ApacheSoftwareFoundation.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_GUolZ33RL9k/RkBdXhQXijI/AAAAAAAAAB8/a5TnUNFKJHU/s400/ApacheSoftwareFoundation.JPG" alt="" id="BLOGGER_PHOTO_ID_5062148639809833522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-6324013894719037084?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/6324013894719037084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=6324013894719037084' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6324013894719037084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6324013894719037084'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/05/apache-software-foundation.html' title='Apache Software Foundation'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GUolZ33RL9k/RkBdXhQXijI/AAAAAAAAAB8/a5TnUNFKJHU/s72-c/ApacheSoftwareFoundation.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-3129355042586534326</id><published>2007-05-03T15:28:00.000+05:30</published><updated>2007-05-03T15:53:13.656+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Maven'/><category scheme='http://www.blogger.com/atom/ns#' term='Apache'/><title type='text'>Welcome to Maven</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_GUolZ33RL9k/Rjm1eRQXigI/AAAAAAAAABk/a_mOxU7BNLQ/s1600-h/apache-maven-project-2.png.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_GUolZ33RL9k/Rjm1eRQXigI/AAAAAAAAABk/a_mOxU7BNLQ/s320/apache-maven-project-2.png.jpg" alt="" id="BLOGGER_PHOTO_ID_5060275187960220162" border="0" /&gt;&lt;/a&gt;  &lt;p  style="color: rgb(51, 51, 153); font-family: arial;font-family:arial;" class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=""&gt;It seems Apache is putting all efforts for making a project build a smooth task. Earlier Ant and now the new buzz is Maven.. Well I got some info from Apache’s web site ,the main points are listed below ..&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="color: rgb(51, 51, 153); font-family: arial;font-family:Times New Roman;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;Def:&lt;/span&gt;&lt;br /&gt;Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;    &lt;p  style="color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://maven.apache.org/"&gt;If you think that Maven could help your project, you can find out more information at Apache&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2  style="font-weight: normal; color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;Introduction&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p  style="color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Maven was originally started as an attempt to simplify the build processes in the Jakarta Turbine project. There were several projects each with their own Ant build files that were all slightly different and JARs were checked into CVS. We wanted a standard way to build the projects, a clear definition of what the project consisted of, an easy way to publish project information and a way to share JARs across several projects.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;The result is a tool that can now be used for building and managing any Java-based project. We hope that we have created something that will make the day-to-day work of Java developers easier and generally help with the comprehension of any Java-based project.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2  style="font-weight: normal; color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;Maven's Objectives&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p  style="color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Maven's primary goal is to allow a developer to comprehend the complete state of a development effort in the shortest period of time. In order to attain this goal there are several areas of concern that Maven attempts to deal with:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ul  style="color: rgb(51, 51, 153); font-family: arial;font-family:arial;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Making the build      process easy&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Providing a uniform      build system&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Providing quality      project information&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Providing guidelines      for best practices development&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Allowing transparent      migration to new features&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;h2  style="font-weight: normal; color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: normal;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;h2  style="font-weight: normal; color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;What is Maven Not?&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;&lt;h2  style="font-weight: normal; color: rgb(51, 51, 153); font-family: arial;font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;You may have heard some of the following things about Maven:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;    &lt;ul  style="color: rgb(51, 51, 153); font-family: arial;font-family:arial;" type="disc"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Maven is a site and      documentation tool&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Maven extends Ant to      let you download dependencies&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Maven is a set of      reusable Ant scriptlets&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:85%;color:navy;"   &gt;&lt;span style=";font-family:Arial;font-size:10;color:navy;"   &gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-3129355042586534326?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/3129355042586534326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=3129355042586534326' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/3129355042586534326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/3129355042586534326'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/05/welcome-to-maven.html' title='Welcome to Maven'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GUolZ33RL9k/Rjm1eRQXigI/AAAAAAAAABk/a_mOxU7BNLQ/s72-c/apache-maven-project-2.png.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-8340367885627861918</id><published>2007-04-27T17:48:00.000+05:30</published><updated>2007-04-27T18:30:03.097+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Merger'/><category scheme='http://www.blogger.com/atom/ns#' term='IT News'/><title type='text'>CSC takes over Covansys for $1.3b to ramp up its Indian operation</title><content type='html'>&lt;p&gt;Interesting week for M&amp;A. Week started with Merger of Barclays and ABN Amro and ending with the CSC acquisition of Covansys.looks like it’s the season of mergers and acquisitions. Day in day out the bigger IT companies are picking up small and growing companies and ramping up their operations in India..Last year EDS had acquired majority stake in Mphasis and added some 11,000 India-based employees to their total head count. In February, 06, Capgemini sealed a $1.25-billion deal for Kanbay, adding about 6,000 India staffers. And now it’s &lt;a href="http://www.csc.com/"&gt;CSC&lt;/a&gt; taking over &lt;a href="http://www.covansys.com/"&gt;Covansys&lt;/a&gt;. Is there anyone who can predict this fast growing M&amp;amp;A trend? One clear trend is that western IT services providers are increasingly aggressive about using M&amp;amp;A activity as a way to grow their resource bases in India, as intense competition in the country's labor market makes it increasingly difficult to recruit the right quantity and skills. In the last three years, CSC, EDS, Capgemini, IBM, Perot Systems, have all executed takeovers designed to boost offshore numbers, and more will follow.&lt;br /&gt;Can we really see a merger of &lt;u&gt;Oracle and SAP&lt;/u&gt; or &lt;u&gt;Google and Microsoft&lt;/u&gt; in future? Well you never know bcoz IT industry is really unpredictable. Any Comments??&lt;/p&gt;&lt;p&gt;&lt;a href="http://economictimes.indiatimes.com/CSC_takes_over_Covansys_for_13b_to_shore_up_India_ops/articleshow/1962474.cms"&gt;Read the complete story at Economics times..&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-8340367885627861918?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/8340367885627861918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=8340367885627861918' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/8340367885627861918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/8340367885627861918'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/csc-takes-over-covansys-for-13b-to-ramp.html' title='CSC takes over Covansys for $1.3b to ramp up its Indian operation'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-5531547008679534098</id><published>2007-04-24T09:07:00.000+05:30</published><updated>2007-04-24T09:34:18.364+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Business'/><category scheme='http://www.blogger.com/atom/ns#' term='Banking'/><category scheme='http://www.blogger.com/atom/ns#' term='Jobs'/><title type='text'>Wow - Barclays and ABN Amro merger to bring 10,800 jobs to India</title><content type='html'>&lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;London-based bank &lt;a href="http://www.barclays.com" title="Barclays plc"&gt;Barclays PLC&lt;/a&gt; will move 10,800 jobs to &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;India&lt;/st1:place&gt;&lt;/st1:country-region&gt; following a giant merger announced on Monday with &lt;a href="http://www.abnamro.com" title="ABN AMRO"&gt;ABN Amro&lt;/a&gt; bank as part of an effort to generate billions of euros in annual savings. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;The bank announced on Monday that it planned to buy Amsterdam-based ABN Amro for about $91 billion, creating a European banking giant with more than 47 million customers, including 1.4 million businesses. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;The banks hope to boost their profits by slashing annual costs by an estimated $3.81 billion, or 10%, by 2010, mostly through job reductions, outsourcing and IT savings, they said. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;More than half the savings, or 57%, will come from combining some of the banks' service operations and moving them to &lt;st1:country-region st="on"&gt;&lt;st1:place st="on"&gt;India&lt;/st1:place&gt;&lt;/st1:country-region&gt; and other low-cost locations, Barclays said. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;That will mean a net reduction of 12,800 jobs, with 10,800 positions moved elsewhere, from a combined workforce of 217,000. The cuts will be made over three years through redundancies and attrition, Barclays said. It acknowledged the "difficult consequences" for affected workers and said it will need to negotiate the layoffs with local unions and regulators. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Savings from telecommunications companies and IT will amount to about 29% of the total, or $1.1 billion, including hardware, software and development, the banks said. They plan to consolidate their data centers and IT support networks and use ABN Amro's trade and payments back-office system. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;Both companies use financial software from &lt;a href="http://www.sap.com" title="SAP AG"&gt;SAP AG&lt;/a&gt;, according to SAP's Web site, which could make the integration process less complicated. So good days for SAP as well..&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;It's the latest of several outsourcing projects by European banks. ABN Amro had already announced in 2005 that it would cut 1,500 jobs and outsource its IT operations through deals worth $2.2 billion over five years. Most of the business went to IBM, with smaller deals for &lt;a href="http://www.infosys.com"&gt;Infosys Technologies Ltd.&lt;/a&gt;, &lt;a href="http://www.tcs.com"&gt;Tata Consultancy Services Ltd.&lt;/a&gt;,&lt;a href="http://www.patni.com"&gt;Patni Computer Systems Ltd.&lt;/a&gt; and &lt;a href="http://www.accenture.com" title="Accenture Corporation"&gt;Accenture Ltd&lt;/a&gt;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style=";font-family:Arial;font-size:9;color:black;"   &gt;As part of this latest deal, ABN Amro will sell its Chicago-based LaSalle Bank Corp. to &lt;a href="https://www.bankofamerica.com" title="Bank of America Corporation"&gt;Bank of America Corp.&lt;/a&gt; for $21 billion, the companies said. The combined company will be called Barclays and have headquarters in &lt;st1:city st="on"&gt;&lt;st1:place st="on"&gt;Amsterdam&lt;/st1:place&gt;&lt;/st1:city&gt;. The deal must be approved by ABN Amro shareholders and is expected to close in the fourth quarter, the companies said. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5531547008679534098?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5531547008679534098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5531547008679534098' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5531547008679534098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5531547008679534098'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/wow-barclays-and-abn-amro-merger-to.html' title='Wow - Barclays and ABN Amro merger to bring 10,800 jobs to India'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-6407865364119703991</id><published>2007-04-14T17:54:00.000+05:30</published><updated>2007-04-24T18:25:37.550+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Profession'/><category scheme='http://www.blogger.com/atom/ns#' term='Careers'/><category scheme='http://www.blogger.com/atom/ns#' term='IT'/><title type='text'>What's Hot, What's Not: IT Skills You'll Need in 2010</title><content type='html'>&lt;h1 style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;  &lt;/h1&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size:14;"&gt;&lt;span style="font-size:100%;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;I happen to read this report on &lt;a href="http://www.computerworld.com"&gt;computerworld&lt;/a&gt; about IT Skills we'll need in 2010. Quite interesting topics covered here.. have a look..&lt;/span&gt;&lt;span style="font-size:14;"&gt;&lt;span style="font-size:100%;"&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h1 style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style="font-weight: normal;font-family:Arial;font-size:14;color:black;"   &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112360"&gt;&lt;span&gt;Hot Skills, Cold Skills&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;The IT worker of 2010 won't be a technology guru but rather a 'versatilist.'&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="font-weight: normal;font-family:Arial;font-size:14;color:black;"   &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112368"&gt;Line Between Business and IT Blurs&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;The IT department will still exist, but the sharpest tech workers will move effortlessly between IT and business units.&lt;/p&gt;&lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;  &lt;/p&gt;&lt;h1 style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style="font-weight: normal;font-family:Arial;font-size:14;color:black;"   &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112374"&gt;The World Gets Smaller Still&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;Savvy IT workers will turn globalization and an increased demand for IT skills to their advantage.&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;  &lt;/p&gt;&lt;h1 style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;span style="font-weight: normal;font-family:Arial;font-size:14;color:black;"   &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112382"&gt;H-1B Remains a Hot-Button Issue&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;New bills and congressional wrangling will decide the limits of temporary work visas.&lt;/p&gt;&lt;h1&gt;&lt;span style="font-weight: normal;font-size:14;" &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112358"&gt;&lt;span&gt;There's a Merger in Your Future&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;   &lt;p class="MsoNormal"&gt;Industry consolidation won't slow down. The IT survivors will be skilled in systems integration and business analysis.&lt;/p&gt;&lt;h1 style="font-weight: normal;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112364"&gt;New Recruits Still Scarce&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;   &lt;div class="subhead"&gt;Experts hope to reverse the trend with smart ideas to entice fresh talent to the field.&lt;/div&gt;&lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;  &lt;/p&gt;&lt;h1&gt;&lt;span style="font-weight: normal;font-size:14;" &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112361"&gt;&lt;span&gt;Boomers Bid Farewell&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal"&gt;Smart companies will negotiate flexible schedules to keep older workers on board.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;  &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;  &lt;/p&gt;&lt;h1&gt;&lt;span style="font-weight: normal;font-size:14;" &gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=112381"&gt;IT Sweet Spots: 2010&lt;/a&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h1&gt;    &lt;h1&gt;  &lt;/h1&gt;&lt;h1 style="font-weight: normal;"&gt;&lt;span style="font-weight: normal;font-size:100%;" &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleTOC&amp;specialReportId=9000100&amp;amp;articleId=9001802"&gt;Research Insights&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal" style="background: white none repeat scroll 0% 50%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-6407865364119703991?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/6407865364119703991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=6407865364119703991' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6407865364119703991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6407865364119703991'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/hot-skills-cold-skills.html' title='What&apos;s Hot, What&apos;s Not: IT Skills You&apos;ll Need in 2010'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-789474965520824897</id><published>2007-04-10T12:36:00.000+05:30</published><updated>2007-04-10T12:53:49.937+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Trends'/><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Ten Technology Trends for 2007</title><content type='html'>I read this article in &lt;a href="http://www.developeriq.com/"&gt;Developeriq&lt;/a&gt; and found it interisting to share.In this article they take a look at the biggest developer technology predictions for 2007. These are trends that they feel will most likely lead to the way we develop software in the New Year. Read on?.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Ruby on Rails and Django will move mainstream&lt;/span&gt;&lt;br /&gt;The dynamic language pack is hot! And they are moving mainstream very fast. PHP is already there. But it is not yet recommended for cutting edge stuff. Ruby is the hottest programming language around. Every developer who wants to make name for himself, is learning Ruby or at least following the language. There are more than thirty Ruby books being written or is already hit the bookstores.&lt;br /&gt;&lt;br /&gt;Last time a language gained mind share so fast was a decade back when Java was launched. And this time around Sun is already doing their share, by pushing JRuby.&lt;br /&gt;&lt;br /&gt;But not everyone is going Ruby way. Django, a little know Python framework is catching up and is regarded better of the two for 90% of web applications. There are already a few thousand web sites including your own Developeriq.com running Django.&lt;br /&gt;&lt;br /&gt;The next year will see serious application development on both Ruby and Django. Already Google has one project ported on Django which may go live in 2007. This will mean that Django will slowly get recognition.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Flex -Ajax tango&lt;/span&gt;&lt;br /&gt;The Ajax hype reached a zenith in mid 2006. Everyone was talking Ajax, whether they had a reason to use it. Or for that matter they know how to use it! However the hype will now be replaced with one brewing on Flex. It is just that open source community has not yet got into the Flex mode yet, but it is slowly happening.&lt;br /&gt;&lt;br /&gt;Problem with Ajax is that it has peaked too early. There are some nice applications about but at the end of the day it's a Web page with some very fancy JavaScript. And there are too many toolkits around. Moreover, JavaScript is not yet standardized.&lt;br /&gt;&lt;br /&gt;However the very fact that it is built on the very fabric that drives Internet, is a reason enough for Ajax to succeed. At the client side you need not install anything new.&lt;br /&gt;&lt;br /&gt;Flex SDK though free is not Open Source. Many Open Source programmers do not like this fact. However, the vst majority who likes to get the work done their way, will look at Flex if it makes sense to them. And a huge per cent of web developers are currently moving to Mac or Linux, away from Windows, because of the advantages offered by these platforms - sleekness and freedom.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;The impact of Java going Open Source will be low&lt;/span&gt;&lt;br /&gt;There are (or were) two bipolar opinions about Java going open source. The positive one was that lots of Open Source developers will embrace Java. The negative point was Java losing its sheen and the large enterprises getting worried about Java being un-standardized.&lt;br /&gt;&lt;br /&gt;Both are unlikely to happen. The number of Open Source developers launching Java projects during 2007 is likely to be low. At the same time, the enterprise customers will back Java to the hilt and continue investing in Java applications.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Internet Explorer 7 will be hot (i feel it will not bcoz Firefox Rocks !!)&lt;/span&gt;&lt;br /&gt;The Internet Explorer 7.0 is definitely the best of the lot that Microsoft has shipped or will ship in the coming months. It might have a few bugs, but the product is robust and will wean away many users from going for FireFox. The adoption curve will be faster than previous versions of Internet Explorer.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Vista sales will be slow in the first half&lt;/span&gt;&lt;br /&gt;As we write this Microsoft is gearing to release Vista worldwide. Unlike the super success of some of the previous platforms, Vista adoption curve will be slower in the first few months.&lt;br /&gt;&lt;br /&gt;There is too much of a negative hype surrounding Vista that many large users will be putting off migration plans till they are absolutely sure that everything is OK with it. The bad press which Microsoft is receiving is not helping the cause.&lt;br /&gt;&lt;br /&gt;However, the Microsoft marketing machine will win this war, and you will see slow but steady migration and adoption towards end of the year.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;SOA hype will reduce&lt;/span&gt;&lt;br /&gt;We are almost six years into SOA. The hype is died down and reality is stark naked. SOA implementation will be more RESTful. Meanwhile companies will look at some of the ideas from web 2.0 space and use that for implementing SOA projects.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Enterprise will look at hosted applications seriously&lt;/span&gt;&lt;br /&gt;The ASP model will be back, but in new avatar. Enterprises will look at ASP model for hosting applications. They might not give it out to a third party unless it is a recognized player. But they might do so themselves. .  The success of AJAX drives traditional software back to the drawing boards. With the ability to finally provide dynamic rich content and applications over the Web, traditional software vendors will find that they need new products to play in this new world. Indeed, as Google Mail is giving Microsoft fits, so will other more innovative Web-delivered applications leveraging rich client technology such as AJAX. Entire interfaces will have to be rewritten to support AJAX, and end users will demand that we move away from traditional pump-and-pull HTTP programming.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;More Open Source products on the way&lt;br /&gt;&lt;/span&gt;Open Source Everywhere - More and more companies will open source legacy products and launch new ones under open source licenses. Database vendor Ingres is going to set the standard that other more conservative infrastructure vendors will follow. Look for new open source initiatives from major infrastructure vendors like BMC, VMware, and even Microsoft.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Notebooks sales will cross 35% mark&lt;/span&gt;&lt;br /&gt;PC buyers are buying more notebooks every quarter and sometime in 2007 the number of shipping notebooks will match the number of desktop PCs or come very close at least in North America and Europe. Forresterr predicts the numbers to be on a 35:65 ratio and we tend to agree with that observation.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;AJAX enabled IDEs will exist&lt;/span&gt;&lt;br /&gt;Soon you will have hosted IDEs build on Ajax. And it might be a lot cheaper for companies to host such IDEs on a few servers, rather than loading it up heavily on clients.A good start is www.devsquare.com or www.code4jobs.com.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Server Virtualization will happen sooner than later&lt;/span&gt;&lt;br /&gt;Server virtualization is just getting started, and will really make itself known in the coming year. Once we start seeing the quad core CPU architectures as a part of standard infrastructure, it really starts making a lot of sense to start deploying and managing servers and applications as virtual entities rather than specific pieces of hardware. This helps manage the cost and pain of software configuration management, take advantage of being able to process many tasks simultaneously because of hardware support, as well as allows legacy hardware to be retired in favor of applications running on virtual servers.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Grid Computing will be a reality&lt;/span&gt;&lt;br /&gt;Container-based hosting is the new kid on the block, and will also start making its presence known in the upcoming year. Commonly labeled as "grid" hosting (which is a technical misnomer if you understand distributed computing), it essentially claims to be an infinitely scalable hosting platform. This technology still seems to be half-baked at the moment, but you could have said the same thing about Linux ten years ago.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Linux explorations will be high&lt;/span&gt;&lt;br /&gt;People who normally wouldn't use Linux start to explore it and even replace Windows with it permanently. With Vista, Microsoft seems to be moving to a model in which the Windows operating system is a method to police users with DRM and other nonsense rather than provide developers with a good platform on which to use hardware, which is what operating systems are really supposed to be. A lot more consumers who haven't noticed this happening in the past will stand up and notice this year.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Better UIs will be in store&lt;/span&gt;&lt;br /&gt;Declarative user interfaces will enable rich user experiences that can be easily modified or extended with simple mechanisms like XSLT. Familiar business applications like Office provide the user interface to back-end line-of-business systems. The line between AJAX-based UIs and rich desktop UIs will blur, enabling users to enjoy both connected and occasionally-connected experiences. Tools and guidance will make building, testing and deploying these composite UI experiences much easier.&lt;br /&gt;&lt;br /&gt;&gt;&gt;&lt;span style="font-weight: bold;"&gt; BPM will get web enabled&lt;/span&gt;&lt;br /&gt;BPM is about improving performance by optimizing key processes. Web 2.0 is about capturing the wisdom of crowds (or as O'Reilly puts it, the architecture of participation). The convergence of BPM and Web 2.0 enables collaborative development and tagging of sub-processes, establishing a "process folksonomy" where the best processes can evolve organically. Collaboration can occur over simple but highly scalable pub/sub mechanisms (like Atom or SSE). Lightweight tools will enable users to model or reuse sub-processes using a broad set of metadata. While this is an exciting opportunity, there are several technical and non-technical issues that must be addressed before this convergence becomes a reality.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Good developers will still be in demand&lt;/span&gt;&lt;br /&gt;Skilled programmers and extremely skilled programmers will not come in cheaply and will continue to be `hard to find'. There may be an excess of unskilled labour. But skilled programmers will still be hard to find.&lt;br /&gt;&lt;br /&gt;&gt;&gt; &lt;span style="font-weight: bold;"&gt;Outsourcing will continue to grow &lt;/span&gt;&lt;br /&gt;Companies will continue to outsource software development and IT Services and there seems to be no sign of it stopping. See Gartner's prediction for more details.&lt;br /&gt;&lt;br /&gt;Gartner, Inc. released 10 key predictions that showcase the trends and events that will change the nature of business and IT in 2007 and beyond.&lt;br /&gt;&lt;br /&gt;These predictions are for general technology areas rather than specific to industries or roles within an organization. The predictions are intended to compel high-tech companies and IT professionals within enterprises to action and position themselves to take advantage of the coming changes, and not be damaged by them.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Through 2009&lt;/span&gt;, market share for the top 10 IT outsourcers will decline to 40.0% (from 43.5% now), equaling a revenue shift of $5.4 billion. As market share declines, some key outsourcing vendors will cease to exist in their current named form. The reduced number of large contracts, increased amount of competition and reduction in contract sizes have placed great pressure on outsourcers, which will have to "sink or swim" based on support for selective outsourcing and disciplined multisourcing competencies.&lt;br /&gt;&lt;br /&gt;Only one Asia/Pacific-based service provider will make the global top 20 through 2010. The number of global players in consulting that come from Asia is relatively small. This will limit the ability of the Asian juggernaut to grow revenue streams rapidly and become global leaders.&lt;br /&gt;&lt;br /&gt;Blogging and community contributors will peak in the first half of 2007. Given the trend in the average life span of a blogger and the current growth rate of blogs, there are already more than 200 million ex-bloggers. Consequently, the peak number of bloggers will be around 100 million at some point in the first half of 2007.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;By 2009&lt;/span&gt;, corporate social responsibility (CSR) will be a higher board- and executive-level priority than regulatory compliance. Regulation has become a key issue for government and the corporate world, with the aim of ensuring more-responsible behavior. However, the need for companies to be socially responsible to their employees, customers and shareholders is growing as well. The future will see corporate boards and executives make this social dynamic a more-critical priority.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;By the end of 2007&lt;/span&gt;, 75% of enterprises will be infected with undetected, financially motivated, targeted malware that evaded their traditional perimeter and host defenses. The threat environment is changing \u2014 financially motivated, targeted attacks are increasing, and automated malware-generation kits allow simple creation of thousands of variants quickly \u2014 but our security processes and technologies haven't kept up.&lt;br /&gt;&lt;br /&gt;Vistawill be the last major release of Microsoft Windows. The next generation of operating environments will be more modular and will be updated incrementally. The era of monolithic deployments of software releases is nearing an end. Microsoft will be a visible player in this movement, and the result will be more-flexible updates to Windows and a new focus on quality overall.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;By 2010&lt;/span&gt;, the average total cost of ownership (TCO) of new PCs will fall by 50%. The growing importance and focus on manageability, automation and reliability will provide a welcome means of differentiating PCs in a market that is increasingly commoditized. Many of the manageability and support tools will be broadly available across multiple vendors. However, vendors that can leverage these tools further and can graduate from claims of "goodness" to concrete examples of cost savings will have a market advantage.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;By 2010&lt;/span&gt;, 60% of the worldwide cellular population will be "trackable" via an emerging "follow-me Internet." Local regulations have arisen to protect users' privacy, but growing demands for national safety and civil protection are relaxing some of the initial privacy limitations. Marketing incentives will also push users to forgo privacy concerns, and many other scenarios will enable outsiders to track their users.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Through 2011&lt;/span&gt;, enterprises will waste $100 billion buying the wrong networking technologies and services. Enterprises are missing out on opportunities to build a network that would put them at a competitive advantage. Instead, they follow outdated design practices and collectively will waste at least $100 billion in the next five years.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;By 2008&lt;/span&gt;, nearly 50% of data centers worldwide will lack the necessary power and cooling capacity to support high-density equipment. With higher densities of processors proliferating, problems in this area continue to grow. Although the power and cooling challenge of high-density computer equipment will persist in the short term, a convergence of innovative technologies will begin to mitigate the problem by 2010.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-789474965520824897?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/789474965520824897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=789474965520824897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/789474965520824897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/789474965520824897'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/ten-technology-trends-for-2007.html' title='Ten Technology Trends for 2007'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-9129187633425888368</id><published>2007-04-09T12:54:00.000+05:30</published><updated>2007-04-10T13:00:44.367+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Eclipse'/><title type='text'>TOP 10 Tips for New ECLIPSE Users</title><content type='html'>&lt;div class="serendipity_entry_body"&gt;I’m gonna  share my top 10 basic Eclipse tips. These are very simple tips, but I’ve  noticed that for some reason many people using Eclipse for the first time end up  learning these tips the hard way (through discovery). The following 10 tips  should be known by anyone using Eclipse on a day to day basis.&lt;br /&gt;&lt;br /&gt;1 &lt;b&gt;Use Code  Assist&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Code assist (also known as auto-complete) is the kind of  feature that becomes almost completely automatic after a very short time. Most  modern IDEs have a similar feature – for instance, Visual Studio calls it  Intellisense.&lt;br /&gt;&lt;br /&gt;The concept is simple – just press the code assist key  combination (by default ctrl-space) and the IDE will either fill in where you’ve  started typing or display a menu to allow you to choose an auto-completion from  several possibilities.&lt;br /&gt;&lt;br /&gt;This is the feature you will use the most in  Eclipse. I just noticed that I can type ctrl-space without moving my fingers  from the home position at all &lt;img class="emoticon" style="display: inline; vertical-align: bottom;" alt=":-)" src="/blog/templates/default/img/blank.gif" height="16" width="16" /&gt;.&lt;br /&gt;&lt;br /&gt;2 &lt;b&gt;Navigate  Through Code By ctrl-Clicking&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This is another feature that you stop  consciously thinking about once you’ve gotten in the habit. While editing, you  can move to a field, method, or class by holding down the ctrl key and clicking  on the identifier you’re interested in. This makes navigation dead  simple.&lt;br /&gt;&lt;br /&gt;When looking through unfamiliar code, this feature is great. If  you are wondering what a class is, or what the implementation of a method looks  like, it’s as easy as ctrl-clicking it.&lt;br /&gt;&lt;br /&gt;3 &lt;b&gt;Quickly Open Classes and  Resources by Name&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;There are two ways to open a class or resource in  an editor: the slow way and the fast way &lt;img class="emoticon" style="display: inline; vertical-align: bottom;" alt=":-)" src="/blog/templates/default/img/blank.gif" height="16" width="16" /&gt;. Don’t use the slow way –  there’s no good reason to.&lt;br /&gt;&lt;br /&gt;To open a Java class, press ctrl-shift-T. This  will display a dialog box that allows you to type in a class name. To open a  non-Java resource (a .txt file for instance) use the ctrl-shift-R shortcut.  These open boxes support wildcards, partial names, and even camel case names  (try typing ctrl-shift-T, AIOOBE to see camel case search in  action).&lt;br /&gt;&lt;br /&gt;There is hardly ever a reason to use the Package Explorer view  to manually pick out a class to open if you know its name.&lt;br /&gt;&lt;br /&gt;4 &lt;b&gt;Know the  Keyboard Shortcuts&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Eclipse has extremely good keyboard shortcut  support. Most of the common operations have an associated keyboard shortcut, and  learning these keyboard shortcuts is the most effective productivity boost you  can give your Eclipse experience.&lt;br /&gt;&lt;br /&gt;There are too many keyboard shortcuts  to enumerate them all here, and the previous tip already mentioned two of the  most useful shortcuts. However, I will list the shortcuts I think are most  useful:&lt;br /&gt;&lt;br /&gt;ctrl-shift-G: searches for references to a highlighted class,  method, field, or variable&lt;br /&gt;ctrl-shift-F4: closes all open editor  windows&lt;br /&gt;ctrl-o: outline popup – very useful for quickly jumping to a method  in a large class&lt;br /&gt;F4: shows the hierarchy viewer for a class (ctrl-T shows  similar data in a popup version)&lt;br /&gt;ctrl-m: toggle maximize of the current  editor or view&lt;br /&gt;ctrl-F11: run the last launched configuration&lt;br /&gt;&lt;br /&gt;There’s  even a keyboard shortcut you can press that will show you all available keyboard  shortcuts in the current context: that’s ctrl-shift-L.&lt;br /&gt;&lt;br /&gt;It’s worth noting  that the keyboard shortcuts can be customized. However, I don’t recommend you do  this. It makes pair programming and team collaboration harder because each  machine may have a different set of keyboard shortcuts. The shortcuts Eclipse  ships with are good defaults – I recommend leaving them that way.&lt;br /&gt;&lt;br /&gt;5  &lt;b&gt;Set the Heap Size&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Eclipse is a large, complex, Java-based IDE. It  needs lots of memory to perform well. In fact, if you’re using Eclipse to do  daily development, you should configure your machine so that Eclipse can use RAM  in preference to any other processes.&lt;br /&gt;&lt;br /&gt;When starting Eclipse, you should  always specify a large maximum heap size. The default Eclipse uses is far too  small for normal use. There are lots of ways to specify this when starting  Eclipse (see Google). The easiest way is to use the –vmargs parameter with the  Eclipse native launcher executable:&lt;br /&gt;&lt;br /&gt;eclipse &lt;other args=""&gt;-vmargs  –Xmx1024M&lt;br /&gt;&lt;br /&gt;That syntax will work only on Sun’s JVMs, by the way. And, yes,  I do give my IDE 1GB of RAM to work with. My development box has 4GBs so I have  plenty to spare &lt;img class="emoticon" style="display: inline; vertical-align: bottom;" alt=":-)" src="/blog/templates/default/img/blank.gif" height="16" width="16" /&gt;.&lt;br /&gt;&lt;br /&gt;6 &lt;b&gt;Configure  Eclipse To Use a JDK, not a JRE&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Eclipse comes with its own Java  compiler, so technically you don’t need to install a Java Development Kit (JDK)  from Sun to develop Java programs with Eclipse – a Java Runtime Environment  (JRE) works just fine.&lt;br /&gt;&lt;br /&gt;However, you’re going to want to install a JDK and  configure Eclipse to use it. The reason is that this is the easiest way to get  the Java source code into your development environment. Doing this will allow  you do set browse into and set breakpoints in Java classes, as well as giving  you Javadoc support in the IDE for all the standard library classes and  methods.&lt;br /&gt;&lt;br /&gt;To configure Eclipse to use a JDK, first make sure you’ve  installed a JDK on your machine. Then in Eclipse, go to Window -&gt; Preference  -&gt; Java -&gt; Installed JREs, and make sure that the default (checked) JRE  points to your JDK installation.&lt;br /&gt;&lt;br /&gt;7 &lt;b&gt;Use the Eclipse’s Refactoring  Support and Code Generation&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Eclipse originally became popular because  of its support for various kinds of refactorings&lt;br /&gt;of Java classes. These  refactorings are still some of the best of any IDE available today.&lt;br /&gt;&lt;br /&gt;Many  of the refactorings are somewhat hidden and will show up when performing other  operations, but you can get started with refactorings by right-clicking in the  Package Explorer and looking at the Refactor and Source menus.&lt;br /&gt;&lt;br /&gt;Eclipse  also has extensive support for code generation. If you’re writing constructors,  getters, or setters by hand then learning to use code generation for this will  be a huge time saver. Looking at the Source menu mentioned above will get you  started with code generation.&lt;br /&gt;&lt;br /&gt;8 &lt;b&gt;Use Multiple Workspaces  Effectively&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Eclipse supports a concept called workspaces. A workspace  is a container of projects that has its own set of preferences and metadata. An  installation of Eclipse can work with multiple workspaces – you can tell Eclipse  which workspace to use when starting up.&lt;br /&gt;&lt;br /&gt;Why are multiple workspaces  useful? Many developers create an Eclipse workspace for each version of an  application, so doing maintenance work and new development don’t conflict. This  maps very naturally to branches in a source control system. Multiple workspaces  are also good for separating different projects you may be working on at the  same time.&lt;br /&gt;&lt;br /&gt;The easiest way to specify which workspace Eclipse uses is to  use the –data and –showlocation parameters with the launcher:&lt;br /&gt;&lt;br /&gt;eclipse  –data c:\myworkspace –showlocation&lt;br /&gt;&lt;br /&gt;The –data parameter directs Eclipse to  use the “c:\myworkspace” directory on the local machine as the workspace  directory. The –showlocation parameter shows the workspace location in the  Eclipse title bar – very helpful when running multiple Eclipse instances at the  same time.&lt;br /&gt;&lt;br /&gt;One note – don’t waste time setting your preferences in each  workspace you create. Simply use the Import and Export options under the file  menu to export preference from one workspace you’ve already set up into new  workspaces you create.&lt;br /&gt;&lt;br /&gt;9 &lt;b&gt;Use Templates&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Eclipse has two  different concepts of templates. I’m not going to talk much about Code  Templates, which control what generated code looks like. Instead, I’d like to  point your attention to Editor Templates, which are a bit like  macros.&lt;br /&gt;&lt;br /&gt;For instance, open a Java class in an editor, type in “sysout”  and press ctrl-space. An editor template automatically expands that to  “System.out.println()” and positions your cursor in the right place. This is  probably the simplest example of templates, but they can be much more complex  than that.&lt;br /&gt;&lt;br /&gt;Get comfortable with templates, and learn the template for  each piece of boilerplate code like loops, casts, try/catch blocks, etc. You  should never have to write these things by hand if you are comfortable with the  templates. Even better, you can create your own parameterized templates for  commonly used code constructs.&lt;br /&gt;&lt;br /&gt;10 &lt;b&gt;Set Type Filters&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;You can  filter the types that Eclipse uses for auto-completion and when searching for  classes. For example, there are two classes called List in Java’s standard  library – java.util.List and java.awt.List. If you’re not a Swing, developer,  you probably don’t care about java.awt.List and almost always want Eclipse to  prefer java.util.List. To do this, you can filter out java.awt.List (even  better, java.awt.*).&lt;br /&gt;&lt;br /&gt;Filters are configured through Window -&gt;  Preferences -&gt; Java -&gt; Appearance -&gt; Type Filters. If you’re seeing  classes show up at the top of your search you know you’re not interested in,  filter them out for faster searching.&lt;br /&gt;&lt;/other&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-9129187633425888368?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/9129187633425888368/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=9129187633425888368' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/9129187633425888368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/9129187633425888368'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/top-10-tips-for-new-eclipse-users.html' title='TOP 10 Tips for New ECLIPSE Users'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-8338502184383277625</id><published>2007-04-02T17:19:00.000+05:30</published><updated>2007-04-10T17:31:58.283+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='wealth management'/><title type='text'>KEEP THE MESS AWAY FROM YOUR NEXT FINANCIAL YEAR</title><content type='html'>&lt;span style="font-family: arial;" &gt;&lt;span style="text-align: justify;"&gt;&lt;/span&gt;&lt;span style="text-align: justify;"&gt;Tips below are really easy and helpful to keep you away from financial troubles..&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Track your money: &lt;/b&gt;Check your bank statement every month and make notes against each entry in pencil. So when you finally present these to your CA, you’ll know exactly what each entry is about—15 minutes every month is all it takes. But it will save you hours of work at the end of the year. Do the same with your credit card statements.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Keep income and expenses in separate boxes--literally: &lt;/b&gt;Get two shoe boxes—in one put all your bills, in the other your pay slips, dividends and any other income in the other. And impress your CA further by presenting her with the two boxes at the end of the year.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Joint account for common expenses: &lt;/b&gt;If you have a partner who contributes to expenses, open a joint account where each of you contributes a fixed amount every month. All common bills can be paid out of this and you can holiday with what’s left.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;A kitty for the house: &lt;/b&gt;If you own your own place, it’s likely to need repairs from time to time. Start a recurring deposit where you tuck away a small sum every month—when the big bill comes, you won’t feel the pinch quite as much.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-8338502184383277625?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/8338502184383277625/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=8338502184383277625' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/8338502184383277625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/8338502184383277625'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/keep-mess-away-from-your-next-financial.html' title='KEEP THE MESS AWAY FROM YOUR NEXT FINANCIAL YEAR'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-5890472158216175766</id><published>2007-04-02T14:53:00.000+05:30</published><updated>2007-04-02T17:06:22.258+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tech'/><title type='text'>Portable Apps is the way to go …</title><content type='html'>As my friend Arun was talking about it at BCB3 so i though of writing about it..&lt;br /&gt;&lt;br /&gt;&lt;u&gt;So what is a portable App by the way?&lt;br /&gt;&lt;/u&gt;A portable app is a computer program that you can carry around with you on a portable device and use on any Windows computer. When your USB flash drive, portable hard drive, iPod or other portable device is plugged in, you have access to your software and personal data just as you would on your own PC. And when you unplug the device, none of your personal data is left behind.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;No Special Hardware and No Additional Software is required.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;It gives you the following freedom/possibilities to carry...&lt;/strong&gt;&lt;br /&gt;&gt; your web browser with all your favorite bookmarks&lt;br /&gt;&gt; your calendar with all your appointments&lt;br /&gt;&gt; your email client with all your contacts and settings&lt;br /&gt;&gt; your instant messenger and your buddy list&lt;br /&gt;&gt; your whole office suite along with your documents and presentations&lt;br /&gt;&gt; your antivirus program and other computer utilities&lt;br /&gt;&gt; all your important passwords and account information securely&lt;br /&gt;&lt;br /&gt;It has a set of apps, plug-ins and your own personal settings. Use it across a huge section of windows emulations. The apps are portable.&lt;br /&gt;&lt;br /&gt;&gt; No formal installation required.&lt;br /&gt;&gt; Use the PC for just the computing power.&lt;br /&gt;&gt; Can be stored in a removable device.&lt;br /&gt;&lt;br /&gt;There is a dedicated project going on at &lt;a href="http://sourceforge.net/projects/portableapps"&gt;SourceForge&lt;/a&gt; for Portable Applications…&lt;br /&gt;Performance will not be that good as it’s working off a USB drive. But accessibility of data ANYWHERE is the real beauty…&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-5890472158216175766?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/5890472158216175766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=5890472158216175766' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5890472158216175766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/5890472158216175766'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/portable-apps-is-way-to-go.html' title='Portable Apps is the way to go …'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-3256512792856315743</id><published>2007-04-02T14:40:00.000+05:30</published><updated>2007-04-02T14:50:13.598+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='BarCamp'/><title type='text'>Time to rejoice the event, BCB3</title><content type='html'>&lt;p&gt;Well it was really a good feeling organizing and attending BarCamp ,Bangalore 3.As a venue IIMB was the perfect place to have events like BarCamps. We got bigger space and good infrastructure and even &lt;a href="http://www.iimb.ernet.in/"&gt;IIMB NSRCEL&lt;/a&gt; was also involved in the event. We had around 350 campers this time on first day and almost 50% were first timers. There were variety of talks in sections like Mobile, Internet, SocialTech and Demo.&lt;br /&gt;&lt;br /&gt;I enjoyed some of the talks –&lt;br /&gt;&gt;&gt; Future of Indian mobile, technology and broadband (telecom) - Sujai Karampuri&lt;br /&gt;&gt;&gt; Are we ready to move to products from services - Savita Kini&lt;br /&gt;&gt;&gt; Authoring a book using a wiki - &lt;a href="http://www.kiruba.com"&gt;Kiruba Shankar&lt;/a&gt;&lt;br /&gt;&gt;&gt; Activ Mobs - How to build an SMS based application.&lt;br /&gt;&gt;&gt; Deploying Rail Apps - Vivek Prahlad&lt;br /&gt;&gt;&gt; Tinkering Culture OR How Intellectual Property is Screwing Us and How Piracy Will Save Us! - &lt;a href="http://www.altlawforum.org"&gt;Lawrence Liang&lt;/a&gt;&lt;br /&gt;&gt;&gt; The Knowledge Foundation: Opportunities, Ideas, Challenges - Syed&lt;br /&gt;&lt;br /&gt;You guys can see the complete list of topics in schedule section of &lt;a href="http://barcampbangalore.org/wiki/BCB3_Schedule"&gt;wiki&lt;/a&gt;. Check this link for all &lt;a href="http://barcampbangalore.org/wiki/BCB3_Live_coverage"&gt;live and post event coverage&lt;/a&gt;. Event images can be found on &lt;a href="http://www.flickr.com/"&gt;Flickr.com&lt;/a&gt; with Tag name as barcampbangalore3 and most of the presentations can be found at &lt;a href="http://www.slideshare.com/"&gt;SlideShare.com&lt;/a&gt;.&lt;br /&gt;We are looking forward to come up with early event calendar for all the future versions of BCB so that people can better plan out their next visit with great sessions.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-3256512792856315743?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/3256512792856315743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=3256512792856315743' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/3256512792856315743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/3256512792856315743'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/time-to-rejoice-event-bcb3.html' title='Time to rejoice the event, BCB3'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-7212685057678115129</id><published>2007-03-20T17:13:00.000+05:30</published><updated>2007-03-26T13:19:13.666+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='BarCamp'/><title type='text'>BarCamp Bangalore 3 - Social Tech</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_GUolZ33RL9k/RfqDUSETTYI/AAAAAAAAAAw/gIRGG32NG0Y/s1600-h/barcamp-blore3.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5042487117265194370" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_GUolZ33RL9k/RfqDUSETTYI/AAAAAAAAAAw/gIRGG32NG0Y/s320/barcamp-blore3.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;color:#000099;"&gt;&lt;strong&gt;Guys BarCamp, Bangalore (BCB3) is back again..&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;The Theme - &lt;/strong&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;&lt;u&gt;&lt;span style="color:#006600;"&gt;The impact of technology on society and our lives, and vice versa.&lt;/span&gt; &lt;/u&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:arial;"&gt;&lt;br /&gt;At this BarCamp we would like you guys to talk over ups and downs of technology and how technology is affecting our day to day life or rather society as whole..&lt;br /&gt;A wide range of topics under one roof: e-goverence, copyright law, electronic media and many other new innovations to name a few..&lt;br /&gt;So come up with your own topics, ideas and issues and help your fellow campers to gain most out of this camp.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;When and Where -&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Saturday-Sunday, March 31 &amp; April 1, 2007; 8:30 AM to 6:30 PM, at the Indian Institute of Management, Bangalore (IIMB). &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;Register -&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Registrations for BarCamp Bangalore 3 are open. We already have 200+ registrations prior to any publicity for the event. Barcamp Bangalore typically attracts participants from around India and overseas. You can &lt;/span&gt;&lt;a title="BCB3 Registrations" href="http://barcampbangalore.org/wiki/BCB3_Registrations"&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;register for the event here&lt;/strong&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;. &lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;Sponsors -&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;Interested in sponsoring the event? We love you! &lt;a href="http://barcampbangalore.org/wiki/BCB3_Sponsors"&gt;Step this way please&lt;/a&gt;। &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;So see you campers there ...&lt;a title="BCB3 Sponsors" href="http://barcampbangalore.org/wiki/BCB3_Sponsors"&gt;&lt;/div&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-7212685057678115129?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/7212685057678115129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=7212685057678115129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7212685057678115129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/7212685057678115129'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/03/barcamp-bangalore-3-social-tech.html' title='BarCamp Bangalore 3 - Social Tech'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_GUolZ33RL9k/RfqDUSETTYI/AAAAAAAAAAw/gIRGG32NG0Y/s72-c/barcamp-blore3.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-6725883969526569957</id><published>2007-03-20T10:06:00.000+05:30</published><updated>2007-04-24T10:28:25.176+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='Firefox'/><title type='text'>20 must-have Firefox extensions</title><content type='html'>&lt;div class="Section1"&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;"  &gt;&lt;span style=";font-family:Arial;" &gt;As we know &lt;a href="http://www.mozilla.com/en-US/firefox"&gt;Firefox&lt;/a&gt; is a great software package for browsing the net, but what makes this open-source browser so special is the ability to customize it via extensions and themes to really make it yours. The problem is, there are so many available add-ins, it's tough to know what's worth installing and what's just going to junk up your system.&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Below is the list prepared by &lt;i&gt;&lt;span style="font-style: italic;"&gt;Mr.&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;i&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-style: italic;font-family:Arial;color:black;"  &gt; Peter Smith &lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;(Computerworld) of 20 best extensions and add-ins used and recommended by hardcore Web surfers, developers and IT pros. Whether you're looking for more streamlined surfing, improved look and feel, cool design tools or serious Web development help, there's something here for you and be sure to share your favorite extension in the comments at the bottom of the page.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="color: rgb(155, 3, 0);font-family:Arial;" &gt;&lt;span style="color: rgb(155, 3, 0); font-weight: bold;font-family:Arial;" &gt;Category 1&amp;gt;&amp;gt; Tools for taming the Web&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="stumble"&gt;&lt;/a&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/138/" target="new"&gt;StumbleUpon&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;First, a warning. StumbleUpon is hazardous to your productivity! StumbleUpon is one of these social networking Web applications that are becoming so popular lately. This one provides a way to find new Web sites that you may find enjoyable or useful.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;This extension adds a StumbleUpon tool bar to Firefox. You can get to all the core functionality of StumbleUpon via this tool bar, including setting up an account. You pick some initial categories of the kinds of sites you're interested in (a few examples: Ancient History, Humor, Self-improvement) as part of the sign-up process, and can always tweak these later.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 186.75pt;" border="0" cellpadding="0" cellspacing="0" width="249"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1025" src="cid:image001.jpg@01C78658.47D90F00" alt="The StumbleUpon tool bar." border="0" height="28" vspace="4" width="249" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;The StumbleUpon tool   bar.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Once everything is set up, you click the Stumble! button in the tool bar to be taken to a random site that has something to do with your categories. If you don't like the site, click the Thumbs Down button. If you do like it, click Thumbs Up. The more sites you rate, the better your Stumbles will match your tastes. If you rate a site that isn't in the StumbleUpon database yet, you can enter some basic information about it so others can stumble onto it. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;StumbleUpon isn't all that practical, but it is fun and can transport you back to the days when just idly surfing the Net turned up all kinds of interesting things.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 2.91&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/138/" target="new"&gt;addons.mozilla.org/firefox/138&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="gmail"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;Gmail Manager &amp; Yahoo Mail Notifier&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;These two extensions do basically the same thing, each for its respective Web mail service. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;The &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="https://addons.mozilla.org/firefox/1264/" target="new"&gt;Yahoo Mail Notifier&lt;/a&gt;&lt;/span&gt;&lt;/b&gt; is fairly basic; it just puts a small mail icon in your status bar and indicates how many new messages are in your Yahoo mail account. It'll display a little pop-up to catch your attention if you want it to. Clicking the icon takes you to Yahoo mail.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.9.9.2&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/1264/" target="new"&gt;addons.mozilla.org/firefox/1264&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 202.5pt;" align="right" border="0" cellpadding="0" cellspacing="0" width="270"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td rowspan="2" style="padding: 0in; width: 11.25pt;" width="15"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=2"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1026" src="cid:image002.jpg@01C78658.47D90F00" alt="The Gmail Manager pop-up display." border="0" height="156" vspace="4" width="250" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 0.1in;" width="10"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;The   Gmail Manager pop-up display.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=2"&gt;(Click   image to see larger view)&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;The &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="https://addons.mozilla.org/firefox/1320/" target="new"&gt;Gmail Manager&lt;/a&gt;&lt;/span&gt;&lt;/b&gt; does all this and more. If you hover your mouse over it, you'll see the total number of new messages, how many spam messages you have, new message counts for all your labels and how much space your mail is taking up. Below all that is a listing of your most recent 10 messages, showing From, Subject and first line of the body of the mail (you can turn all this off). It also supports multiple Gmail accounts, and you can set it to cause all mailto: links to open up a Compose New Message window in Gmail. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.5.3&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/1320/" target="new"&gt;addons.mozilla.org/firefox/1320&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Sorry, Hotmail users. I wasn't able to find a notifier for you. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="gmonkey"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/748/" target="new"&gt;Greasemonkey&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Let's get this out of the way right up front: Greasemonkey is not for the faint of heart. It basically allows you to add JavaScript to any Web page, but writing these scripts requires a good knowledge of scripting. The good news is that there are many generous souls out there who share the scripts they create. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;When first installed, Greasemonkey does nothing. It just enables the scripting. You'll have to write, or install, scripts before you see any changes on your pages. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;So what do these scripts do? Almost anything you can do with JavaScript. For example, I use both Google's Gmail and Reader services. I found a script that causes Reader to appear on the same page as my Gmail. That's a pretty big change. (It's easy to disable a script, and even easier to universally disable Greasemonkey, in case you need to undo a change.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 277.5pt;" align="left" border="0" cellpadding="0" cellspacing="0" width="370"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1027" src="cid:image003.jpg@01C78658.47D90F00" alt="Want your Google search results to appear in two columns? There's a Greasemonkey script for that." border="0" height="224" vspace="4" width="350" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 15pt;" width="20"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Want   your Google search results to appear in two columns? There's a Greasemonkey   script for that.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Then there are lots of scripts that do small things like remove the Edit features from Wikipedia. Most of us are never going to edit these pages, so why not clean them up a bit? Another script, shown here, makes Google search results appear in two columns to provide better use of space on wide monitors. The possibilities are endless.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Check out &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://userscripts.org/" target="new"&gt;userscripts.org&lt;/a&gt;&lt;/span&gt;&lt;/b&gt; for a script repository. If you want to write your own scripts, try &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://diveintogreasemonkey.org/" target="new"&gt;diveintogreasemonkey.org&lt;/a&gt;&lt;/span&gt;&lt;/b&gt; or pick up Mark Pilgrim's &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://www.amazon.com/gp/product/0596101651?ie=UTF8&amp;tag=computerworld-20&amp;amp;linkCode=as2&amp;amp;amp;camp=1789&amp;creative=9325&amp;amp;creativeASIN=0596101651" target="new"&gt;&lt;i&gt;&lt;span style="font-style: italic;"&gt;Greasemonkey Hacks&lt;/span&gt;&lt;/i&gt;&lt;/a&gt;&lt;/span&gt;&lt;/b&gt; from O'Reilly Media. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.6.7.20070131.0&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/748/" target="new"&gt;addons.mozilla.org/firefox/748&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="color: rgb(155, 3, 0);font-family:Arial;" &gt;&lt;span style="color: rgb(155, 3, 0); font-weight: bold;font-family:Arial;" &gt;Category 2 &amp;gt;&amp;gt; Visual improvements&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/1810/" target="new"&gt;Firefox Showcase&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Firefox Showcase is a great extension both because of its usability and because it takes away one feature advantage that Internet Explorer 7 has over Firefox: the ability to display thumbnails of all open windows and tabs.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Once you install the extension, you'll have a new Showcase submenu under the View menu. From here you can choose to show thumbnails of all tabs in the current window or all tabs in all windows. (IE7, incidentally, only shows thumbnails of the tabs in a particular window.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Additionally, you can choose to show these thumbnails in a new tab or in a floating window. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 187.5pt;" border="0" cellpadding="0" cellspacing="0" width="250"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=3"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1028" src="cid:image004.jpg@01C78658.47D90F00" alt="Firefox Showcase doing its thing." border="0" height="153" vspace="4" width="250" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Firefox Showcase   doing its thing.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=3"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;You also get new options under the Sidebar submenu: a choice to open tabs from the current window, or from all windows, in Firefox's sidebar. No matter how you choose to display the thumbnails, once you do, clicking on one of them takes you to that window/tab combination.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;In some ways, this extension is too complex for its own good. You can safely ignore most of the options and just use the extension in its default configuration.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;If you habitually find yourself awash in open tabs, clicking around looking for the page you need, Firefox Showcase will save you a lot of aggravation.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.9.2.1&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/1810/" target="new"&gt;addons.mozilla.org/firefox/1810&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/2207/" target="new"&gt;Cooliris Previews&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;This interesting extension allows you to preview a Web page before clicking off the one you're on. After installing Cooliris Previews, a small blue icon will appear next to any link you hover your mouse over. Slide the mouse over to that icon and a window pops up containing the destination page. For all intents and purposes, you're on that page, except if you move the mouse off the icon and the pop-up window, the preview vanishes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;At the top of the pop-up window are some additional icons that let you lock the window open, open the preview into a new tab, e-mail it to a friend (though this requires registration at the Cooliris Web site), close the window or use a Back button. (You can surf around in the preview window, ergo the Back button.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 202.5pt;" align="left" border="0" cellpadding="0" cellspacing="0" width="270"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=4"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1029" src="cid:image005.jpg@01C78658.47D90F00" alt="A Cooliris preview of a YouTube video." border="0" height="189" vspace="4" width="250" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 15pt;" width="20"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;A   Cooliris preview of a YouTube video.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=4"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;It is in some ways more neat than useful, but for certain sites, such as YouTube, the preview is enhanced. If you preview a link to a YouTube page, only the video opens in the preview window.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;In addition to the Preview feature, Cooliris adds a context-sensitive search feature to the right-click menu. Highlight a word or phrase on a page, right-click, choose Cooliris Search and select either thefreedictionary.com, Google Images, Google Search or Wikipedia to search on the highlighted term. If you hover the mouse pointer over any of these four selections, the results will display in a preview window. If you click, they'll open in a new tab.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;If you find the preview icon is getting intrusive, you can easily disable previews by clicking an icon in the status bar. You can also disable/enable previewing on a site-by-site basis.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 2.1&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/2207/" target="new"&gt;addons.mozilla.org/firefox/2207&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;Colorful Tabs &amp; ChromaTabs&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="https://addons.mozilla.org/firefox/1368/" target="new"&gt;Colorful Tabs&lt;/a&gt;&lt;/span&gt;&lt;/b&gt; is pretty basic. It colors each of your tabs using lovely pastel colors. After a long day of research, this becomes more than just something pretty and can make life easier on tired eyes. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 6.25in;" border="0" cellpadding="0" cellspacing="0" width="600"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1030" src="cid:image006.jpg@01C78658.47D90F00" alt="Colorful Tabs is a sight for sore eyes. Tab colors are assigned randomly." border="0" height="94" vspace="4" width="600" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Colorful Tabs is a   sight for sore eyes. Tab colors are assigned randomly.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;The version reviewed requires Firefox 2.0 or later. Version 1.4 of Colorful Tabs will work with earlier versions of Firefox. See the link for more details.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version Reviewed: 1.9&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/1368/" target="new"&gt;addons.mozilla.org/firefox/1368&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/3810/" target="new"&gt;ChromaTabs&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; is in many ways similar to Colorful Tabs. The difference is that ChromaTabs determines a tab's color based on the hostname in the URL. For instance, any tab displaying a &lt;i&gt;&lt;span style="font-style: italic;"&gt;Computerworld&lt;/span&gt;&lt;/i&gt; page might always be a light green color. If you surf away to a different site, the tab's color will change.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 6.25in;" border="0" cellpadding="0" cellspacing="0" width="600"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1031" src="cid:image007.jpg@01C78658.47D90F00" alt="ChromaTabs looks similar, but its tab colors are assigned based on domain name. In this example, all tabs showing a &amp;lt;i&amp;gt;Computerworld&amp;lt;/i&amp;gt; page would appear light green." border="0" height="94" vspace="4" width="600" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;ChromaTabs looks   similar, but its tab colors are assigned based on domain name. In this   example, all tabs showing a &lt;i&gt;&lt;span style="font-style: italic;"&gt;Computerworld&lt;/span&gt;&lt;/i&gt;   page would appear light green.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 1.0&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/3810/" target="new"&gt;addons.mozilla.org/firefox/3810&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;It's a personal preference, really. Colorful Tabs assigns tab color at random, and as long as a tab stays open, its color remains the same, no matter where you surf. With ChromaTabs, the colors shift (and some might not be very appealing), but after a while you can tell at a glance where a &lt;i&gt;&lt;span style="font-style: italic;"&gt;Computerworld&lt;/span&gt;&lt;/i&gt; page is loaded just by scanning for that light green color.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="color: rgb(155, 3, 0);font-family:Arial;" &gt;&lt;span style="color: rgb(155, 3, 0); font-weight: bold;font-family:Arial;" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="color: rgb(155, 3, 0);font-family:Arial;" &gt;&lt;span style="color: rgb(155, 3, 0); font-weight: bold;font-family:Arial;" &gt;Category 3 &amp;gt;&amp;gt; Matters of convenience&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;Google Browser Sync &amp; Foxmarks Bookmark Synchronizer&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;If you use Firefox on more than one computer, you might be frustrated keeping track of what bookmarks are where. &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://www.google.com/tools/firefox/browsersync/" target="new"&gt;Google Browser Sync &lt;/a&gt;&lt;/span&gt;&lt;/b&gt;to the rescue. Using your existing Google account, Google Browser Sync will sync not only bookmarks, but sessions, persistent cookies, passwords and history among instances of Firefox on different machines. (This is user configurable on a broad scale -- i.e., you can choose to sync cookies, or not to sync cookies, but you can't make the decision based on individual cookies.) In addition to your Google account name and password, you'll assign a PIN to add additional security to the transaction.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 171pt;" border="0" cellpadding="0" cellspacing="0" width="228"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=5"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1032" src="cid:image008.jpg@01C78658.47D90F00" alt="Some of Google Browser Sync's options." border="0" height="150" vspace="4" width="228" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Some of Google   Browser Sync's options.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=5"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 1.3.20061031.0&lt;br /&gt;&lt;a href="http://www.google.com/tools/firefox/browsersync/" target="new"&gt;www.google.com/tools/firefox/browsersync&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;One downside is that the initial sync can take quite a while, and for some folks, Google Browser Sync might be overkill. If all you want to do is sync bookmarks, try &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="https://addons.mozilla.org/firefox/2410/" target="new"&gt;Foxmarks Bookmark Synchronizer&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;. You'll have to set up an account with Foxmarks (the same is true of Google, but many of us already have Google accounts), but the initial sync seems much faster. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 162.75pt;" border="0" cellpadding="0" cellspacing="0" width="217"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=5"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1033" src="cid:image009.jpg@01C78658.47D90F00" alt="Foxmarks offers fewer synchronization options." border="0" height="138" vspace="4" width="217" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Foxmarks offers fewer   synchronization options.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=5"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;As a bonus, you can access your bookmarks by navigating to &lt;a href="http://www2.blogger.com/post-edit.g?blogID=27924845&amp;postID=6725883969526569957" target="new"&gt;my.foxmarks.com&lt;/a&gt;. This could be handy if you're on a borrowed machine somewhere.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.84&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/2410/" target="new"&gt;addons.mozilla.org/firefox/2410&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="session"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/2324/" target="new"&gt;Session Manager&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Session Manager is a handy utility to help you manage your Firefox tabs. If you're a Web surfer who habitually visits the same sites every morning, all you need do is open the sites in separate tabs and/or windows, and then use Session Manager to save the session under a name of your choosing. After that, every morning start up Firefox and go to Tools &amp;gt; Session Manager, pick your session and voila, all the windows and tabs open up just as you saved them.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;You can also choose a saved session as your "Start Session" (instead of just using a start page) that'll open each time you launch Firefox. As an added bonus, Session Manager tracks your sessions as you surf, and if Firefox (or your system) crashes, you can recover the selection of tabs you had open when it crashed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 201.75pt;" align="left" border="0" cellpadding="0" cellspacing="0" width="269"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1034" src="cid:image010.jpg@01C78658.47D90F00" alt="Session Manager makes it easy to reopen closed tabs." border="0" height="99" vspace="4" width="249" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 15pt;" width="20"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Session   Manager makes it easy to reopen closed tabs.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;One last perk: If you accidentally close a tab, you can easily reopen it from the Session Manager menu.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;While Firefox 2.0 has incorporated many of Session Manager's functions, I find Session Manager performs its tasks more elegantly and reliably. And if you're still on Firefox 1.5, Session Manager remains your lone option for these features. Note that the most current version of Session Manager requires Firefox 2.0 or later. Earlier, Firefox 1.5-compatible versions can be found on the Web site. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.5.3.1&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/2324/" target="new"&gt;addons.mozilla.org/firefox/2324&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="allinone"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/12/" target="new"&gt;All-in-One Gestures&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;This is one of those extensions that does more than you'll probably ever need, but the core function is to assign commands to "Gestures" made with the mouse. For instance, holding down the right mouse button and dragging the mouse a bit to the left issues a "Back" command. A right-mouse button/dragging up combo opens a new tab. And so on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 202.5pt;" align="right" border="0" cellpadding="0" cellspacing="0" width="270"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td rowspan="2" style="padding: 0in; width: 11.25pt;" width="15"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=6"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1035" src="cid:image011.jpg@01C78658.47D90F00" alt="A few of the many gestures you can assign commands to." border="0" height="143" vspace="4" width="250" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 0.1in;" width="10"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;A   few of the many gestures you can assign commands to.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=6"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;There are more than 90 commands available, and the gesture to trigger each is user-configurable. Will you ever remember 90 different gestures? Of course not. But find the commands you use often and assign each a gesture; you'll save yourself miles of mousing.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;The extension also provides auto-scrolling, as seen in Internet Explorer. This is where you click the middle button, then move the mouse up or down to start the page continuously scrolling. The farther you move the mouse, the faster the page scrolls.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;All-in-One offers a wide selection of small navigation improvements like these. It's really one of those "you have to try it to appreciate it" extensions. But the core functionality of accomplishing frequent tasks via a small twitch of the mouse makes this a must-have for its many advocates.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.18.0&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/12/" target="new"&gt;addons.mozilla.org/firefox/12&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="ietab"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/1419/%20" target="new"&gt;IE Tab&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;It's a fact of life that there are still Web sites out there that require (or work better with) Internet Explorer. IE Tab to the rescue. Once installed, it places a small icon in your status bar. Clicking this icon swaps out the rendering engine from Firefox's to Internet Explorer's. In my experience, this is particularly helpful with sites that refuse to play video in Firefox.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;You can set filters so that certain sites are always displayed in an IE tab. In fact, the extension comes preconfigured with filters for the &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://update.microsoft.com/" target="new"&gt;Microsoft Update site&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;. It also adds an "Open Link in IE Tab" option to the right-click context menu of Firefox.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Since the extension uses IE's engine, this one is for Windows only. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 1.3.1.20070126&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/1419/" target="new"&gt;addons.mozilla.org/firefox/1419&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/26/" target="new"&gt;Download Statusbar&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;You're probably familiar with that sometimes-pesky Downloads window that pops up whenever you download a file in Firefox. Download Statusbar suppresses that window from popping up, and instead provides you the same information in the status bar at the bottom of the browser window. (You can still manually open the Downloads window if you find you need it.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;You can roll your mouse over the filename and get a pop-up tool tip with some extra information about your download, too (where it's being download from, and where it's being saved to, the speed of the download, percentage complete and so on).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 187.5pt;" border="0" cellpadding="0" cellspacing="0" width="250"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1036" src="cid:image012.jpg@01C78658.47D90F00" alt="Get download information in a status bar pop-up." border="0" height="154" vspace="4" width="250" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Get download   information in a status bar pop-up.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;An additional feature, still in beta, is to automatically run your virus scanner against downloaded files.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Pretty simple, but it helps to "clean up" the browsing experience. By the way, this is from the same developer as Download Sort, below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.9.4.5.1&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/26/" target="new"&gt;addons.mozilla.org/firefox/26&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="dlsort"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/25/" target="new"&gt;Download Sort&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;If you find yourself doing a lot of "Save Link As" or "Save Image As" downloading, then Download Sort will be quite a timesaver. It allows you to file downloads by extension, or by a keyword or regular expression in the URL.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Here's how it works. After installing the extension, you set up filters. As an example, you might want any file with the extension .jpg to go into a Pictures folder and anything ending in .zip to go into an Archives folder on your drive.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 186pt;" border="0" cellpadding="0" cellspacing="0" width="248"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=7"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1037" src="cid:image013.jpg@01C78658.47D90F00" alt="Download Sort settings." border="0" height="77" vspace="4" width="248" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Download Sort   settings.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=7"&gt;(Click   image to see larger view)&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Now when you right-click on a .jpg image and choose Save Image As, the image immediately downloads into your Pictures folder without any prompting. Right-click on a link to a .zip file and choose Save Link As, and again, the file goes right into your Archives folder. You can optionally have the extension create subdirectories according to date, domain and a few other criteria.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;The big drawback here is that Download Sort doesn't intercept normal left-click downloads. It'd be great to see the developer add this capability.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 2.5.7&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/25/" target="new"&gt;addons.mozilla.org/firefox/25&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="nuke"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/951/" target="new"&gt;Nuke Anything Enhanced&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;If you find yourself printing a lot of Web pages, this extension will help you save on ink. Once installed, it adds a "Remove this object" option to the right-click context menu. Place your mouse over information you don't need printed (menu bars, big graphical logos and so on) and use "Remove this object" to zap them temporarily. Clean up the page, then print just what you need.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 427.5pt;" border="0" cellpadding="0" cellspacing="0" width="570"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1038" src="cid:image014.jpg@01C78658.47D90F00" alt="A Mozilla Add-ons page, before and after removing the title with the Nuke Anything Enhanced extension." border="0" height="71" vspace="4" width="570" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;A Mozilla Add-ons   page, before and after removing the title image with the Nuke Anything   Enhanced extension.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;It can be a little fussy, since you don't know exactly what you're hovering over. Images are pretty straightforward, but menus and other page parts can take some trial and error. There's an "Undo Last Remove" option in case you accidentally zap something you need. Or you can just reload the page to restore it to its original state.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;One limitation is that you can't easily nuke Flash content, since when you right-click on Flash, you get its context menu, not Firefox's. Sometimes you can find the container tag that holds the Flash, but it can take some trial and error.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.54&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/951/" target="new"&gt;addons.mozilla.org/firefox/951&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="info"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="color: rgb(155, 3, 0);font-family:Arial;" &gt;&lt;span style="color: rgb(155, 3, 0); font-weight: bold;font-family:Arial;" &gt;Category 4 &amp;gt;&amp;gt; Information gatherers&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/398/" target="new"&gt;Forecastfox&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Forecastfox puts an up-to-date weather forecast in Firefox's status bar. Just click one of its icons to see the full weather report at &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://home.accuweather.com/" target="new"&gt;AccuWeather.com&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;A wide range of options gives you control over how much, or how little, information you want, including a radar image button, severe weather warnings and extended forecasts of up to eight days. You can set up profiles, each with its own set of options. Use these to get the weather in different zip codes if you're a traveler, or create profiles with lots of data for turbulent winter conditions and minimal data for warm, sunny summer days.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 360.75pt;" border="0" cellpadding="0" cellspacing="0" width="481"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1039" src="cid:image015.jpg@01C78658.47D90F00" alt="Forecastfox brings the weather to your status bar." border="0" height="25" vspace="4" width="481" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Forecastfox brings   the weather to your status bar.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;The only downside here is that, as with all extensions that rely on data from external Web sites, if the AccuWeather.com site isn't responding, you won't get any weather updates.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.9.3.1&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/398/" target="new"&gt;addons.mozilla.org/firefox/398&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="answers"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 202.5pt;" align="right" border="0" cellpadding="0" cellspacing="0" width="270"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td rowspan="2" style="padding: 0in; width: 11.25pt;" width="15"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=8"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1040" src="cid:image016.jpg@01C78658.47D90F00" alt="Helpful information from Answers.com." border="0" height="161" vspace="4" width="250" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 0.1in;" width="10"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Helpful   information from Answers.com.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=8"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/735/" target="new"&gt;Answers&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;This one's simple: Just hold down the Alt key (Option key on a Mac) and click on a word, and a window will pop up with information about that word from &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://www.answers.com/" target="new"&gt;Answers.com&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;. (You can have the results displayed in a full window if you'd rather.) There's a More button in the pop-up that'll open a new tab with the full Answers.com results page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;For phrases, you still have to highlight, right-click and choose "Look up on Answers.com" to get results in a new tab. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 2.2.22&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/735/" target="new"&gt;addons.mozilla.org/firefox/735&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="color: rgb(155, 3, 0);font-family:Arial;" &gt;&lt;span style="color: rgb(155, 3, 0); font-weight: bold;font-family:Arial;" &gt;Category 5 &amp;gt;&amp;gt; Web Developer Essentials&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/684/" target="new"&gt;FireFTP&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Why bounce between applications when you can use FireFTP and have a full-featured FTP client in one tab, and the page you're working on in another?&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;FireFTP adds an option to Firefox's Tools menu. Click on it and a new tab opens (you can set this to a new window if you prefer) with a traditional two-panel FTP client: local files on the left, remote on the right. By right-clicking on files you can tweak their permissions and all the other things you'd expect to be able to do via FTP. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 187.5pt;" border="0" cellpadding="0" cellspacing="0" width="250"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=9"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1041" src="cid:image017.jpg@01C78658.47D90F00" alt="FTP right from Firefox with FireFTP." border="0" height="115" vspace="4" width="250" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;FTP right from   Firefox with FireFTP.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=9"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;One nice feature is "View on the Web," which opens the file on the remote server in a new tab. You can set up each host to "snip" out parts of the directory structure (&lt;i&gt;&lt;span style="font-style: italic;"&gt;/public_html&lt;/span&gt;&lt;/i&gt;, for example) so that you get valid URLs rather than the full "physical" path to the file.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;The one disappointment is that the client is FTP only. When asked about SFTP support, the author responds (in a FAQ on his page), "Maybe in Version 2.0." Let's hope.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Warning: The combination of FireFTP and Firefox 2.0.0.1 exposes a regression bug in Firefox, causing high CPU usage. If you're still running 2.0.0.1, you should upgrade to 2.0.0.2 before installing FireFTP.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.94.6&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/684/" target="new"&gt;addons.mozilla.org/firefox/684&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="firebug"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="http://www.getfirebug.com/" target="new"&gt;Firebug&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Firebug is an essential tool for developers working on Web pages. It allows you to examine and tweak the HTML, CSS and JavaScript contained in a page, all on the fly. Firebug opens either as a panel at the bottom of the page you're inspecting, or in a separate window.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Exploring all that Firebug can do could be a full article of its own. But for a taste of its power, let's look at basic HTML coding. Once Firebug is activated, running your mouse over an HTML tag in the Firebug window causes a highlighted area to appear on the rendered page, showing where that tag is in the display.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 202.5pt;" align="left" border="0" cellpadding="0" cellspacing="0" width="270"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=10"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1042" src="cid:image018.jpg@01C78658.47D90F00" alt="Inspecting a page's HTML code." border="0" height="135" vspace="4" width="250" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 15pt;" width="20"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Inspecting   a page's HTML code.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=10"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Alternatively, you can put Firebug in Inspect mode. Then running the mouse over the rendered page causes the appropriate line of code to be highlighted. By double-clicking that code, you can edit it and see your changes on the fly. CSS works in much the same way.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;For JavaScript development, Firebug finds errors and quickly jumps to where they are in the code. You can change the code and step through a script line by line, set breakpoints and so on. Essentially, it's a full-fledged JavaScript debugging system residing in a browser extension.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Firebug is a great extension and a big topic. If you develop Web pages, you'll want to add this extension to your tool kit. There's plenty of documentation and discussion of what it can do at the &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://www.getfirebug.com/" target="new"&gt;GetFirebug Web site&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 1.01&lt;br /&gt;&lt;a href="http://www.getfirebug.com/" target="new"&gt;www.getfirebug.com&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="webdev"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/60/" target="new"&gt;Web Developer&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Web Developer is another virtual Swiss Army Knife for coding. There's some overlap with Firebug, but where Firebug concerns itself almost exclusively with the content of a Web page, Web Developer offers tools to tweak how you're interacting with the page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 201.75pt;" align="left" border="0" cellpadding="0" cellspacing="0" width="269"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=11"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1043" src="cid:image019.jpg@01C78658.47D90F00" alt="Web Developer's cascading menus." border="0" height="152" vspace="4" width="249" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 15pt;" width="20"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Web   Developer's cascading menus.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=11"&gt;(Click   image to see larger view)&lt;/a&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;For instance, you can modify cookies on the fly, examining, deleting and even manually adding them. You can tweak form settings, clear private data and disable the cache -- all kinds of real-time manipulations.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Web Developer's features can be accessed as a tool bar, or as cascading menus under Firefox's Tools menu. The tool bar is particularly handy since you can see all 12 of the top-level categories of features at a glance (and, of course, it can be easily turned off when you're not in the midst of site development).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;This extension can even be useful for regular Web users, thanks to features like the ability to turn off background images. If you've ever struggled to read text displayed, for example, over a background image of someone's dog, you'll appreciate this.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Web developers will probably want to run both Firebug and Web Developer, and the two extensions seem to co-exist peacefully.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 1.1.3&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/60/" target="new"&gt;addons.mozilla.org/firefox/60&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="measureit"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/539/" target="new"&gt;MeasureIt&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;So simple and so useful. After installing this extension, you'll have a small ruler icon in your status bar. When you click on this icon, the client area of your browser window will fade out a little, and you'll have a crosshair cursor.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Use this to drag out a box over a section of the screen. Next to the box is its height and width, measured in pixels. No more guessing as to how wide a sidebar really is, or if the footer is really rendering 150 pixels deep like your style sheet says it should. When you're done, a tap of the Escape key turns off MeasureIt and gives your Web page back to you.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 6.25in;" border="0" cellpadding="0" cellspacing="0" width="600"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9012131&amp;amp;pageNumber=2"&gt;&lt;span style="text-decoration: none;"&gt;&lt;img id="_x0000_i1044" src="cid:image020.jpg@01C78658.47D90F00" alt="Measure any element on a Web page with MeasureIt." border="0" height="62" vspace="4" width="600" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;Measure any element   on a Web page with MeasureIt.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 0.3.6&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/539/" target="new"&gt;addons.mozilla.org/firefox/539&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="czilla"&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;a href="https://addons.mozilla.org/firefox/271" target="new"&gt;ColorZilla&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;Another quick and simple tool, this one more for designers than developers. ColorZilla puts an eyedropper icon in your status bar. Click it and you'll get a crosshair cursor. As you run this over a Web page, the RGB values of the pixel under the crosshair will display in the status bar, both as three separate values and as a hex value (e.g., &lt;i&gt;&lt;span style="font-style: italic;"&gt;R:255, G:255, B:255 | #FFFFFF&lt;/span&gt;&lt;/i&gt;).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoNormalTable" style="width: 222.75pt;" border="0" cellpadding="0" cellspacing="0" width="297"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1045" src="cid:image021.jpg@01C78658.47D90F00" alt="ColorZilla shows color values in the status bar." border="0" height="21" vspace="4" width="297" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;ColorZilla shows   color values in the status bar.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;table class="MsoNormalTable" style="width: 150pt;" align="right" border="0" cellpadding="0" cellspacing="0" width="200"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td rowspan="2" style="padding: 0in; width: 0.1in;" width="10"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;img id="_x0000_i1046" src="cid:image022.jpg@01C78658.47D90F00" alt="More ColorZilla options." border="0" height="143" vspace="4" width="180" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td rowspan="2" style="padding: 0in; width: 0.1in;" width="10"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td style="padding: 0in;"&gt;   &lt;p class="MsoNormal" style=""&gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;font-size:100%;"  &gt;&lt;span style="color: rgb(153, 153, 153);font-family:Arial;" &gt;More   ColorZilla options.&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Additionally, you'll get a border around the style container you're hovering over, an indicator of what the container is and what style it is using (e.g., &lt;i&gt;&lt;span style="font-style: italic;"&gt;h2.posttitle&lt;/span&gt;&lt;/i&gt; or &lt;i&gt;&lt;span style="font-style: italic;"&gt;div#content&lt;/span&gt;&lt;/i&gt;). &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;ColorZilla also offers a color picker, color palettes and easy access to &lt;b&gt;&lt;span style="font-weight: bold;"&gt;&lt;a href="http://www.mozilla.org/projects/inspector/" target="new"&gt;DOM Inspector&lt;/a&gt;&lt;/span&gt;&lt;/b&gt;, a Mozilla tool for examining a page's Document Object Module.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Version reviewed: 1.0&lt;br /&gt;&lt;a href="https://addons.mozilla.org/firefox/271/" target="new"&gt;addons.mozilla.org/firefox/271&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:Arial;font-size:100%;color:black;"   &gt;&lt;span style=";font-family:Arial;color:black;"  &gt;So there you have it: the 20 extensions we just can't live without. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-6725883969526569957?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/6725883969526569957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=6725883969526569957' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6725883969526569957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6725883969526569957'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/04/20-must-have-firefox-extensions.html' title='20 must-have Firefox extensions'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-6270404924508185273</id><published>2007-03-18T16:45:00.000+05:30</published><updated>2007-03-26T12:51:30.652+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='Entertainment'/><title type='text'>The down side of fancies called Multiplexes..</title><content type='html'>Well last week I went to watch the movie &lt;strong&gt;&lt;a href="http://www.sonypictures.com/movies/thepursuitofhappyness/index.html"&gt;Pursuit of Happiness&lt;/a&gt;&lt;/strong&gt;, the new flick of Will Smith. This movie was running only at &lt;a href="http://www.pvrcinemas.com/"&gt;PVR&lt;/a&gt; and &lt;a href="http://www.inoxmovies.com/"&gt;INOX&lt;/a&gt;, so called big multiplexes. I went there with my friend but didn’t get ticket bcoz they were running only 2 show per day. Despite of paying some 200 bucks you are not getting tickets of a movie show then it’s really painful. The story not ends here; I again went to watch it this weekend but still the same case. No tickets. For PVR you have an online booking system but there is no guarantee when it works and what to talk of INOX they don’t even have an online or phone booking system.&lt;br /&gt;That’s why sometimes I think piracy is supported by many people. You get what you need with ease and with very less cost. Who the hell is interested to pay 200 bucks when you can easily download the real good copy of the same movie from internet using some Torrents etc. so after this incident I am happy to go to old cinema halls where they have more seats and cheaper rates and if few movies are not available in those theaters then pirated DVD’s are always there on roadsides. By the way I have got a nice and clean DivX print of this movie from net and will watch it over the weekend..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27924845-6270404924508185273?l=sajidn.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sajidn.blogspot.com/feeds/6270404924508185273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27924845&amp;postID=6270404924508185273' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6270404924508185273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27924845/posts/default/6270404924508185273'/><link rel='alternate' type='text/html' href='http://sajidn.blogspot.com/2007/03/down-side-of-fancies-called-multiplexes.html' title='The down side of fancies called Multiplexes..'/><author><name>Nads</name><uri>http://www.blogger.com/profile/16741617711178801818</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://coolnads.googlepages.com/367117370_f3ab036051.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27924845.post-2488688404784773456</id><published>2007-03-08T17:40:00.000+05:30</published><updated>2007-04-10T17:04:42.558+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='JSP'/><title type='text'>Top 10 JSP Tips by Hans</title><content type='html'>&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 9pt; font-family: Verdana;"&gt;Java Server Pages (JSP) is one of the famous tools for Java-based Web application development. A JSP page contains regular markup code plus special JSP elements. When the page is requested, the static markup code and the dynamic content produced by the JSP elements are combined to form the complete response to the request.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 9pt; font-family: Verdana;"&gt;It's impossible to tell everything about using JSP effectively in a short article so this article focuses on the frequently asked questions that most new users look for.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;b&gt;&lt;span style="font-size: 9pt; font-family: Verdana;"&gt;1. Choosing the Right Include Mechanism&lt;/span&gt;&lt;/b&gt;&lt;span style="font-size: 9pt; font-family: Verdana;"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 9pt; font-family: Verdana;"&gt;A JSP page can include page fragments from other files to form the complete response. You can use this, for instance, to keep header, footer, and navigation bar content in separate files and include them in all other pages. There are two include mechanisms: the include &lt;i&gt;directive&lt;/i&gt; and the include &lt;i&gt;action&lt;/i&gt;. It's not always obvious which one to use, though. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 9pt; font-family: Verdana;"&gt;The include directive, &lt;/span&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;%@ include file="filename.inc" %&gt;&lt;/span&gt;&lt;span style="font-size: 9pt; font-family: Verdana;"&
