Tuesday, December 30, 2008

Upsizing NAS Storage from 500GB to 1.5TB

I have been planning to upgrade my NAS storage capacity after it crossed the 90% mark a couple of weeks ago. Just over a year ago, I went with a 500GB hard drive (1TB drives were available in the market then but at a premium) expecting it to last me for at least two years. I was pretty amazed to find myself consuming more than 400GB in just over a year.

On further analysis, I found out that most of the space was used up by my family's photo and video albums; It's not really surprising considering that my DSLR captures each frame at ten megapixels and my videos are captured in VGA quality at thirty frames a second and stored as mjpeg.

With that hindsight, I decided to go all out and get the largest drive on the market today for this upgrade. Other than size, the other two requirements I had were low power consumption and noise. This is because my NAS runs 24/7 and it sits in the living room where the constant clicking noises from the drives can get pretty annoying, especially late at night.

Based on today's market, my ideal choice is the Western Digital Caviar Green 1.5TB. Unfortunately, WD has yet to launch this model and the largest it offers is a 1TB model (WD10EADS). I would have waited for it if its due to launch within the next few months but I couldn't find any news of it online.

My next best choice is the Seagate Barracuda 7200.11 1.5TB model (ST31500341AS). Although the power consumption and noise performance isn't as fantastic as the WD Caviar Green range (reviews here, here and here), its price per GB ratio makes it a hard-to-resist offer; At $0.19/GB for the WD 1TB model vs $0.14/GB for the Seagate 1.5TB model, that is more than 20% cheaper! In addition, its also runs on slightly lower power and alot quieter(!) than my current pair of 7200.10 500GB drives. But do be careful when buying the Seagate drives as there are apparently some buggy production firmwares out there. Based on user feedback, it appears that those with firmware CC1G are ok.

As a compromise, I decided to replace my primary drive first while waiting to see if the WD Caviar Green 1.5TB model will turn up in the next couple of months and at what price point. FYI, I run a JBOD configuration with a full disk to disk backup setup (i.e. HD_a2 -> HD_b2) in my NAS hence it is possible for me to break the upgrade process into two phases. Obviously, I will have to stop backing up some folders due to the smaller backup drive.

The upgrade process was simple enough; I first swapped out the backup drive in the NAS with the new one, booted up the box and let the firmware detect and format the drive accordingly. After that, I copied the entire content in my primary drive to the new drive via ssh using the command cp -a /mnt/HD_a2 /mnt/HD_b2.

Once the copy is complete (be patient! It can take a long time to copy all 400+GB over!), shutdown the box, remove the old primary drive, move the new primary drive from the left drive bay to the right, put in the old backup drive in the left drive bay and reboot. Job done!

A couple of things to note:
  1. The primary drive is in the right drive bay while the backup drive is in the left.
  2. My DNS-323 firmware version is 1.05 and is able to detect the drive correctly. However, the "format new drive" dialog in the web admin console shows the drive having zero bytes. Just ignore that and continue to format the drive as normal. However if you are running a RAID configuration with your pair of 1.5TB drives, you will require the 1.06 firmware.
  3. The formatting process can take quite awhile (more than 30mins!), just be patient and let it complete.

Sunday, December 21, 2008

Happy 5th Birthday Joel!

