Sunday, December 30, 2007

Linux install on HP 6910p using Ubuntu 7.10 (Gutsy)

I have installed Ubuntu 7.10 (Gutsy) on my HP 6910p, there where a couple gotchas although most should be gone by Ubuntu 8.04 (Hardy) or a more recent Linux distribution. Most of the issues can be resolved by updating to more recent versions of the affected software.

HP 6910p specification:



CPU: Intel Core 2 Duo T7700 (2.4Ghz)
Display: 14.1" WXGA+ 1440x900
GPU: AMD/ATI Radeon X2300
RAM: 2GB (2x1GB)
Harddisk: 120GB 7200rpm Hitachi 7k200 Travelstar
Optical Drive: MultiBay II DVD SM DL
Wireless: Intel Pro/Wireless 4965 a/b/g/n, Bluetooth, Infrared
Ports/slots: 3xUSB 2.0; MultiBay II; Intel 82566MM 10/100/1000 Lan; Modem; S-Video out; VGA out; Firewire; Audio in; Audio out; internal microphone; SD/MMC card reader; Smart Card Reader; Type I/II PC Card Reader; SIM card slot; Docking connector; Second battery connector.
Other: Finger print reader, Touch stick with 2 buttons, Touch pad with 2 buttons, Volume up – down, Volume mute, Presentation, Wireless, HP Info Centre touch sensitive buttons.

lspci output:

00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)
00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 0c)
00:03.0 Communication controller: Intel Corporation Mobile PM965/GM965 MEI Controller (rev 0c)
00:03.2 IDE interface: Intel Corporation Mobile PM965/GM965 PT IDER Controller (rev 0c)
00:03.3 Serial controller: Intel Corporation Mobile PM965/GM965 KT Controller (rev 0c)
00:19.0 Ethernet controller: Intel Corporation 82566MM Gigabit Network Connection (rev 03)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Contoller #4 (rev 03)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 03)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 03)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 03)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 03)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 03)
00:1c.4 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 5 (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f3)
00:1f.0 ISA bridge: Intel Corporation 82801HBM (ICH8M-E) LPC Interface Controller (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 03)
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 03)
01:00.0 VGA compatible controller: ATI Technologies Inc M64-S [Mobility Radeon X2300]
02:06.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b9)
02:06.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev b9)
02:06.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 03)
02:06.3 Generic system peripheral [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 20)
02:06.4 System peripheral: Ricoh Co Ltd R5C843 MMC Host Controller (rev 10)
10:00.0 Network controller: Intel Corporation PRO/Wireless 4965 AG or AGN Network Connection (rev 61)


Installation


Installation of Ubuntu 7.10 (Gutsy) went fine, however some of the hardware was not running. Most notably Gutsy is unable to identify the GPU. X will be configured with the basic VESA driver and configured to run on a low resolution. After the installation I had to do some fixing to most of the hardware run, here are the solutions that I have found out.

Wireless



My 6910p came with a Intel 4965 wireless card, Gutsy was able to detect it. For some reason my wireless card would not function properly, its unable to proceed in scanning the network. There is no notable error on syslog or dmesg. I was able to run it once only using the live cd while Ubuntu was installing. Intel 4965 should have been supported out of the box on Gutsy, but mine did not run maybe because its revision (rev 61). I had to update the drivers from http://www.intellinuxwireless.org and rebuild the linux-ubuntu-modules package.

Here is how I made it to work.

1. Download the linux-ubuntu-modules source package

sudo apt-get source linux-ubuntu-modules-`uname -r`

2. Edit the iwlwifi download script to fetch the latest drivers from http://www.intellinuxwireless.org
cd linux-ubuntu-modules-2.6.22-2.6.22/ubuntu/wireless/iwlwifi
edit the BOM script file, set the correct versions and fix the firmware move, here is my diff:

@@ -4,10 +4,10 @@
# only need to do this when you are updating from one version
# if iwlwifi to the next.
#
-IVER=1.1.0
-MVER=10.0.0
-FW3945_VER=2.14.4
-FW4965_VER=4.44.17
+IVER=1.2.23
+MVER=10.0.4
+FW3945_VER=2.14.1.5
+FW4965_VER=4.44.1.20

if [ ! -f iwlwifi-${IVER}.tgz ] ; then wget http://intellinuxwireless.org/iwlwifi/downloads/iwlwifi-${IVER}.tgz; fi
if [ ! -f mac80211-${MVER}.tgz ] ; then wget http://intellinuxwireless.org/mac80211/downloads/mac80211-${MVER}.tgz; fi
@@ -24,13 +24,13 @@
# Note the '-1' in the new firmware file name.
#
tar xzf iwlwifi-3945-ucode-${FW3945_VER}.tgz
-mv iwlwifi-3945-ucode-${FW3945_VER}/iwlwifi-3945.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-3945-1.ucode
+mv iwlwifi-3945-ucode-${FW3945_VER}/iwlwifi-3945-1.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-3945-1.ucode
rm -rf iwlwifi-3945-ucode-${FW3945_VER}

