Work Ahead

Over this weekend, I am planning to replace dasBlog based blog-engine with my own newly revived blog engine, Daily. Expect trouble. 😉


Well, looks like I'll have to postpone the switcheroo til next weekend. I ran into an odd Lucene problem that scrambles the search index that I'll need to sleep on to figure out. There is also a layout problem with images in posts created with LiveWriter I would rather fix now.

Update 2:

Spent the afternoon fixing both problems and it's now working very nicely. Live Writer is working great too (color popped risque photos in test posts sure made testing more enjoyable!) but I think I'll extend XML-RPC API to support Movable Type API methods to enable a few more Live Writer functionalities. I haven't added Atom API yet because I haven't found a compelling reason to do so. Atom feed is there though. shrug

Update 3:

It took only an hour to add Movable Type API support. mt.supportedTextFilters and mt.getTrackbackPings are not supported though since first requires pluggable text filter feature which I don't support (yet) and I am just not interested in the later due to all the spam trackbacks.

Interestingly, Live Writer is much quicker at talking to my XML-RPC end point, probably because now it just calls mt.supportedMethods instead of having to poke around to discover what works.

Abe Shinzo is Korean?

According to this rather odd Korean article, 80 year old former housemaid of Abe Shintaro, Abe Shinzo's father, claims his former employer confessed to her before dying that he descends from a Chosun family line (Chosun precedes Republic of Korea) which originated somewhere in Manchuria. He also tolder he that his family name Abe was the same one used by an 11th century warrior.

This doesn't change my opinion of Abe Shinzo though because it's his thoughts that matters to me, not what flows in his veins.

Implementing Tags and Categories

Duncan MacKenzie replaced categories with tags unveiled two issues which he is asking for help on (via Dave the switchboard):

First, there are many more tags on most sites than there would be categories, so editing tools don't always provide the most useful UI for selecting tags.

Second, categories are fairly static, but tags are continually being added… and most blogging software doesn't provide a mechanism for adding to your list of categories.

I ran into this problem as well recently while reviving and renovating my blog engine which I had shelved long time ago. My solution was to:

  1. define categories as collections of tags
  2. define category names as tags

which turns categories into macro tags of sort. #2 is needed if you want to associate only tags with each post and not categories.


  1. Since tag names usually have stricter syntax limitations than category names, category should have label(s). You'll need more than one if you have i18n requirements.
  2. Each category's collection of tags should be editable by the blog admins.
  3. Searching gets slightly complicated because you have to expand category names into tags before submitting the combined collection of tags and keywords to the search engine.

Growing Up Hating America

It is clear to me that Bush and his supporters are ignoring basic human psychology in favor of Rambo mentality. Youths of the world are growing up with seeds of resentment against America yet we, the Americans, are not only blind to this but are adding fuel to the fire.

Imagine the mind of Korean youths whose grandparents are indebted to America for freeing their country from Japan's domination in 1945 and for pulling the country out of the jaw of communism in early 1950s. Unlike their grandparents, they were born into a safe world and spend their daily lives more concerned about entertainment and technology than liberation and democracy.

To most of them, the debt their grandparents carry in their hearts are no different from debt owed to a creditor so it should not be surprising that many of them resent being told that they must inherit the burden. If you can't understand this failing, try explaining to your kids why they must inherit your financial debts. If korean youths feel this way, imagine how kids of other counties who experienced only the rough end of America's capitalism must feel.

On this riverbed of dormant resentment, naked waves of War Against Terror flowed while twisted idealists and religious fanatics infiltrated the youths with false history and propaganda to turn them against America. While we shocked and awed with precision-bombing, they picked and played the strings of resentment with precision and persistence.

We can't change these kids' mind with dead bodies of terrorists and fallen dictators, not when they think they are Luke Skywalker and us the Empire. I fear that Bush's so called War against Terror is going to turn into a War against Rest of the World when the kids are no longer kids unless we open our collective eyes and try to see the world through their eyes.

Amazing Archery

I just ran into this amazing korean video clip that ends with a korean archer shooting an arrow into another arrow at 30 meter, duplicating the feat shown in the Robin Hood movie. Wow.

Giving Advertisers Tools to Protect Themselves Against Click Fraud

I think it's unethical for Google (and others) to not do more to protect advertisers like Martin Fleischmann. IMHO, the best way to do that is by giving advertisers the means to protect themselves.

For example, let advertisers:

  1. Limit clicks by country or region - it's easy to figure out which country an IP address originates from so why doesn't Google allow advertisers to limit clicks to specific countries or regions? Geo-IP mapping errors and use of proxy servers don't matter because they'll show up as hotspots when click frauders try to take advantage of them. So why not?
  2. Limit clicks by time – most people don't get up at 3am to surf the net and those who do are good targets for sleeping pill or pillow ads. Why not let advertisers pick when their ads show? When combined with limits by country, click-frauders in Russia will have to get up at awful hours to earn their money.
  3. Limit clicks by velocity – it doesn't take much effort to measure number of clicks over time per IP or IP-block. Why not let frugal advertiser filter out clients that generates abnormal number of clicks per day? I mean, how many ads does a normal person click on per day? 2-3? 24?

With all those PhDs, what's Google's excuse for not having offered such obvious (well, to me) protections?

Bombed Back to Stone Age

Pakistani President Pervez Musharraf said the intelligence chief quoted Armitage as saying, "Be prepared to be bombed. Be prepared to go back to the Stone Age." – AP


p dir=”ltr”>Real nice. Where can I learn the fine art of diplomacy like this? Can we pass a legislation to cut down red meat consumption in Washington DC please? More veggies and yoga maybe.


Armitage claims he didn't say those words although he won't deny he didn't walk softly and White House say bombing threats are against U.S. policy. Hmm. What are we threatening with then? Involuntary time-travel?

VML Vulnerability

A new vulnerability in IE's VML engine has been reported. While VML is rarely used, this vulnerability is critical because:

  1. any website can exploit the hole by embedding VML inside HTML.
  2. any email sender can send HTML email with hostile VML

This one is serious enough for me to take action without waiting for a patch from Microsoft and I suggest you do the same by choosing one of the workarounds listed here.

Since none of my tools rely on VML (AFLAX does but I am not using AFLAX yet), I chose to disable VML by unregistering VGX.dll with following command:

regsvr32 -u "%ProgramFiles%\Common Files\Microsoft Shared\VGX\vgx.dll"


p dir=”ltr”>To restore VML later, use the same command without -u.

Four Years of Blogging

I didn't realize until today that my fourth blogging anniversary passed last month. Wow. After four years, I am still impressed by how blogging enables a person to influence the world around him.

While bloggers tend to think in terms of link counts, I think it's interesting to see how far our words travel. For example, the term 'visual spoofing' now has 13,600 mentions. Terse words don't travel as far though. 'dog-shit-girl' has only 625 results while 'dog-poop-girl', media-friendly version from Washington Post, has 17,100 results.

Well, maybe some rapper will use the original version cuz it rolls off the tongue better.

Dog-shit-girl, o, dog-shit-girl

Kick her booty cuz she so snooty

Dog-shit-girl, o, dog-shit-girl


p dir=”ltr”>Hehe.

Welcoming Mark Lewis to Blogosphere

I just noticed that Mark Lewis, EMC's Chief Development Officer (huh?), started blogging Monday, the day EMC completed its acquisition of RSA. Since RSA is a client, I thought I should be welcome Mark to the blogosphere by sending him some google juice although I doubt he'll need it if he keeps his blog interesting instead of using it as an unofficial PR outlet.

Welcome Mark!