This year, we decided to throw Joel a birthday bash right at home and invited some of his friends (ok... ok... more like his parent's friends with kids...) over to celebrate it with him.

We also decided to try something new... like not buying an off-the-shelf birthday cake but instead, have mommy bake one! It (the cake that is) turned out pretty well for a first attempt I must say... both in terms of aesthetics as well as in the taste department. The kids absolutely loved it! Hm... on second thought, it could be the thick chocolate icing that they liked...


Oh, and finally here's a shot of Joel with the loot he picked up today!

Wednesday, December 10, 2008

Cleanboot finally working on my DNS-323!

If you are running fun_plug on your DNS-323, you may notice that your partitions are no longer unmounted properly at shutdown or reboot. You have this problem if you start seeing this line in your dmesg output:

EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended

The solution to this problem is a utility called cleanboot. Unfortunately, since the first version, it has not worked for me and quite alot of other folks; instead of cleanly unmounting the partitions before shutting down or rebooting, it hangs the box. Bummer...

The good news is that a fellow forumer SilentException persisted and managed to fixed the utility for his box (forum post here). I just tried it and it works on mine too! Hooray! You may want to give it a shot and see if it works for you.

Saturday, December 6, 2008

Jordan and Grandparents



Found these shots of my mom and dad with Jordan while cleaning up my picture library. These were taken during the period when Jordan was being cared for by them on a daily basis. The good thing about having your own folks look after the kids is that you are pretty much assured that they are getting the best attention one can give. Just look at how tightly my dad is hugging him in the photo! Thanks mom and dad for your help!

Wednesday, November 26, 2008

Vista TIP: New way to capture a screenshot

Animated illustration showing Snipping Tool capturing a free-form snipBefore Windows Vista, you can use the following ways to capture a screenshot:
  1. <Prt Sc> key - captures the entire desktop
  2. <Alt> + <Prt Sc> keys - captures the active window
If you want more fine grain capture, like part of a window, you will have to do one of the above first, paste into Paint and then crop or cut and paste from there. Not rocket science but quite a hassle.

The good news is that in Vista, there is a snipping tool that allows you to capture any part of your screen without jumping through the hoops! Check it out here! Note: This feature is not available in the Home Basic edition of Windows Vista.

Thursday, November 20, 2008

Ready made LAMP Virtual Machines

Recently, one of the projects I'm working on urgently required a LAMP environment for testing. Rather than going through the hassle (not to mention time consuming process) of securing hardware, getting the infra guys to set up the network and OS and finally getting my own guys to set up the rest of the middleware, I did a search online and found myself a ready made LAMP VM all in a compact 166mb package. Download the package, unpack it into a directory of choice, add it in my Virtual PC 2007 console and click run; it couldn't be any simpler.

Thirty minutes later, I was up and running with my LAMP environment compared to weeks if I had gone the other route. Oh, and half that time was taken by the download... Yeah, my corporate network sucks...

Kudos to the guys at Virtual Appliances. Other than the LAMP VM, they also provide ready made VMs for LAPP (Linux, Apache, PostgreSQL, PHP), Tomcat (App server only, no database), Cacti (Network device monitoring and data collections), and NTOP (Realtime network traffic monitoring). These packages are available in VM formats for Virtual PC (and Server), VMware and Virtual Iron. Oh, and best of all? Its Free! (for now at least as its still in beta)

Tuesday, November 18, 2008

Upgrading ffp 0.5 and moving it to USB... again

Recently I have been getting some comments on my post on moving ffp to a USB stick asking for help as the instructions seemed to have become invalid. It was only then I found out that fonz has been updating ffp without changing the version number. Alot of changed since I last upgraded to ffp 0.5 and while there are instructions on how to upgrade to the latest version, I decided to play it safe and just do a fresh reinstall. Here is a log of what I did:
  1. Backup the file /mnt/HD_a2/fun_plug and the directory /ffp. (use the sym link to make sure you are backing up your active configurations)
  2. Download the latest packages (i.e. fun_plug and fun_plug.tgz) and put them in /mnt/HD_a2/.
  3. Delete the folder /mnt/HD_a2/ffp if you have it and reboot.
  4. Telnet into the box (default has no username/pswd), disable telnet and enable ssh. (i.e. do a chmod a-x telnetd.sh and chmod a+x sshd.sh)
  5. Download and install all the core packages found here. After the download, install using the command funpkg -i *.tgz. Also run the command funpkg -u *.tgz to update existing packages. (i.e. those that came in the fun_plug.tgz package)
  6. <-- At this point, we have a working stock ffp working off the hard disk partition /mnt/HD_a2. Now to update the box with extra packages we need -->
  7. Restore the svn startup script from backup (it contains the path to my local SVN repository)
  8. unrar
  9. Transmission
  10. Create a local fun_plug script (/ffp/etc/fun_plug.local) to set up some convenience shortcuts. (/hd1 for /mnt/HD_a2, /hd2 for /mnt/HD_b2 and /usb for /mnt/usb)
  11. <-- Now that we have all the features working, lets move it to the USB stick using the method found here -->
  12. First create the directory /mnt/HD_a2/.bootstrap and download the necessary files into it. (namely setup.sh and usb-storage.ko)
  13. Edit setup.sh to make sure that the variable USBFFPPART refers to the right USB partition. If you have only 1 USB drive attached and it has only 1 partition, then this should be /dev/sdc1.
  14. Reboot to get the USB partition up and running. (Check by running df and look for /mnt/usb)
  15. Copy the entire /ffp folder into the USB partition /mnt/usb. (cp -a /mnt/HD_a2/ffp /mnt/usb/)
  16. Create a dummy file .usb-ffp in the root of the USB partition. (touch /mnt/usb/.usb-ffp)
  17. Reboot again to get ffp working off the USB partition. (If you need to troubleshoot, check the ffp log at /mnt/HD_a2/.bootstrap/ffp.log)
A couple of things to note:
  • To have ffp running off the hard disk again, simply remove the file /mnt/usb/.usb-ffp and reboot. You may want to do this when you need to run e2fsck (i.e. file system check) on the partition.
  • To be able to unmount the first hard drive partition (i.e. /mnt/HD_a2) say for disk maintainance, you will need to copy the USB module (i.e. usb-storage.ko) to VRAM (/lib/modules is a good place to put it) before loading it. You can do so by editing the script setup.sh.

Tuesday, November 11, 2008

How to spot a recovering economy?

Now that the year 2008 is drawing to a close, the number one thing on everyone's mind right now must be how the economy will pan out in the new year. The guys at CNNMoney have just published their predictions as well as some advice on how to tell the worst is over (quoted below). Do you agree with this assessment?

The action plan

Keep your eye on three key signs that the overall economic picture is improving. These clues can help you decide when to make moves you may have put on ice for now, such as starting a business or moving to a bigger home.

  • Check the three-month TED spread

It's the difference between the interest rate at which banks borrow from one another (known as Libor) and the rate on three-month T-bills. The wider the spread, the more skittish banks are about lending. It's now just under 3%, far above historical levels; when it drops below 1% you'll know the credit market is almost back to normal.

Where to find it: Go to Bankrate.com, search for the three-month Libor rate and the three-month T-bill rate, and then subtract the T-bill rate from Libor.

  • Track real estate inventory

Historically, the number of months' worth of inventory on the market has reliably predicted home prices. Six months of inventory appears to be the sweet spot for a healthy market; right now it's 10 months. The National Association of Realtors puts out the inventory data each month, usually between the 22nd and the 25th.

Where to find it: Go to the Research section of realtor.org.

  • Watch initial jobless claims

The number of new people filing for unemployment benefits, released every Thursday morning by the Labor Department, has been running between 450,000 and 500,000 a week lately.

"When you see those numbers start to come down below 400,000, that'll be a very good sign that the worst of the pain is over," says Brian Wesbury, chief economist at First Trust Advisors.

Where to find it: Do a search for jobless claims on our Web site. To top of page

Wednesday, November 5, 2008

Video Clip: Jordan's many faces

Here's a short video clip (more of a slide show actually) of Jordan making funny faces. Camera shots and video editing all done by the ever-so-tech-savvy grandpa! Nice maiden effort on the clip!

Thursday, October 23, 2008

HTPC Update: TV Signal Strength Checker

If you need a tool to help you find the best location to place your aerial for receiving over-the-air (OTA) DVB-T broadcasts, check out TSReader. It comes in three different flavors (Lite, Standard and Professional) but the Lite version (which is FOC btw) is good enough for this purpose.

After you have installed the software, launch it via the Start\All programs menu. The first time you run the program, you will be asked to select an input source. This refers to your TV Tuner hardware. In my case, I am using an Asus My Cinema U3100. It is not listed specifically but luckily it works with the generic DVB-T driver "DVBTBDASource.dll".

Next select the frequency of the channel that you would like to find the best reception for. If you live in Singapore you can refer to this Wiki page to get the frequencies of free-to-air (FTA) TV stations here. Just note that the frequency for HD5 is 610MHz and not 608MHz as stated on the Wiki.

When a consistent signal is detected, you will see in the bottom left window a line that says "Signal: Locked". Use the statistics ("Last sec" and "Mux bitrate") in the bottom window titled "MPEG-2 Statistics" to guide you in finding the best reception. The higher the numbers mean better reception of course!

Friday, October 17, 2008

Trying out Tomato on WHR-HP-G54

Back in August, I upgraded the DD-WRT v24 firmware to SP1 on my router as part of routine maintenance. At first, everything seems to work fine but soon I noticed that QoS stopped working; Skype calls were getting dropped, frozen video on receiver side and slow web browsing when BT is running in the background.

I tried a couple of different configurations in QoS, from tweaking the max bandwidth settings to changing classifications and even the packet scheduler type. Nothing worked which pretty much left me with two choices; (1) rollback to the older version or (2) try out other flavors of alternative firmware. I decided to go with option (2) and try out Tomato since I have been hearing many good feedback on its performance and especially on its QoS reliability.

Upgrading from DD-WRT to Tomato is a breeze. Simply download the Tomato firmware (latest as of this writing is v1.21) and flash it using the DD-WRT web admin GUI. Just remember to make a note of the router password before you flash! (Detailed instructions here)

In under two minutes, I was running Tomato on my router with nearly all settings intact. The only settings that I found to have been lost are:
  1. Static DHCP lease
  2. WiFi Security (it defaults to none!)
  3. QoS (naturally since its implemented differently)
  4. WOL
  5. Lan domain name
Once I have configured QoS, I tried a web download and also surfed a couple of local websites while starting BT in the background. I found no noticeable decrease in the download and web surfing experience. Problem solved!

Of course, there is no perfect ending in the real world... A couple of things I had to give up for choosing Tomato over DD-WRT:
  1. VPN Gateway - The official builds do not offer this functionality but a quick google showed that there are people working on unofficial builds that included this feature. I will probably give that a spin once I am happy with stock features.
  2. Bluetooth Compatibility Mode - I require this feature as my router sits very close to my HTPC which I'm using a bluetooth keyboard to control. Since WiFi and Bluetooth work on the same frequency band, I have been experiencing frequent dropouts from my bluetooth keyboard when WiFi is on. Activating this feature on the DD-WRT seems to have reduced the interference quite abit. Since Tomato does not include this feature, I may have to consider relocating my router or my bluetooth receiver.

Saturday, October 11, 2008

Go-Karting is fun!


I finally got a chance to try out go-karting today in a company organized event (Sony F1 Challenge) and boy did I enjoyed myself. The event started with one round of practice followed by two rounds of qualifying time trials. The top five drivers with the best lap times then go head-to-head in the finals that involves 10 laps.

As this was my first time in a go-kart, it took me awhile to get acclimatized; think no power steering, zero suspension, hard plastic seat and no enclosed cabin! The fuel tank sitted in between my tights also made me alittle nevous... The lack of suspension, coupled with the poor track condition and hard plastic seat really made it a bumpy ride. My back and bum are still sore till now...

Obviously, I started slow with lap times around the high 38 seconds region during the practice and first qualifying round. In the last qualifying round, I managed a 38.1 seconds timing but that was still not good enough to beat the "pros" and their 35 seconds timings! (Sony has been organizing this event on a yearly basis and the regulars dominated the finals).

Overall, it was an exciting event with plenty of action; there were a couple of crashes (luckily no one got hurt), 180 degree spins and even a joker driving in the wrong direction TWICE! :O

Kart World Singapore (maplink)
$40 for 10 mins (adults)

Thursday, October 9, 2008

Vista TIP: Shutdown/Restart/Sleep from Remote Desktop Connection

If you are using Remote Desktop Connection to connect to a Vista workstation, you will find that the options to Shutdown, Restart and Sleep are missing from the Start Menu. Unfortunately, there is no easy way to get it back into the menu. You can, however, still activate the function easily via the following ways:

1) Run the command shutdown.exe on the command line. Note that the program supports only shutdown (-s) and restart (-r); it doesn't do stand-by or hibernate. Also, it requires you to have administrator privileges. If you are a limited user with shutdown privileges, the shutdown.exe program will complain.

