About Me

I’m a web developer from Oxford, UK currently living in San Francisco, where I write code for SlideShare.

Personal Projects

Twitty City
a sentiment analysis website for England.
Woot-Aloot
an automated Woot.com deal-checking service.

Elsewhere Online

Twitter; GitHub; Last.fm; Tumblr

Does WP Super Cache work on PHP Safe Mode?

Update (27 Aug 2011): This post has been updated to reflect my blog’s migration from self-hosted WordPress to a static site generated by Jekyll.


Does WP Super Cache work on PHP Safe Mode? The answer is yes, despite warnings to the contrary. When this blog was running WordPress it ran in safe mode (on NearlyFreeSpeech.NET), and as you’d have seen in the HTML source, you’d have been viewing a cached version of this page.

Proof of WP Super Cache working

(A big shoutout to Donncha O Caoimh and everybody else responsible for the fantastic WP Super Cache plugin)

Dreams of an IE6 Killswitch

Google Chrome is a great browser for many reasons, but I particularly admire its ability to silently, unavoidably upgrade. The wider impact of this feature is made apparent on Clicky Marketshare, which shows how when a new Chrome is released, the previous version completely disappears:

Chrome Stats

In a matter of days, the old version of Chrome has vanished from the web, and all its sins are forgiven. By constrast, Internet Explorer versions 6 and 7 still hold considerable marketshare despite long being deprecated, and we’re all suffering for it:

Internet Explorer Stats

Those browsers are far behind the curve, with many bugs, and their continued existence is responsible for a significant stifling of innovation after all, what’s the point of making better websites with advanced HTML/CSS if most of your users won’t be able to see it? If only Microsoft had incorporated such a dramatically effective auto-upgrade all those years ago, the work of a web developer would be a lot more enjoyable and a lot less frustrating.

Alas, there is no IE6 killswitch, and though its numbers are moving encouragingly lower, it remains an occupational hazard. So, until the last line of IE6-specific code is written, I will dream of a button in Microsoft HQ that with one fell swoop will bring all web users into the new decade.

Froyo A Go Go

100px Android Logo

On Tuesday, nearly two months after the official HTC Desire release date, Orange let me put Android 2.2 aka “Froyo” onto my phone. One 85 meg download and a short install process later, and I was up and running. There are lots of small usability enhancements, of which I’ve listed a few favourites:

  • At last, you can copy from emails using the Gmail app no idea why such a basic feature wasn’t available previously, but it’s good that it’s included now.
  • App management is a lot easier: you can now update all apps at once, set up automatic app upgrades, and share apps with other people.
  • USB/WiFi internet connection sharing, although the one time I tried to use my phone as a WiFi hotspot it didn’t work.
  • The Facebook app is much better than it was, now that you can read your inbox and view photos within the app. File this in “this could have been improved without an OS update, but oh well I’m glad it’s here now” alongside copying from Gmail.
  • The SMS compose pane is bigger and has nicer icons.
  • The haptic feedback from the onscreen keyboard is much gentler (I have no idea what made them decide the previous vibrations were too forceful)
  • Landscape mode works whether the physical buttons are on the left or the right (previously, landscape mode required the buttons to be on the right).

No single improvement has made a huge difference to my enjoyment of the phone, but as a whole the phone is much more user-friendly. My one complaint is that, as far as I can tell, it’s not possible to take screenshots hardly a grievous oversight. On the whole, I’m really happy with Froyo, and I certainly feel that it’s vindicated my decision to go Android.

Uncommon advice for visiting Marrakech

My wife and I went to Marrakech this August, where we spent six nights. Despite not knowing what to expect (neither of us had ever been to a Muslim country, let alone during Ramadan) we had a fantastic time, and would recommend it to anybody looking to holiday somewhere a little different. Most information available online about Marrakech tends to be repeated in several places (“dress modestly”, “don’t get the black henna”, “haggle in the souks” etc) so I thought I’d share some less well-worn insights for the prospective visitor.

A souk in Marrakech

Get your Moroccan money in Morocco

Banknote 20 Moroccan Dirham Obverse 300x150

The bureau de change at London Gatwick sold Dirhams for 11 DH per pound and bought them back for 15 DH per pound. At Marrakech airport’s bureau de change, you got 13 DH per pound whether buying or selling. I wish I’d known about this before I spent £170 on dirhams at Gatwick. Also, there are ATMs all over Marrakech where your UK bankcard will work fine. Just because you can buy Dirhams before you land in Morocco doesn’t mean you should.

44C/110F isn’t as bad as it sounds

Marrakech is extremely hot, but it’s a dry heat, so it’s not as awful as you might think. I much preferred Marrakech’s weather over Erie’s humid summer, even if northwest Pennsylvania is a lot cooler than northwest Africa. My wife completely disagrees though oh well.

