NOTE: This is a repost from my old blog posted on Tuesday, October 18, 2005 – its still very valid.

I live in Australia and have just come back from a 4 week trip in Kenya. I have had about 5 different email accounts over many years however I use my http://fastmail.fm and http://www.gmail.com account by far the most. However before I left, I spent a lot of time trying to divert everything to Gmail because I like it so much.

The short of it: Don’t do this if you are going to Kenya. Gmail is plagued by problems when accessing it over a slow link.

Sometimes you get a blank page, sometimes you get the basic interface, sometimes you get “Oops, something bad happened…”. At first I thought it was the browsers at the cybercafe (which surprisingly all have the latest version of Mozilla firefox) – however even using my own laptop from Australia had the same effect. Very confusing and very frustrating.

I don’t think the problem is with Gmail alone though. I have noticed these inconsistent failures across anything that uses AJAX over in Kenya.

To investigate what was happening – I did an experiment redesigning http://www.dudubaya.com – a site I specifically designed for access speeds in Africa that currently performs very well.

The design I came up was smaller in size (http://www.dudubaya.com/test/redesign2/test.html) however to my surprise the load times were more then 4 times the basic page.

I installed livehttpheaders in firefox and did some poking around. It seems the overall size is not good determinant over high latency links, rather the more objects you have in your page and depending on how they are arranged means additional requests and the cost of each additional request is marginally much higher over high latency links (notice that I use latency because I have tried throttling my connection in Australia to slow speeds but I don’t experience the same problems).

Furthermore Firefox tries to pipeline the requests but this also depends on how the elements in your page are arranged. And doing this rearrangement cut down load times in Kenya significantly.

Key Lessons for high latency links (and Kenya in general):

  • Less Objects
  • Arrange your html carefully so the browser optimizes requests
  • No complicated javascript. Most accesses to the internet happen over old computers and rendering time becomes an issue for complicated layouts.

Anyone had experience with this?

Follow

Get every new post delivered to your Inbox.