2) Use the Ctrl+Alt+End hotkey (It's the Remote Desktop version of Ctrl+Alt+Del). This will bring up the full screen menu as shown on the right. Click on the red button near the bottom right and you will get the options to Shutdown, Restart and Sleep!

Wednesday, October 8, 2008

HTPC Update: Logitech diNovo Edge


To complete the hardware setup of my HTPC, I decided to go all out and splurge on the best HTPC keyboard money can buy; the Logitech diNovo Edge. To me, it is really the perfect match for the following reasons:
  1. It has an integrated touchpad (although alittle on the petite side) which removes the need for a separate mouse. On top of that, you will want a touchpad over a mouse for living room use anyway since you are unlikely to find a hard surface to use your mouse on when you are on the couch.
  2. It has just the right dimensions and weight for using on the lap
  3. It has a dedicated volume slider and mute, sleep and MediaCenter buttons on the keyboard; essential keys for a HTPC setup.
  4. If you don't already have bluetooth capability in your box, the included USB bluetooth receiver adds that for free. And if you do, then it saves on one USB port for an otherwise proprietary receiver on the PC.
  5. The range is pretty decent although I find that it loses reception when you place your keyboard at a height much lower than the receiver. (I get this when I use the keyboard on my coffee table which is sitting approx 60cm below my PC placement. [Edit: Found the problem - it is due to interference from my WiFi router which sits within 1 meter of the HTPC])
  6. Tactile feel on the keys are excellent and not noisy.
  7. And lastly, the reflective black and metallic silver look compliments my living room look perfectly.
The SG SRP on this is a whopping S$399! The cheapest I can find in local retail stores is still S$349. The good news is that you can buy it online for just US$127 (roughly S$210 incl shipping via vPost) from Amazon.com. The downside is of course the warranty which is limited to domestic US but at nearly 50% off, I will gladly take that risk.

Installation and setup of the keyboard is a breeze. By default, the USB bluetooth receiver is configured as USB HID class which means that any modern day motherboard and OS can detect and use it without installing any drivers. This also means that the keyboard can be used even for entering Bios Setup! If you want more control over its features, then installing the SetPoint software is a must. Forget the version found in the CD and go straight to Logitech's support website to download the latest version (v4.6 as of this post).

One undocumented feature I've found is that the keyboard is actually active when charging in the base station even if you flick the on/off switch to off! This is a tad annoying as it wakes my HTPC whose off state is always S3 (commonly known as standby or sleep) whenever I put the keyboard back on the charging stand! I had to resort to pulling out the charging cable off the base to stop this behavior. Switching off the base charger is not possible as the switch is hidden behind the TV console. An alternative solution will be to configure the HTPC to disable wakeup from the keyboard but that also means that I lose the feature permanently. i.e. I will no longer be able to turn on the HTPC from the comfort of my couch using the keyboard!

To have the included USB bluetooth receiver to work with other bluetooth devices, you will need to change it from HID to HCI class using information found here. I will be updating this post once I have found time to try this out myself.

Here is the updated part list for my setup:

CPU: Phenom X3 8650 HD8650WCGHBOX 2.3GHz Socket AM2+, $0 (bundle with mobo).
CPU Cooler: Scythe SCMNJ-1000 Ninja MINI, S$50 (used).
Motherboard: GIGABYTE GA-MA78GPM-DS2H AMD 780G chipset microATX, $355 (SLS Bell Systems)
Memory: Kingston DDR2-800 2 x 2GB Kit, $104.(SLS Bell Systems)
Graphics Card: Radeon HD 3200 (integrated in motherboard the chipset), $0.
TV Tuner: PowerColor Theater 550 Pro PCIe, $69. (SLS Chamoxa)
HDD: Western Digital Caviar WD5000AACS 500GB SATA2, $101.(SLS Bell Systems)
PSU: Antec EarthWatts EA 430 (included in the case), $0.
Case: Antec Fusion Black 430, $339 (SLS Media Mart).
Webcam: Creative Live! Cam Optia AF, $55 (used)
Wireless Keyboard: Logitech diNovo Edge, $210 (Amazon.com)

The following are still on my todo list:

ODD: LG GGC-H20L, BD-ROM + DVD-RW, $249. (COMEX)

Friday, October 3, 2008

HTPC Update: Improving video quality

If you own a recent ATI graphics card and use it mainly for movie playback, you may well be interested in this set of tweaks. It is basically a registry script that enables certain settings in ATI based cards that is geared towards video playback and hardware assisted decoding (DXVA in geek speak).

[Disclaimer: I have yet to find time to apply the settings on my HTPC so please read up before applying the script!]

Monday, September 29, 2008

HTPC Update: Creative Live! Cam optia AF

A part of my plans for a digital home involves setting up a video conferencing facility in the living room so that:
  1. I can get in touch with the kids and family when I'm on overseas business trips;
  2. my folks can interact with their grandchildren when they are not visiting;
  3. we can keep in touch with our relatives and friends who have migrated abroad or out stationed for extended duration;
  4. and lastly, create a platform where we can encourage our kids to explore staging performances (singing, dancing, acting) in front of a camera! (This help build confidence in the child as well as capturing those precious childhood moments)

Although we can pretty much do this now with the integrated camera and microphone on our laptops (we have two of these at home), the experience isn't that great given the poor quality of the integrated cameras (1.3Mp only) and the screen is a little small for a family of five to crowd around to see.

Setting it up on the HTPC however is perfect. We have a 50" display and some pretty good speakers. All I needed is a good quality webcam with integrated microphone and we are all set.

Scouring my favorite marketplace, I managed to pick up a used Creative Live! Cam Optia AF for only S$55. It's about a year old but the condition was excellent.

This webcam features a 2 megapixel sensor, auto-focus, noise cancelling adaptive array microphone and great looks to boot (blends into the living room decor perfectly).

I tested it on my rig and found the picture quality to be excellent. Audio is a little weak but that is probably because I was testing it from a distance of two meters.

The bundled software are also pretty decent and fun for the kids to play with. Overall, I'm happy with this acquisition.

Here's my updated parts list with pricing:

CPU: Phenom X3 8650 HD8650WCGHBOX 2.3GHz Socket AM2+, $0 (bundle with mobo).
CPU Cooler: Scythe SCMNJ-1000 Ninja MINI, S$50 (used).
Motherboard: GIGABYTE GA-MA78GPM-DS2H AMD 780G chipset microATX, $355 (SLS Bell Systems)
Memory: Kingston DDR2-800 2 x 2GB Kit, $104.(SLS Bell Systems)
Graphics Card: Radeon HD 3200 (integrated in motherboard the chipset), $0.
HDD: Western Digital Caviar WD5000AACS 500GB SATA2, $101.(SLS Bell Systems)
PSU: Antec EarthWatts EA 430 (included in the case), $0.
Case: Antec Fusion Black 430, $339 (SLS Media Mart).
Webcam: Creative Live! Cam optia AF, $55 (used)

The following are still on my todo list:

ODD: LG GGC-H20L, BD-ROM + DVD-RW, $249. (COMEX)
TV Tuner: ??
Wireless Keyboard: Logitech DiNovo Edge S$399

Tuesday, September 23, 2008

10sec Gadget Review: Logitech Squeezebox Boom

What is it?
  • WiFi BoomBox
What can it do?
  • Plays MP3, AAC, AU, WAV, AIFF, WMA, and Real Audio formats over network shared folders
  • Connects to your home network to access music stored on your computer via SqueezeCenter (software server, requires installation), and Internet radio and music services via SqueezeNetwork™
  • 6-button presets allow one touch access to favorite radio stations and playlists
  • Connect to Internet via WiFi (802.11 g/b) and 10/100 BaseT Ethernet port
  • Aux input for other sources (e.g. MP3 player)
  • headphone jack
  • ¾-inch (1.9 cm) high-definition, soft-dome tweeters and 3-inch (7.6 cm) high-power, long-throw woofers
  • Compact IR remote control
  • 7 day alarm clock

What can it NOT do?

  • No CD playback option
  • No FM radio
  • No UPnP and DLNA

How much does it cost?

Where can I find more information?

Wednesday, September 17, 2008

Vista TIP: How to check installed audio and video codecs

Before Vista, you can check the installed audio and video codecs by:
  1. Go to Control Panel.
  2. Click on the Sounds and Audio Devices icon.
  3. Click on the HardwareVideo Codecs and click on Properties button.
  4. Click on the Properties tab and you’ll see the whole list of Video Codecs installed.
  5. To check installed Audio Codecs, on step 4, select Audio Codecs and follow the rest of the steps.
However, in Vista, Microsoft has removed this from the Control Panel applet. Instead, you have to:
  1. Start Windows Media Player.
  2. Click on Help and About Windows Media Player.
  3. Click on the link Technical Support Information and a webpage will popup.
  4. Scroll down to see the list of installed Audio and Video Codecs.

Saturday, September 13, 2008

Happy Birthday Jordan!

Time files! It felt like just yesterday that we celebrated Jordan's second birthday and he's already one year older. Picture on the left shows the cake we got for him. Spot anything interesting? [Hint: Which sport did Singapore win a medal at the recent Olympics?]

For his third birthday, we decided to have a home cooked meal with the immediate family only. Choice of food was entirely his preference which explains why there are so much fried stuff on the table. Oh, the salad wasn't his choice of course but even the birthday boy must take his greens.

And of course, no kid's birthday is complete without presents! Look how cheery he is while unwrapping one of the many presents he received tonight!

Wednesday, September 10, 2008

HTPC Update: Powering on/off via remote!

A critical feature of any worthy HTPC is the ability to turn it on/off via a remote; Just like any other piece of living room appliance. I got the Antec Fusion Black 430 expecting this to work out of the box (the package includes an IR receiver and I own a Harmony 550) but I guess I was asking too much; You will need to perform this (undocumented) step in order to get it working.

In short, here is what you need to do:
  1. From the bunch of headers in the front panel, locate the two headers labelled "POWER SW".

  2. Connect the header with the white and black wires to the input pins on the LCD as shown in the picture above. Note: you should not need to remove the front panel and disassemble the LCD as stated in the forum thread as you should be able to see it through a hole in the panel.

  3. Connect the header with the red and black wires to the power switch pins on the motherboard.

Sunday, September 7, 2008

HTPC up and running finally!

One year ago, I started looking at building a HTPC for my living room (1)(2) but had it KIVed due to costs and more importantly the maturity of hardware HD decoding and availability of native HDMI+HDCP output combining both audio and video.

Recently, I revisited the project and am mighty glad to find plenty of options available and most of them at affordable costs. So over the weekend, I took the plunge and built my own "BD player" (and a whole lot more) for about 1k SGD.

The heart of the setup is the GIGABYTE GA-MA78GPM-DS2H motherboard. This mobo is based on the excellent AMD 780G chipset and features the ATI Radeon™ HD3200 (DirectX 10 capable) as its iGPU. It is actually a revision of the popular GA-MA78GM-S2H with an added DDR3 128MB SidePort Memory (essentially dedicated memory for the iGPU). It also features a native HDMI+HDCP output that delivers both audio and video.

The board is mated to an AMD Phenom X3 8650 processor and 2x2GB of DDR2-800 RAM. Triple core CPU is used as it is well suited for video and 3D rendering tasks, which will be the most common tasks on this PC. Plus you get more bang for the buck compared to the quad core ones. Power consumption and heat also come into mind. 2x2GB in Dual Channel mode provides more than adequate performance for now. Note that the board has 4 DIMM slots so you can add-on an additional 4GB at a later time. Also, although it supports DDR3 specs, the performance gain does not justify the cost today (its about 2x the price of the DDR2!).

Hard disk is a single 500GB Western Digital Caviar Green Power SATA 2 edition; Again chosen for its price and power/heat/noise characteristics. I only need one mid-size HDD in my HTPC as I have a NAS cum media server on my network. The casing I've selected can pack in 2 HDD giving you a total of 2TB if required.

And finally, the casing is the Antec Fusion Black 430. It is a rather big and heavy chasis but note that it only fits a microATX motherboard due to its unique tri-chamber design. Exterior wise, it resembles a conventional hifi component and features a LCD display and volume knob. The casing also comes with an IR receiver that is Vista and MCE compatible but without a MCE remote. This is fine by me since I use a Harmony remote anyway. The included 430W power supply is RoHS and 80 PLUS certified and is more than sufficient for the parts I'm throwing in. Chasis cooling takes the form of two 120mm fans which is very quiet at low setting. Any higher and they get audible but not annoying as the AMD stock CPU cooling fan. One gripe is that the fan speeds are manually set via a physical switch INSIDE the casing hence you can pretty much forget about adjusting them according to the CPU load.

The setup scored a Windows Experience Index of 4.1. As expected, the lowest value is due to the 3D performance. 2D scored 4.6 while the rest are well above 5.

The box is placed in a closed cabinet and after 30mins of running idle, both system and CPU temps can hit close to 50 Degrees Celsius. I may have to consider cutting up the rear of the cabinet to make way for an exhaust fan. Oh, and the stock AMD cooler fan is loud as hell at those temps (around 5k RPM). So do go out and get a decent aftermarket cooler.

The box is hooked up to my Pioneer PDP-508XG via HDMI. Resolution on the TV is automatically set at 1360x768 after the latest Catalyst drivers are installed. Setting to any of the HD resolutions (i.e. 720p/1080i/1080p) causes overscan when the TV is set to "TV Mode". You need to set it to "PC Mode" to get around this problem. Text is sharp and picture is good at the native resolution of 1360x768 hence I do not see a point in having the GPU output at 1080i/p resolution only to be downscaled later by the TV's internal processor.

Sound output is via HDMI to the TV and is pretty decent. I have it connected separately to my 6.1 Pioneer HTiB via optical S/PDIF but have to manually change the default sound device in the Realtek HD audio control panel before I can get sound output from there. Ideally I would like to output to both devices at the same time or better yet, selective output based on programs I run. e.g. Windows Media Center audio output should be via HTiB while the system sounds can be piped through the TV.

Here is the breakdown with costs for my setup:

CPU: Phenom X3 8650 HD8650WCGHBOX 2.3GHz Socket AM2+, $0 (bundle with mobo).
Motherboard: GIGABYTE GA-MA78GPM-DS2H AMD 780G chipset microATX, $355 (SLS Bell Systems)
Memory: Kingston DDR2-800 2 x 2GB Kit, $104.(SLS Bell Systems)
Graphics Card: Radeon HD 3200 (integrated in motherboard the chipset), $0.
HDD: Western Digital Caviar WD5000AACS 500GB SATA2, $101.(SLS Bell Systems)
PSU: Antec EarthWatts EA 430 (included in the case), $0.
Case: Antec Fusion Black 430, $339 (SLS Media Mart).

The following are on my todo list:

CPU Cooler: Scythe SCMNJ-1000 Ninja MINI (S$69).
ODD: LG GGC-H20L, BD-ROM + DVD-RW, $249. (COMEX)
TV Tuner: ??
Wireless Keyboard: Logitech DiNovo Edge S$399

CPU cooler was on my core list but too bad none of my selections had stock in any of the shops in SLS! But I really ought to get one soon as the buzz from the stock CPU cooler is killing me!

For the ODD, I had a choice between the LG and a LITE-ON DH-4O1S which costs only S$159. I had to drop the latter as it cannot write to CD/DVD while the LG one can. Since my choice of casing only allows me to have a single 5.25" device, I needed one that can read Blu-ray for movies but at the same time can read/write to CD/DVD for data/music/home movies! Forget writing to Blu-ray as the media is still way too expensive and the players are not as prevalent yet. (How many people you know owns a Blu-ray player?)

I'm still sourcing for an internal TV Tuner card to complete the setup. I'm split between looking for something that can accept HD input (via component or HDMI better) and has native hardware H.264 encoder or just settle for a conventional dual (DVB-T and analogue) TV tuner with hardware MPEG2, or even just a hybrid tuner without the hardware encoder since the 2.3GHz triple core CPU should be more than sufficient for handling the MPEG2 encoding in software. If you have any thoughts on this, let me know!

BTW, if you are going for the last option (i.e. TV card with no hardware encoder), be wary that you will need to jump through quite a few hoops to make it work in MCE or WMC.

Project updates:

Sunday, August 31, 2008

Boys with cool shades and urm... not so cool head gear


Little kids are like monkeys... They see you wearing shades while driving and they want a pair too. Oh, but they are rather innovative too... Check out the "cool" headgear they've got on while posing for this shot.

Thursday, August 28, 2008

Virtual Machine - a software engineer's best friend

Here is another reason why Virtual Machine(s) are a developer's best friend. If you are a packaged software developer (doesn't matter if its desktop or server software), you will probably realize that platform compatibility testing is a large part of the release cycle; not only is the actual testing tedious and time consuming, setting up and maintaining the many testing environments is a whole lot worse. In addition, it can get pretty expensive too as you will need multiple machines to contain them.