Bring a compass

This sounds weird, but it’s extremely easy to get lost on the narrow streets of the Medina, and a compass would be very useful. The souks are particularly bad, as there are very few landmarks, the signs are no help, and no shopkeeper will give you directions unless you buy something. If you have a compass you can at least be assured that you’re going in the general direction of your destination.

Pedestrians beware

Maroc03

In the Medina, there are very few sidewalks - you’ll be sharing the street with bicycles, cars, mopeds, and even the occasional donkey. This would be fine if they were coming past you at a gentle pace, but as it turns out, they’ll be whizzing at breakneck speed (well, maybe not the donkeys) through whatever space they can find. There are barely any traffic lights or pedestrian crossings, so by the usual European standards, just walking around can be somewhat of an ordeal. It’s a little scary, but if you stick to the side of the street, and diligently peer around corners if you think cars might be approaching, you’ll probably be fine.

Don’t be a sucker

We lost track of how many times we were offered completely wrong directions we never asked for - on one occasion, somebody told us the souk was behind us even though it was clearly right in front of us. Such absurd attempts at misdirection are extremely common in Marrakech and the best thing to do is simply to ignore anybody who approaches you uninvited. Likewise, while you should pay for photos with people in the Djemaa El Fna square, be sure to arrange a price beforehand to avoid any misunderstandings later. We got our pictures taken with a snake charmer, who then very aggressively tried to shake us down for 100 DH. Even though we got some cool photos, and even though I only ended up giving him 35 DH, the experience was pretty uncomfortable and I’d rather have avoided it.

Eating and drinking

It turns out Jamie Oliver has been to Marrakech recently, so I thought I’d follow a little of the advice on his website and “start with a lovely orange juice from stall 40” in Djemaa El Fna - this proved to be a terrible idea, they tried to sell me a non-fresh glass of juice for £4! Thanks for nothing, Jamie. The hot meals from Djema El Fna’s food stalls aren’t the most flavourful, but they are very cheap, so don’t be afraid to try them out. Don’t restrict yourself to eating there, though at restaurants the tajines are cooked in the eponymous clay pots and are much tastier than at the stalls, so definitely have at least one real tajine before you go. For me, the highlight of Djemaa El Fna was stall 172, where alongside various sweets they sell a spicy cinnamon/ginger tea concoction called “galanga”. It’s strong, but seriously delicious - I hope the Moroccan deli on my street sells it.

Be careful buying leather goods

Terri bought a leather purse from a shop in the souks, and has had nothing but trouble with it since. The colour rubs off easily, and it smells terrible - like a rotten carcass. Before buying leather goods, make sure it doesn’t smell (this is very difficult to do in the shop) and bring tissues to see if the colour comes off.

Finally, if you only see one thing…

Jardin Majorelle

… go to the Jardin Majorelle - it’s a stunning sanctuary from the mayhem on the streets.

Thanks for reading! Marrakech is a lot of fun - I hope you have a great time.

Problems with my HTC Desire

Htcboot

I like my HTC Desire a lot (see my review), but it’s currently giving me a very hard time. When I turn it on, it stays on the boot screen (shown right) for hours and hours normally it disappears after less than a minute. In other words, the phone’s unusable. This issue’s not addressed on HTC’s support website, and restoring it to the factory settings hasn’t helped at least there were no precious photos on it.

This isn’t the only issue I’ve faced with the Desire. If I tried to use it while charging the battery, it would unexpectedly reboot, followed by an endless cycle of reboots, only stoppable by removing the battery. Apparently this is a fairly common complaint.

Because the phone is still under warranty (I never rooted it, or did anything out of the ordinary) my network (Orange) are sending me a replacement tomorrow. I’m hopeful that the new phone will function trouble-free, but it’s annoying that I’ve had any issues in the first place.

Review: HTC Desire

Update: I’m having some difficulty with my phone - see here for details.

Despite my avowed geekdom, I’ve never owned a smartphone. I’ve admired other peoples’ iPhones for years now, but the combination of high price and the draconian app ecosystem proved major obstacles to me buying one. Android’s developer-friendly reputation and cheaper cost of ownership made it a really appealing option, so three weeks ago I got an HTC Desire.

Htc Desire

The first thing that struck me about Android is how easy it was to set up. I gave it my Google account details, and in seconds I was synced with my Google Calendar and GMail. I’m a big Google fan, so I was very pleased that the apps I rely on were running straight away.

Much like with the iPhone there are thousands of Android apps available, many free. I haven’t downloaded many, but I’d particularly recommend gStrings - I used it to tune my guitar while I was restringing it, and it did as good a job as my Korg GA-30.