#
# Note the '-1' in the new firmware file name.
#
tar xzf iwlwifi-4965-ucode-${FW4965_VER}.tgz
-mv iwlwifi-4965-ucode-${FW4965_VER}/iwlwifi-4965.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-4965-1.ucode
+mv iwlwifi-4965-ucode-${FW4965_VER}/iwlwifi-4965-1.ucode ../../../ubuntu-firmware/iwlwifi/iwlwifi-4965-1.ucode
rm -rf iwlwifi-4965-ucode-${FW4965_VER}

3. Run the update script so it will fetch and patch the files.

./MUNGE

4. Rebuild the linux-unbuntu-modules, then reinstall the package.

fakeroot debian/rules binary-modules-generic
dpkg -i ../linux-ubuntu-modules-2.6.22-14-generic_2.6.22-14.37_i386.deb


Now my wireless is working flawlessly.

UPDATE: updated iwlwifi to newer version and step #4

Video



Gutsy will not detect the Radeon X2300 and will configure X with just the standard vesa driver. I have decided to use radeonhd driver because of 2 reasons:

1. fglrx currently has a problem with suspend, see Ubuntu issue 121653
2. radeonhd supports xrandr

Here is how I got radeonhd running.

1. Install the xserver-xorg-video-radeonhd from universe

sudo apt-get install xserver-xorg-video-radeonhd

2. Unfortunately the version is still old on Gutsy, Hardy has the working one. I had to manually update and install from source. Download the radeonhd tarball and follow the install instruction and overwrite the files from the debian package.

I was able to run xrandr, but its not that stable on the external display. Based from the radeonhd wiki I believe it can be fixed by updating X and xrandr. For now I just logoff to shutdown X and login again. I am trying to backport the Hardy deb package.

UPDATE: I have now resolved the xrandr re-enable of the external display. The basic fix is to explicitly specify the CRTC via --crtc switch of xrandr. My later blog entry explains it further.

Another solution is to grab the Hardy deb packages, this is what I did recently.

1. Edit the file /etc/apt/sources.list find all "gutsy" and replace with "hardy"
2. Get the newer packages

sudo apt-get update
sudo apt-get install xserver-xorg-core
sudo apt-get install xserver-xorg-video-radeonhd
sudo apt-get install libxrandr2
sudo apt-get install xserver-xorg-input-synaptics

3. Revert the file /etc/apt.sources.list find all "hardy" and replace with "gutsy"
4. Update apt so it points back to gutsy packages
sudo apt-get update


If you need 3D support, then fglrx is the only way. Just go install on the menu "System->Administration->Restricted Drivers Manager" and use "ATI accelerated graphics driver".

UPDATE: I am able to change the brightness when I switch to the console screen. I think this will be fixed on the later versions, its a documented issue with radeonhd on some video cards. Its a bit annoying but I don't change the brightness much so its ok. Ambient light sensor also has the same problem, function keys only works on the console.

Suspend and Hibernate



Suspend and hibernate works once I have edited "/etc/default/acpi-support". I have set the following:

SAVE_VBE_STATE=false
POST_VIDEO=false

Sometimes resume takes a while, it takes about 20 secs after to resume after suspending. Resume also sometimes does not work, however after setting

DOUBLE_CONSOLE_SWITCH=true

My resume has been successful all of the time.

Splash screen and virtual terminals



The splash screen and virtual terminals does not work. I was only able to make either work, but not both.

To make the virtual terminals work, I disabled the splash screen:

1. Edit /boot/grub/menu.lst
2. Change the defoptions=[your custom kernel params] splash to defoptions=[your custom kernel params] nosplash
3. Change the "kernel /boot/vmlinuz-[your kernel] root=UUID=[your UUID] ro quiet splash" to "kernel /boot/vmlinuz-[your kernel] root=UUID=[your UUID] ro quiet splash"

To make the splash screen work, but with no working virtual terminals:

1. Edit /etc/usplash.conf

xres=1024
yres=768

2. Edit /boot/grub/menu.lst
3. Add "vga=791" to "defoptions=[your custom kernel params] splash vga=791" and your kernel
"kernel /boot/vmlinuz-[your kernel] root=UUID=[your UUID] ro quiet splash"
4. Update your initramfs

sudo update-initramfs -u -k `uname -r`

The above work around is discussed here:
https://answers.launchpad.net/ubuntu/+question/2299
http://ubuntuforums.org/showthread.php?p=1541970

Harddisk Power management