Back in the days when I was developing packaged software, one of my strategies for managing test environments on the cheap is to use boot loaders (such as LILO and GRUB) and hard disk partitions. Using this approach, I had up to four environments running on a single PC (only four environments due to a limitation on the number of primary partitions a hard disk can have). Not long after, I figured that I could further cut down on the number of boxes required by using removable caddies to facilitate the swapping of hard disks on a single PC.

This strategy was indeed cost effective (I managed to reduce my farm of test PCs from eight to just two) but it was darn tedious and not as robust as I had wanted; I could only have one environment up at a time on one PC and it was time consuming to shutdown and startup another. In addition, the OS images are practically tied to the specific hardware it was installed on as we all know how crappy Windows is when it comes to swapping hardware.

Then enters VMware and its (then) flagship product VMware Workstation. My test environments became normal files and were able to run off any host OSes as long as the hypervisor supports it. With it, I was no longer bounded by the four primary partition limit on a hard disk, could run multiple environments all at the same time and copy/move them between PCs seamlessly (even if they are running different host OSes!). In addition, with the snapshot feature, I could create a base image of each test environment and easily revert to it after testing.

Out went the drive caddies, the stack of hard disks and backup tapes piled up on my desk, LILO, PartitionMagic and Norton Ghost! In addition to cost savings, the time saved was also considerable and it was appropriately channeled to our LAN parties in the office! :)

