Wednesday, March 25, 2009

Pareto's Law

I need to move house again. During packing, I found out there are quite a lot of stuff that I didn't even manage to unpack from my previous move: 2 pairs of jeans, a few shirts, a stack of unused notebooks (the good old dead-tree ones), and some blank CDs.

This again confirms the Pareto's Law: In 80% of my time, I only use 20% of my stuff. In other words, more than 50% of my things can be thrown away, or better still, need not be bought at the first place.

Late in February I threw away a part of myself after 9 years, well, not exactly the physical self, but more on the memories. I don't see how the relationship is going, I just buried it somewhere, and left.

Friday, March 20, 2009

When Mac OS Fails

A conventional wisdom for IT people, especially those of my age, will be Unix or its derivatives are secure, while Windows is not.

That is why when Apple was pushing for OS X a few years ago, it kept on emphasizing its OS is of BSD-Unix variant, and therefore, more secure.

Things change fast, especially in IT. The most recent security test for browsers showed a fully patched OS X was hacked in seconds. (Relevant news here)

And guess what is the toughest combination of operating system + browser to hack?

  • Firefox + Windows
  • Chrome + Windows
The relevant news article is here. The authors didn't mention anything about browsers running under Linux or Solaris.

Sunday, March 15, 2009

Regulating Genes

I was told the following video creators really know their molecular biology:

Tuesday, March 03, 2009

Blogging or Facebooking?

Recently the frequency of updating my blog has gone down and instead, I spend more and more time on facebook, or "facebooking".

If your network circle is small, there won't be much activities in your facebook page, however, having a big network is not always good either. As your circle gets bigger, it becomes more and more unwieldy to handle. Look, the circle may consist of your acquaintances from primary school, secondary school, college, and all previous and existing companies you have served. I don't know about you, but there are things that I am willing to share with my college friends, but not to my current colleagues. A common denominator for all these groups will boil down to essentially nothing about myself, or just plainly about other people's stuff.

I am thinking the reason why I shift to facebook, and I realize facebook does give me more interactions with my friends, and at the same time, I can just choose not to talk but to look at what others are up to. Moreover, when I say something or do something, I can be relatively sure people will notice, though they may not respond and leave comments, which is fine with me. Blogging so far does not have this kind of 'traffic'.

Does that mean I will abandon my blog? No, I don't think so.

My long time readers may realize I have not blogged about technologies for a long time. The truth is I have been busy working on some Linux hacking and have made some progresses. When the project hits the milestone, I will post some how-to's and do more sharings. Stay tuned. :)

Thursday, February 26, 2009

Advices for Techies

A good article on "Things I wish I 'd been told", written in 90's but still very relevant. The original article is here.

Here are some points that I find useful:

Experiment

Your 20s are a great time to take risks and try new things. So feel free to experiment with different jobs. Your goal should be to learn what types of jobs you’d like to be doing for the next 40 years or so. Trying different jobs is an excellent way to learn.

Avoid Becoming a Manager

While you experiment, however, avoid management positions. It is very easy to become a manager. The technical field is always happy to find a new mid-level manager who is technical competent. And your pay will initially rise much faster than if you stay a techie.

But there’s a serious downside. It is very hard to stay technically competent as a manager. So once you move to management, in about 7 to 15 years, you’ll have no useful technical skills. You just be another technically weak mid-level manager with indifferent business skills (since you don’t have an MBA). When times get tough, companies work very hard to keep their technical staff (and may even offer raises) while they are laying off mid-level managers. And it is a lot harder to find a new job as a manager than as a techie.

Keep Your Skills Current

A common career mistake is to fail to keep your technical skills current. Indeed, as you get older, your set of skills should be continuing to grow. Take the time to learn new programming languages as they become important. Keep track of technology as it changes. The simplest way to do keep current is to join a technical society like ACM or IEEE and read the monthly magazines they send you for interesting ideas. Many conferences have good tutorials, which is another way to keep in touch with progress in the field. Another nice feature of professional societies is that they have a wide range of group insurance plans that can be used to supplement gaps in your employer benefits (especially if, say, you are with a startup).



Saturday, February 21, 2009

Eating Your Dog Food

"Eating one's dog food" (EODF) is a pretty common phrase in the software industry. It means "to use the product that one makes".

For example, if M$ would eat its dog food, then all the computers in M$ offices, barring those for cross-platform testing, should be running Vista. But I suspect number of Windows XP and OS-X will be significant.

I observed not many companies actually eat their own dog food, at least not at all of my previous companies. Even for companies that do, the users are usually not the developers, and feedback either never collected, or blissfully ignored.

Why EODF is important? To understand this, we must first understand humans are selfish, and when something is not related to us personally, we don't really care.

However, if the developers have to reboot their machines every couple of hours, then they will crack their heads to stabilize the software. If the developers' lives are tied to the two-way radios day-in-and-day-out, they will write more maintainable codes, start using UML properly (or just stop using it altogether), hire more competent programmers, and test the software more thoroughly beyond just shouting "TESTING 123" on the radio at left hand, and passed the test when there is sound coming out from the radio at the right.

By enforcing EODF, this will tie the interest of the developers to the products they are developing. I have observed quite a number of products are developed and tested by people who won't be using them as regular users.

EODF should form part of the framework for US banks: First, bonuses are paid in the financial products that one sells, and vested gradually over a ten-year window. Second, impose a hefty fine and allow litigation for product responsibilities like what is in the automobiles or consumer electronics sectors. I believe in this way the Wall Street bankers will think things through before screwing the whole world for their own benefits.

Tuesday, February 17, 2009

The Nothingness

I think there are more than one blog posts of mine bearing this title. Indeed this is how I feel throughout these days.

Days and nights just zip by and all I can remember are 1) I wake up and go to office 2) I go back home from office and ready to sleep

Time flies so fast I barely remember what I have done, well, I did attend a gathering on Valentine's day and had a good time, but it is pretty much of it.

Gee, how should we counter this zombie-like lives???