I am unfortunate that my harddisk (Hitachi 7k200 Travelstar HTS722012K9SA00) is one of those affected by too aggressive power management. This issue is discussed here https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695

The workaround that reduced my Load_Cycle_Count

1. edit /etc/laptop-mode/laptop-mode.conf:

LM_AC_HD_IDLE_TIMEOUT_SECONDS=300
LM_BATT_HD_IDLE_TIMEOUT_SECONDS=300
CONTROL_HD_POWERMGMT=1
BATT_HD_POWERMGMT=128

2. edit /etc/default/acpi-support:

ENABLE_LAPTOP_MODE=true
SPINDOWN_TIME=60

3. edit /etc/acpi/power.sh:
Changed "$HDPARM -B 1 /dev/$drive 2>/dev/null" to "$HDPARM -B 128 /dev/$drive 2>/dev/null"

UPDATE: lowered the apm value when on battery, check my later post for the additional script.

Fingerprint reader


UPDATE: It works, just needed to install fprint. Read my later post for some more details.

Audio



UPDATE: The microphone works perfectly, the thing is, its is at the Capture level 0 by default. Go in your sound config panel, Capture tab and set Capture at e.g. 60%. - by Alexander

Bluetooth


UPDATE: Bluetooth works. I had to install "gnome-bluetooth" since I want my laptop to be the server. You can stop the bluetooth service. "/etc/init.d/bluetooth stop" and use update-rc.d to stop it permanently.

Summary



Ubuntu 7.10 (Gutsy) will not able to run HP 6910p right of the box. With some work it will be able to do it. Ubuntu Hardy should be able to resolve most if not all of the issue. For now I am pretty happy with the laptop as most of it now works. Items I wish to work on the future:

  1. hard disk accelerometer
  2. 3G broadband

HP 6910p photos

My mini review didn't contain photos so here are a few photos of the HP 6910p

Photo of 6910p (left) and nx8220 (right). You can clearly see the size difference of the screen and chassis. The 6910p keys are slightly bigger and full size keyboard, the keyboard layout has also changed. 6910p gun metal gray color is also slightly lighter in shade.


Despite the 6910p being the newer model its front is slightly thicker than the nx8220. The thickness at the rear is however the same. 6910p (left) and nx8220 (right), an AA battery as a reference.


HP laptops 6910p (left), nx8220 (center) and dv6000 (right)

Monday, December 24, 2007

HP 6910p mini review

I just got a HP 6910p, which is HP's 14.1" premier business laptop range. It was toss between a Lenevo T61 or HP 6910p, in the end the 6910p edge out since there where no T61 14.1" available locally that had WXGA+ (1440x900) resolution and a 7200 rpm hard disk. I will be comparing the 6910p with my current and previous laptops which are: HP nx8220, HP dv6000, HP zx5000, IBM G40 and Toshiba *forgot the model*. I got a few laptops that are HP, not that I am a fan of HP its just a coincidence due to the circumstances at the time of purchase such as with the 6910p where the T61 models was not available locally.

HP6910p specs: GU42pa

CPU: Intel C2D T7700 2.4Ghz 4MB L2 Cache
OS: MS Vista Business 32/64bit
RAM: 2x1024MB DDR2-667 (2GB Total; expandable to 4GB)
Display: 14.1” WXGA+ 1440x900 Anti-glare 200nit
GPU: ATi X2300 w/128MB Dedicated DDR3 RAM
HDD: 120GB 7200rpm
Optical Drive: MultiBay II DVD SM DL
Battery: 6 cell Li-Ion 55WHr
Wireless: Intel Pro/Wireless 4965 a/b/g/n, Bluetooth, Infrared, Vodafone 3G Broadband
Weight: 2.30kg w/6 cell and Multibay II DVD SM DL drive
2.15kg w/6 cell and weight saver
Dimensions: 330x240x33-40mm WxDxH (front-back)
Ports/slots: 3xUSB 2.0; MultiBay II; 10/100/1000 Lan; Modem; S-Video out; VGA out; Firewire; Audio in; Audio out; internal microphone; SD/MMC card reader; Smart Card Reader; Type I/II PC Card Reader; SIM card slot; Docking connector; Second battery connector.
Other: Finger print reader, Touch stick with 2 buttons, Touch pad with 2 buttons, Volume up – down, Volume mute, Presentation, Wireless, HP Info Centre touch sensitive buttons.

Design and Build
The 6910p does not have a flashy design, some people may not like it as its just shades of gun metal gray and black. Some people like me do like the low-key design and gives the laptop a very professional look. The design is very similar to the nx8220, as some of my office mates could not tell the difference which is the newer laptop among the two. For me I like the design of the 6910p compared to a T61 which has an off-center screen and 6 cell battery that is not flushed.

