PHP 4.4.4 and Apache 2.2 on Win32

I have just spent more than the normal time to install Apache + PHP on Windows. Well, for me at least, as a PHP trainer. It’s quite embarassing if you ask me.

Anyway, I am writing this quick post just to let you know which Apache to download. In Apache download page today, there’s a few versions available – version 1.3, version 2.0, and version 2.2

Usually I will just fetch Apache 1.3 directly, and configure PHP as module. But currently Apache only provides version 1.3 as unix source – which is fine on my Linux box. So I went to fetch Apache 2.2 – just to find that it won’t load PHP.

So to cut in short, if you are using Windows, download Apache version 2.0 and you’ll have Apache + PHP running in no time.

Why the hell am I installing Apache + PHP on Windows? Well that’s another long story I will keep for another post. My laptop hard disk crashed on me and I decided to run fully on Windows, especially I will need a lot of digital imaging capabilities on the slow laptop – I’ve just taken photography as another hobby that I hope will make me money some day.

Update 23 September 2006:

As it turns out, when downloading MySQL you might as well go for the latest version. This is why:

MySQL currently only provides version 4.1 and above. The difference can’t be seen by anyone else except those using PHP. For MySQL versions >= 4.1 PHP utilizes the mysqli extension, because the default built-in API in PHP (MySQL 3.x) doesn’t work very well (MySQL changed certain things). The problem: PHP 4.x does not provide libmysqli.dll. Only PHP 5.x does. So the final summary is:

  1. PHP 5.x
  2. MySQL 5.x
  3. Apache 2.x

The obvious thing that I noticed is the problem with MySQL passwords. If you’re worried that your host server might have older versions, you can always write your code by utilizing ADOdb.

The problems described above does not effect *NIX users, as all modules can be compiled manually along with PHP.

Kittens in The Backyard

While cleaning up our backyard last weekend, we found these little kittens hiding under some grasses. Luckily we found them on time otherwise they’ll be chopped up by the grass cutter. Here’s a video I uploaded on YouTube:

For unfortunate ones who can’t view YouTube, here’s an image. Click on it for larger picture.

Kittens

Still Alive

In contrary to popular belief, this site is still alive. It’s just hard for me to find time to update it. My new job in operations is really taking much of my time. Starting from this week, for 3 weeks I will be working in EU (European) time which is 0700 – 1600 GMT (that’s 1500 – 0000 local time).

It’s challenging, it’s different, and to be frank I don’t really like it that much. My mind plunges into its “HOME” mode, where I watch TV, manage my bittorrent downloads, and surf the Internet. I feel tired.

Oh well it’s only for these 3 weeks. In December, however I will be starting to work in rotation for Asia Pac, American, and European time – for at least 2 months! Let’s see what happens. Maybe during the American time which is 2300 – 0700 local time I would have more time to blog. Who knows. They say that during that period there’s not so many problems to be handled. Let’s hope so.

I guess that’s all I can talk about this time. Next time… I am also unsure what to write about. I don’t feel like touching any political issues, or anything much that is known by public. And I know that most of my visitors hate to see technical things in here. Oh well, for my regular visitors, do help me with suggestions, will you?
Later…

ALSA Support in Skype

Finally, Skype has released a beta version with alsa support: 1.3.0.30_API

Skype Beta with ALSA

Hopefully all the troubles with “Problem with Sound Device” will be history. However for users with very old kernels, and prefer to use OSS, the option is still there. The problem with Skype utilizing OSS on modern systems is that it keeps on failing to close /dev/dsp after using it. The only way to make it work again is to restart Skype. It’s a hassle and a headache. Believe me, I used to be a SysAdmin (until a week ago) for a 99.99% Linux desktop company – with Skype as one of the primary communication tools.

Student caught recording in cinema

PENANG: Ever wondered how the latest movie blockbusters make it into the pirated market within a day of its official cinema release?

A 21-year-old college student was caught using a video camera handphone to record Anjelica Lee Sinje’s latest horror flick Re-cycle at the Golden Screen Cinema (GSC) in Gurney Plaza on Thursday afternoon.

The movie, filmed in Bangkok on a US$5mil (RM18mil) budget, made its debut in Malaysian theatres on that day.

The student had recorded 45 minutes of the 109-minute movie when the cinemas assistant manager spotted him.

The manager apprehended the student and seized the handphone before handing him over to the police.

