Tuesday, March 4, 2014

The price war...

Vishal Tripathi, an analyst at Gartner reportedly believes that the Windows brand still resonates with people. “If people have an option to get a Windows tablet at price that is similar to an Android tablet, they will likely pick it. A low-cost Windows tablet is not going to shake the market but it will help Microsoft gain some consumers who will otherwise go to Android,” he said.

Well, I do not agree to that. Free is FREE. 15 != 0. But, the fact that is really going to go against them is that, people will not pick windows just because there is an option! If that was the case, they should have already been picking up windows mobiles from Nokia. But, they are not doing it!

Reason? Customers have gone more tech savy and they understand what they are getting. They spent 80% of their time in apps. MS has a store with 10^5 apps or a little more. On Android, they have about 10^6 apps. About 10 times more!

Of course,  people have not forgotten name of MS yet. But, they are more familiar with the name of Android when it comes to phones and tablets. The killer apps on any MS OS are office apps. If they are not going to play that trump card by making office dirt cheap, it will be difficult to make people forget about Android.

Again, in past we have seen Amazon, Nokia etc forking Android. Can it happen in case of any MS OS?

So, the bottom line is, MS cannot win by simply reducing the price of OS. They have to catch up on apps, reduce the cost of office suite and learn from Android about how to force your bitter most enemy to come to you for this survival and then help him to survive :) The last point lets you survive in a fiercely competitive market irrespective of whether you win or your opponent wins eventually. Last at least is something that MS can never do. They are good at closing windows to people, but Android has none to close. 

Friday, November 8, 2013


I am back again. Don't know how long I will stay. But, I want to try something with opencv. Eventually this will happen in ARM platform. However, I am starting with my old laptop running ubuntu.

Step-1: Compiling opencv
  1. Download opencv from http://opencv.org/downloads.html
  2. Create a folder where you are going to build this and untar the files there (I did it in /host/opencv. This created opencv- folder inside above directory)
  3. For detailed installation steps, you can visit http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html
  4. I did not have cmake installed. Installed it using command "sudo apt-get install cmake""
  5. I also ran "sudo apt-get update", "sudo apt-get install libgtk2.0-dev" and "sudo apt-get install ffmpeg"
  6. Created 2 folder scripts and release
    1. /host/opencv/scripts -> A folder for my build script
    2. /host/opencv/release -> A folder for saving my release binaries
  7. Created my build.sh in scripts folder. It is pasted below
make -j 6
Once you do the above steps, run build.sh and then once the build is successfully completed, enter the release folder and execute "sudo make install".
This will install your  built binaries to /usr/local. This is only building OpenCV. I will talk about building a program using this in another post.

Monday, August 29, 2011

Moving to wordpress

I revamped my homepage  by moving it to a hosting provider and migrating to joomla. Fortunetly or unfortunately, Joomla has very good plugins for wordpress and not for blogspot. These plugins allow me to post at my wordpress blog while updates will be made available instantaneously at my home page. I have pulled all the content from flyingtux.blogspot.com to yetanothertux.wordpress.com. Do continue to visit me at


Friday, June 24, 2011

QT keyboard events

I am here to make a quick post. I searched for this at many places but could not get the exact solutions. Every message I could read sounded cryptic.

I want to generate fake keyboard events and send to QWebView class.

Extend this class to have slots for signals. Connect it to a signal that can pass an ascii character.

Keyboard does not have 'a' and 'A'. It only has an 'A'. That means, I cannot directly send any lower case characters using the event (Which is not correct)

The solution is simple. The constructor of QKeyEvent can take QString as one of its argument. The signature is as follows:

QKeyEvent ( Type type, int key, Qt::KeyboardModifiers modifiers, const QString & text = QString(), bool autorep = false, ushort count = 1 )

Even if we don't pass the QString, it will work. However, by passing the QString, we can control exactly what will be displayed.
This is how I create my QKeyEvent:

void MyWebView::rcvKeys(int k)

char str[2];

QKeyEvent *k=new QKeyEvent(QEvent::KeyPress,k,Qt::NoModifier,QtString(str),false,0)

//-----------Pass it to postevent etc

Sunday, April 24, 2011

Google fined USD 5 million for using patented code in Linux kernel


Very interesting news. I am still not really sure if this is part of mainline. However, considering the fact that the holder was able to analyse the code and ascertain that it was there in the Google's server's kernel indicates it was surely there on the public domain whether it was a custom piece of code written by Google engineers or not. This is surely something very interesting thing to happen and it would be very interesting to see if Google takes it beyond district court and what exactly happens to this case at the end

/. link: http://linux.slashdot.org/story/11/04/21/2140249/Google-Loses-Bedrock-Suit-All-Linux-May-Infringe