iPhone’s battery life important? Avoid Wi-fi Calling

Wi-Fi Calling bad for iPhone's Battery LifeWith smart phones becoming the necessity that they are, battery life has become something crucial to everybody. I know my iPhone’s battery life is very important to me, so much so that I keep a battery juice pack handy for those moments when my iPhone’s battery starts running dangerously low — under 10%.

Few days ago, I received a message from Rogers informing me that they now support wi-fi calling on the iPhone and if I want to call for free to a lot of places I should turn it on. So I thought, what the heck something for free!

To enable wi-fi calling, you need to open the Settings app on the iPhone. Scroll down to the Phone setting, and the option to turn on Wi-fi Calling is the first under ‘Calls’.

Well, two days later, I had to turn it off. Even with very low phone usage, and activating low power mode, my iPhone’s battery didn’t last very long on standby. At 6 in the evening the phone was fully charged. In the morning, with almost no use of the phone, on the night table beside my bed, the battery had reached 31%!

So needless to say that I turned it off. This feature may be useful if your phone is plugged in and you need to make a long phone call or something. Otherwise, kiss your battery life goodby.

One final note: Turning off wi-fi on the iPhone wasn’t enough as for a day after turning it off my phone’s battery life was non-existent. It just took me some time to realize it. I needed to force restart my iPhone, by holding down the home and power buttons until the white apple appeared, to make the effects of this feature completely go away.

So until they figure out how to do this with reasonable power consumption, wi-fi calling is more of a novelty than a useful feature.

phpMyAdmin 3.5.1 Blank Screen

Using Safari and Lion with phpMyAdmin? avoid version 3.5.1

If you updated phpMyAdmin to 3.5.1 and you use Safari on Lion, then you’ll get blank screens. It doesn’t work with it.

Your choices are either a different browser (no issues with Firefox or Chrome) or revert back to version 3.5.0.


Update: This issue has been fixed in version 3.5.2

iTunes installation problem

For the first time ever, since I started using Macs (back in 1985) I face an installation problem with an Apple package.

Last night, iTunes 10.1.1 showed up in Software Update and I told it to install it. When the installation process finished, the installer tried launching iTunes and it failed with a missing dynamic library problem.

I tried launching it manually and it failed again.

The solution was simple, go to Apple’s iTunes page, download the full installer and install it manually.

There is always a first time.

Leopard’s Broken FolderActions facilities

One of the best features of Mac OS X is a feature called ‘Folder Actions’. What this feature allows the power user to do is to watch a folder on the computer and whenever that folder receives a file, folder action kicks in and runs a script of the user’s choosing.

I’ve used this feature for a long, long time. I use it among other things to archive all the files submitted to my main site into a folder tree organized by date. For example a story submitted on April 20th, 2008 will end up in:


I’ve been doing this for years. So long ago that I can’t recall when I started doing it that way; it may have started on Mac OS 9. So needless to say, it’s very useful.

I have few other folder actions set up to do various routine tasks.

But it all came to a halt with my upgrade to Leopard or Mac OS X 10.5.

In Leopard, I couldn’t get folder actions to work with more than one active folder action. If I set up 2 of them, only the second one will work. If I set up three, the third will work and the system will completely ignore the first two. I’ve filed bug reports with Apple, and now at 10.5.2 the problem persists.

This weekend, I’ve had to do something that I rarely do, which is to archive a massive number of files; around 27,000 files at the same time. So what better need for an automated thing other than a massive job?

Well, as it turned out, a massive job is what you don’t want to handle with the current version of Folder Actions.

As soon as I dumped the 27,000 files into the watched folder, my computer (a 2.8 Ghz iMac) slowed down to a crawl. A quick check in the terminal showed that the Folder Actions daemon consuming 100% of one CPU core and the Finder was consuming the remaining 80% of the other core. The funny part is that no files were being moved. After 30 minutes, files started moving at the speed of 1 file every 4 seconds. At that rate, the job would take 30 hours to finish.

But the kicker is that the Finder kept crashing and throwing a dialog about an invalid connection and requiring me to click ‘OK’ in order for it to proceed. So even if I were willing to wait, without constant clicking OK, the job wouldn’t proceed at all.

I worked around the problem by creating a new script that reads the list of files from a flat text file that I created by selecting all the files in the Finder and copying and then pasting into a BBEdit document. So the script reads that text file, line by line and hands the file’s path to the finder and the finder moves it to its destination.

It’s slow, it’s doing about 2 files per second as I write this, so theoretically it should be done in like three hours or so.

I wish I knew more about shell scripting. I’m sure such a job for a good shell scripter would take no time to set up and few minutes at the most to execute. I guess that’s something that I need to add to my arsenal of tools.

And here’s a free tip: In AppleScript’s date function, if you want the number of the month do it like this:

set theMonth to the month of theDate as integer

if you don’t add that ‘as integer’ bit, you always get the name of the month and that bit is not documented anywhere that I could find. I stumbled on it by sheer dumb luck. Page 88 of AppleScript’s language guide gives you this:

Access: read/write
Class: constant (page 86)
Specifies the month of the year of a date object, with one of the constants January, February, March, April, May, June, July, August, September, October, November, or December.

But if you you try this:

set theMonth to July as integer

You get 7 back.

Talk about counterintuitive.

iPod Touch fails to connect to Airport Extreme 802.11n

Over the holidays, I received an iPod Touch as a gift, and let me tell you, that little sucker is extremely useful as an internet device. Keeping tabs on my sites where I could find Wifi is great.

However, a couple of days ago, it stopped being able to access the internet through my home wireless network. My wireless network is created by an Apple Airport Extreme

First I thought that the Touch had a problem. I reset it few times to no avail. And then I discovered that I could connect to an open Wifi point in the neighbourhood; which made things really frustrating. The Airport Extreme had been, up to that point, the best Wifi system I’ve tested.

A couple of days worth of search on Google netted no solution whatsoever.

Out of desperation, I started messing with the Airport’s settings. Lo and behold, changing the Wifi channel from automatic to ‘Channel 9’ fixed the problem.

Update: As it turned out, the airport needed restarting the hard way. After multiple instance of losing contact with the Touch, I unplugged it for 5 minutes and after plugging it back in, I haven’t experienced any problems with the Touch going on the net.