Monday, October 23, 2006

In Search of Indianness Abroad.....

Here is a good article that i came around.... i felt like sharing this article with you all and treasure it for myself, hence posting it....

In Search of Indianness Abroad.....
Authored by : Saurabh Saxena

It is always a treasured moment for an Indian to visit India for the first time after coming to an alien nation either for a job or higher studies. Moreover, you feel overtly sentimental as Air India makes a shaky landing at your preferred Indian airport. You feel like SRK of Swades as if you are coming for good without caring a damn for the completion of your MS degree. I still remember the excitement that had gripped my senses throughout my first journey back to New Delhi, needless to mention the pride of being an Indian, though I had done nothing to make my nation proud. As the plane landed and briefest of unexpected power outage took place inside the plane, exclaimed a modern NRI woman, "Welcome to India". If that was a sly remark for your motherland, the reaction of most of the other passengers laughing out loud (LOL, we refer in chat lingo) was more hurting and it left a scar on one of my most treasured moments. On one of the domestic flights in Uncle Sam's country, lights went off for a blink of the eye and fresh from the ignominy imposed by the NRI lady, I hit back "Welcome to San Francisco". And I received a stare from almost all in my vicinity. The difference was clear. That day I felt that the basic sense of Indianness is lacking in most of us living abroad.

So what is Indianness for us? After all, don't we celebrate with pride Team India's or Team BCCI's (whatever you may like) rare test win in WI after a dismal performance throughout the series? Don't we glorify the likes Mittals and Jindals, just because they were born in India and ignoring the fact that they have done nothing worthwhile for India otherwise? Don't we experience a sense of false pride when news channels across India claim that India will overpower US in years to come? Don't we salute our soldiers just two days before the Independence day or Republic day and forget about them for the rest of 360 odd days? Don't we hail the Indo-US nuke deal without knowing its highs and lows just because we feel at par with US? Don't we wish Shashi Tharoor to win the top UN post though that will not change the fate of millions back home? We do all this and more almost religiously every year and still we lack Indianness? I must be kidding, but that is the truth. I shall exempt Indians living in India from this discussion, not because they have patriotism flowing in their blood but because they interact mostly with their fellow Indians and not with the global audience. The protagonists for my discussion are Indians living abroad for the past several years (not all though), and few working professionals and students studying abroad who love everything about the west and hate everything about India. Unfortunately, most of them are still figuring out the Indian in themselves. And in this utter state of confusion they do not shy away from ridiculing India time and again and picturing a sorry state of India globally.

For me Indianness comes from within. The force that makes you stand against all odds defending your country's culture, tradition and its position in front of the so called firangis. But for most of us living abroad, we love to deviate in favor of the more luring opportunities provided by the goras. Fair enough as long as we don't put our country's reputation at stake. Unfortunately, it is not the case with most (or few, whichever seems more soothing) of us. We crib about almost anything and everything about our country in their presence just to give their bloated egos a high and in return expect some favors if at all. So we tell, often exaggerate to our white friends that Indian airports are the filthiest in the world, that it is a must to pay bribe to the custom officers if you want to reach home (I have been to India thrice and never have I paid bribe), that the education system facilitates rote power as all exams are closed book giving you no opportunity to learn and US education system is excellent as it allows for open book exams (ironically they still need us to fill their graduate seats), that you will see people spitting on roads almost every minute in India, that corruption is deep rooted in our system and that is why we have chosen to come here, that they prefer to call over their parents here than visiting India to avoid pollution and infections, that US was right in rejecting visa to Narendra Modi and for stripping George Fernandez, that Indian concept of arranged marriage is all crap and it is wonderful to go for live-in relationship, that there are always traffic jams and what not. Agreed, most of it is might be true but what does one gain by subjecting one's motherland to ridicule and sarcasm in front of strangers - yes strangers because even if they are our guides or bosses, they have nothing to do with India. Unfortunately, most of us fail to realize that it is the performance that earns favors from the goras and not mud slinging at one's heartland and praising their countries. And if that is not enough, then you have the famous North Indian - South Indian divide to showcase to them - that North Indians represent the real India or South Indians represent the intellect of modern India whichever side you are on. And still they call themselves proud Indians because they attend the India Day on 15th August to increase their visibility and networking in the Indian community.