The build quality is very good, on par with the best laptop quality builds like the Thinkpad T-series. This laptop is solid, no chassis flex and LCD panel flex under normal use. I can carry the laptop one corner w/o flex or creaks.

Keyboard and Pointing device
The keyboard is a fullsize one, like the build quality it is on par with the best laptop keyboards in the market. I don't have a long term experience with a Thinkpad, so I don't know if its better or worse than a Thinkpad keyboard as for me its just has a different feel. There is some flex near the enter key, however its minimal and does not flex under normal typing. I need to push the area to see the flex. Coming from a nx8220 laptop, I welcome the bigger keys that the 6910p have. I don't like where the home, pgup, pgdn and end are placed as they are lined up vertically at the right side. I still prefer the nx8220 layout that is similar to a desktop keyboard where its clustered near the backspace in 2 rows. I guess its better for me, as my other laptop is a dv6000 which has an identical layout.

I always liked the touchpad of the nx8220. Its deep and skewed to the left, so I don't accidentally touch it while typing. Unlike my dv6000 and zx5000, their touchpad have no borders and centered on the laptop which makes it a constant pain of jumping mouse pointer. I also like the the touchpad surface as its not too slippery. The 6910p also comes with a track point, which I can say is not as good the Thinkpads. Its stiff and I don't have the option of using a different cover, it only comes with a flat top rubber cover.

Screen

The screen is 14.1" WXGA+ (1440x900) matte (non-glossy) which is rated 200 nit brightness. It is certainly better than the nx8220 screen, because nx8220 has a poor screen. I don't think its a good screen, its probably somewhere in the middle of the pack. The dv6000 and even the older zx5000 has better screens, then again the 6910p is a business laptop and not a multimedia laptop. Horizontal and vertical viewing angles are decent, there is noting to write about and noting to complain about. The LCD panel seems to be made by Chi Mei Optoelectronics, as it identified as cmo.

Sound

The sound for the 6910p is pretty good, but its not exceptional. I can confirm what the other reviews on notebookreview.com that the 2 speakers are located on the right of the laptop, so it looks like the speaker screen on the left is just for vent and looks. The sound quality is pretty good, not as good as dv6000 altec lansing or zx5000 harman kardon but good enough for presentation. The amount of bass is alright for a small speaker, unlike some Asus laptop speakers which are really poor.

Summary

Overall the 6910p is a very good laptop, its got the punch of the bigger laptops in terms of cpu (T7700) and harddisk (7200rpm) speed. It sacrifices the video performance (amd/ati x2300) for the mobility (2.3 kgs). Its build quality is one of the best which should last the daily travel and its a pleasure to use as you feel the quality in the keyboard, hinges, etc.

A more detailed review of 6910p can be seen here:

http://forum.notebookreview.com/showthread.php?t=140343

http://www.notebookreview.com/default.asp?newsID=3960

I will try to post details of running Linux on the 6910p in a few days.

Friday, December 21, 2007

Vista resize ntfs partition woes

I just got a HP 6910p, I am now resizing the vista partition to make way for linux. Unlike the HP dv6000, this Vista on HP 6910p didn't want to resize as much as I wanted. It only gave me 7mb, despite following the workarounds listed here:

http://www.howtogeek.com/howto/windows-vista/working-around-windows-vistas-shrink-volume-inadequacy-problems/

Nothing worked PowerDefragmenter, Auslogics Disk Defrag, PageDefrag, diskpart.exe, etc. I finally went on to just use gparted as documented here:

http://www.howtogeek.com/howto/windows-vista/using-gparted-to-resize-your-windows-vista-partition/

Fortunately for me vista just fdisk itself and I didn't need to use the recovery disk, which I left in the office. I used gparted live cd 0.3.4-11

Now time to install gutsy...

Tuesday, November 13, 2007

Ubuntu Gutsy NetworkManager erratic on resume

It seems Ubuntu Gutsy's NetworkManager is erratic, didn't have a similar problem in Feisty. I need to restart after resume often now. Just to save me the hassle of typing and my wife having not to deal with it I added a resume script on /etc/acpi/resume.d called 99-restart-wireless.sh that contained:

#!/bin/sh

/etc/dbus-1/event.d/25NetworkManager restart


--edit

The above is lame. I figured the problem, I needed to unload the broadcom drivers of the dv6000 during suspend. Just edit /etc/default/acpi-support

MODULES="bcm43xx"

That should unload bcm43xx module during suspend

Wednesday, October 31, 2007

Too aggressive power management of harddisk

I just found about this problem regarding too aggressive power management of hard disk in Ubuntu. One of my laptop hd is affected which is a Seagate 5400.2 100gb. My Fujitsu 80gb is just fine.

I used this work around, which looks to work fine.

Model software in color