The above points are general to the Android software, so what about the Desire’s hardware itself? I’m pleased to say that the phone is an excellent size - neither too big in my pocket nor too small for comfortable on-screen typing (crucial considering the lack of a physical keyboard). The camera is good quality, especially compared to the other (cheaper) phones I’ve owned.

I have a few complaints. It’s impossible to copy text from the included GMail app, which is a big nuisance. The inbuilt Facebook app is not very good compared to the iPhone’s - links from the newsfeed open in the browser rather than the app, and photo albums aren’t as nice to navigate. Copy and pasting, as well as organizing music, are not as easy as on iPhone. Hardware complaints: the optical sensor pad is insensitive to the point of being frustrating, and I have to charge the battery every night, though I hear this is generally the case with smartphones.

All in all, I’m very happy with the HTC Desire, and I’d recommend one without hesitation. Out of the box it’s a very functional phone and does everything I want very well. It’s powerful and will be easily be able to support future Android OSes. The few gripes are with the software, but these ought to improve as development continues. If you’re in the market for an Android, you can’t do much better than the Desire.

The advertisements I saw while watching "Philadelphia" on Crackle.com

Phila

  1. Oscar Mayer “Deli Creations” pre-assembled microwaveable sandwiches
  2. Ritz Crackers (Wyclef Jean performs at a block party, and crackers come out of his guitar)
  3. DiGiorno pizza and breadsticks (as good as delivery, apparently)
  4. ad #1 repeated
  5. Slim Jim meat snacks (after eating some Slim Jims, two kids fight ninjas and become champion wrestlers)
  6. ad #5 repeated
  7. Oreo Cakesters (boy sets up a Facebook group about how great it is to dunk Cakesters into milk, his father tries to set up an opposing group. “do you sign up for this, or are you just on it already?”)
  8. Verizon FIOS internet (you can get the weather on your TV without changing the channel, as long as it’s not the weather on the moon!)
  9. 8 repeated

I’d like to extend my gratitude to the aforementioned companies who not only enabled me to watch the film free of charge, but who also lightened the sombre, emotional mood of the film with their charming and wacky ads for junk food and broadband. Let’s do this again soon!

What Next for BumpTop?

BumpTop Logo

BumpTop is a cool utility that got a lot of attention when it was demoed at TED in 2007. It makes your computer desktop three-dimensional, and lets you organize its files into tidy stacks (“piles” in BumpTop parlance). As I usually leave my desktop very badly organized I’ve found it to be a big help.

On Friday, the company that produces BumpTop was acquired by Google. It won’t be available for download after this week, nor will any updates be released. I’m somewhat disappointed by this - it makes my everyday computer use a little more enjoyable, and I liked the idea that I’d be able to download it for my future computers.

Rumour has it that BumpTop will find its way onto other Google products, like Android or Chrome. It would be awesome to see BumpTop incorporated into some kind of multi-touch tablet device, or somehow used for web browsing. Right now though, I’m surprised that it’ll no longer be available for normal PCs/Macs. I hope that, between finding crazy new innovative applications for 3D interfaces, Google eventually reintroduce a new and improved BumpTop Desktop - otherwise, my next computer’s desktop will be a complete disaster.

Amazon Marketplace: a necessary evil?

My wife and I are moving back to the UK soon, and we’re trying to get rid various things we no longer need. In particular, I’ve resorted to selling some excess books on Amazon Marketplace, a process about which I have mixed feelings.

Amazon Logo

On the one hand, Amazon is a great place for a buyer to find your books. After all, everybody who wants a book goes there. They’re the first website on every book purchaser’s list, and they know it.

Unfortunately, Amazon’s unparalleled popularity gives them leeway to exploit would-be sellers. Although they don’t charge to list an item, the selling fees are frustratingly high: for a $6.49 book, I was charged $3.31; for a $4.99 book, I was charged $3.09. In most cases, Amazon makes more money from the sale of my books than I do.

Amazon’s hefty charges are made all the more annoying by the fixed shipping credits they award you. The book’s size and weight aren’t taken into consideration when calculating the shipping credit, so whether your book weighs five ounces or two pounds, you’ll receive $3.99 towards the cost of mailing it. Most of the books I’ve sold weigh around 13 ounces, and each one has cost around $5.50 to put in an envelope and ship, so a $3.99 credit hardly seems adequate.

The fixed costs associated with selling on Amazon are such that if you want to sell a book for less than $4, you would be better off giving it away. I’ve had to refrain from selling some heavier books as I’d actually lose money from shipping them.

Complaints aside, I’ll continue to sell my unwanted books on Amazon: after all, the books have to go somewhere. Despite being a terrible money-making venture (at least for me), it’s been a great help with clearing the shelves for our move. Next time I need to sell a bunch of books, though, I’ll check my prospects on eBay.