Had the student finished recording the movie, he would then have downloaded it into a computer and burnt it onto VCDs and DVDs.

Within an hour, hundreds of copies would find their way to night markets and eating stalls, just like the pirated copies of Superman Returns and the computer animated Cars.

Original news: http://thestar.com.my/news/story.asp?file=/2006/7/8/nation/14777185&sec=nation

I’m just wondering what handphone the kid used, good enough to reproduce VCDs? Wow… I am not saying that the student did a right thing but it’s kinda funny. Maybe after this cinemas will check our mobile phones before entering.

Bye Bye Old Friend

I have to part with my dear old friend today. It has been around since the year 2000, and we had a lot of very good memories together. It’s a 8x4x32 CD writer priced at more than RM800.00 that time, but I managed to get it for RM550.00 (brand new) from my friend. It was a long time ago, and nowadays CD writers cost merely RM100+

This HP 9100 CD Writer doesn’t have any buffer underrun protection, but it has served me well. I have to get rid of it since it is no longer working and taking up too much space in my computer room, which by the way is a junk yard and morgue for computer equipment 😉

It has burnt more than 1000 CDs if I recall correctly, as me and my wife (my girlfriend back then) had a CD Burning business. No, not 100% pirated contents, more like burning what people own (assignments, anime) since at that time CD writers was still too expensive (and anime is very hard to get!). For a CD media costing us RM0.70~RM0.90, we charged RM3.00. HEY it’s not easy to burn things, especially one mistake you lose the CD!!! So a lot of work was involved, copying the files and waiting it to burn at a very slow speed.

Oh well, thanks a lot my friend.

HP 9100 CD Writer

Storage Emergency

My 17-days old Seagate Barracuda 7200.9 300GB disk was giving a lot of error two days ago. There were a bunch of errors in my syslog:

ata1: translated ATA stat/err 0x51/40 to SCSI SK/ASC/ASCQ 0x3/11/04
ata1: status=0x51 { DriveReady SeekComplete Error }
ata1: error=0x40 { UncorrectableError }
ata1: translated ATA stat/err 0x51/40 to SCSI SK/ASC/ASCQ 0x3/11/04
ata1: status=0x51 { DriveReady SeekComplete Error }
ata1: error=0x40 { UncorrectableError }
sd 2:0:0:0: SCSI error: return code = 0x8000002
sda: Current: sense key: Medium Error
Additional sense: Unrecovered read error - auto reallocate failed
end_request: I/O error, dev sda, sector 212833665
Buffer I/O error on device sda1, logical block 106416801
ata1: translated ATA stat/err 0x51/40 to SCSI SK/ASC/ASCQ 0x3/11/04
ata1: status=0x51 { DriveReady SeekComplete Error }
ata1: error=0x40 { UncorrectableError }
ata1: translated ATA stat/err 0x51/40 to SCSI SK/ASC/ASCQ 0x3/11/04

Yes, that’s right. After 17 days so I can’t get a one-to-one replacement from the shop.

SMARTD Logs:

Error 6892 occurred at disk power-on lifetime: 427 hours (17 days + 19 hours)
When the command that caused the error occurred, the device was active or idle.
 
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 51 00 b4 95 af e0  Error: UNC at LBA = 0x00af95b4 = 11507124
 
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
-- -- -- -- -- -- -- --  ----------------  --------------------
25 00 d0 b0 95 af e0 00      01:47:04.861  READ DMA EXT
25 00 d0 b0 95 af e0 00      01:47:03.048  READ DMA EXT
25 00 d0 b0 95 af e0 00      01:47:01.243  READ DMA EXT
25 00 d0 b0 95 af e0 00      01:46:59.447  READ DMA EXT
25 00 d8 a8 95 af e0 00      01:46:57.650  READ DMA EXT
 
Error 6891 occurred at disk power-on lifetime: 427 hours (17 days + 19 hours)
When the command that caused the error occurred, the device was active or idle.
 
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 51 00 b4 95 af e0  Error: UNC at LBA = 0x00af95b4 = 11507124
 
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
-- -- -- -- -- -- -- --  ----------------  --------------------
25 00 d0 b0 95 af e0 00      01:47:04.861  READ DMA EXT
25 00 d0 b0 95 af e0 00      01:47:03.048  READ DMA EXT
25 00 d0 b0 95 af e0 00      01:47:01.243  READ DMA EXT
25 00 d8 a8 95 af e0 00      01:46:59.447  READ DMA EXT
25 00 d8 a8 95 af e0 00      01:46:57.650  READ DMA EXT
 
