Why does PHP still suck on OSX?


I'm a little puzzled and frustrated with Apple.

With Macs, or more specifically OSX, becoming the platform of choice for web developers world over, why do they still insist in neutering our capabilities by bundling limited versions of the most common web development tools rather than all or nothing? With Leopard they at least improved the Ruby install to the point it was useful (you could actually now run Rails without having to compile from source) but PHP is missing so much functionality through the lack of pear and shared libraries to make it a pain to use.

On Linux it's almost standard practice to compile PHP from source, because so few installations include all of the required libraries (due to varied quantities of "suck"). Amusingly on Windows you can obtain all of the libraries out of the box and just enable the ones needed. Contrast this to OSX, which promotes itself as being so much better than Windows, and you get the worst of both worlds - no source to compile and an incomplete binary install.

Even if they insist in bundling their own customized build with the OS, the least they could do is make all of their customized source builds available through MacForge, which would allow those of us who need more than the basics to at least keep our recompilations matched to Apple's standards.

Come on Apple, do the right thing!

OSX Leopard - highest selling and best Mac OS ever


According to news today, Apple's latest version of OSX, code-named Leopard, is the fastest selling release of OSX they've done to date. This is good news as it brings a wealth of new features that developers have committed to working with, which should bring even better software to the market. Having used it for two days I have to say I'm very impressed - the improved UI is very good, the minor adjustments to the Finder are excellent, Time Machine should save my posterior a few times, and both iCal and Mail became much more useful. Good stuff all round, it's just a shame that so few people will get a chance to use it.

Laptops are complicated wee beasties!


Last night when I went to bed my new (to me anyway) Powerbook G4 was working fine. This morning when I got up it was severely misbehaving - there was 9.5gb of RAM in use and nothing was responding. I started shutting everything down and at one point tried to turn off the local ColdFusion 8 server using sudo, only to have an error that my account wasn't in the sudoers list; given that my account was an administrator, this was not good. I left it to continue rebooting but when I got back, a half hour later, it had pretty much frozen up trying to load a few starter apps. This, along with the noise coming from the drive, told me what I already knew - the drive was dead.

Given that I bought the laptop off a guy on ebay two weeks previously, and that there was no extended warranty on it, I was up the proverbial creek. Given that I had to go meet someone anyway, I jumped in the car and picked up a new drive, along with an external USB chassis for the off-chance I'd be able to access the data one last time.

Well, that was the easy part. The tricky part was opening up the blasted laptop. There is a covered panel on the bottom of the 12" Powerbook G4 (1.33ghz model) that for some reason in my anxiety I mistook to be where the drive went, despite the obvious fact it was too small, and the fact that the nice KLACK!! noise came from elsewhere. The first problem of the repair - I didn't have a screwdriver the correct size. So off I go looking for a repair kit that would have a full set of screwdrivers and other tools; the first store I checked stopped carrying tools because they wanted to sell their services (or simply a new computer), and finally I got the last set of six "precision" screwdrivers at Wallyworld. After opening up said panel I felt like slapping myself as I was presented with: the memory upgrade slot. Yay.

At this point google was my friend and I found a full manual that detailed exactly how to disassemble our Powerbook. Let me tell you, this was a complicated wee beasty - tonnes of screws all over the place, some hidden behind keys on the keyboard. In addition there were two "allen"-type screws that I didn't have a correctly sized key for, so off I go to Lowes. Some of the screws were also very tightly in place, and there were several times I had to awkwardly put pressure on this tiny little screwdriver so that it would break the seal, but not so much pressure that it broke anything else; and did I mention the screwdriver was tiny so it was difficult to twist?

After much frustration I finally got all the way down to the very last screw holding in the dead drive only to realize that a) the screw was really tight, the screwdriver was wearing away and would probably rip the threads off the screw, which would have been bad. So off I go to Lowes again to get another set of screwdrivers, and this time I struck gold - a larger screwdriver with interchangeable tips, which worked wonderfully well, and I wish I'd had it earlier.

So finally I get the new drive installed, close it all back up, boot and... it works! After last week's data loss I'd made a full backup of the now dead HD to an external drive so was able to do a restore off it. Eight hours after discovering that the drive was dead I was finally able to work again. ARGH!!! <sigh>.

On the other hand, I'm looking forward to OSX Leopard's new Time Machine backup system. Since I'd ran the backup I'd copied about 100 pictures off a camera memory card and saved some timesheets - the pictures I'll probably be able to recover off the card, but I'm going to have to retrace my time for the timesheets, and hope I get it right.

Oh, and annoyingly, with the price of the replacement drive and all the hours of work I've lost for the day, I could have bought a refurbished MacBook that had an actual warranty. Argh.

So, did I mention that you should backup often?

Details for iPhone web app development (UPDATED)


Some details have been made available by The University of Washington on how to develop web applications for iPhone - lots of basics in there, like keeping a good separation of HTML and CSS, but also some specifics on e.g. the screen width, some limitations in place, etc. Mandatory reading for anyone doing iPhone apps.

UPDATE: Apparently someone didn't like the info being posted publically, so someone posted a copy of the iPhone details elsewhere.


Subscribe to Apple