Tuesday, August 19, 2008

Diamond TIP: new menu for your home screen

Click to enlarge pictureIf you have used Windows Mobile 2003 or earlier, you will probably know what the "new menu" was and how useful it had been. For those who have not, it is basically a way to quickly create a new document (e.g. word, excel, note, email, sms) via a popup menu that is triggered by tapping on the text "New" found at the bottom of the home screen. (See screenshot on the right)

Unfortunately, this nifty little feature was removed from Windows Mobile 5 and up. (Thats a -1 for you Microsoft.) The good news is that useful features like this don't go away; they just get reintroduced via third parties.

Click to enlarge pictureThe first application that does this is called WM5NewMenu by a developer named Saman. It started out as a direct replacement for the old functionality but has now grown to be a very powerful and highly configurable utility that can launch pretty much anything that you can think of. (See screenshot on left. More screenshots here). Best of all, it remains a freeware even today.

It has served me well back in my 838 pro days but unfortunately, the look and feel just don't jive with the snazzy TouchFlo UI. As luck would have it, HTC had a similar feature called the "Action Screen" in the Touch model (+1 HTC!) and it has been ported over to the Diamond by the guys at xda-developers (+2 XDA Developers!)! So now, we get the best of both worlds; the new menu functionality in cool graphics!

Click to enlarge pictureClick to enlarge pictureThere are currently two layouts available; the first and original being the row layout (screenshot on far right) and the latest being the grid layout (screenshot on right) ala the upcoming HTC Touch Pro.