Today and tomorrow I am attending a workshop on "How To Design Better Software Using FDD", which is essentially about color modeling. Color modeling uses the 4 archetype, Moment Interval (MI) (something happening in time like transaction, business process), Person/Place/Thing (PPT) (something in space like customer, site, product), Role (how are PPT interacting with MI) and Description (catalog /metadata for PPT like list of video titles). Each one of the archetype has a color to make things easier to read UML w/o adding more clutter: MI - pink, PPT - green, Role - yellow and description - blue. Here is like a reference domain neutral model called Archetypal Domain Shape. Your model will almost end up with pink - MI being like the center.

For me color modeling is a nice concept and puts some fun and simplicity in modeling the problem domain. Whether or not its effective and useful is another question, others and the creators have claimed its effectiveness in real world projects... so maybe it does have some benefit. I do think I will give it a try as I see it as something useful to have in communicating ideas of a project. The main lesson was after all is not the colors and model, but ask the business and do not assume. I wish there was some better model similar to a state diagram model which conveys a point in time, UML class diagrams does not convey very well non static stuff. How can you model properly dynamic languages such as Ruby that can redefine classes in run time?

Monday, October 22, 2007

From Feisty to Gutsy

I just upgraded one of my Ubuntu Feisty to Gutsy using the upgrade option via the net, I am assuming this is using Debian's dist upgrade... and wow and did upgrade smoothly. I know Debian dist upgrade works, I have used it once or twice but Ubuntu really puts some good UI and polish to it. I have also removed Automatix, as the only thing that I used outside universe and extra is skype and codecs.

I have also tried to turn on compiz, and its nice... not as distracting as Vista effects. All in all I think Ubuntu is really a good choice... oh yeah I like Ubuntu taking care of installing bluez and ati binary drivers.

Sunday, October 14, 2007

Forza 2 Hire driver

I have been playing a bit for Forza 2, its really nice. I normally play with the max difficulty settings (no driving aids, hard, simulation, etc.). Its been hard playing the endurance races as I don't have continuous time at hand, I have to take care of our baby daughter.

I find the hire driver to be poor compared to GT4 b-spec mode. Here is what I think:
  • You can't dictate the strategy to the driver, like aggressive and cruise, etc. You are essentially an audience unlike in GT4 where you are like the pit crew.
  • There is practically zero pit strategy. In GT4 I don't always change all of the tyres and do a full refuel, this gives you full incentive to think about pit strategy.
  • You can't swap drivers. In GT4 sometimes I take the first drive and be aggressive, then make a pit and let the computer take over with cruise mode. I have driven some endurance races in GT4 fully, but there are tracks that are a bit boring and sometimes b-spec is nice too.
  • You can't fast forward the time line. I guess its not much of a real issue since all of F2 endurance races are short compared to GT4
Forza 2 is great, but it sure can improve on the Hire driver feature. Can't wait for Forza 3 or GT5.

Monday, October 8, 2007

Long dry spell

Wow its been a long time since I wrote to this blog. Lots of happening, our baby daughter has arrived last Sept... hence the inactivity with this blog. Too busy and sleepy, also maybe a good convenient excuse for me.

Sunday, August 19, 2007

Forza 2 quick review

Its been a while since I last put a blog, I have been busy at work and playing with Forza 2 (F2). Forza 2 is a really nice driving/racing game, I bought a XBOX 360 since there is no Grand Turismo 5 yet for PS3. Forza 2 is the closest to Grand Turismo 4 (GT4). I am comparing F2 with GT4, here is quick take:

  • F2 has less cars, but has more better spread of cars. You get good representation from different manufacturers and eras. Not that GT4 has poor selection of cars, its just that F2 has a better coverage.
  • F2 has pretty good physics, not sure if its better than GT4... but its pretty good.
  • I normally turn off music while driving, but I do miss GT4 and other Grand Turismo soundtrack. F2 soundtrack is... errr not my era?
  • I miss the sound of 4 rotary engine Mazda 787B, however the Porsche 962 in F2 do make up for the absence of the screaming Mazda.
  • I like F2 damage model, its not realistic but its a lot better than none at all.
Overall GT4 has really raised the bar, however F2 has responded pretty well. I just wish I don't regret buying a XBOX 360 when GT5 goes out.

Monday, July 30, 2007

Why do some business software fail?

Some business software fail because the tech guy fails to understand the business needs. So we have software that runs but does not work. On the other end of the scale, business people keep pushing to cut corners. So we now have a business software that is perceived to work, but it actually does not run properly. I think we all know about this classic tug of war. However I am thinking maybe business software fail because people do not care. In the software business people move from one place to another in just a few months or years. The life of the software is longer than the average tenure of a business or tech staff. I see people only caring about their current deliverable, or what will make him more to his/her next job.