Error 6890 occurred at disk power-on lifetime: 427 hours (17 days + 19 hours)
When the command that caused the error occurred, the device was active or idle.
 
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 51 00 b4 95 af e0  Error: UNC at LBA = 0x00af95b4 = 11507124
 
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
-- -- -- -- -- -- -- --  ----------------  --------------------
25 00 d0 b0 95 af e0 00      01:47:04.861  READ DMA EXT
25 00 d0 b0 95 af e0 00      01:47:03.048  READ DMA EXT
25 00 d8 a8 95 af e0 00      01:47:01.243  READ DMA EXT
25 00 d8 a8 95 af e0 00      01:46:59.447  READ DMA EXT
25 00 d8 a8 95 af e0 00      01:46:57.650  READ DMA EXT

Here’s the disk label:

Seagate Disk 300GB

I blamed the disk. My friend Azidin had a different idea. He said that it might be the SATA controller card that I installed on my computer that’s causing the errors. I didn’t believe him.

That night I tested the disk with Azidin. There were a lot of bad sectors!!!!! But still, I refused to blame the SATA controller card.

Seatools

After work on 23 June, I immediately rushed to the shop, hoping that they would give me some help, or keep my disk for checking during the weekend but they (C-Zone) rejected me saying that their service center is closed and asked me to come the next day. I was disappointed. But I didn’t leave Low Yat plaza before buying a 200GB Maxtor disk from Startec, just in case if it’ll take months to get my disk repaired.

Maxtor 200GB

Back home, I installed the disk onto the same SATA controller card. The next day, I received these from my syslog:

end_request: I/O error, dev sda, sector 132826840
Buffer I/O error on device sda2, logical block 8210
lost page write due to I/O error on sda2
ATA: abnormal status 0xD0 on port 0x9807
ATA: abnormal status 0xD0 on port 0x9807
ATA: abnormal status 0xD0 on port 0x9807
ReiserFS: sda2: warning: journal-837: IO error during journal replay
REISERFS: abort (device sda2): Write error while updating journal header in flush_journal_list
REISERFS: Aborting journal for filesystem on sda2
ata1: command 0x25 timeout, stat 0xd0 host_stat 0x1
ata1: translated ATA stat/err 0xd0/00 to SCSI SK/ASC/ASCQ 0xb/47/00
ata1: status=0xd0 { Busy }
sd 0:0:0:0: SCSI error: return code = 0x8000002
sda: Current: sense key: Aborted Command
Additional sense: Scsi parity error
end_request: I/O error, dev sda, sector 133810704

I started to believe that the controller card might be causing the problems. What are the odds that all my disks end up producing errors like these? I decided to buy a new motherboard with a built-in SATA controller, without spending too much. Also, I have an unused socket 478 Celeron, so after some research, I decided to get an ASUS P4P800-MX that’s still available in Cycom. The very same night, I ran Seagate Desktop on my older disk – low-level format (zero fill). It took hours but totally worth it. This morning when the process finished I ran another surface scan of the 300GB disk and all bad sectors are gone. Pheww! I decided not to send it to the shop, but continue using it with caution. It carries a 5-year warranty anyway.

Seatools 2 all ok

So today I went and bought a P4P800-MX from Cycom, with two sticks of 512MB DDR (to utilize dual-channel memory bus). I have just finished installing the 300GB Seagate disk plus the 200GB Maxtor disk on the new motherboard. Everything looks good.

The cuplrit? Here it is:

Sata controller

I don’t think it’s the chip. Maybe the card is defective. I bought it at Sri, in a plastic package (they hang such packages on a wall like in a supermarket). I thought of returning it, but I’m too tired to argue with the shop.

Oh well. I am all happy now. Thanks to Azidin for his help, and of course to my dear wife for her understanding of this matter.

Another Month with Low Post

Looks like not so much useful post for May either. I was actually planning to post a few useful geeky articles about things I have managed to hack around at work (i.e. Patching the Linux kernel tree to support Linux Virtual Server + Software Suspend 2). Looks like I have to do those later. 😐

Downside of IT Certification

Interesting…