Personally, I like the latter better as it allows up to nine items instead of seven in the row layout.

Can things get any better than this? Yes! If you are like me, using a third party PIM (like the excellent Pocket Informant), you can customize Action Screen to launch the appropriate screens in your third party applications! In fact, you can even change the buttons and the related actions totally! For details, look here.

If you are lazy and just want to get it working with Pocket Informant, here's how:
  • New Note - Change registry value for the key HKEY_LOCAL_MACHINE\Software\HTC\Biotouch\ActionScreen\APP_2\Path to \Program Files\WebIS\PocketInformant\PIAlarmNoteCreate.exe
  • New Appointment - Change registry value for the key HKEY_LOCAL_MACHINE\Software\HTC\Biotouch\ActionScreen\APP_3\Path to \Program Files\WebIS\PocketInformant\PocketInformant.exe
  • New Task - Change registry value for the key HKEY_LOCAL_MACHINE\Software\HTC\Biotouch\ActionScreen\APP_4\Path to \Program Files\WebIS\PocketInformant\PocketInformant.exe
  • New Contact - Change registry value for the key HKEY_LOCAL_MACHINE\Software\HTC\Biotouch\ActionScreen\APP_5\Path to \Program Files\WebIS\PocketInformant\PocketInformant.exe

Friday, August 8, 2008

