Where have I been?

It is almost 2 months since my last entry. And believe me, it is quite a busy season these days. Nokia’s announcement on MeeGo was definitely a shocker. Though my interest in MeeGo continues and deep down in my heart, I still do hope to see MeeGo on my HW soon. Typical summer approaching here in Sweden. And everybody knows that Swedes take a long “semester” (vacation) during summer. So all my old and new customers are lining up trying to get things straightened out beforehand. It is quite amazing on the level of renewed interest in new gadgets this year.

And then I had to remove the wiki on my web for 2 reasons: i) I was not using it as I intended to do and ii) There were a lot of spam pages in there linking to various other non-reliable sites. After cleaning up that mess, I discovered a similar situation with my forum (http://forums.naresh.se/) and had to take remedial actions. After that my wife snatched away my maemo device and gave me her HTC DHD instead. I was planning to blog about it and my experience with Android but time was not on my side. In short, I really love my maemo device. And if Nokia wants people to have an iota of good will for themselves, they should open source maemo. The open source community can take it up from there. MeeGo handset can then be developed much faster. So anyways, the DHD was draining battery and the stock ROM was coming loaded with a full shit of useless applications which choked on the bandwidth and also used the computing power.

One night, I decided to put a custom build so first had to downgrade my DHD, put on an engineering boot loader, turn S-off and radio S-off, do a full wipe and install a new ROM GB B4 from LeeDroid. I also upgraded the radio and everything is working like a charm. Personalization of the device is quite some job but it happened. On the other hand, personalization of the device for my wife was easy on the N900. She just deleted the whole phonebook and calendar and removed my accounts and replaced it with hers. And she is very happy with her device. The good part according to her is the ease with which she can use the device and all the applications she will ever need. One such example is a VOIP/SIP client. Maemo has build in VOIP capabilities and a decent client integrated with the dialer. Whereas in Android, one needs to download an application to do SIP stuff. And the professional applications cost upwards of 100 SEK. For now, I found out CSIPSimple to be okay. And my wife was much happy with the app installer as well. With Android, I need to waste an incredible amount of time going through fart apps before I find something interesting.

Anyways, that was my short review of the two devices. Hopefully, MeeGo will help us get more openness and less of the fart apps. And then it was my kid falling sick every now and then. Things should change now that we will have summer and my parents will come over to visit and stay with us. I should hopefully get some more time as well to blog and do other serious stuff. By the way, I have a nifty new social apps idea and I have spent a couple of hours working on it. Hopefully, it should be in some kind of shape and I hope that it goes viral after a few days of launch. I think that idea is a true social one, lets see how the app turns out. I will post more details as soon as I have some working code up, running and hosted. I also did some applications for a couple of my friends. I will post the code and binaries in the forums soon.

Till then, keep coding and have fun. Between, discovered EiffelStudio. Google it and check it out.

R.I.P. Nokia…

Today, 11th February 2011, is an unfortunate day in the history of mobile computing. Microsoft and Nokia has announced partnerships for Windows Phone 7 (WP7) as the primary smartphone platform on Nokia devices. Besides WP7, Nokia will also run Bing and in turn Bing will use the Ovi Maps for their backend. Nokia will also get X-Box live and Office services up and running on their devices. But above all, Nokia’s primary smartphone platform will be a closed source platform. If one reads the press release, it is but natural to see that the deal is real good for Microsoft. It gives WP7 a chance to survive in the already competitive market. But it does not bring anything new for Nokia (except that they could probably be getting a WP7 phone in the market in 6 months)! WP7 seems like the last straw that Nokia will ever have to survive and in the sea of already selling OSs like Android and iOS, it would be hard to barge in with just the HW and expect greater sales then other HW providers like HTC, Samsung, etc.

Maybe Nokia has some plans on how they will differentiate from other WP7 phones. And maybe WP7 will make some changes specifically for Nokia. But it still does not add up for me. Nokia has gone from a phone company to just a HW company (probably an OEM). If this would still have been 2004, it would have been a different story. But in 2011, Nokia has got a lot of competition in terms of producing competing HW. And with so many droids flooding the market on a wide variety of HW and screen sizes, and supposedly an open OS with literally more than million apps in its app store, how will Nokia pitch its devices? What will trigger a customer to buy a Nokia HW with closed OS (WP7) and virtually no apps in its store?

Nokia had a chance with MeeGo. Being a Maemo user myself, I can clearly see the difference between a real Linux OS to just a pseudo Linux or closed OS. And I had been using Windows Mobile from 1999 (PPC2000 and stuff), so I am not biased at all with open source. But open source just allows for a lot of different things that a normal closed source or supposedly open source cannot compete with. For example, Maemo has VOIP capabilities built-in to the architecture. Android has to have 3rd party apps costing around 11$ for general SIP/VOIP capable SW. Again, I really like an OS which uses the raw HW power instead of layering it with redundant system calls.

I had been at the Windows Mobile 7 launches in 2009 where Microsoft was talking about making secure calls between the kernel and user space code. And for that, they introduced two new APIs. So all in all, a user space code would trigger 4 system calls instead of just 2 (in Windows Mobile 6). And I had asked Microsoft on how that would impact performance and their answer was “None at all”! Any engineer can see that is not the case and was one of the reasons of Microsoft scrapping Windows Mobile 7 (running a kernel derived from Vista) and re-implementing on the CE kernel.

But on the plus part of the deal, I see a lot of good for Microsoft. They get another device manufacturer to use their OS and services. And if it goes off big time, they can be a serious competitor in the mobile industry. As for Nokia, they will probably fire away all the SW people and be just another HW provider. It it goes off big time, they will still be a small part of what they used to be. And it also means a huge loss to the open source community. The first decision that Nokia took was to let off the support for Maemo. Maemo was allready a shipping OS. They could have kept it alive while taking in small chunks of Moblin to scale to other form factors. But they did a big bang by announcing MeeGo. This still was not a problem as long as both Intel and Nokia were committed to churning out an Open OS. Also Qt will take a huge hit and I see the Microsoft technologies taking all over it.

Now with Nokia on the WP7 gang, I don’t see why Intel will do a real push for MeeGo. Maybe Intel can just start focusing more on Ubuntu Netbook or lay low and get into the Nokia, Microsoft, WP7 gang. MeeGo probably will become another abandoned open source project. I really don’t believe that Nokia will be able to manager 3 different OSs especially when they have named WP7 as the primary OS.

But all in all, Nokia will not be the Nokia we used to know. And the open source community will loose its trust once and for all. Nokia has jumped from one burning platform to a sinking one. And if sinking one seems a far bit stretched, then burning one is right on target. WP7 is not exactly selling like hot cakes or mere cakes. But time will say. Lets see if this is another engineering company going down the drains because of employing a non-engineer as its CEO or maybe it is a non-engineer CEO saving an engineering company! But whatever happens to Nokia in future, history will take notice of what you have done in mobile technology. Hope I see MeeGo on my smartphone before I get sucked into the vortex. RIP Nokia…

Need to face the reality!

I have in my previous articles written about denial and reasons for denial. I have also written about people who live in constant denial either because of their overtly optimistic outlook or downright stubbornness to accept the facts. Most of these people have strong beliefs in one thing or the other. Religious people have the most “weird” views in my opinion and they also have no logical alternatives to switch or re-consider their views (especially the monotheistic ones). I do respect those views as long as they don’t hurt anybody else but such people also have a tendency to exert their views on others which lead to death and destruction. The 2000 year history and ongoing occurrences all around the world is all that one needs to go through to look at the destructive tendencies of these religious people. However it does not mean that religion/religious people have done no good. Most of the world, I would say is still a relatively good place to live because of these people and the moral values that a religion builds its frameworks on.

The second category of people I would put in the denial category are the “Patriotic” ones. These would just like to hear good stuff about their country and their land but whenever one starts to show the bad/unjust things happening, they would simply either term it a fallacy or set straight out to destroy the so-called “coward/spy/dishonest” person(s). But apart from these two, the other one that I find most grueling are the ones who just sit on their seats, fold their hands, turn blind eyes to whatever is happening around and then blame it on the system. But what one does not understand is that, “We the people have created the system”! We are responsible for whatever that is happening around us and all of us has to do whatever is available in his/her capacity to change it. If we see a poor person in need of food and clothing, we can provide him/her with part of our food and clothing. The above 2 categories will not do so. Whereas the last one will just sit and do nothing.

Recently I was watching a very interesting movie “Akrosh”. The story has been truthfully written and well directed to show the abysmal levels untouchability being practiced in India in the rural areas. It also shows how politicians and police have formed a network of local mafia’s and how their unholy nexus wreaks havocs on the poor and needy people. Until now I thought that such movies were exaggerated and only showed the bad side of India. But not this one. This one shows what happens in rural India and how the political mafia assists by providing the damaging and corrupt environment. In the end of the movie, it also shows that India still has hope because of its citizens. The only thing missing is unity and a will to set things straight. I have seen people including me who will not raise a finger against injustice as long as it is not happening to their own self. That tendency is the one that has led to downfall of the people in general. There was another movie “Pipli live” where the politicians and media were making money out of a poor farmers misery. It was a real heart touching movie as well.

And to top it all up, today (after years of cribbing by the opposition), Supreme Court of India finally asked the government to publicly declare the black money and account holders in Swiss banks. The (puppet) government of course said NO to the Supreme Court request stating various reasons but not the most prominent ones i.e. All these black money belongs to politicians and high profile businessmen. Lets see how far the media and people of India go in pursuing this case. Sleep on it and keep a low profile till another exciting news erupts and people of India will forget about it.

 

Thats how we say it, IT HAPPENS ONLY IN INDIA…

cntlm-0.35.1 modified to support Basic HTTP Auth with HTTPAUTH parameter

It was quite some time ago, I think in the beginning of this year when I had to pass through my corporate proxy which used a Basic HTTP Authentication scheme. In short, it means that all my HTTP requests will need to have a parameter Proxy-Authorization : Base64_Encoded_Username:Password. But before going further, I needed to use a local proxy since my passwords generally have a lot of @ symbols to make it more secure. In Linux, one can use proxy authentication using export http_proxy=http://username:password@proxy:port. As you guessed, my password would break this simple mechanism of defining proxy tunnels with authentication. The easiest solution would be to change my password but then I am not an engineer who goes for such simple workarounds.

 

A search on the web also revealed a number of scripts but all of these had one or the other problem. I also wanted to access git and other stuff from behind the proxy. I found cntlm on http://cntlm.sourceforge.net/ and it seemed like a good candidate to help me get away from all the problems. I modified cntlm proxy to incorporate HTTPAUTH. This modification does not induce any side-effects/bugs but enhances cntlm to satisfy my needs.

 

One can download the modified file from http://ubuntuforums.org/showthread.php?t=1396749. The modifications only work when you have supplied your plain text password in the cntlm.conf file. The last parameter at the end of file is also HTTPAUTH instead of HTTP_AUTH (I forgot to change the conf file when I uploaded the modifications). But now you know. I got many questions on the above and this post clarifies almost all of them. After doing those changes plus configuring your cntlm.conf file by supplying the necessary domain, proxy, username and password parameters, run it using cntlm. If you get a config file not found (i.e. if you have just done a make and not a make install), then use sudo cntlm. After that you can set a system wide proxy to use 127.0.0.1 and 3128 (unless you have changed the port in the cntlm.conf file) and hurray, you can do all the different stuff behind your stupid proxy.

 

Between, I had a talk with the cntlm developer and maintainer and he thought the modifications were too easy. So it is not included in the main branch. Anyways, it works for me and also works for quite a few out there. Questions and comments are welcome. In my next post, I will write about using of an application known as tunnel and a simple script to make git, ssh, etc. work from behind a proxy. Be tuned…

A very compelling Sri Ram Bhajan

There has been times in our lives when we try to seek support, commitment, satisfaction, love, peace and all kinds of good feelings. There are times when life seems utterly hopeless, negative, not-worth-living, throw-away, wasted and all kinds of depressive ideas and feelings over power us. I have also suffered from/in such times and at times it is hard to relax and/or do anything useful/simulating which can have a positive effect to get oneself out of that particular mood. At times like those, I listen to my favorite Sri Ram Bhajan. It does not matter what you are and what you believe in. It is the tune and the words and the meaning behind them which makes the Bhajan so special. Listening to it will be very helpful and reciting it will be awesome. I am happy to share it with you. You can find it at:

 

The first one is the original bhajan (at least the first one I heard) sung by Sharma brothers. The other link is to a more recent version sung by Anup Jalota. Both are excellent versions. For those who do not understand Hindi/Urdu, I will try to write rough translations. There will be mistakes and stuff but I still hope the essence is captured in them.

 

Jaise Suraj ki garmi se jalte hue tan ko mil jaye taruvar ki chaya

Aisa hi sukh mere man ko mila hai main jabse sharan teri aaya, mere Ram (2)

The first para talks about a very interesting concept. It says that as a body/individual feels relaxed from the burning heat of the sun, there is a similar feeling to my mind when I came into your embrace my (Lord) Ram. This line is so true especially if you have lived in a hot place like India where it easily reaches 45 during summers. I still remember the days when I was just lying beneath a tree in the hot sun and enjoying the cool breeze. A similar effect is experienced when one devotes himself to the one.

 

Bhatka hua mera man tha koi, mil na raha tha sahara

Lahero se ladti hui naav ko jaise, mil na raha ho kinaara (2)

Us ladkhadati hui naav ko jo kisine kinara dikhaya

Aisa hi sukh mere man ko mila hai main jabse sharan teri aaya, mere Ram (2)

The second para is quite intriguing. It says that, my mind is all disturbed and out of place and I don’t get any help/refuge from such a constant pain. The situation is similar to a boat which has lost its way in the middle of a storm and is fighting its way through the waves in search of the bank/safe ground/harbor. When such a boat reaches the shores because someone showed the way, I also feel happiness of similar levels when I submit myself to you my (Lord) Ram.

 

Sheetal bane aag chandan ke jaisi, Raghav krupa ho jo teri

Ujiyali poonam ki ho jaye rate, jo thi amavas andheri (2)

Yug yug se pyasi madhur bhumi ne jaise saavan ka sandesh paya

Aisa hi sukh mere man ko mila hai main jabse sharan teri aaya, mere Ram (2)

The fire within will turn into the coolness of Sandalwood, if Raghav (another name of Sri Ram) blesses. Similarly, the dark no moon nights can transform into full moon nights showering us with cool silver light. It is as if a dried up land is given the news of the approaching monsoon, I also feel happiness of similar levels when I submit myself to you my (Lord) Ram.

 

Jis raah ki manzil pe tera milan ho, us par kadam main badhau

Phoolo mein khalo mein, patjhad baharo mein, main na kabhi damagau (2)

Pani ke pyase ko takdir ne jaise ji bhar ke amrit pilaya

Aisa hi sukh mere man ko mila hai main jabse sharan teri aaya, mere Ram (2)

I pray that I walk on the path which will allow me to meet you (you being the almighty here) or more specifically, will allow me to blend with the almighty. While walking on this path, I am not disturbed/made unstable by flowers, thorns, autumn (signifying depressiveness/darkness), spring (signifying light/happiness). It is as if a person who is thirsty has been allowed to drink elixir (amrit) by luck, I also feel happiness of similar levels when I submit myself to you my (Lord) Ram.

 

I really feel so relaxed after listening and reciting this bhajan that I feel obliged to share the same secret keys to eternal bliss. May Sri Ram be with you!