July 06, 2008

Is Free Software really Free? (A case of Google Android and Java)

Update: Google has open sourced Android and I will take back what I said. If you still wish to read the post, you may do so.

A lot of people have asked me why anybody would want free software, because there is no support or commercial licensing usually. Let me define what free is supposed to mean: "The freedom given to a user to execute the program; to modify the source code, compile and execute the modified program; to be able to redistribute the modified source code and the modified program."

We are not here to discuss if everybody is giving you a false free software promise, or if being "good" is essential for our life, but only to discuss a particular false software promise by organizations like Sun and Google.

Let us take a classic example: the Java platform. While Sun has been (for years) trying to free Java, they still can't push in just enough to make it completely free. And when they did GPL their OpenJDK (which at the moment, is probably mostly unhindered except for the SNMP provider), Google decided that vendors should be given enough choice to "lock in" on their implementations, and based their DalvikVM off Apache Harmony.

Not that I don't respect Apache, but partially the reason they came up with their VM was because Sun wasn't really going to give away their Java without a fight from competitors. And when they sensed a threat, Sun were like, "we wanted to free Java for a long time. Freedom to the masses. Yay!". Nobody bought it. The real reason Sun didn't want to free Java was probably not because it wanted the community to fork, but because they wanted to keep it to themselves and all the monopoly that came with it.

Now it is Google's turn. While Google says it is part of an "Open Handset Alliance", it hasn't made the specification for the DEX format and source code for the DEX compiler open yet. And the vendors wouldn't be expected to reveal it, either. Google doesn't want to go the Sun way of JavaME either, although as of now, "PhoneMe" is supposedly a free implementation. So what does Google do here? "Lock in" Android applications from being accessed by everybody.

Is Google really going open with Android? I don't think so.

So when openness is a question, where do we expect to find the freedom we discussed above? And how do users expect to run applications in a closed platform locked in by vendors who claim to be "open"? The answers are: "nowhere" and "there is no way".

One suggestion for users is that they should protest against these platforms and say: "Hey, we aren't going to buy your mobiles unless you tell us everything about it. Are you living up to your open promise or was it just false marketing on your side?"

March 23, 2008

Katradu Kanippori

I watched the movie Tamizh (Tamil) M.A. I liked the movie immensely for style, but I was also stimulated into expressing my thoughts here.

We start with the burning questions:

Why don't post-graduate students with a degree in History, Sociology or Tamizh make money like hey used to?
Why have IT companies made those graduates lives worse? Why do IT people get paid for doing almost nothing?

Now for the explanation:

We have to realize that population is the first reason why everybody is struggling for getting noticed in society. So a 10th standard student in those days had more value compared to one today. Post-Docs will lose their value in the future. Maybe a triple-Ph.D. + Post-Doc would be noticed.

The second reason I would like to quote is value. We have to realize the value of a certain field is what makes it attractive to money and people. The value of every field certainly reduces with time, and its specializations are what count after that time.

The third point is, things always work based on the volume of people affected by it. Food, for instance, has never lost its value over time: Be it a road-side idli shop or a pizzeria.

The society does see a field's importance based on its impact on the surrounding society around that point of time. IT serves a huge amount of society much like its other partner, Communications. Why is it so?

Every bank transaction you do is fed into a computer. Every detail of your existence is fed into a computer. Everything you buy is accounted by a computer. The government knows you exist because it has your details on a computer. This works by sheer volume.

The next point I want to emphasize is IT is not responsible for hiking rates for rent. The problem is society and greed. If we all owned land, why do we have to hike land and building rates when a hospital or school opens nearby? We don't have to, but we could always make more. But should

The next thing I want to move on is about taxes. The whole bunch of people working everywhere pay 20 to 30% of their earnings to the country. Where does this money actually go to? If all this money were to be fully utilized, we would have a higher standard of living, better jobs, better infrastructure, lower cost of living. We might even be able to give out taxpayers money to
the unemployed. In a utopia, the government gives you a house when you are a major. No rent, just keep it and live happily with your family.