The Q1 2006 Hot Technical Skills and Certifications Pay Index, released April 25 by Foote Partners, a New Canaan, Conn., IT compensation and workforce management firm, found that pay premiums for non-certified IT skills grew three times faster than for certified ones in a six-month period spanning 2005-2006.

http://www.eweek.com/article2/…

The study suggests that there has been a change in employers’ acceptance of the value of non-certified tech skills versus certifications in maintaining competitive pay for their workers.

Click more for local copy of the full article (just in case the original is removed)
Continue reading Downside of IT Certification

Hectic April

April has been a very intense month. Everything at work has turned againts you, and the world is falling apart.

Hand

I injured my hand since a few weeks ago, and had only went to the doctor today. Don’t know what causes this, but I bet it’s because of carrying the heavy office desks to the storage unit. Something I didn’t expect when I signed the contract 2 years ago.

Oh well…

3 AM

It’s 3.45am and I am still in front of my PC. Not many people realizes my habit of staying up if my mind’s in a bad shape. Tomorrow’s a work day. Oh well I can still manage to go through hell at work even suffering from sleepless nights.

Instead of whining and complaining with the things that are disturbing me, I’ll write something useful for everyone.

Listening to my freshly leeched Metallica discography (encoded in FLAC) made me realize the quality difference between FLAC and MP3.

FLAC, an acronym for Free Lossless Audio Codec, is a popular free audio compression codec that is lossless. Unlike lossy codecs such as Vorbis, MP3 and AAC, it does not remove any information from the audio stream and is suitable both for everyday playback and for archiving audio collections. The FLAC format is currently well supported by many software audio products.

It’s true, most of us still downloads and listens to MP3 (and most of our devices/software plays MP3) but believe it or not lots of software plugins, even hardware: http://flac.sourceforge.net/news.html have been built to support FLAC.

Generally FLAC are bigger (twice the size or more) than MP3, but small enough compared to WAV files (directly ripped from the audio CD). When I compared the same track, one encoded with FLAC and the other with MP3; the difference is so obvious. As an example, an album encoded in MP3 format might use up 80MB while the same album encoded in FLAC might end up using 300MB of your precious disk space (while WAV most probably take double than that).

Try it. Download FLAC at http://flac.sourceforge.net/download.html. For now, download the plugins or players until you decide to encode something to share with the community. As for the audio files, you have to download those yourselves. Google for them 😉 Hint: Learn about bittorrent and do a search like “Metallica torrent” in Google; most of FLAC encoded files are shared using bittorrent.

You won’t be disappointed, but the choice is yours.

Police on Phone While Driving

21-Mar-2006: Back from lunch at McDonalds’ Equine Park. Thanks to Azidin for the capture. Great shot from a moving car!

Well, the police officer probably gave himself a ticket when he reached the police station.

Police on the phone while driving
(Click here or the picture for a larger view)

I was quite busy for the last few weeks – my dayjob office is moving to smaller units. I will probably continue writing when things return to normal.

Used SODIMM DDR to Let Go

I have just upgraded my notebook RAM to 1GB (2 x 512MB). That’s the max it can have.

So, now I have 2 pieces of 256MB modules and am deciding to let them go. Anyone interested in buying one or both of them please email me at [adyromantika at gmail dot com].

New modules of size 256MB costs RM95.00 at Low Yat Plaza (1st week of March 2006).

Size: 256MB, Technology: DDR, Cas Latency: 2.5, Voltage: 2.5V, Spec: DDR-333 = PC2700 = 166Mhz

Here is the Samsung module (came original with HP notebook) front and back view:

Samsung 256 Back Samsung 256 Front

Here is the Kingmax module (bought at the same time of the purchase of notebook) front and back view:

Kingmax 256 Front Kingmax 256 back

Provide me an offer, and include the RM5.00 PosLaju charge. I will only use PosLaju (Malaysian only, please). Sorry, no warranty.

PM: We have to sacrifice

The title should say “PM: Malaysian citizens have to sacrifice”.

Quoting from what he has to say:

“Those riding motorcycles and driving small cars dont really enjoy the subsidy as their vehicles dont consume a lot of fuel,” he said.

Is this reverse psychology or something? In fact: Those riding motorcycles and driving small cars don’t enjoy the subsidy but will be burdened if there’s no subsidy.

Asked whether he was aware that the public had voiced their unhappiness over the price increase, Abdullah replied: “Who will be happy when prices of things go up.

