Congress as Jury Duty

Republicans in the Congress had it coming for a while but the culture of corruption and arrogance is not limited to Republicans. It's just human nature. I wish we could 'fix' the Congress so abuse of power can be curbed directly by the people.

One idea I had was to take away voting power from congressmen and senators and give them to randomly selected citizens who does the voting, representation as jury duty of sort. This is how I see it working:

House of Representatives is disbanded. In return, the Senate is expanded to handle the workflow. Senators propose legislations to be put to vote by randomly selected citizens who listens to presentations by the senators and others via the Net, or if they lack the equipment, at their local cityhall. When they vote on a law, they can also vote on the senators who proposed the law. If the law is not passed and votes against the writers is above a certain threshold, the writers lose their seats in the Senate instantly.


Printing to PDF

The only reason I bought Acrobat was to convert documents into PDF. I have no use for its other features and I've always felt I was wasting good money for too little.

Just today, I came across PrimoPDF which does what I want and does it for free! I tried it on an invoice to be sent to my client and saw that it worked as advertised without anything fishy like adding advertisement watermarks. It acts like a printer so any printable document can be converted to PDF using this. Recommended.


Actually I do have one other use for Acrobat which is to test Acrobat plugins I occasionally get dragged into writing like Arcot's SimpleSign which is offered by American Bankers Association (ABA) and Identrus (also probably Wells Fargo) to digitally sign PDF documents. But writing Adobe plugins is like pulling teeth and I would never do it voluntarily so this use doesn't count.

Evolving Password

When I first heard about quantum cryptography, I started thinking about evolving authentication key, a door key that changes shape when it is used. Such a key cannot be copied and used without alerting the original key owner because the matching lock changes in sync.  Actual mechanism used to evolve the key and the lock together is implementation specific.

Evolving password is an evolving authentication key in that password will change each time it is used to login successfully. Since a password is essentially a shared secret, evolution of password involves another shared secret: challenge. One way to implement evolving password in an webapp is for the webapp to generate and send the challenge in the password form field.

I've been thinking lately about combining evolving password idea with Stanford Security Lab's web password hashing (PwdHash) idea. But I am not sure when and if I'll have time to build a prototype though so I am blogging it to relieve the stress of creativity. 🙂

Notes for Emails

Why is it that Outlook won't let me add notes to email messages I received? For that matter, I don't see why email messages and contact informations have to be stored in their own proprietary containers. Just following a trail of thought here. I'll explore this more later.


I am trying to recover from my main PC's hard disk crash so I'll be out of sight until the mess is cleaned up. The matter is made worse because I have been lax with backups. At this point, it looks as if it was a drive head crash which wiped out only 75 blocks out of millions of blocks. Unfortunately, at least a few of the blocks are needed to boot so it's dead for the moment. sigh.


I am now using SpinRite 6.0 to examine and attempt recovery of the unreadable sectors. If it does it's magic for me, $89 is well worth it and I would be more than happy to add my testimonial to the long list at Steve Gibson's geeky website. It's awefully slow though. Maybe it's because the drive is a SATA drive, not an IDE drive. So far, after 4 hours, it's 1% complete. 9 bad sectors found were found in that time but none were fully recoverable. Urgh.

Update 2:

SpinRite now estimates that it will take 395 hours to finish. Egads. Looks like I am gonna have to ask Steve for a refund. 😦

Update 3:

Gave up on SpinRite as it took 12 hours to process 2% of the disk. Recovery wise, it was unable to recover most of the bad sectors it found during that time. A bad sign. I went to Fry's a few hours to pickup a copy of XP Pro (couldn't find the CD at a glance and didn't feel like spending an hour looking for it) and a couple of 250G SATA drives. Installed one drive and attempted to install XP only to find out that XP didn't recognize the new drive because it didn't come with SATA drivers. Only way to to load the drivers was with a floppy. Found bunch of floppyless XP install questions but not many answers without a working Windows. So I ripped one out of an ancient abandoned PC in the garage and, after a bit of grunting and cable madness, got it installed, found the SATA drivers from Intel, fast forward and I am now entering the product key. Whew! I sure hope the files I need on the crashed drive are still there, intact.