Which country does not have its set of problems? So is US corruption free or for that matter aren't there any traffic jams on the I 90s in US? But they have great ambassadors to their country - their people. In my few years of stay here in US, I have never seen an American cribbing about Bush's foreign policy publicly in front of people from other nationalities even though most of them despise it. Never have they openly cribbed about the increasing rate of divorces, increase in crime, increase in corruption at the highest level, etc. There position might also not be rosy but they always present a united face in front of the rest of the world. And we fall short in this. If people like us who are working or studying abroad and can be expected to have at least some intellect, project India in a poor taste, why do we blame our politicians of ruining the image of the nation - at least we know they are illiterate, or for that matter why do we blame thousands of uneducated youth of taking up anti-national activities?

It's often said - "it is all in the mind" and this applies to all of us. We have to change our mind set. We have to learn to be great ambassadors of our country without being selfish unlike Aishwarya Rai or Amitabh Bachchan or SRK who speak about India only when they are in US to promote their movies or at an IIFA promotional event and that too when asked by media persons. We got to live and breathe India, no matter where we are and what we do. We do not need to crib about the state of our nation in front of few thousand Americans or Brits as they will neither help us in our promotions nor will help India anyways. Rather discuss (not crib) about our state with millions of fellow Indians and maybe you might inspire few Rang De Basanti heroes to take up the mantle of reigniting the Indian in you. And that is what Indianness is to me.....live India, love India and die India.

Vande Mataram

(Saurabh Saksena is an engineer in a reputed power company in Boston, USA. These are his personal views.)

Wednesday, July 19, 2006

A day in the life of a grad-student...