In a way having a open source base may help (not the silver bullet) in getting the software to live beyond the people who handles it. However its not possible to open source all software, and a more important consideration is open sourcing will not guarantee a community will evolve around it. Until then those people who cares about software that works will have to work with those people who just cares for the bucks. Sadly there are more people who is in it for the buck, which also makes it hard to make software that works.

Tuesday, July 3, 2007

Eclipse Crash

I had one of those bad eclipse crash, I am glad someone had a similar problem. I just deleted the files:

/.metadata/.plugins/org.eclipse.core.resources/.snap
and
/.metadata/.plugins/org.eclipse.core.resources/.root/.markers.snap

I got the tip here

Long live vim and emacs!

Sunday, July 1, 2007

Ubuntu Feisty on HP nx8220

I decided to install Ubuntu on my nx8220 and remove Fedora, after being happy with Feisty on the dv6000. Well its linux, so I have to do the pain of setting it up since its a clean install.

- first issue, reboot does not work. I dug my old kernel param, I need to add the following on the kernel startup option "reboot=b"
- add Trevino's ubuntu repo for the suspend2 patched kernel
- add automatix2, and copy the files on /var/cache/apt from my dv6000

It now looks to be running pretty good.

Tuesday, June 19, 2007

HP Laptops

Since about 2 years ago I have started to use laptops and moved away from the desktop PC. For one reason or another I have owned HP laptops, using casually (not owning) IBM/Lenovo, Toshiba, Dell and ASUS laptops. I ended up with a HP Laptop specifically: nx8220, zx5000 and dv6000.

Comparing the 3 after using them for sometime, I can see the HP business laptop is more solidly built. They are dull and black, but they are better in terms of build quality and function. The dv6000 even being the latest of the 3 had the worst keyboard, although they are still better than your average laptop... still the older nx8220 is better. The nx8220 keyboard is not IBM Thinkpad grade, but they are pretty good. The old zx5000 gets hands down having the best speaker, the harmon/kardon are really good better than dv6000 altec lansing. The touchpad of the dv6000 is not good, more weight was put on the design than function. It sits on the center of the laptop, so my right hand keeps on touching it accidentally. I need to constantly turn off the touchpad of the dv6000. The nx8220 has the less creaks and flex, even if its already 2 years old. The nx8220 is solid and has almost no creaks while under normal use. The dv6000 is noisy, of course the zx5000 is more noisy but considering the zx5000 is using a p4 3.0ghz northwood processor and the dv6000 is using the cooler core 2 duo 2.0ghz... its surprising to hear the fan turn on and off. The nx8220 has the worse screen of the 3, its really crap compared to the other laptops.

The nx8220 is pretty good for development work, despite having a dull design and a poor screen. I guess I should buy a business laptop next time, it seems to fit my needs... they are just a bit expensive though. I was expecting more from the dv6000, however its really just a replacement for the zx5000... a consumer laptop is really just a consumer laptop.

HP/Laptop support index

Thursday, June 7, 2007

Oracle XE 10g on Ubuntu Feisty Server

I had one small bump when I installed Oracle XE 10g on a Ubuntu Feisty server. It seems the scripts on Oracle XE is assuming your hostname must be a local loopback. I fixed the install by adding my hostname on /etc/hosts. Oracle XE is pretty good. Its relatively easy to install.

Wednesday, June 6, 2007

Feisty Suspend2 Nvidia does not go well

I can't get Nvidia and Suspend2 to work. The problem is that nvidia kernel module won't get unloaded if X is running even if I used to switch to text and dummy x server. The quick work around was to remove nvidia from /etc/hibernate/blacklisted-modules. Then use suspend to ram.

Tuesday, June 5, 2007

And the winner is.... Ubuntu

I installed Fedora 7, I found it not as appealing anymore as in the olden days. It seems Ubuntu 7,04 is more polished, also Automatix has swayed me in favor of Ubuntu. I have used Automatix for my work PC and my mom's, it really helps a lot. Before Ubuntu and Automatix I did most of customization before, I even had a short text file and some customs rpms before.

So far Ubuntu on my HP DV6000 is working pretty well. Despite having a Broadcom wireless card, which I thought will force me to use ndiswrapper or extract/hunt a firmware... but Ubuntu worked well.

My wireless is a (from lspci) "Broadcom Corporation Dell Wireless 1390 WLAN Mini-PCI Card (rev 01)". All I did was to install the bcm43xx-fwcutter and told the script to search and download the firmware. Using the command below:

sudo apt-get install bcm43xx-fwcutter

I am still working on Suspend 2. It seems the binary nvidia drivers can't unload properly. The "nv" driver drive the Geforce go 7400 in 24 bit, it keeps on using 16 bit.

Saturday, June 2, 2007

Fedora or Ubuntu?

