Wednesday, October 22, 2008

Google's Android Open Sourced (2008/10/21)

Its openness was promised by Google at the very beginning, but commercial companies like the one I am working for kept wondering how open it will be. There are some companies selling services for the development and maintenance of this platform.

Here we are! The grand opening of the Android platform takes place in Oct, 21, 2008. Source code can be downloaded from Android's git source repository. It is stated that from Bootloader to applications, everything is open sourced.

Visit Here for Android Open Source Announcement

I am curious whether they also open sourced video driver, DSP firmware, and radio protocol firmware. Need to download to check that out. From its announced code size, 1.2GB, I think it is unlikely to be so. :) I do not think Qualcomm will let that happen, either.

Let's git it and try to figure something out!

Updated (10/22): I've downloaded it. The size is 1460 MB. And it stops building on CSAIL shaggy because the bison is missing.

Tuesday, October 21, 2008

Steve Ballmer Got Kicked

Mr. Ballmer stated that Google Doc has no threat to Microsoft. He pointed out a very simple feature that G-Doc is missing: "you can’t even put a footnote in a document”.

He was right. Note: "was".

Two days after he said that, G Doc has the footnote feature added.

http://blogs.zdnet.com/Google/?p=1160&tag=nl.e539

Monday, October 06, 2008

Happy 17 th Birthday (10/5)! Linux!

One year left to be legal. :)
The slashdotters are making fun of it. Enjoy!

Friday, October 03, 2008

Boot Linux within 5 Seconds

Just found this article. It is great that they did it. I've wondered about why it takes so long to boot up a Linux box for an extended period of time. As I could tell from the console log, it is stupid to have so many mysterious waiting here and there.

Sincerely I wish their work can be synced to the upstream and distribution packagers. I will be more than happy to use a Linux box which takes shorter to boot up the installed Linux than its BIOS/Video card splash screen persisted.
Chinese Accent

Honestly, I always knew I have accent problems.
Today is my lucky day. My short term English teacher Louise was helping us on accent problems.
Now I am reading the material I got. Gosh, I must say sorry to those who bore me. Hope I can indeed improve myself after this short semester.

Below are some key points digested from this 4 pages material.

* Intonation

In English, a pitch change indicates the speaker's intention. In Chinese, a pitch change indicates a different word.

For example: ma can be ma1, ma2, ma3, ma4 in Chinese.
And when you say "It sounds like rain". We usually speak it flatly.
However, the pitch should be like: "It ma3 like ma3" when you say "It sounds(3) like rain(3)".

* Pronunciation

I am totally helpless in this part.

* Liaisons - I am not doing too bad in this part although far from good enough.

Written English Chinese Accent American Liaisons
Tell him teo him tellim
Pull it out puw ih aw pul li dout

* Final Consonants

Final consonants are often left off. For example, hold sound like ho.
American English has a peculiar characteristic in that the t sound is, in many cases, pronounced as a d.

Thursday, October 02, 2008

A Trivial Non-Trivial Problem (C++ Linking Error)

MESSAGE: error LNK2001: unresolved external symbol "private: static class .....

This error message occurred during link phase (in Visual C++) stopped me from moving on for a few hours. I just got it solved.

The situation is like this: I am going to use static member attribute in a class to reduce the effort to create more than one instance of a certain object A in class B. I declared it like this:

In file B.h

class B {

static A *varA;

};

Then the compiler complains unresolved symbol like the message above.

But it is there!

I tried so many ways to work it out until just minutes ago. I found that it seems non-primitive types been used in static way need be declared separately again so it is actually instantiated:

In File B.cpp

#include

A * B::varA = NULL;

This solves the problem.
The problem is not hard. It's just I am not knowledgeable of C++.