6:30 Wakeup and lie awake in Bed
6:31 Realize you spent $18 on last night's dinner,
means no eating out for the next 6 weeks
6:32 Hit snooze button. Go back to sleep.
7:00 Wake up suddenly with heart in mouth when you
realize you didn't hit the snooze button--you turned it off.
7:01 fall asleep again.
7:44 Wake up with heart in mouth again.
7:45 Ready to go to school, will shave tommorrow,
will eat early brunch at
(Denny's/Penny's/Lenny's/Dinko's whatever
cafeteria).
8:03 Arrive at school
Realize your foreign officemate arrived earlier
today must have got more work done
8:04 Pass by Advisor's office, chat with Secretary to
find out if he is coming in today. He is, darn.
Need to start work on the draft due this afternoon.
8:15 Read electronic mail
8:20 Delete mail from students taking CMPSC201
regarding questions about the class.
Hate your TA job.
Depression: too much work to do today
9:00 For jumpstart: go to Pepsi machine.
9:05 Kick Pepsi machine; promise yourself to call up
the company and ask for your money back.
Wonder why they would beleive you.
9:33 Start printing out loads of stuff that may be
vaguely related to your work.
9:41 Early morning stupefaction.
Mutter racist comments to yourself about your
officemate.
9:43 Curse your officemate in a low tone he would not
comprehend.
Feel good about him not grasping English well.
9:58 Finger everyone in the department and most
people half way around the world (using the "finger"
command, of course)
10:19 Feel sleepy, should not have stayed late playing
tetris last night.
10:31 momentary panic attack!!!!!!!!!!!!
10:43 edit .plan file. write a shell program to edit .plan
more easily
10:59 Drop in at advisor's office and borrow something
you dont need & and kinda make him aware you are working
hard on your project.
11:05 perverted daydreams
11:11 read electronic news
mid-morning yawn time
11:34 Start typing junk at a very high key-in rate to
pretend you are working hard as your advisor passes by
from outside.
11:35 Press the BackSpace key for one and a half
minute until all the garbage you typed in is erased.
Realize that you can type more than 256
characters per half minute
11:41 Flirt with the new girl in the department
11:45 Print out some slides for afternoon's draft +
presentation
11:47 Print them again, you forgot to change the date
from last presentation
11:49 Print another copy in case this one gets lost
11:51 Completely forget about sueing the coffee-
machine company
12:15 Hunger pangs:
12:20 BigMac/Fries time
Drink a not-so-cold generic can of cola from your
desk. Ch-Ching, you just saved 35 cents by buying bulk
cola.
1:00 Group Meeting with advisor
1:14 sudden awareness of one's shallowness
resentment towards foriegn officemate for
sucking up to your advisor
Get reminded by your advisor that you need to do
some more work for your literature survey.
1:51 Advisor hands you the reddened copy of your
draft for corrections
1:51:02 The 49 second urge to murder advisor begins!!
1:51:52 Realize that he controls your
assistantship/grade/graduation
possiblity/graduation date/all job
opportunities/and the rest of your life.
1:52:53 Thank him
1:52:54 Thank yourself for not saying something
stupid to your advisor.
1:53:00 splitting headache #1
1:59 Check electronic mail, don't reply though, you are
too busy to do that
2:06 More generic cola
2:17 Oh No, it is my turn to cook tonite :-(
2:30 Sit through the class you were told to sit through
2:39 Look outside the window make unrealistic plans
to quit this degree program and take up a job.
Wonder why blonde girls are so pretty.
2:48 More perverted day-dreams.
Close the office door and open a few .gif files.
sharpen pencil
3:06 worry about never graduating
time to write a letter--NOT! no time for that.
rearrange desk
call up bank; see if you have any money
fear of losing aid next Fall
Read latex manuals to figure out how to put
&$%&% in %$^% format
3:43 watch the clock
make plans to do a all-nighter tonite
Vow to watch only 2 TV programs
4:58 Notice Advisor leave
4:58:01 Sudden sense of freedom
Go home for quick, short dinner break.
9:00pm Come into the office
9:01pm The hard working grad student you are, you have
to come to the office late at night to "get the work done"
9:03 Check electronic mail
Decide it would be a good time to attack those ftp
sites since network wont be loaded
Run into "since network wont be loaded" traffic
and get the pictures into your machine.
Compress all unwanted research/class directories
to make space.
Back up all your pictures
10:11 Admire pictures
Begin work; Realize you need references
Realize its too late today to go to the library
Sudden feeling of having wasted the day
10:49 Sudden feeling of possibly having to waste the
night Decide to turn in early and come back very early
tommorrow morning
Decide to play a Tetris on the system to put
yourself in a good mood.
11:15 Play game after game after game to improve your
score and get on the scoreboard.
Realize that your officemate is still at number 6,
two notches above you on the scoreboard.
12:20 Play until you beat your officemate into the 7th
place. A sense of achievment!! Yes, today was not
wasted!! Return home to find your roommate watching
David Letterman reruns on NBC. Tell him about the "hard
working grad student day you had"
Discuss philosophy with roommate
1:09 Think about becoming a philosopher and dining
with 4 others
(The Dining Philosophers problem, hee hee :-)
(Comp Sci joke)
Argue with him about politics, why people prefer
Japanese cars and whether it is better to set the heat to "hot"
or "cold" to defrost the windshields faster.
1:49 Realize neither of you have bought milk today
Get reminded of the "too much milk problem"
2:04 Forget about getting up early. Turn the phone
ringer off and go to sleep.

Thursday, May 18, 2006

Want to succeed? Fail first

'If you want to increase your success rate, double your failure rate.' Thomas Watson, founder of IBM, uttered these famous words.

As you try to leave an impressive mark at work, a failure can bring unexpected twists and turns. How you deal with failure is what will ultimately help you succeed.

The question is: are you smart enough to learn from your mistakes?

What is considered workplace failure

While there's no standard definition of workplace failure, you know it's happening to you if you can associate with any of the following examples at your workplace:

Not meeting deadlines consistently

If you get the stick from your boss repeatedly for not finishing tasks on time, you seriously need to consider a course in time management.

If you have taken on too much workload and set yourself an unrealistic timeframe, you may have just set yourself up for failure.

Tip: Trust your instincts. When you feel bothered, speak up. It may take some guts initially, but it will save you face later. In case you miss the chance, request for a private meeting with the boss to explain your feelings about a short notice to meet a tight deadline.

Fighting with colleagues/ peers

In this age of teamwork, conflicts with people and petty fights with your boss definitely get labeled as failure.

Tip: Find common ground and never take sides in case of a conflict. If you are involving your supervisor, tell him/ her how the conflicts within the team affect your productivity and morale -- that way, you will not sound like a whiny complainer.

Not keeping promises

Your customer's product is not ready or has not been delivered. It's a massive service failure and you have no clue how to salvage the relationship.

Tip: Be honest with your customer and tell them you will do whatever it takes to fix the issue. Never hide behind policies or procedures.

Your clients are human and will appreciate your honest effort. The next time they give you business, surprise them with super fast delivery to gain the credibility back.

Making excuses

Constant excuses can label you as undependable; you could be considered overly defensive and resistant. You may be strong otherwise; however, if you're always covering up your shortcomings with excuses, your negative reputation will make you succumb to failure.

Tip: Face the facts and stop procrastinating. Take other people's help to get things done.

If you still fail, apologise and fix the issue without hiding behind fictitious explanations. If your boss says the report was late, you can choose to ignore but it does not become any less true.

My great idea bombed

You creative pursuits got the better of you and you spent the company's money designing a product so way ahead of it is time that nobody bought it. While you were expecting laurels for your creativity, your boss asks you for a report to justify the investment.

Tip: Acknowledge the failure but don't apologise; risk-taking is a skill required to succeed. Tell your colleagues you know one more way of 'How not to do it'. Analyse what went wrong and crack it the next time around.

First, take time out

"The problem with many young professionals is that they aim for a flawless career from the moment they enter the workforce. They have high aspirations and want to be seen as credible professionals with a 100 percent track record of success. They don't realise that nobody made it big without failing a few times and the ones who succeed are the ones who bounce back from their failures," says Rohini Verma, a Delhi based clinical psychologist.

Take time out to think about what's going wrong with your strategies. Don't be in a rush to get into the disaster recovery mode. Take a small break; go for a vacation or a long drive.

Try meditation or yoga to help you ease your mind and focus. The objective is to take your mind off work so you can think about workplace challenges from a new perspective.

Next, analyse your failure

There could be several reasons but, if you get to the bare bones, there are two factors that stand out:

You are stuck in the wrong job

This is a no brainer. You need to have the aptitude for the work you are doing. If you're in the wrong job, you tend burn out quickly and get tired of your job, which leads to more failures.

However, figuring what you want to do for a living day in and day out takes some consideration. Try to get diverse experience in many fields and then decide what you would like to do for a career.

You are just plain careless

Maybe you failed because of your own sloppy work, or you just did not spend enough time understanding what you were doing or you made some hasty decisions or misunderstood your job profile.

If these happen to be the reason/s, you need to listen, accept the facts and shape up for the job.

Now, take steps

Workplace failures are a part of life but, if dealt with well, can turn out to be life changing events. Here are some smart strategies to repair your workplace failures and mistakes:

Acknowledge your failure

Taking ownership for your mishap is the first and the most important step. Blaming others rather than yourself for the new product nobody seems to be buying will create tension at office and spoil your working relationship with others as well. You are much better off focusing on the actual sense of the issue and what went wrong.

Don't make it personal

Criticism of your work does not mean your colleagues/ customers are targeting you as an individual. If you goofed up during an important client presentation, it doesn't make you a bad employee nor does it negate your prior accomplishments.

Learn from your failure

So what if your idea bombed? You should use this to your advantage in preparation for your next big project. Analyse what went wrong or could have been altered. Maybe you could have done some more research, or could have tested your idea before you went public or perhaps taken the advice of some senior members of the team.

"Treat work life like a game of chess. One bad move does not mean it's the end of the game. If you take a grip of the situation, you'll always get the opportunity to strike back," says Prabh Sharan, training manager with Kingfisher Airlines, Mumbai.

Make genuine friends

Have people on whom you can bank in good as well as bad times. Take their advice. Ask them for feedback on your ideas and let them play the devil's advocate. In an already competitive world, any help you can get should be welcomed. Don't run the solo race.

Don't get emotional

You are bound to feel frustrated and upset when you miss an important deadline that impacts a client, but don't blow it by making it all public.

The angry young man title will not get you any rewards at the office. Maintain your dignity and be quick with your apology in order to salvage your reputation.

Never say die

'No guts, no glory' is a cliché worth repeating.

Failure can be one of the best teaching tools; the best part is it doesn't have to be your own mistake in order for you to learn from it.

In the words of Michael D Eisner, chairman & CEO of Disney Corporation, 'Recovering from failure is often easier than building from success.'

Even if you fall flat on your face, you can always use the valuable lesson you learnt on your way to the top.

Tuesday, April 18, 2006

Future of Java Technology...

When Java was developed initially as OAK even its developers were not sure in which direction the technology will grow. And actually Java has taken an unexpected turn around as a development technology. It started its journey with embedded applications but people found it somewhat slow when compare to C++. Java made foray into web in the form of applets and ruled the world for sometime. But then came enterprise era with crusade of .NET and J2EE. In this article let us examine possible directions where there are chances Java will grow as development technology.

The Core (Dead???)

Some people say there is no need of separate Core Java, which is now known as J2SE. J2SE comprise of core Java components and libraries like core language library, utilities, SWT, Swing, Networking, Security etc.

For Thick Clients

Now-a-day people expect great performance from applications which are hosted over the net on some remote servers. Implementing thick client is one of the solutions to achieve better performance for such applications. Thick client means the implementation where client itself carries out some operations without interrupting server for small things. Java applets are most competitive candidate for thick clients. They can offer full-fledged stand-alone functionalities even though downloaded from a remote server.

As a Base

To develop advanced components and tools one always need to use the base library. J2SE provides basic libraries like language features, utilities and networking APIs. Even J2EE and other Java technologies are extended or developed over the top of such base libraries. With the changing times, J2SE or Core Java is not going to lose its importance.

For Desktop

Sometimes back people started to believe that Java is meant for web applications only. Java still can make its mark as development technology for stand-along applications. The only drawback of Java for desktop applications is degraded performance. Modern hardware can easily overcome this drawback. But at the same time Java comes with many advantages that applies to stand alone applications too, like platform independence, scalability, easy to maintain, flexibility etc.
Enterprise

The enterprise form of Java, which is known as J2EE (Java 2 Enterprise Edition), is the most famous Java architecture in use in modern scenario. J2EE is a combination of many technologies bundled together to form a pack, which offers everything that is required to develop an enterprise application. It comes with features like flexibility, scalability, object orientation, security, persistence, caching, performance tuning and many more.

In Full Swing

At the time when .NET was launched in market people started to believe that .NET will enjoy monopoly in market of enterprise application development technologies. But Java made its comeback with J2EE as prominent technology for enterprise and web applications. It started offering everything compatible to .NET along with its age-old advantages like free of cost and platform independence. Because of such advantages more and more people started to select J2EE as their development technology to develop enterprise and web applications. It has been observed in one survey that the ratio of applications being developed using .NET and J2EE is 28-72. This shows importance of J2EE throughout the industry. Let us also analyze importance of components and technologies forming part of J2EE in enterprise applications.

* JSP/Servlets : All applications developed over J2EE technology are using either Jsp (Java Serve Pages) or Sevlets directly or indirectly. Servlets are in use since a long time, as they were developed to provide a Java alternate to low speed CGI technology. Jsp was introduced to compete with ASP of Microsoft. Jsp provides easy to design layer over Servlets. In most cases Jsps and Servlets are used as view and controller layer of the application if the applications if going to be developed in multiple tires.
.
* EJB : Enterprise Java Beans better known, as Ejb is another important and most widely used J2EE technology. Usage of Ejb provides everything to the developer that is required for enterprise applications including container managed persistence, declarative transactions, caching, instance pooling, remote access etc. Ejb helps to make J2EE application more scalable. Most time Ejb is used to implement core business logic or the middle tier of the application. There is still a debate if Ejb is really significant for J2EE applications or not.
.
* JMS : Java Messaging Service offers asynchronous communication between Java objects. It provides a standard way of such communication between JVMs using remote calls too.
.
* JNDI : Java Naming and Directory Interface, which is widely used by Ejb, is one of the core components of J2EE. It makes possible to connect and access objects and resources fro directory services like LDap.

New Trends

People are always in search of implementing J2EE, a way that it can be used optimally. Several new frameworks, practices and design patterns are develop to make proper utilization of advantages of J2EE. Some of them are discussed here.

* Design Patterns : For enterprise applications it is very important that they are well designed prior to start of their development phase because they are large in scale. And to design a J2EE application there is always need for years of experience and expertise over technology. Some of the design patterns are MVC (Model-View-Controller), DAO (Data Access Objects), Session Façade, Front Controller, Composite View and many more.
.
* Frameworks : Some organizations have developed their own frameworks over the top of J2EE. Purpose after developing such frameworks is to provide functionalities that are common for all applications so that applications can be developed within a short period of time. Also such frameworks implement best J2EE practices to achieve high performance and other advantages of J2EE. Some popular J2EE frameworks are Struts, Spring etc.
.
* J2EE Best Practices : People have found ways to utilize J2EE framework in such a way that it can perform at its best and also it can be utilized with its all advantages like scalability, easy to maintain, flexibility, remote access etc. Such practices are used by many developers and proven to be useful to achieve such goals in J2EE applications. and are also known as J2EE best practices. Most J2EE frameworks and design patterns are implemented in such a way that they implement some proven best practices.
.
* New Technologies : The Java community which is controlled by Sun keeps including new features and technologies to J2EE such as JFS (Java Faces Service), Java.net, Java gaming, Java AI etc.

Missing

It is not that J2EE has got everything that is required to develop an enterprise application for modern scenario. To compete with .NET it needs some more improvements in many areas.One major area is client side components. .NET comes with client side components those are rendered depending on type of browser used by the client. This features if going to be achieved by JFS but its implementation is not complete yet.

Another area where J2EE is lagging behind is, integration. It is not that you go and install some J2EE kit and start developing your application. You have install and plug-in many things to achieve your desired goals in a J2EE application. Java community should find a way to cop with this situation and provide more and more features and functionalities with its standard kits.

Real Hopes

There are some areas of communication and information where Java has proved it very useful. Java has a chance to grow more and achieve a lead in these areas.

Go Mobile

Mobile phone applications are very wide scope area where Java is being used for its portability and independence. Most of mobile phones operate over Java implementations. Sun has its own implementations names as J2ME (Java 2 Micro Edition), but most mobile phone vendors have developed their own version of J2ME.

Apart from mobile phones Java applications are also significant for other small devices like palmtops, digital diaries etc. Because of its portability and independence from underlying hardware Java is being widely used to develop applications those can be accessed through small devices.

Embedded

This is the area for which Java programming language was initially intended for. But then people found it to be very slow for Embedded applications. But now a day Java is gaining more popularity to develop embedded applications. The reason after such popularity is its platform independence. The same embedded applications coded once can be used to control many different types of machines and devices. So the principle of reusability is gaining more popularity among embedded applications community and so Java.


Summary

After examining scope, usage and potential of different areas of Java technology we can summarize that it has still long way to go. Java has got a lot of potential to develop and grow in many areas. For existing areas like desktop applications and enterprise applications there are chances for Java to gain better role. Also it has got to grow in new areas of embedded applications in future.
Watch the latest videos on YouTube.com