I have been a long time user of Red Hat Linux, from RH 4.0 to be exact. I started with Slackware 1.0 or something and I really didn't know then what I was doing when I first installed Linux. Recently Ubuntu is really picking up and Fedora isn't as appealing. I have been using Ubuntu at work and my Mom is running Ubuntu, I have also been using apt-get on Red Hat since RH 9.0. So I like Ubuntu too.

I am going to install Linux on my other laptop, I wonder if its going to be Fedora or Ubuntu. I will give Red Hat one more version, Fedora 7 just came out and seems to be pretty good. We'll see...

Thursday, May 31, 2007

Developers like to create square wheels

I am helping in fixing the scalability of a web app. While digging through the code looking for the problem spots. I saw a piece of code and a comment saying:

# One common problem with login is that people can hit the back button
# after a user logs out and relogin by using the cached password in
# the browser. We generate a unique hashed timestamp so that users
# cannot use the back button.

Wow that is an amazing feature! But it clearly shows the previous developer did not understand the framework he/she was working on. The framework provided the login page to timeout, I guess this feature doesn't exists anymore along with the other security features, since he/she heavily changed it and erased the code to secure the login page.

Hopefully I don't become a developer that looks at a wheel, not able to understand the wheel and create my own wheel which is square.

Wednesday, May 30, 2007

Cut and Paste software development nightmare

I think Cut and Paste is one of the worse things for software development. It seems to more convenient for developers to Cut and Paste rather than thinking of making the code modular. Its really sad how Cut and Paste really destroys code.

mount Sandisk Cruzer Crossfire in Linux

I just got by 4.0GB Sandisk Cruzer Crossfire, for some weird reason I can't mount it in Linux. I can see that its able to detect it as /dev/sda. I can even fdisk /dev/sda. I tried various way of mounting it. For some reason it seems Sandisk does not make partition on this USB flash disks. I was able to mount with:

mount /dev/sda /media/usbstick

Take note its "/dev/sda" and not "/dev/sda1".

*edit* For some weird reason automount now works. Its able to mount it just fine... weird.

Sunday, May 27, 2007

What most software developer think?

I have been involved with different software projects and teams. There is one thing that I always encounter, especially from the less experienced developers. Most of them always think the current code is crap, they can do better, what the hell was the last developer doing, yada... yada... yada...

Little did they know that the previous developer may be a in different circumstance and usually its the time pressure that makes developers code like crap. Yet most of the yappy developers who think they can do better often do the same crappy job or even worse development once they are the one under the time pressure.

Good software developers can write good design and code, as well as understand and tries to understand existing code and history.... but sometimes people do code like crap :)

Wednesday, May 16, 2007

Developing on Spring

Its been a week now with my new job. Doing primarily Java and using Spring framework. Spring is pretty good, although not as Spring to me. It maybe Spring for those who came from EJB winter, but not for me where I had some experience with RedHat CCM, OpenACS and a bit of Rails.

I am still holding my verdict for Spring. What I do like is that the framework encourages layering through IoC and interfaces. It surely does have advantages, however like all advantages there will be some drawbacks. So is the advantage big enough over the drawback, or is it just better than EJB winter times?

Wednesday, April 18, 2007

Battery Problem

Today I had my car battery replaced, but I had to fight for it. Here is the story. About 9 months ago I bought a new battery. The manager of Beaurepaires told me that a small battery rated CCA370 is enough. I told him, maybe its not enough. However he convinced me that it has 24 months warranty and should any problem occur he would easily replace it. The next day my battery went dead. Its possible that battery was a dud, or I didn't properly charge it since I went home straight. The 20 minute drive home, may not have been enough to fully charge a battery that was in long storage.

I went back to the shop the next day, asking for a friend to give me a lift. I told the manager that I don't think the battery has enough capacity for my car. I asked him if he can't replace the battery with a larger capacity, I want my money back. He wouldn't give my money back, but gave me another battery. I was a bit pissed, but then I can understand his point that he couldn't just give my money back since it maybe possible that I just got a bad battery. He then convinced me again about his 24 month warranty line. At the back of my mind, I thought was getting a poor deal. However I thought that if this battery has not enough CCA then I should appear in the 24 months use.

About a few weeks ago, there has been a bit of a cold weather. I had to jump start the car 2 times, after the car is not used for 5 days. I only use my car on the weekends. Its been really hard to jump start the car since its on a long driveway and my front is first in. My only recourse was to remove the battery, jumper it on my wife's car. Rev up my wife's car for about 5 mins to give my battery some charge. Then put back my battery on my car. After the 2nd time, I now park my car rear end first, so I can jumper it easily. Then I noticed the current battery, its even has a lower CCA than what I originally bought. He replaced my CCA370 battery with a CCA300 rated battery.