Who will? Who will? Consumers aren’t happy. Only Government people will be happy as they are involved in businesses and make more money out of the fuel price increase.

Let’s analyse the situation. Take into example my Perodua Kelisa, the full tank is approximately 27 litres. With the old prices it costs RM43.74, and with the new price it costs RM51.84. That’s a RM8.10 difference!

For people driving big cars, they might face a raise of about RM20-RM50 but of course, they have a lot of money. RM8 is more than my cost of lunch, and for some people it’s lunch + dinner!

And where will the RM4.4bil go? To the Government officials’ (and the cronies) pockets? And with the unemployment rate skyrocketing I don’t know what these people are thinking. A cool fact I learnt last week: In Germany they pay 1000 Euros per month to unemployed graduates, to help them look for a job. Will the Malaysian Government do that?

Oh Pak Lah, I’ve lost my faith in you.

Original news: http://thestar.com.my/news/story.asp?file=/2006/3/1/nation/13537510&sec=nation

By ZUHRIN AZAM AHMAD

KUALA LUMPUR: The estimated annual saving of RM4.4bil in fuel subsidy will be spent to improve the public transport system, Datuk Seri Abdullah Ahmad Badawi said.

He said it was not the Governments intention to burden the people when it increased the price of fuel.

“The money that we save from the subsidy will be returned to the rakyat in the form of a better public transport system,” he told a press conference after a briefing at Bank Negara here yesterday.

“The cost to improve the system is high, and now we have the money to improve it.”

p4zeti.jpg
IN THE PEOPLES INTEREST: Abdullah stressing a point on the fuel price rise at a press conference after a briefing at Bank Negara yesterday. With him is Bank Negara governor Tan Sri Dr Zeti Aziz.

The prime minister said it was a small sacrifice by the rakyat for a better facility.

The price of petrol and diesel went up by 30 sen a litre yesterday. The Prime Minister reiterated that this would be the only fuel price rise for the year.

“There will be no more increase until December. For 2007, I will not speculate,” he said.

Abdullah also said that in reality, the fuel subsidy only benefited those who drove cars with bigger engine capacities.

“Those riding motorcycles and driving small cars dont really enjoy the subsidy as their vehicles dont consume a lot of fuel,” he said.

Asked why the fuel price increase was not made gradually, Abdullah said that doing so would only create more problems.

“Doing it bit by bit is more difficult because the prices of other goods would increase more often,” he said.

“It is better to increase it once and if prices of other things need to be increased, too, it will also happen once.”

On why the profit made by Petronas was not being used to absorb the price increase, Abdullah said the companys contribution to the country was in other forms, such as tax and royalty.

Asked whether he was aware that the public had voiced their unhappiness over the price increase, Abdullah replied: “Who will be happy when prices of things go up.

“But we did not take away all (the subsidy). If we did that, the price of the fuel would be much higher, maybe in the region of RM2.50 a litre.”

Ewww! Don’t touch that mouse!

Oh sh*t! Thinking that I have to touch computer mice everyday at the office everyday… urgh… need to buy hand disinfectant when I go out this weekend.

Computer mouses found in cyber cafes have been ranked as the second most bacteria-infested items in a list of commonly touched objects.

The survey, carried out by the Korea Consumer Protection Board, found shopping cart handles to be the worst of the worst. Typically, they contain an average of 1100 colony forming units (CFU) of bacteria per 10 sq cm.

The computer mouses, were found to have an average of 690 CFU – more than twice the concentration found on doorknobs and handles in public toilets.

The detected bugs include all kinds of bacteria including pathogenic ones.

The Korea Consumer Protection Board released the report this week after conducting an examination about bacteria contamination on 120 items at public facilities which people commonly touch with their hands in Seoul and nearby cities.

According to the Korea Times newspaper, the board examined 20 hand straps on trains, 20 hand straps on buses, 20 toilet doorknobs at four department stores, 20 lift buttons at four department stores, 20 handles of shopping carts at four discount stores, and 20 mouses at four internet cafes.

A board spokeswoman said that the best way to stop the spread of infectious diseases by hand contact was to wash your hands with soap.

Quoting statistics, the spokeswoman said that while more than 77 per cent of people were aware of the importance of washing hands, only 47.9 per cent actually bothered to wash them.

Original news here: http://www.theage.com.au/news/breaking/ewww-dont-touch-that-mouse/2006/02/15/1139890812017.html