WebApp Security Test tool - IBM Rational AppScan

This is part 3 (after Introduction, HP Application Security Center) of the series on web application security test tools. This week, I invited IBM to present their offering called IBM Rational AppScan.
  • Formally Watchfire Corporation before its acquisition in July 2007.
  • Does not have a code analyzer component like HP. [Edit: Will have one in the upcoming version come Sept 2008 as pointed out by Chris.]
  • Run-time analyzer comes in three flavors:

    1. Standard Edition
      • Targeted at standalone usage scenarios.
      • Black-box testing tool (does not require source code but requires a running system).
      • Underlying implementation technology independent.
      • Works by crawling an entire website (link depth and type is configurable) after been given a root URL.
      • Suggests common fixes when vulnerabilities are found but cannot automatically fix them. (Obviously since it has no knowledge or access to the underlying code!)
      • Will not be able to detect threats on pages that are not explicitly defined in the test, exist as links in the website or directories that do not allow listing.
      • Supports legal and regulatory compliance by scanning against well known policies (e.g. Sarbanes-Oxley, HIPAA, PCI Data Security Standard, OWASP Top Ten) and generate the necessary reports.
      • Requires regular updates to keep up with latest threat signatures (like anti-virus software).
      • Must run full suite of tests after an update as the tool is unable to determine the delta.
      • Includes a whole bunch of advanced tools for penetration testers.
      • Supports only Windows Platform for running the tool.

    2. Tester Edition
      • Targeted as part of the Quality Assurance process usage.
      • Contains same features as the Standard Edition plus the following.
      • Automatic test creation, modification and maintenance capabilities to enable testing and remediation.

    3. Enterprise Edition
      • Targeted at multi-user environments.
      • Contains same features as the Standard Edition plus the following.
      • Centralized test management and reporting, remote scanning administration.
      • Continuous monitoring and aggregation of metrics to ensure remediation and trend improvement over time.
      • Sophisticated dashboards and flexible reporting views to provide enterprise-wide visibility of risks and remediation progress.
      • Web based access for users.
      • Supports only Windows Platform for server components.

Tuesday, August 5, 2008

Diamond TIP: Customize Comms Manager!

The default Comm Manager in the Diamond include options for Push Mail and Data Connection. If you don't use Push Mail or GPRS, then these buttons become white elephants. Even if you do use GPRS, you can easily turn off data connection via the notification bubble so why duplicate the function here?

So how would you like to replace them with more useful functions like (1) 3G switching (i.e. switching between normal GSM mode and 3G mode) or (2)turning beam on/off (i.e. making your device discoverable to others via bluetooth)or (3) switching between vibrate and ringer mode or (4) ActiveSync (just a hot key to launch ActiveSync) or (5) IP Phone or (6) Internet Sharing (not sure what the last two do)?

For me, I chose (1) and (2) for the following reasons:
  1. 3G coverage is really patchy compared to GSM hence the phone will be searching for 3G signal more often and in the process wasting more battery life. Given that the Diamond has a small capacity battery, this situation is something you should really avoid. So from a power perspective, its best to stay in GSM mode and only switch to 3G mode when you need to. With this button, I can now quickly and easily switch between the two networks as compared to having to navigate through the phone settings in the settings menu.
  2. Turning Beam off simply means turning off the discovery mode in Bluetooth. Note that without discovery, previously paired devices can still communicate with your phone via bluetooth. However, new devices will not be able to pair with you unless you turn discovery back on or you pair with them instead (their discovery setting must be on of course). Turning discovery on only when you need to do pairing is considered a good security practice. For details, read this. Again, having the option in the Comms Manager is much easier and quicker to access than navigating through the bluetooth settings in the settings menu.

Ok, enough talking. Let's get on with the customization already! First, download and install Advanced Configuration Tool 3.0 if you haven't already done so. It is a third party application with a nice UI that allows you to tweak the default applications without having to dirty your hands working with a registry editor. And yes, its free!

Start the application, tap on "Menu" and then "Comm Manager settings...". You can then enable/disable the functions you want as well as reorder them accordingly. Note that most if not all non-default options will not come with icons. To add them, you will have to create the icons in PNG format and throw them into the \Windows folder. The naming convention used is as follows:

FunctionFilenames
3GFunction_3G.png and Function_3G_Disable.png
ActiveSyncFunction_ActiveSync.png and Function_ActiveSync_Disable.png
BeamFunction_Ir.png and Function_Ir_Disable.png
PhoneFunction_Phone.png and Function_Phone_Disable.png
Internet SharingFunction_InternetSharing.png and Function_InternetSharing_Disable.png
RingerFunction_Vibrate.png and Function_Vibrate_Disable.png
Wireless LANFunction_WLAN.png and Function_WLAN_Disable.png
Microsoft Direct PushFunction_AUTD.png and Function_AUTD_Disable.png
BluetoothFunction_Bluetooth.png and Function_Bluetooth_Disable.png
Data ConnectionFunction_DataDisconnection.png and Function_DataDisconnection_Disable.png
Flight modeFunction_FlightMode.png and Function_FlightMode_Disable.png