Anyway I went back to Beaurepaires. I told him about the battery, I told him that I couldn't start the car after about 5 days of no use. He then comes back to me telling my that my terminals was just loose. I told him that a loose terminal will not cause that kind of a problem. Also if my terminals are loose enough, why would my car start after charging the battery from my wife's car? He told me that battery was ok, and my car is starting. Of course my battery is ok, its been charged when I drove to the shop. We then argued a bit, what really pissed me is that he told me that I have a 9 month old battery, so I will need to start my car every 2-3 days. What crap!!! Now I know this guy is really crap and has been doing me a run around.

I then raised my voice and stood up, one of his staff came in. The staff asked me about the problem. I showed him the current battery, and told him about the situation. When I leave the car for just 5 days the battery is unable to start the car. The staff told me that he will just replace the battery with the original battery that was given to me. (CCA370 rated battery). I told him that is already acceptable to me. While the staff was removing my old battery, mentioned to him the manager told me that they did not have a larger capacity battery with small terminal. He thought that couldn't be right, he then looks at the stock and found a battery with small terminals that was CCA430 rated. We also looked the size, which is a better fit with the battery compartment. The older battery CCA370 and CCA300 was too small for the battery compartment. 2 more other staff came to us, they said that I should have got the CCA430 in the first place. My car has a big motor, there is no way a CCA300 will last. Its a turbo charged 2.5 liter straight six.

I am really pissed with the manager, I am glad he has competent staff and it was resolved professionally. His staff are also cool, as I can talk with them about cars, etc.

Blogging, a hard habit for me.

This blogging is really a hard habit to do. Hopefully I can do it more constantly.

Javascript revisited

Its been years since I did some Javascript. Been doing it since Netscape 3.x. I had to do some Javascript again for a web app. I found this great Javascript Reference

It really helped me since the date functions setMonth and getMonth is Month minus 1 (MM-1). Their bomb icon really helped me that its a known gotcha. I might have known this before, but it has fallen out of my memory.

I have always used this Netscape Navigator JavaScript Guide before. How things have changed, Navigator is now a minority. And how things are also the same, Firefox/Mozilla is still the best browser to develop on. Firebug, Web dev toolbar, etc.

Sunday, April 1, 2007

What a busy week

Its been a busy week for me. Looking at postgresql, there seems to be a bottle neck. For some reason when you keep on hammering it on a multi cpu server. The cpu utilization lowers from 100% to 40%.

Hopefully I get to the bottom of it, its an interesting problem.

Friday, March 23, 2007

Reading a book because someone told me so.

Today I started to read a book by Martin Fowler, Patterns of Enterprise Application Architecture. Primarily because I flunked 1 job interview, since they where asking about mostly about "what" questions, not much "how" and "why". I had a hard time answering them, even though I did a lot of big systems before. I even goofed up some simple questions. However my next job interview went well, even gave me a better offer. The panel from this interview where more interested on the "how" and "why" things. They didn't look for me to answer all the terminologies correctly, I was even given a chance to use the whiteboard to further explain.

I was however curious to read the book, as one of the guy in the first panel told me to read it. As I have discovered I knew a lot of the patterns, however I was not aware of them. The book is pretty ok, especially the fact regarding to identify patterns so it can easily be communicated with other developers.

First thing that I learned about being a good architect. There is no concrete architect role, however one is needed to communicate to people outside software development that role is for a person that thinks beyond the code.

Monday, March 19, 2007

What does it take to be a Software Architect?

I am not sure how this is becoming a fad now. foo + Architect = big bucks. I know there are some good people out there that have the Architect title, but some are just jargon heads. I think the best combination is to be a good decision maker and broad technical knowledge that knows how to speak the jargon.

I think I have worked on the technical and decision making side of things, however I think I got my head too deep into making things work that I got left behind with all this jargon stuff. I think I better read some more books, rather than reading more manuals and code.

I wonder what would I need to be a REAL good foo Architect...

Friday, March 16, 2007

Keylogger shown on TV news, gives cut and paste as security solutions... how secure.

I was watching some TV news show, TV NZ's Close Up. It was talking about keylogger, what news I thought. Anyway its good for folks not in computers to get them more aware. It wasn't really bad, its telling how do keylogger works and how easy for net cafes to have one installed. Then it came to the part on how to secure yourself from it... you bring a flash drive with a file containing your username and password. Then cut and paste your username and password. Wow what a secure and great solution, how the heck this got passed the editors or even the so called security expert they interviewed.

The special should appear below, on the March 16 show.

http://tvnz.co.nz/view/page/497100/1025745

If there one thing that is worse about security problems its proposing solutions that are false and gives false security sense.

Wednesday, March 14, 2007

First Post

Finally after years of lurking around, even working on a few blog code. I am now a blogger! Not sure why blog never really appealed to me initially. Hopefully once I start blogging it becomes a continuous one.