Final Update:

Hurrah! Every more twist and turns, much of it due to Dell's mediocre driver slip-streaming practice which leaves store box XP installers clueless, system is back up with every device working. And I like the new faster quieter drives I got. Now all that remains is reloading all the software like Office, Visual Studio, and development tools. The best part is that none of the files I needed on the crashed drives seem damaged. I won't know for sure until I start opening and compiling them, of course.

General MacArthur’s Statue in Inchon

When North Korea invaded on June 25th, 1950, South Korean army was caught ill-prepared and retreated south, primarily fighting to buy time for help to arrive. UN acted unusually quickly and UN forces, mostly American, started pouring into South Korea. But it was not enough to reverse the tide. By August, UN forces were cornered around Pusan.

On September 15th, 1950, General MacArthur struck back with a daring landing at Inchon.

It was one of those frightening yet inspiring moves that every wannabe-generals (including me) dream of.

Each of those red flames are icons of bravery and sacrifices.

The remarkable landing at Inchon turned the tide of the war. In 1957, a statue of General MacArthur was erected at Freedom Park looking out toward Inchon harbor.


Sadly, some misinformed liberals are trying to remove the statue.

Pro-North Korea website like this one has been spreading misinformation and alternate history among Korean youths and socialists. Liberal news organizations like OhmyNews (lots of good pictures here) hasn't been helping either by spreading biased yet compelling views and exercising non-neutral editorial practice. While Korean conservatives and war veterans, like my father, are rallying against them, they are doing so with their versions of history filtered and transformed by their personal biases and overflowing emotions.

That's citizen journalism and personal publishing at work. Powerful technologis are like steaming teapots. They can make great tea on four legged table, but what if the table had only two legs?

I guess what I am trying to say is:

  • Webpage is not truth
  • Pagerank is not trust

The Web is appropriately named, for it can catch you as well as inform you.

eBay and Skype

Like everyone else, I don't see the justification for Skype valuation in the billions. It's technology and service is not compelling enough and there are technical and quality issues. And it's biggest asset, the user base, is a sandcastle: it will get washed away at the next big wave of free higher quality services.

I think the really valuable real estate in the VOIP market is not the VOIP service but the VOIP directory and routing services. VOIP directory service enables me to make and receive calls regardless of which VOIP service I am using. VOIP routing service lets me easily switch device and route calls.

To get that started, I think the easiest path is to use real world phone numbers as VOIP endpoints instead of using VOIP service-specifc handles like Skype ID. Endpoint claims and disputes are resolved using phone-based authentication.

Shocking Before and After Satellite Pictures of New Orleans

I couldn't quite grasp the magnitude of the disaster at New Orleans so I searched for satellite pictures and found them at GlobeXplorer. I couldn't believe what I saw: an entire city flooded.

Before Katrina (March 9th, 2005)

Courtesy of Digital Globe

After Katrina (August 31st, 2005)

Courtesy of Digital Globe

You have to compare the two in detailed image (click-through on the images above) for the full impact. All those houses, block after block, across the entire city, every each one of them some family's home. OMFG.

I think what they need is more immediate than donations. They need a nationwide convoy to deliver food, water, and supplies there and then use the cars to move people out of the area. They need volunteers with cars and trucks to go there and people to buy goods to fill those vehicles with. Is anything like that being organized?


Sad parade of pleas for rescue and reports of roaming armed gangs.

Java Recommendations

DWR – AJAX framework for Java. Easy to use.

XFire – New SOAP framework for Java. Fast and simple.

Spring – application framework. Great for easy configuration and wiring of components. Has built-in support for JMX.

Drools – RETE-based Rules engine. Fast.

ServiceMix – Enterprise Service Bus. Works well with XFire, Spring, and uses Drools for smart routing.

BIRT – Jasper-like reporting tool for Eclipse. While Jasper still rules, BIRT is starting to look good. Includes J2EE report output runtime as well.

That's all for now.