I have created a couple of icons for my own use. You are welcome to download and use them as you wish. Simply right click on each icon and select "Save Picture As...". Remember, you need to drop them in the \Windows folder in order to use them!

Saturday, August 2, 2008

We are Singapore....

Click to enlarge picture
My my.... Ain't we patriotic now.....

Friday, August 1, 2008

WebApp Security Test tool - HP Application Security Center

The first product we are looking in the area of web application security testing tools is from HP. This is actually a suite of products collectively called HP Application Security Center. The following are some notes I have taken after hearing their presentation and browsing through their website.

  • Formerly SPI Dynamics before its acquisition in June 2007
  • Full security test suite that offers tools for different phases of the SDLC:

    1. DevInspect – Development stage
      • Primarily a source code analyzer or white-box testing tool (i.e. requires full source code but does not require running system).
      • Underlying implementation technology specific (C#, Java, JavaScript, HTML, XML, AJAX).
      • Tight integration in development process (via the IDEs) hence allowing threats to be detected early (even before a developer checks the code in).
      • Suggests and can automatically apply code fixes when vulnerabilities are found.
      • Requires regular updates to keep up with latest threat signatures (like anti-virus software).
      • Note that this tool catches only compile-time threats, not run-time threats. Hence needs to be partnered with one of the below.
      • Deploys as plugins to Eclipse and Visual Studio.

    2. QAInspect – UAT/SIT stage (maybe even as part of continuous integration)
      • Black-box testing tool (does not require source code but requires a running system).
      • Underlying implementation technology independent.
      • Works by crawling an entire website (link depth and type is configurable) after been given a root URL.
      • Suggests common fixes when vulnerabilities are found but cannot automatically fix them. (Obviously since it has no knowledge or access to the underlying code!)
      • Will not be able to detect threats on pages that are not explicitly defined in the test, exist as links in the website or directories that do not allow listing.
      • Supports legal and regulatory compliance by scanning against well known policies (e.g. Sarbanes-Oxley, HIPAA, PCI Data Security Standard, OWASP Top Ten) and generate the necessary reports.
      • Requires regular updates to keep up with latest threat signatures (like anti-virus software).
      • Must run full suite of tests after an update as the tool is unable to determine the delta.
      • Tight integration with HP Quality Center and HP TestDirector hence allowing security tests to be managed as part of an overall test plan/run including functional and/or performance tests.
      • Automatically generate defect logs in HP Quality Center based on vulnerabilities found during the tests.
      • Integrates with HP AMP (Assessment Management Platform) to provide enterprise assessment management. i.e. centralized control over user permissions, security policies and remote scanning administration.
      • Supports only Windows Platform for running the tool.

    3. WebInspect – anytime (after you have a running system of course)
      • Essentially the same as QAInspect except that its targeted for standalone use.
      • Includes a whole bunch of advanced tools for penetration testers.
      • Does not offer integration with HP Quality Center or HP TestDirector for overall test management but can push vulnerabilities as defects to HP Quality Center.
      • Does integrate with HP AMP for enterprise assessment management.
      • As far as licensing goes, in Singapore, comes in two flavors:
        1. Single User (i.e. one PC), Single Target (i.e. one IP address)
        2. Single User (i.e. one PC), unlimited Targets (for about double the price of the above)

Wednesday, July 30, 2008

IBM to buy ILOG for US$340m

IBM has just officially announced that they have signed an agreement with ILOG regarding a proposed acquisition by IBM of ILOG to be implemented by way of concurrent cash public tender offers in both France and the United States.

Through this proposed transaction, IBM will combine its business process management, business optimization, and service oriented architecture (SOA) technologies with ILOG's Business Rules Management Systems software (i.e. JRules).


Comments:

This news came as no surprise to me, if not a little overdue. Why do I say this?

In terms of enterprise middleware offerings targeting application development, IBM has all the major pieces (EIP, BPM, ESB/EAI) except for a BRMS. It has a rather basic and crude implementation of a "rules engine" embedded in the WebSphere Process Server (WPS) product but I would hardly call that an "engine". Plus you cannot possibly use that to manage your business rules in the other areas like ETL or as a central, reusable rules repository for the enterprise (er... SOA anyone?).

ILOG, on the other hand, realized that it has a winner on its hand (which company does not have business rules?) but needed to latch on to players in the platform (e.g. WebSphere) and other verticals with complex business rules such as BPM (e.g. FileNet) and ETL (e.g. DataStage) in order to spread its wings. So rather than spreading itself thin by trying to support the myriad of vendors out there, why not stick with just one and do it well? Guess what? It appears that they may have been doing just that all along. FileNet, DataStage and WebSphere are all products under the IBM family and what do you know.... ILOG has out-of-the-box support in JRules for them all!


Questions:

  1. Given the way the press release was written, it is clear that the golden boy here is JRules. So what will happen to the other products in ILOG's family? Like the CPLEX constraint-based optimization engine and visualization toolkit JViews? Will they end up as just another faceless product in IBM's vast array of offerings? Personally, I've used CPLEX and JViews before and it will be sad to see them flounder under new management.
  2. And the million dollar question (or should I say a few million dollars question)... Will this acquisition prompt Oracle (now owner of BEA) or SUN to make a bid for Fair Isaac for its Blaze Advisor BRMS?

Sunday, July 27, 2008

Kids and their sleeping postures

This is Joel, fast asleep at grandma's house. I find it intriguing that he can be sound asleep in such an awkward position; Chest flat on the floor, arms wide open, head turned at right angles to one side and bum lifted a couple of inches off the ground.
And this is Jarrett... Sound asleep with his arms and legs sprawling across the width of his cot. Check out the way his legs are spread wide open and even perched high on one side of the cot. How is that even humanly possible?

Yep, one of the little wonders of kids ...