For that matter, a lot of people see value in the media for some reason. The movies they make for 60 crore rupees are tax-waived. Tax-waived! But why should they? If people all talked about value, do you feel that the media deserves the value it is given today? Unfortunately, people fail to look at themselves before they pose that ugly question on other fragments of society: Why do you earn so much? People do see value in you, so try helping them. If they didn't, nobody would as much care
to watch just about any movie being screened out there.

The next thing is about working and living. The best IT companies actually take good care of their employees. It was always possible in all those 60+ years after independence that many Indian companies could have done that for those employees. They didn't do so even if they did have the money. The mainline IT companies don't really care what happens to their employees, again. Here's a fact: $100 per hour per employee is close to what these companies earn. They get paid even if you don't work. What do they pay you? $0.028 an hour. Why, I ask? Answer: Greed. What do you lose? Answer: People who see a better living everywhere. Not just for making more money, but the money you have failed to give them though you could.

The final nail I would like to drive is this: don't mix passion with profession. Although it would be great to do both and even get paid for it, why can't we accept the fact that we can pursue what we want, when we want and wherever we want. We should be willing to take up professional education, improve our lifestyle and yet do what we like to (Tamizh, for instance). This compromise can give us the best of both the worlds. Why can't we accept that society does appreciate art, but does not need art? Because you are society and if nobody can feed your stomach because they only taught Tamizh, would YOU even bother?

Language is a medium for communication. Communication is very much important for our living. But, it's what we do with communication that matters, not just communication in itself. If nobody used the telephone for anything useful, we wouldn't be paying a lot in our telephone bills, would we?

In conclusion: Reason the truth yourself. Stop spreading F.U.D.

January 16, 2008

A word to those campus interview goers...

Well, this post is mostly about the flip side of campus interviews and how you should deal with them mentally.

Many companies play hard to get with their eligibility criterion. They may never give you a chance to sit for aptitude tests if you're not the right discipline. They may never correct your papers if your CGPA isn't high enough. They may just toss you out after a few rounds of reckless interviews if you're not the right discipline. This is besides the regular process based on talent, discipline and CGPA. So don't get bogged down by these: They aren't worth your time or emotions.

We need to realize a few facts here. The HR department is just whacked up, made up of mostly non-techies who can place safe bets on a person with a good CGPA and discipline. They are answerable for your productivity after you join the company. So if they were hiring you otherwise, they might get fired; According to them, they are doing a very good job. But here's the catch: they also don't realize the significance of job profiles and how good many people actually fit for one or two job profiles. Like, if they are going to test a person for his competence in many areas, there are high chances he isn't going to work on all of them at the same time. He might be shifting to another project in the company, but they don't realize that a lot of practical learning comes with the job, not with the degree. Also, if your CGPA is low, they just assume you're insincere. But that's not an excuse to not give the guy a fighting chance in a technical interview.

The next problem is with traveling with a company all the way to some distant university to hold these things. Although they are going to get paid for it and all, travel is very hectic and their project schedules are way off. They would mostly be focussed on coming back and getting things right on track. They just want to finish it off early, and concentrate on a few number of 'quality' students.

If you're thinking that you've ruined your entire university life because you didn't get a dream job or any job at all, think again. There is a lot of opportunity given in your life to work hard and come up. There will be people undermining you all the time; You need to learn to fight back and give things your best shot at some point of time. Tension has an immense effect on productivity. You must never let it get to you.

Life isn't some sort of race. Someone else you know may get ahead and you might feel bad that you couldn't do it. But not that they haven't any problems. Even the ones who deserve to get ahead may end up dying prematurely or catching some illness, sometimes making you wonder why life is so unfair to even those who deserve better. So are you any better or happier? It's not a happy thing to laugh about, but a good consolation to not feel any worse.

Life isn't unfair, it's just our way of looking at it. We do know that all of us will get a hard cut in our life and die; That doesn't make it any harder than it is. And we needn't get depressed about it either. Knowing that it will be hard at the end, why not learn to enjoy the trail while it lasts?