content top

Cool tunnel effect while speeding through a forest in Scotland, April 2009 :

  1. Hi,
    Could you please tell me what software did you use for this picture?

    Thanks in advance!

Leave a Reply...

iPhone 4: What reception problems?

It’s been a few months since the whole ‘Antenna Gate’ outpouring of anger over the iPhone 4′s signal attenuation problems when held in a certain way. I get asked by friends whether it has a problem and I have to answer truthfully that I’ve had only one distinctive occasion on which the signal dropped and caused a noticeable drop in audio quality, and that was at my home in Scotland where the signal is poor on the best days.

But here’s the thing. In normal use this phone definitely has better voice quality and reception than any phone I’ve had before, including my Android running Motorola XT800. This has been confirmed here in the most in depth and objective reviews of the phone.

I can make calls in the garden at home when I never used to be able to, walk around inside our house in Beijing (we are in a null reception zone on the 20th floor of a tower block), and enjoy better audio quality and call quality than ever before. The second thing I say to curious friends is that the antenna issue was mostly a gross marketing error, not a technical one. By drawing attention to external aerials and the join between them, Jobs put his foot in arguably Apple’s most embarrassing PR mishap ever. But as one of the 99.9% of the iPhone 4 owners who has not asked for a refund, I am just happy this phone makes great calls!

Leave a Reply...

More waterfalls, this time probably an all time favourite of mine, Multnomah Falls Oregon, November 2009:

  1. This is so beautiful! We are heading to Oregon in the summer. We are so crazy about waterfalls and would love it see this one. Thanks for sharing.

Leave a Reply...

Before learning a language you must learn to translate.

Before learning a language you must learn to translate.

I’ve spent the best part of this year learning Chinese, which is my first new language after English. Here is a list of a few lessons that I’ve learned along the way as a fresher in language learning.

1. Before learning a language you must learn to translate.

Sound unintuitive? Every time I learnt a new word, or grammer I found myself searching for accurate English to serve as a translation so I could use the word correctly. Actually this is harder than it sounds, especially for languages with no common roots with English such as Chinese. Sometimes no single word or sentence can accurately translate foreign language, so context is very important when learning to translate your second language. I am always quite excited and surprised to discover a word in Chinese that can be accurately and plainly translated into a single English word, particularly verbs and adjectives. It is especially exciting when that word coincidentally sounds similar, for example in the case of 就 (ch: joe – en: Just) and 所以 (soyee – ch: So).

2. Don’t trust single word translations.

This includes translations given by teachers, dictionaries, books, and especially online tools. I find many single word translations misleading or incorrect. This is not surprising as authors and teachers are not so familiar with your language. More importantly, single words are often inadequate to describe the complicated and subtle implications of a foreign word. Translate in your own head and only trust the translations you make.

3. Repeat Repeat Repeat!

It can be frustrating to forget what you learnt yesterday, but such experiences are inevitable when you learn anything new. There is no other way to engrain new words and grammar than repetition. It might take up to 30 uses of a new word to properly embed it in long term memory, so don’t be afraid when you forget language, just pick yourself up and keep repeating!

4. Tell stories.

We remember stories, not words, and in telling them exercise a creative part of the brain which helps engrain new words and their context in our long term memory.

5. Use tools.

We live in an age of mobile apps and Internet, and as such language learning is definitely being transformed. Every learner’s needs and patterns are different, and all was needed in my case was a few suggestions about what is possible now:

  • Mobile dictionary apps
  • Mobile translation apps
  • Google translate (uses mobile internet to get an OK translation for you)
  • Flashcard apps for your computer
  • Mobile flashcard apps
  • Mobile language learning apps, for example lonely planet which gives you common phrases, including audio
  • Language Podcasts
  • Language learning tapes (now CDs or mp3s)

6. Bootstrap as early as you can.

In programming we have a term ‘bootstrapping’ which means software which once started can continue to build itself without relying on other tools and is self sufficient. When you can incorporate this philosophy into your language learning you are doing well. For example, instead of consistently referring back to your first language to learn new words and phrases, use parts of the new language you’ve already learned as a reference point for new material. After all, your second language wasn’t intended to be a translation of yours, but a self contained and complete form of communication in itself.

7. Find teachers who speak your first language badly.

This effectively forces you to bootstrap, and encourages you to practice what you already know in basic conversation with them. It also ensures the translations you learn are the ones you make, and are therefore more accurate.

8. Love it.

This probably goes without saying, but enjoying learning and using a second language really helps improve efficiency. I feel quite lucky to be able to take some time out to do this while my fiance works here in Beijing!

  1. I just read this article on the new Oxford English-Chinese dictionary. Even they agree that translation is never about word-word conversion:

Leave a Reply...

The grey market for iPads and the iPhone 4 in China (where they are not officially available) is enormous.

Leave a Reply...

is part of a TV audience at the CCTV HQ watching a Chinese competition for foreigners:

Leave a Reply...

saw an amazing old Chinese typewriter yesterday in a private collectors museum. Typing Chinese looks challenging:

Leave a Reply...

Increasing max media upload size for WordPress

NOTE: This post covers one particular method of increasing the upload size, and php servers often have other methods of activating a custom php.ini file. This method works on Site 5 shared hosting. We are going to create a custom php.ini file and activate it so your site uses that instead of the defaults. It is important to make sure that the original php.ini settings from your server are also in this file, otherwise php may stop working.

  • Create a file called ‘create_ini.php’ in your web accessible directory (eg: /public_html/).
  • Change xxxx in the following code to the path to your web directory, and the following to the file:

// Put all the php.ini parameters you want to change below. One per line.
// Follow the example format $parm[] = "parameter = value";
$parm[] = "post_max_size = 200M";
$parm[] = "upload_max_filesize = 100M";
// full unix path - location of the default php.ini file at your host
// you can determine the location of the default file using phpinfo()
$defaultPath = "/usr/local/lib/php.ini";
// full unix path - location where you want your custom php.ini file
$customPath = "/xxxx/xxxx/public_html/php.ini";
// nothing should change below this line.
if (file_exists($defaultPath)) {
$contents = file_get_contents($defaultPath);
$contents .= "\n\n; USER MODIFIED PARAMETERS FOLLOW\n\n";
foreach (
$parm as $value) $contents .= $value . " \n";
if (
file_put_contents($customPath,$contents)) {
if (
chmod($customPath,0600)) $message = "The php.ini file has been modified and copied";
$message = "Processing error - php.ini chmod failed";
} else {
$message = "Processing error - php.ini write failed";
} else {
$message = "Processing error - php.ini file not found";

<?php phpinfo() ?>

  • Open
  • You should see ‘The php.ini file has been modified and copied’ then a list of the new php parameters
  • Check that your parameters are now active, in my case they were not, I had to do one final thing:
  • Add the following line to your web directory .htaccess file, again replacing xxxx with the real path to your web directory:

SuPHP_ConfigPath /xxxx/xxxx/public_html/

  • Now run your script again at
  • You should see the new parameters take effect!
  • Whatever is shown in the php info section, will be reflected in wordpress.

Leave a Reply...

is not a wedding photographer but really loves this photo of Graham and Sinead taken a few weeks ago:

More photos of the wedding here.

Leave a Reply...

A Grand wedding at Clifton Hall School plus aerial photos

Here are Charlie and Tamara’s Wedding Pics, including snaps taken from a lucky return helicopter trip to the owner’s house.

Leave a Reply...

content top