Weaning off laptop

I have been using laptops primarily for the past few years and now I am planning to return to desktops.  Why?  Because laptops are difficult to upgrade and I am tired of paying too much to replace broken parts or batteries dying over time.  The control key on my current laptop, a Dell Inspiron 8000, is sticky and I can't fix it without sending my laptop off.  Fans (yup, it has two) and hard drives turning on and off is annoying too.

I have been eyeing the 17-inch PowerBook but Windows is my primary target environment so I can't just replace my laptop with the PowerBook.  So I am going to get a desktop, not the most powerful one available, but one that hits the Sweet Spot.  I think that means 3.2 GHz Pentium 4.  So far I am looking at Dell Dimension 8300 with 2 gig of memory, 400G disk.  Since I am addicted to 1600×1200 resolution and LCD (read ClearType), I'll have to get one of those 20-inch LCD and match that with Radeon 9800 GPU.  Even with fastest optical drives (CD/DVD-RW), total cost is around $2400 which is pretty good deal I think.

Only problem is that the price keeps dropping.  Longer I hold off on getting it, the cheaper it gets.  It's amazing that with such a strong incentive not to press the submit button, the computer industry still humms along.  How crazy is that?

After I finish making the transition to the desktop, maybe I'll get the PowerBook (why the heck does it support only 1440×900?) with the excuse that I'll be writing some OS X software.  At least that's the line I am going to use on my wife.  OS X software market is going to explode, honey!

Belated Apology

Dave wrote:

What really gets to me is how people who say they're my friend, stand by, and say nothing.

Oops.  Sorry, Dave.  When read about your shutting down of weblogs.com, I thought it didn't seem like something you would do without a good reason.  So I went and listened to your MP3 chat.  You did have a good reason which was that you tried to do the good thing but things got complicated and there weren't many options to choose from.  While it's easy to think there must have been better alternatives, it's just not the same as being the man on the spot.

Why didn't I say anything when the hounds were at your heels?  I thought you would just take it all in stride.  After all, you must have expected the hounds would come after you.  Would the hounds listen to opinions contrary to their smell of blood?  I didn't think so.  I thought they would just look foolish afterward since they chose to misinterpret what you said and misunderstand your motives.

Inside me is a scared kid as well but I have been all right ever since I accepted death as a side door with a glowing Exit sign over it instead of a gate to hell and eternal pain.  My apology is for not seeing that you might think differently and that you might misinterpret silence as a sign of abandonment.  I will speak up next time.

Vacation of sort

I just got back home from SFO after watching my wife and son enter the passenger gate.  They are going to Korea to visit family and friends for a month.  This means I'll be on a vacation from family life for the next month.  Heeehaaaw!  So far I got a private poker tourney scheduled for Saturday.  I should do well enough to beat most of the players, but I doubt I'll be taking the big pot home because trying to win the tourney takes too much fun out of the game.

Chromeless Phish

When I built the visual spoofing demo, I could have done it in several ways including chromeless window but I went for the simplest way.  It turns out that some smart phisher recently launched a chromeless window-based phishing attack.  Following is screenshot of the browser window showing the phishing site which was still active at 11:51AM.

The webpage and the URL portion of the addressbar is fake.  What's happening is that the phishing site opened a chromeless window to overlay the fake URL over the real address which can be discerned by dragging another window over.  It's using a IE 5.5 specific feature to float the fake URL over everything.  The interesting thing about this trick is that it can potentially defeat many phishmark implementations such as my own 9-block phishmarkPassMark and background-based phishmarks are still effective though.

Pure Java Berkeley DB

Wow.  Pure Java edition of Berkeley DB is out.  I guess pure Java version of Berkeley DB XML is coming as well.  As to the performance, I haven't checked it myself but if this quote means anything, I think this is a major event for Java developers:

"With Berkeley DB Java Edition, we have a simpler setup, a 3x increase in data import speed, a 5x increase in performance and a 10x decrease in disk storage requirements."

–  Eric Jain, Swiss Institute of Bioinformatics

Firefox 0.9: A Stinker

I just installed Firefox 0.9.  Urgh.  It's butt ugly now and seemingly infested with UI bugs.  I tried a few supposedly popular themes but none made me happy although the IE clone theme was most bearable.  They changed quite a bit of dialogs too, most of which seem to be a move in the wrong direction.  0.8 was good.  0.9 is a stinker.

Hollywood meets Video Conferencing

Since I haven't used any videochat software, let alone multiway video conferencing system (MVCS), I am not sure if a brief inspiration I had this afternoon is implemented or not.  The inspiration was to enhance the MVCS experience by emulating what movie directors do to help the audience follow conversations in movies.  It's Hollywood meets video conferencing.

This is how I see the system working.  When a person (A) speaks, the view changes to A.  When another person (B) breaks in, the view switches to B, but the view will briefly switch back to (A) several times while B is speaking.  When B finishes, the view switches back to A.  When A doesn't respond immediately, the view switches to show other attendents intelligently.  The intent here is to catch the facial reactions to weave the conversations into a drama so the system remembers the interaction history like who spoke when, in reaction to whom, for how long, etc.  When two people talk at the same time, the screen is divided into two parts to minimize the ping-pong effect.  Questions are also detected and 'the camera' scans the likely 'suspects' for reactions.

Brief overlaying of textual information about the person on the screen commonly seen in detective TV shows should be also useful when participants are not familiar with each other (i.e. community meeting with 1000 attendents).  It's smartly done based on whether it helps the viewer or not.

Lastly and appropriately going overboard, dramatic sounds can be injected either automatically or by participants like sounds of suspense or those funny sounds talkshow DJs like to use (video-smileys?).  Appropriate video clips (i.e. Three Stooges or Groucho Marx) can also be injected similarly by the moderator or attendence.

While I think it is unlikely someone haven't thought of this before, I thought the idea was interesting enough to share, just in case.

Coolplayer

When WinAmp came out, it became my default MP3 player and assigned to the task of drowning out noise from outside my office.  I was happy and kept upgrading it, but along the way I notice that WinAmp was starting to get rather big.  Do I need all that fancy graphics and features?  Not really.  I usually just turn it on and let it play while I am working or I hop from tune to tune while relaxing with a glass of wine in my hand.

Anyway, I got curious enough to see what other choices were out there and found Coolplayer, a tiny open source MP3 player for Win32.  It's written in C and it's binary consists of just one 300K EXE file.  Installation?  What installation?  Just run the EXE.  It still has too much unnecessary graphics and I think its memory footprint should stay below 5mb instead of popping up to 9mb while playing (probably to load the active MP3 file into memory) but it basically fits my needs.

OSGi

OSGi is a standard lightweight API for plugin framework (useful for building microkernels) with a bias toward the needs of network devices.  Recently it gained some momentum when the Eclipse team replaced their original plugin mechanism with OSGi (actually, they paved over it rather than replace).

First full version of Oscar, an implementation of OSGi, was released yesterday.  Also checkout OSGi bundle repository and this nice tutorial of how OSGi can be used.

Iranian Nukes

Iran's Foreign Minister Kamal Kharrazi recently said:

Iran will not give up its rights to the peaceful use of atomic energy as well as its right to supply nuclear fuel to its power plants.

OPEC's second largest oil producing nation needs nuclear power plants?  Note that Iran also has the world's second largest natural gas reserve.  Hmm.  Maybe they have the world's largest BS reserves they are dying to export.