Brain dump and Consumption and Mobile computing and Unix17 Jun 2009 at 22:23 by Jean-Marc Liotier

I acquired an HTC “G2″ Magic less than two days ago. It runs the Android operating system. The feeling of being confronted with something very alien pushed me to record my first impressions with it to give an account of how a foreigner perceives the Android world with his naïve eyes, in his own words. For other systems where I’m a power user, I find the experience of newcomers interesting when they candidly point out problems we ignore because we have simply grown used to them.

This entry relates my feelings from friday night to sunday night. It may seem ridiculous in the future, but it is an instantaneous snapshot - for what it is worth.

First contact with the Android is a severe case of culture shock. More than ten years of Palm OS have shaped my expectations, and the disappointing past year with S60 on the Nokia E71 has not changed them much. But plunging into Android is unlike anything I have used so far - many of the UI conventions feel utterly strange. The home screen has a familiar status bar - but beyond that, Android is a class of its own. For example, instead of grabbing the scroll bar and sliding it, one has to slide the list itself - not illogical, but the contrary of any familiar widget kit I have come accross anywhere else. And many other things are just as alien.

After poking around a little, my first reaction is disorientation from the lack of keyboard. I could write tolerably fast with Palm’s Graffiti, but I was in love with the Treo-style keyboards - on the the Treos as well as on the E71 they let me write considerable volumes fluidly and without excessive strain. But my first attempts at text entry on the G2 are stumbling hit and miss torture with each word containing at least two typing errors. And why does the automatic correction insist on changing my “jm@liotier.org” address to “kn@liotier.org” every single time I enter it in a web form ? Text entry on the G2 is tedious enough without this sort of annoyance…

To be fair, I knew I had to expect text entry woes - I had anticipated that risk when choosing the G2 over the G1. Learning a new tool takes times, especially when low level reflexes are involved, so I have budgeted a few weeks for climbing up the learning curve. Then I’ll decide if I like onscreen keyboards or not. But whatever the learning, it seems that text entry on a virtual keyboard requires to keep one’s eyes on the keyboard - whereas with a physical keyboard, after a while muscle memory sets in and you can forget the keyboard to concentrate on what you are writing. So I’m not optimistic so far - but I’ll keep my mind open. Meanwhile, tactile feedback screens are on the way - I’ll keep an eye on them.

I miss the four-ways arrows button, but the obscene pointing device works rather well although like the rest it will take time to get used to. A “page down” button would be even better than having to swipe the whole screen every time I want to scroll down one step - one page at the time would be more precise than scrolling a random number of lines according to how much inertia the widget takes from the swipe. Screen swipe and inertia are sexy gimmicks, but I don’t understand how heavy users tolerate them for more than five minutes. I’m the sort of user who disables smooth scrolling and any on-screen animation that introduces the slightest lag in my interaction with the system - and I know I’m not the only one who wants responsiveness above everything else.

A combination of importing in Evolution a CSV file generated with Outlook, synchronization from the Nokia E71 to Google and copying native Evolution contacts to Google did not manage to capture at once all of the information I wanted transferred - so I had to munge some of the data and re-enter quite a few of the notes and adresses manually… Hopefully that is the last time I do that. Those contacts had often been through various synchronizations between Palm OS devices, Outlook and Evolution - but getting them to Google seemed lossier than usual. I have read about many other contorted data migration paths, and this one looked straightforward enough - but if I have to do it again I’ll spend time setting up better automation. I’ll concede that it does not have much to do with Android - anywhere you look the synchronization ecosystem seems quite wet behind the ears.

I won’t complain too much about how tightly tied the system is with Google’s applications - after all that is a major feature of Google’s Android business model. With the defaults applications, Android is a seamless extension of the Google universe. Synchronization of calendar and contacts is excellent - although it only happens eventually and you have no way to know when or to trigger it (this is the first time I ever see this implemented with no control by the user). In addition, I am very uncomfortable with the idea of using a third party as my synchronization hub and I’ll look for another way.

But every functionnality seems available through an API - so with the user in control and free to act there is no reason to complain. I’ll ignore the Gmail and Google Talk clients, and replace them with a decent XMPP client and an IMAP client better than the default one - and maybe I’ll even find a decent contacts manager. Meanwhile the native Google Maps client is such a pleasure to use that I could forget everything else (though I wonder why the relief layer has been omitted - I find it very useful for planning human powered movement).

The scarcity of exposed configuration options, output logs and exposed information in general leaves me wanting. For example the Jabiru Jabber client tells me “connexion error” but won’t explain anything, resulting in frustration. Of course, Jabiru is not part of the basic system, but this rarefied atmosphere seems to be the norm in the Android world. And why is there no option to sort the contacts by “family name, first name” instead of the default “first name, family name” ? Would that clutter the interface too much ? Even the simplicity-worshipping Palm OS gave that choice…

I guess that a compromise has been struck in favor of simplicity by default over configurability, and that developper tools are available to provide advanced access to deeply buried parameters - but for example not being able to set the language to english with the french keyboard upsets me a lot. I’m used the english as a device language, and I’m used to the french “AZERTY” keyboard - reading french or typing on a QWERTY keyboard with no accents feels awkward. On any other system I know, keyboard and language are two separate options - but not on Android. I hope I find an application that provides finer grained options. I was also frutrated not to find any configuration option that would solve my above-mentioned problem with the scrolling style.

The Android Market feels sluggish. I have been spoilt by APT caching all packages descriptions locally - and now I have to suffer Android Market loading package descriptions and icons slower than I scroll accross the list that only shows six items per page with no way of getting the device to display smaller characters in order to cram more lines per page. I can understand that the icons must be stored online for storage space’s sake, and maybe the user comments in order to keep them current - but why not load the whole package list at once ? And why does every list on this device use a standard widget that seems sized large enough for legibility by half blind users ? Where is the configuration option ?

Many of my gripes are probably related with the default applications, and after exploring the Android Market for a while I’m sure I’ll feel better. I’m commenting an operating system in its default form, and this is obviously not how I’m going to use it - In a few weeks, after the normal process of appropriation, my Android will hopefully not look and feel like its current state at all.

So see you in a couple of months for a look back at these first impressions - we’ll see which were real problems and which were merely artefacts of the clash of cultures ! For now I have the eery feeling of having stumbled in a sort of Apple-esque Disneyland with my hands tied…

Africa and Cycling and Ghana and Travels17 Jun 2009 at 21:01 by Jean-Marc Liotier

Busua, Dixcove… Axim, 26 February 2009.

Roosters calling from three in the morning onwards are not something I’m used to. But who does not enjoy some background music when nature calls repeatedly ? Nana’s food was obviously not the freshest thing and my lower digestive tract is paying the price - for the immense benefit of the local flora !

Nana had a rough night too, but not for the same reasons. He comes to confide in me about his problems with his wife : he is investing whatever he can into adding a couple of rooms and toilets next to his house for his tourism business, but she wants the money right now. In the morning I notice him on the doorstep pouring a libation of schnapps and murmuring prayers - looks like the spectrum of religions in Ghana is even wider than what I saw so far. Let’s hope that the spirit will do something about his wife - if they do I might buy some schnapps too !

Pauline adapts well to the lack of amenities - the presence of kittens soon makes her forget those logistical matters completely. We share our breakfast biscuits with Nana’s children. My packs are made, I put the bike outside, it is quarter past seven and we are ready to roll. I think I am, going to try to make it to Prince’s Town today in spite of the warnings about the road. But I’ll try to gather more intelligence on the way out of Busua before I take any decision.

Many locals do not know of any direct road to Prince’s Town : their mental map is the tro-tro line all the way to the main road. But we are in luck : Nana says he once rode the stretch with a couple of Germans. He says it is a bad earthen road, but with none of the sand or corrugations that I have learnt to loathe. So I’m going for it.

At small shop at the entrance of Busua, we load six litres of water : enough for the day with a security margin. Nana guides us to the west end of the village, where a metal bridge marks the beginning of our track. With encouragements from the ubiquitous pack of kids, we set out on our way. The track is packed lateritic earth, and it rolls reasonably well. The sun is fast dissipating the morning mist and we are heating up.

We pass Dixcove, a big fishing village with a cute white fort. It is less touristy than Busua so the people are nicer and we salute everyone in sight. The whole place is very colourful - with the yellow clad schoolchildren adding to the decorated boats moored in the harbour. The small fort, the excellent natural harbour and the buildings suggest a colonial past, but any hint of historical turmoil has long since yielded to the quiet life of rural Ghana.

The climbs on the piste are taking me to the limit - the weight of the extra water is clearly felt. The lack of speed robs me of the advantage of relative wind for cooling by evaporation. And to top it all, yesterday’s beers, pepper and the food whose hygiene I did not trust are combining to produce effects that surpass what I experienced during the night. I could feel better…

20090219_091915_8148_Ghana_western_coast_tandem.jpg

The track is very quiet - two taxis passed in the first couple of hours. There is the odd peasant and a few tiny villages. But we don’t get the full story : the track is a corridor in the bush and our view is bounded by the roadsides. Among all the bird cries, we sometimes hear faint voices or hacking sounds : we are not really alone. Flight of hornbills pass us - hornbills are among my favorite birds. We see plenty of other tiny birds I can’t identify, butterflies and colorful insects.

Some peasants are slashing and burning fields for planting cassava - primitive agriculture at it finest whose result can be seen on a few hills where the soil is gone entirely. Primitive as an agricultural practice it may be, but as a full-body workout it is a different matter entirely : tight sculptured muscles to make any body builder jealous - maybe there is a nascent fitness fad being born there… But don’t be too jealous : their working conditions in the sun are probably not worth the ribbed abs.

After the hills the track plunges down to the sea and runs along the magnificent beach. After one hour and a half and 13 kilometres, I am beginning to feel slightly exhausted and decide to stop more often.

At 15 kilometres the road ends in a small fishing village on the mouth of a mangrove estuary.

That village is near Achenim. Villagers tell us about a foot bridge on the other side of the village, so we cross it through a maze of tiny alleys among pisé houses, surprising the villagers who mill about to their daily occupations. After the foot bridge we follow the river upstream for a couple hundred meter and push the bike up the very steep path up the other side. Out of breath we finished the mercifully short climb in the middle of a school yard with a hundred kids swarming us instantly - yeah, we are minor celebrities !

On the road out of the village, I finally understand the purpose of all the torii on the side of the road, under which bunches of palm nuts are laid. They are support for the scales used for weighting the fruits before loading them. One more mystery solved !

We don’t see the ocean anymore, but I will never notice that seemingly obvious problem. The damn Selle Italia seat is savaging my ass and Nana’s food is not helping either - the two combine to compound the fatigue of the ride. At that point of the journey, my judgement was probably already seriously affected.

We cross the huge hevea plantation of Ghana Rubber. Is seems that some of the plots are rotated with leguminous plants. In that area, we gain the company of Gillian, a 14 years old boy on a BMX. He keeps up with us, but that is not saying much considering our sorry physical state. As you may notice, there are no photo of this part of the journey - a clue that we are not quite comfortable with our going.

Gillian lost both his parents and works for food at the plantation. Gillian and passing villagers insist that we passed Cape Three Points long ago. I’m amazed that we saw nothing - having passed Cape Three Point would mean that it lies between the, 20th and the 25th kilometre of the ride - which makes no sense on the map. The explanations are confused, but the only thing I understand plainly is that we are on the road to Axim. This sounds crazy and makes the map look grossly out of scale, but I decide to take the local’s opinion for granted. So I begin to believe I may even end up in Axim at the end of a very long day.

Clouds gather increasingly thick, shielding us from the sun and promising a nice shower before the evening. On top of that the road improves progressively, sand has long disappeared and corrugations are less frequent. Morale improves accordingly. And then reality strikes, in the form of a tarred road - there is not supposed to be any tarred road anywhere between Dixcove and Axim. Worse, there is a partially legible road sign indicating Dixcove. A couple of people waiting for a tro-tro explain to us that this is the road between Dixcove and Agona Junction. I’m dumbstruck. I flip open my compass and immediately realize that we have been going east for at least fifteen kilometres out of thirty two. How can I have been so daft ?

Listen to the locals, but then trust your compass. From what I understood from our conversations, I was somewhere between Cape Three Points and Axim. But that was not the case. We came back straight where we came from, finishing a nice 32 kilometers loop. I had been driving back east for a while - the peasants telling me I passed Cape Three Point which I did not see should have been a hint. But meanwhile, the clouds had blocked the sun, robbing me of that obvious reference. I had the compass in the handlebar pouch, but the pains broke my concentration and I stupidly went with the flow. The direct consequence of that story is that I’ll soon mount a handlebar compass so that it is always under my eyes to keep me from doing such gross mistakes. For now you can see our GPS track log graphically depicting my mistake - see how I headed north from Achenim instead of following along the coast.

With morale low, fatigue and more digestive problems forcing me to contribute generously to more roadside fertility improvement projects, the road to Agona was not particularly enjoyable. I was especially disappointed as I realized that I had already visited that place the day before - which explains the twenty kilometres difference between my actual distance and the Lonely Planet’s estimate. So that is two grievous navigation errors in two days - I have room for improvement.

Pauline had enough, and going anywhere would have meant at least 35 extra km, which would be extreme for both of us. So we negociated the transportation of our tandem, disassembled the trailer and the luggage, and jumped in the waiting bus to Axim, just in time while the big thunderstorm to broke out - perfect timing !

The bus dropped us in Axim. As I was rigging the panniers on the debused bike, I realized that to reach my chosen dwelling for the night I still had a sizeable ride ahead of me. Five kilometres back to the fork between the Axim and the Elubo road, and then five more on the Elubo road. Five kilometres before arriving, a new thunderstorm broke out, drenching us in a shower so intense that I had to switch on my lights in fear of not being visible to the cars. I was not sure if I was on the right track, but at that stage I was on so sick and tired that I was not going to stop for anything. I was relieved to spot a big signpost marking the entrance of the dirt road to Ankrobra Beach and I found the entrance checkpoint is a few hundred meters down. That is the end of a day of only 53 kilometres - but the number does not tell the whole story…

After checking in quickly, I started by having the shower I had dreamt about since yesterday morning. We then went playing in the waves, but salt on my private parts irritated by the bad saddle spoiled my fun.

At the hotel as in any self respecting African restaurant, there is what is written on the menu, and then there is what is actually available - the best method is to forget that the menu ever existed and start directly by asking what is available. I discovered red-red, a dish of fried plantain served with a tomatoes, beans and chicken sauce. Everything about it was perfect. I’ll make some in Paris !

We met the German lady who recently took over the management of the Ankrobra. She seems to have things firmly in hand, and this marvellous place will probably get even better.

On the way to our room we meet the camp’s security guard, a cheerfully middle-aged chap in khakis who sneaked up on us among the palm trees to have a chat, claiming to be a former Ghanaian UN peacekeeper with experience in Liberia, Cambodia, and the DRC. It is good to see a motivated guy like him patrolling the area - but to be frank I’m so tired that I would sleep with or without it !

Code and Mobile computing and Social networking and The Web17 Jun 2009 at 11:11 by Jean-Marc Liotier

I just released a new update of latitude2brightkite.sh - a script that checks-in your Google Latitude position to Brightkite using the Brightkite REST API and the Google Public Location Badge.

The changes are :

20090607 - 0.3 - The working directory is now a parameter
20090612 - 0.4 - Only post updates if the _name_ of the location changes, not if only the _internal BK id_ of the place does (contribution by Yves Le Jan <inliner@grabeuh.com>).
20090615 - 0.5 - Perl 5.8.8 compatibility of the JSON coordinate parsing (contribution by Jay Rishel <jay@rishel.org>).

Yves’ idea smooths location sampling noise and makes check-ins much more meaningful.

Thanks to Yves and Jay for their contributions ! Maybe it is time for revision control…

Africa and Cycling and Ghana and Travels17 Jun 2009 at 2:47 by Jean-Marc Liotier

Takoradi and Busua, 25 February 2009.

First mission of the day is to ride downtown to replenish my provisions of cash. The withdrawal limits displayed on the screen are grossly inferior to what I can actually withdraw - 200 GHC seems to be the limit. While taking back my card from the ATM, I fumbled with two thick 200 Cedis worth wad of notes freshly spat out and I broke the card in two pieces. Ooops - not good. Mission creep hits us - we have barely started our day, and now on top of our program we have to find a way to withdraw cash for the rest of the trip. I already have enough for a week so I’m not overly stressed, and in an emergency you can always count on the expensive money transfer operators.

My first thought is to get in touch with my credit card company through a local bank. Staff at various banks bounce us from branch to branch and it increasingly looks like this is not the way to get in touch with my credit card company - the normal way seems to be to call them directly or go though the issuer bank. We ride eight kilometres around Takoradi and through the harbour until I find the main Barclays branch there. Barclays employees reassure me that cash can be issued given just my credit card number and my personal identification. That informative and efficient branch was just one kilometre away from the hotel, but of course it was probably the very last one in the whole town that we visited. At least I had a nice tour of Takoradi and its harbour, with highly exotic moments of being stuck in the trading chaos of Market Circle. We also caught a glimpse of a school marching band with a couple hundred pupils in uniform following suit - but I was too focused on my cash problem to take a picture. Next time I’ll redund my credit card - extra cash would be nice too, but I don’t want to risk carrying too much.

I was planning to start at seven thirty, but with the slight logistical complications it is ten thirty when we actually head out of town. Telling the story of such boring matters may appear mundane, but this sort of situation is what travelling is mostly made of, especially outside of the most developped countries. After paying the hotel bill and loading the pedal mule, we head due east to Busua and Dixcove. I miss my Takoradi friends already, but travelling is always like that too : meeting wonderful people in wonderful places, and then having to move on to discover the rest of the world. This is a story that I keep repeating, and the urge to move on always win over enjoying where I am. Anyway, the smiles and compliments of Lauricia at the Standard hotel nicely helped us get underway.

20090225_085107_8842_Ghana_western_coast_tandem.jpg

It is getting hot and a succession of small hills is sapping my energy. I can pedal fast forever on level ground, but the hills are considerably more tiring, especially with the sort of load I’m pulling. I have to make a good figure though because some people along the road have an even harder job : they are sitting in the sun next to heaps of rocks, using rudimentary hammers to break the rocks into coarse gravel. Is a rock breaking machine that expensive or are these people that cheap ? This is the sort of occasion when I want to take a picture, but then decide to leave the camera idle in the handlebard bag : I am not (yet ?) shameless enough to photograph distressed people so easily.

With the sun hitting us hard, I have to constantly remind Pauline to drink - she does no yet have the drinking reflex. Ten kilometres out, on top of Dixcove hill road we stop to pick drinks and biscuits. Because it is on a main road, the petrol station has a nice assortment of quality products. What passes for an orange juice in the dinky village shops would make the lyophilized drink in mountain rations taste like luxurious fresh nectar, and the nutritional value of the biscuits is usually close to zero, except as a source of glucose. At the petrol station, we turn left to take the road to Dixcove.

Along with stone breakers, the roadside has its usual assortment of biscuit and drinks micro shops, mechanical workshops, schools, brick makers and and incredible number of churches of all denominations : it seems that 20% of the GNP of Ghana is generated by religious activities. We also spot a yard with a line of large pots full of roasting unidentified beans with mounds of those beans all around the yard. I’ll later understand that these are palm nuts.

At a large crossroads with lights, we ask locals for directions and then turn right past the barracks of the 2nd infantry bataillon - we had inadvertantly taken quite a detour out of town. The road runs straight on undulating terrain for at least ten kilometres. What we did not know at the time is that it led us to Agona Junction - which is probably not the shortest way. Another road seems to exist, but Agona Junction is the tro-tro hub of the region, so as we’ll learn later, all roads lead there - or at least all driving directions ! Asking the locals for directions may sometimes help, but checking the compass is always necessary as a reality check. Sadly, it is only after forgetting that a second time the following day and suffering worse consequences that we understood the wisdom of that reflex.

I’m drinking like a crazed camel and I’m still pissing yellow and not often… Need I mention that it is hot and that I’m drenched in sweat ? Luckily, a rainstorm soon provides us with welcome refreshment - a mild one tough because the water is lukewarm.

20090218_131038_7990_Ghana_western_coast_tandem.jpg

On the way down to Busua, we ride along big lush palm plantations. But ever since we started, roadside plastic littering is just as prosperous as the vegetation. We keep gathering our own trash for disposal in trashcans. But from what I see, the collected trash is at best burned, and most of the time dumped in an apparently quite unregulated way.

The lush vegetation is everything but wild. There are plantations for bananas, plantain, cassava, palm, bamboo - the whole leafy landscape is in fact cultivated, leaving very few wild areas. But all these agricultural riches do not seem to lift the area economically - the high proportion of pisé mud houses does not indicate well distributed wealth. But whatever the economic success of the villages we cross, our minor celebrity status is intact - the superstar is Pauline on her trailer and I’m in a mere supportive role as Pauline’s father.

20090218_161614_8016_Ghana_western_coast_tandem.jpg

A fork in the road gives us a choice between Busua and Dixcove - we choose Busua based on the opinion of our friends in Takoradi. By the time we reach Busia, all semblance of humidity is a long forgotten memory and we are getting parched again, but the day’s pedalling comes to an end. The Lonely Planet gave Busua at 30 kilometers from Takoradi, but the distance measured by my bike’s computer today is 50 kilometers. That is more than a slight difference - I wonder which turn I missed. We rode the distance in 2H45 thanks to the excellent (if hilly) roads.

20090218_171146_8050_Ghana_western_coast_tandem.jpg

Busua is a small fishing village backed by a long beach. The touts that immediately chase us are proof that Busua is a tourist destination. We meet Nana, the manager of Zweite Heimat and drink fresh smoothies in front of the restaurant. The fruits are fresh pineapple and banana, but as usual in Ghana, the milk is the canned concentrated stuff which I’m not yet used to. But after such a ride I can swallow anything liquid that contains a source of glucose.

20090218_162048_8019_Ghana_western_coast_tandem.jpg

Nana offers us a room for six GHC. That sounds more like my prices. It is a bare room with a mattress, in his own two rooms house. Squat toilets are outside and there is no water nor electricity. But after days of splurging, this is a welcome change. We spent the evening and night for twenty GHC, food included ! The house lies on the flank of the small hill behind Busua. Pushing the loaded tandem uphill across the steep tilled fields was mercifully not too long, but the view from the top is worth it.

20090218_163141_8042_Ghana_western_coast_tandem.jpg

We then head towards the beach for a dip in the ocean. Pauline attempts to get local boys to play in the waves with her, not understanding that being unable to swim they won’t get far from the shore. She gets her sinuses whashed clean while being tossed about by the rip curls. Meanwhile I catch the big waves for body surfing runs. The beach is huge and very sparsely populated, sand and water are clean (not a given in Africa near a village), temperature is ideal, and the surrounding vegetation completes the picture. After the effort of the day, fun and refreshment in the waves feel great.

20090218_183610_8054_Ghana_western_coast_tandem.jpg

I walk around with the camera, but fishermen loudly refuse to be photographed unless money is paid - I pass. Later I manage to sneakily take a couple pictures - bad quality, but I enjoyed the transgression !

20090218_183529_8053_Ghana_western_coast_tandem.jpg

Nana’s restaurant is covered in graffiti from satisfied travellers - in several languages so it is difficult to fake and that is what finally convinced me of using his services. Nana cooked fufu and groudnut soup for us - not bad. While we eat, a guy walks by with a loudspeaker, broadcasting political propaganda in the streets. We meet Anne, a French woman quite experienced with Africa. We chat away the evening while downing beers, the way it ought to be in a real maquis. By the way, the local name for a maquis is a “spot”.

20090218_185404_8130_Ghana_western_coast_tandem.jpg

As in many small villages, toilets are a series of closets laid over a large septic tank were the users relieve themselves through a hole in the ground - with no lighting at night and paper only available if you bring your own. Pauline has a slight case of culture shock, but a few laughs with the local children makes help her see the place in a better light.

20090218_190335_8132_Ghana_western_coast_tandem.jpg

A few street lamps light some corners, but the village is mostly unlit. While we walk away from the village to Nana’s home, Nana hears one guy saying “this is the one who came with a bike” - and this somehow worries Nana who wont let us be alone at his home. I get the capsaïcine can out of the backpack I carry - if only to reassure Nana. Locked inside his house we should do fine come what may. Against an ambush or a sudden attack, reaction time make the spray wholly useless especially if the spray is in the bag - but out of the bag, with the edge of readiness, and in a locked house we have a credible defence against the most willy opportunistic thieve.

We climb back on the hill under the stars with my headlamp. The insects and frogs sing all around us. This sort of environment is a first for Pauline. The bed is unequivocally dirty - the only unknown is the number of generations who have slept on it with no washing; so we use the linen sacks we brought along for such gruby occasions. We still have salt and sand on our bodies, the room is stuffy, the linen sack is too short for me… I’ve slept in more comfortable places. I’ll put that on account of the cultural experience !

Africa10 Jun 2009 at 18:47 by Jean-Marc Liotier

For quite a few years, Lagos has intrigued me even though I have not set foot there yet. I probably share some of Rem Koolhaas‘ fascination with the apparently unplanned nature of this growth, and the ability of the city to cope with the influx of people without visible mechanisms to deal with the outcomes of growth.

Matthew Gandy’s paper says it all in its title : “Planning, Anti-planning and the Infrastructure Crisis Facing Metropolitan Lagos“. This paper is especially interesting in the way it provides a counterpoint to Rem Koolhaas’ somewhat condescending views by linking the challenges in urbanism with the city’s political, economical and social dimensions, thereby disproving an African exceptionalist perspective.

For a traveler’s first impression of the city, you can begin with “Lagos: city of more” - a correspondent diary by The Economist. Then you can take a step back and read James Meek’s “Everyone’s sleeping with one eye open, an article that try to understand what it is like to live in the middle of a population explosion, in a megalopolis bursting at the seams that will soon overtake Cairo as Africa’s biggest. The Wikipedia article about Lagos provides some background too.

But the complacent clichés and the epic challenges do not seem to deter some people from thinking big. I stumbled upon West Africa’s biggest development project, named Eko Atlantic :

The project is located in Lagos, Nigeria and will be built on land currently being reclaimed from the sea. [..] The development area will cover over nine million square metres and will be sectioned into seven districts which will be home to over 3000 buildings many of which particularly in the financial district will be skyscrapers. [..]

The development is planned to have a population of 400,000 upon completion with a further 250,000 commuters. To help them get about there will be an eight-lane coastal highway running along the northern boundary of the project while an internal network of roads will connect all districts, along with a tramway system which will also circulate through the city allowing access to all areas including public transport on Victoria Island. [..]

The artist’s views of the Eko Atlantic suggest something almost Singaporean and the sheer scale of the project will give anyone pause. I wonder how this new quasi-autonomous district will integrate with the rest of the city without widening the socio-economic fault lines - but even given this risk, you have to give credit to ambition on such a scale in such an environment.

If you have any experience of the developing world’s politicians, you will be quick to dismiss this sort of bombast as utter vaporware. But think again : this CNN about the vision of Governor Fashola for Lagos hints that this is a serious project of its way to implementation - and the videos show that some dredging and backfill works have already begun.

The project may be late, or even fall victim to the chaos altogether. But then again it may become a symbol of the return of planning and ambition in urban development in Lagos. Such feat would have significance far beyond Edo State, for all the sprawling megalopolis of the developing world.

Code and Mobile computing and Social networking and The Web05 Jun 2009 at 21:43 by Jean-Marc Liotier

Tired of waiting for Google to release a proper Latitude API, I went ahead and scribbled latitude2brightkite.sh - a script that checks-in your Google Latitude position to Brightkite using the Brightkite REST API and the Google Public Location Badge. See my seminal post from yesterday for more information about how I cobbled it together.

Since yesterday I cleaned it up a little, but most of all, as promised, I made it more intelligent by having it compare the current position with the last one, in order to check-in with Brightkite only if the Google Latitude position has changed. Not checking-in at each invocation will certainly reduce the number of check-ins by 99% - and I’m sure that Brightkite will be thankful for the lesser load on their HTTP servers…

So grab the code for latitude2brightkite.sh, put it in your crontab and have more fun with Brightkite and Google Latitude !

There is quite a bit of interest for this script - it seems that I have filled a widely felt need.

Africa and Ghana and Travels05 Jun 2009 at 21:25 by Jean-Marc Liotier

Takoradi, 24 February 2009.

While we wait for Arama who is one hour late to our meeting, I set our plans for the rest of the trip : considering the large distances involved and the constraints of human powered mobility, we’ll give the national parks a miss after all and focus on the coastal region between Takoradi and Axim. Back in Takoradi, we’ll then ride to Elmina and Cape Coast, before taking a bus back to Accra. I’ll definitely have to come back to Ghana !

20090217_185316_7971_Ghana_western_coast_tandem.jpg

In the morning from the hotel room’s windows I see hordes of school children in uniform walk up the street while packs of military-looking men run by, chanting and stepping at the exact same cadence. About a thousand children gather around a soccer field nearby, cheering their comrades on the field. So far, soccer seems to be the undisputedly dominant sport in Ghana - wherever you go there is always a game going on somewhere, either kids on the streets, adults in a courtyard, a big team in the stadium or Manchester United on TV. It is school holidays in Ghana, and Arama tells me that the kids on the soccer field are part of a week-long sporting event. All the little girls have their hair cut short - if a girl has her hair cut very short, it most likely is because she is still attending school.

As usual in Ghana, it never takes long before religion emerges in the conversation. Arama and her family are Mormon, a minority religion in Ghana - but with a power quite beyond its size. I ask Arama if she has completed her mission, but she says that it will have to wait until she has completed her studies and civil service in Ghana. By the way, Ghanean missionaries only travel to Africa as too many of them have taken advantage of missions in Europe and North America to never return - and some even joined the church for precisely that purpose.

20090217_150631_7682_Ghana_western_coast_tandem.jpg

We walk to Arama’s home in central Accra - her family owns a four level building and occupies one of the apartments on the lower level, on a little courtyard away from the street. Doors are open during the day and there is a Mediterranean feel about that quiet place. Arama comments her family pictures, and we soon meet her father - a former banker who has also been the voluntary manager of the Mormon employment resources centre in Takoradi for three years.

I chat about the local economy with Arama’s father. Takoradi used to be a major timber export harbour, but there are no trees left outside of the national parks - so the timber exportation infrastructure has long been idle. Nowadays the local resources are essentially manganese and bauxite, with a few factories for the transformation of agricultural products such as cocoa. Manufactured goods are mostly imported from Dubai and China - that explain the Chinese furniture and bathroom equipment at the Akroma Plaza hotel. Takoradi is about as close to Abidjan as it is to Accra. According to Arama, people go to Accra for foodstuffs, but Abidjan is a popular destination for consumer goods.

The major change in Takoradi for the coming years is the discovery of oil near Axim and Cape Three Points. Takoradi’s harbour is going to be the logistical base for the offshore operations. Extraction has not yet begun, but significant reserves have been confirmed. The locals expect a small oil boom and everybody wonders if the Government will ensure equitable allocation of the new resources.

Tithes are still a practical reality of the Mormon church. Funds are sent back to Salt Lake City where they are centrally managed and allocated to local churches who make their demands at the beginning of every year for specific projects and operating expenses. This concentration of financial resources under central command makes the church quite powerful.

While I was chatting with her father, Arama disappeared with Pauline, and later came back with a takeaway dish of chicken and rice. But as everyday in Ghana, spices are a problem for Pauline who is not yet pepper hardened. It seems that every sauce here contains some… I really like this place !

20090217_151855_7693_Ghana_western_coast_tandem.jpg

We head down to the beach with Arama. She warns me not to go swimming. Because of the waves and strong currents ? No, because it is Tuesday, and swimming on Tuesday is bad luck. Even the fishermen don’t go out to sea on Tuesday.

While Arama goes in town for an errand, I walk with Pauline along the beaches and observe marine life. Among the small animals in the tidal ponds we even find coral. The wind is no match for the scorching sun and we are close to overheating. Tomorrow we’ll start at dawn to avoid that heat.

20090217_154334_7745_Ghana_western_coast_tandem.jpg

Arama rejoined us, and on the way back we enjoyed a stroll among the quiet and leafy villas in the most expensive parts of Takoradi - mostly inhabited by foreigners. Ghanaians who build nice villas seldom live in them : they prefer to rent them and stay in a more modest dwelling.

We switched hotels and found the Standard hotel, an almost as nice and secure hotel as the Akroma for 50 GHC instead of 70 GHC. While Arama goes in town with Pauline, I displace the bikes and bags from one hotel to the other and the join them at Arama’s family home. I come across Arama’s father on the way, instantly recognizable in his Mormon attire. At my destination I am introduced to Arama’s mother, her elder sisters Akua and Yaa Serwaah, and their young brother. Like innumerable Ghanaians, Akua spent a few years in London - but she is tired of it and says she is back home for good and hopeful of landing a decent education job in Takoradi to avoid busy Accra.

20090217_160603_7812_Ghana_western_coast_tandem.jpg

On top of english, the girls speak both fanti and twi. Twi is their mother’s language, and fanti is the regional language. And they can utter a few words in French. As often in Africa, impressive multilingualism is considered normal.

A South African channel is playing on TV and we chat cheerfully while their one and a hald years old nephew violently defends his territory against the nonplussed five years old Pauline. While Pauline has a plate of fried plantains just for her, I am served boiled yam with palava sauce. Palava is a leave sauce with white beans taking the place of the ndolé’s fresh groundnut. I am very fond of leave sauces and I feel in heaven while I enjoy such great cooking with such a great family around. To top it we then have pineapple - picked ripe, not artificially matured like what passes for fresh fruit in Europe.

20090217_172500_7926_Ghana_western_coast_tandem.jpg

I have confirmation from the girls that the Ghanaian chocolate sold on the streets does not melt, even under the Ghanaian sun. Looking at the package it contains milk, sugar, cocoa butter, cocoa butter, lecithin, vanilin - with 35% cocoa minimum and 15% milk minimum. Does that leave almost 50% sugar ? Anyway it tastes better than many industrial chocolate I know, and the texture is very nice compared to anything other chocolate-like material in the African heat.

After we salute everyone and leave the poor nephew crying for Pauline who is now his best friend, Arama and Yaa Serwaah walk us back to our hotel under a canopy of stars to the beat of birds and insects in the ideal temperature of a slightly breezy African night. I am really really going to miss Takoradi.

Code and Mobile computing and Social networking and The Web05 Jun 2009 at 0:51 by Jean-Marc Liotier

Tired of waiting for Google to release a proper Latitude API, I went ahead and scribbled latitude2brightkite.sh - a script that checks-in your Google Latitude position to Brightkite using the Brightkite REST API and the Google Public Location Badge.

This script is an ugly mongrel hack, but that is what you get when an aged script kiddie writes something in a hurry. The right way to do it would be to parse Latitude’s JSON output cleanly using the Perl library. But that dirty prototype took me all of ten minutes to set up while unwinding between meetings, and it now works fine in my crontab.

Apart from Bash, the requirements to run this script are the Perl JSON library (available in Debian as libjson-perl) and Curl.

The main limitation of this script is that your Google Public Location Badge has to be enabled and it has to show the best available location. This means that for this script to work, your location has to be public. The privacy conscious among my readers will surely love it !

This script proves that automatic Google Latitude position check-in in Brightkite can be done, it works for me, and the official Google Latitude API will hopefully soon make it obsolete !

Meanwhile, grab the code for latitude2brightkite.sh, put it in your crontab and have more fun with Brightkite and Google Latitude… To me, this is what both services were missing to become truly usable.

Of course, doing it with “XEP-0080 - User Location” via publish-subscribe (”XEP-0080 - PubSub” would make much more sense than polling an HTTP server all the time, but we are not there yet. Meanwhile this script could be made more intelligent by only checking in with Brightkite if the Google Latitude position has changed. I’ll think about it for the next version…

Africa and Telecommunications04 Jun 2009 at 23:44 by Jean-Marc Liotier

Accra, 23 February 2009.

Mobile telephony prices varying with network load - yield management made transparent

The mobile telephony marketing idea of the day is the MTN price zoning concept I witnessed in Ghana. According to which cell you are attached to, a message on the handset displays a discount rate. On lightly loaded cells the discount can go up to 100% (although I never saw it at more than 50%) and on the heavily loaded ones there is none. Making network loads transparent to the users through a price signal a great way to both shape traffic, take advantage of available infrastructure to provide cheap traffic and charge premium prices to the most demanding users. I have never before seen yield management made so transparent - so refreshing compared to the elaborate pricing schemes designed to play that role in more subtle and more annoying ways.

Here is an extract of the press release from MTN Ghana on MTN Zone service launch in June 2008 :

MTN Ghana has announced the launch of a new Innovative service named MTN Zone. The service gives its Pay As You Go subscribers the opportunity to enjoy up to 100% discount day and night on calls they make to other MTN Ghana subscribers and runs on the per second billing plan. MTN Zone subscribers have a flat tariff on all MTN to MTN calls when they register and subsequently receive messages that display dynamic discounts they will enjoy at any point in time.

In order to enjoy the benefits of MTN Zone, existing and new MTN prepaid customers simply need to register for the service by entering *135*1# and pressing the send or ok button on their handset. Alternatively, they could send 1 to SMS short code 135. Registration onto MTN Zone service is currently free of charge. To activate the cell broadcast functionality on their handsets, customers must enter enter * 135*4# and follow the instructions, this process is unique for each handset module. The cell broadcast feature when enabled, gives MTN customers the opportunity to see the dynamic percentage discount they will enjoy when they initiate a call at that time and the discount will be applicable throughout the duration of the call.

“We are excited at what the team here at MTN Ghana has been able to provide after thorough research and development. Discerning Ghanaians want the most cost effective and exciting means of communicating with their family and friends and we are proud that as a team we have been able to crack this motivation and demonstrate our leadership in innovation and superior customer understanding. This new service empowers our customers with more, choice and control over their cost of making calls. The excitement this service has generated within one week is unparalleled in the industry in Ghana. As usual we will lead the market in innovation and others can follow”, says George Kojo Andah, Chief Marketing Officer.

I believe that they have good reason to be proud of this innovative service. It probably requires some custom billing system but I believe it is a great idea - maybe I should write a proposal for our marketing department. The billing people might be horrified though…

Africa and Cycling and Ghana04 Jun 2009 at 23:28 by Jean-Marc Liotier

Accra, 23 February 2009.

While I had breakfast, the manager was struggling to set up 802.11 Internet access, but I carefully omitted to mention I could probably fix that. Sometimes I manage to suppress my benevolent urges for voluntary technical support.

For me, the first order of the day is to go fetch a seat seat post for the bike. The trip starts at the auspicious 777 km mark on the odometer, but I take no account of that : superstition is bad luck.

The hotel boys believe that I might find spare parts in the Madina market, but having them explain how to get there is another matter. If you ask someone how far a place is, the first answer you’ll get is not a distance but the price of the tro-tro ride. So with the barest instructions I head out of East Legon toward the Madina market on my seatless bike while Pauline remains at the hotel using the staff as her playthings. The suburban roads are a mix of tarred and partially corrugated surfaces leading to a minaret dominating a market town on top of a small hill. With such a name, the place is of course Muslim. Interviewing locals about that, I learn that it is the largest coranic school in Ghana - quite a surprise considering that the south is mostly Christian.

20090216_130930_7676_Ghana_western_coast_tandem.jpg

Making my way haphazardly across the market, I find a car mechanic which, as I suspected, knows where his pedal tightening colleague is hiding. I cross the town in the other direction, turn near the post office and find Moses’ Cheap Shop. Moses has quite literally a heap of bikes and parts, and it does not take him long to unearth a properly sized seat post for me. And I even get to chose among dozen of seats to top it. And it cost me a grand total of ten Cedis ! I’m ecstatic to find my bike in complete working order again. I thank everyone, take a picture and head back toward East Legon at full blast, maybe a bit too fast considering how I slid ten meters a the bottom of a corrugated downhill, narrowly missing a turning tro-tro.

After that sobering moment I stop at a store for water and a tube of super glue to fix the on-board calculator’s support that got smashed during the flight in. The two girls sold that to me with smiles and giggles, plus while I was living one of then was singing a song about love descending unexpectedly. Along with smiles while underway, this is not the first time I get that sort of response – but the experienced traveller knows not to take the flattery too seriously. But more important, my bike is now is 100 % operational ! With the calculator now online, I can tell after riding home that Madina is 8 kilometers north-west of East Legon.

Back at the hotel I paid 150 Euros for two nights, drinks, dinners, breakfasts and airport pick-up for Pauline and me. I have never paid that much for two nights in my entire life, but the place was so nice that I would have done it again, if only because Pauline enjoyed herself so much there and I got excellent advice for what I had to get done.

It is one PM and we are now invited for lunch by the owner so it is two PM when we hit the road. On the way we ride past the presidential palace again. Snatching a few bad pictures under pressure from the guards who seemed slightly unhappy enough about it that we did not overstay our welcome.

20090216_155126_7678_Ghana_western_coast_tandem.jpg

On the way to the STC bus station downtown Accra, Pauline attracted huge interest from tro-tro drivers and street peddlers sometimes barely a few years older than her, who sell plantain chips to sunglasses, water, sweets and even chocolate tablets that miraculously resist the sweltering heat.

14 kilometers later we buy tickets at the STC state owned long distance bus station. This company is very well organized, with fixed price, booths with well kept books, uniformed personnel and due process for everything in sight - a relaxing experience compared to many means of transportation around the continent. 6.5 Cedis for me, 3 Cedis for the bikes, 2 Cedis tip for the bike handlers and Pauline travels for free. What a great deal ! That, the bike parts and today’s food make the the hotel price ludicrous in comparison. But in Africa, anything remotely related with tourism has nothing to do with local purchasing power.

On the bus ride out of Accra we went past the huge Kanechie market. Heavy traffic jams follow all the way after Dansoman, hinting the overgrown village that Accra is often said to be might outgrowing the local infrastructure. While I’m stuck in traffic dreaming about how fast I would overtake it all on my bike, here is how I write my travel diary. I take notes whenever I can, mostly on the E71. In the evening, I transfer my notes by Bluetooth to the NC10 where I rewrite them in a text editor. It is also in the evening that I usually perform the first elimination of unacceptable pictures on the 50D to lessen the burden of sorting when I get home.

Keyboard input lag on the E71 is mightily annoying. This problem has been solved twenty years ago in PC word processors that ran on CPU less powerful than this mighty PDA. Nokia may build fine phones, but the general purpose computing aspects of their products is a big disappointment.

With 7k Euros worth of equipment and a budget of 60 Euros a day for two, this is not shoestring travel. But most of the equipment is photography and IT, with the bikes being a distant third. And the budget is that high because with a kid around I have to ensure a level of comfort that I would certainly would not care for had I been alone or with weathered adults.

The STC bus is impressive : only four people in a row and it even features air conditioning that works - although it is used with way too much enthusiasm. The bus was scheduled for 4:40 and started ten minutes later, on time and not when it is full. This is nothing like the stereotypical African bus stuffed with sweaty people, assorted bags and bundles including smoked fish and live poultry with goats and extra people on the roof. I’m surprised that people travel with few luggage, but maybe those upmarket lines are too expensive for the small traders who are often encountered with heavy bundles. The STC matches any long distance coach service in Europe - this is a great surprise that I had never had in Africa before.

But what still African about this bus are the encounters. When I’m riding my bike, meeting people in buses is something I often miss, even though the bike is a great conversation starter for when I stop in villages. Today we met Arama, a 20 years old first year banking student in Accra who goes visiting her family in Takoradi for the holidays. She offered to help us find a quiet hotel, advising against the ones near the market whose idle boys might be hassling.

Arama took a taxi with Pauline and I pedaled like a madman behind to follow them to our destination. We ended up at Akroma Plaza, a clean and secure big anonymous hotel with Chinese furniture and Chinese toilet paper - Chinese ownership would not surprise me. The rooms look like they could be anywhere in the world, and they are quite comfortable. At 50 Cedis a night I’m still grossly over-budget, but arriving at ten PM in an unknown African city, I won’t complain too much about not finding the optimum. After we entered our room, Arama left to join her family. Tomorrow she’ll be our guide around Takoradi. And for tonight, Pauline and I still have our clothes to wash !

Code and Debian and Free software and Knowledge management and RSS and Social networking and Systems and Unix18 May 2009 at 12:15 by Jean-Marc Liotier

If you want to skip the making-of story, you can go straight to the laconica2IRC.pl script download. Or in case anyone is interested, here is the why and how…

Some of my best friends are die-hard IRC users that make a point of not touching anything remotely looking like a social networking web site, especially if anyone has ever hinted that it could be tagged as “Web 2.0” (whatever that means). As much as I enjoy hanging out with them in our favorite IRC channel, conversations there are sporadic. Most of the time, that club house increasingly looks like an asynchronous forum for short updates posted infrequently on a synchronous medium… Did I just describe microblogging ? Indeed it is a very similar use case, if not the same. And I don’t want to choose between talking to my close accomplices and opening up to the wider world. So I still want to hang out in IRC for a nice chat from time to time, but while I’m out broadcasting dents I want my paranoid autistic friends to get them too. To satisfy that need, I need to have my IRC voice say my dents on the old boys channel.

The data source could be an OpenMicroblogging endpoint, but being lazy I found a far easier solution : use Laconi.ca’s Web feeds. Such solution looked easier because there are already heaps of code out there for consuming Web feeds, and it was highly likely that I would find one I could bend into doing my bidding.

To talk on IRC, I had previously had the opportunity to peruse the Net::IRC library with great satisfaction - so it was an obvious choice. In addition, in spite of being quite incompetent with it, I appreciate Perl and I was looking for an excuse to hack something with it.

With knowledge of the input, the output and the technology I wanted to use, I could start implementing. Being lazy and incompetent, I of course turned to Google to provide me with reusable code that would spare me building the script from the ground up. My laziness was of course quick to be rewarded as I found rssbot.pl by Peter Baudis in the public domain. That script fetches a RSS feed and says the new items in an IRC channel. It was very close to what I wanted to do, and it had no exotic dependancies - only Net::IRC library (alias libnet-irc-perl in Debian) and XML::RSS (alias libxml-rss-perl in Debian).

So I set upon hacking this script into the shape I wanted. I added IRC password authentication (courtesy of Net::IRC), I commented out a string sanitation loop which I did not understand and whose presence cause the script to malfunction, I pruned out the Laconi.ca user name and extraneous punctuation to have my IRC user “say” my own Identi.ca entries just as if I was typing them myself, and after a few months of testing I finally added an option for @replies filtering so that my IRC buddies are not annoyed by the noise of remote conversations.

I wanted my own IRC user “say” the output, and that part was very easy because I use the Bip an IRC proxy which supports multiple clients on one IRC server connection. This script was just going to be another client, and that is why I added password authentication. Bip is available in Debian and is very handy : I usually have an IRC client at home, one in the office, occasionally a CGI-IRC, rarely a mobile client and now this script - and to the dwellers of my favorite IRC channel there is no way to tell which one is talking. And whichever client I choose, I never missing anything thanks to logging and replay on login. Screen with a command-line IRC client provides part of this functionality, but the zero maintainance Bip does so much more and is so reliable that one has to wonder if my friends cling to Irssi and Screen out of sheer traditionalism.

All that remained to do was to launch the script in a sane way. To control this sort of simple and permanently executed piece of code and keep it from misbehaving, Daemon is a good way. Available in Debian, Daemon proved its worth when the RSS file went missing during the Identi.ca upgrade and the script crashed everytime it tried to access it for lack of exception catching. Had I simply put it in an infinite loop, it would have hogged significant ressources just by running in circles like a headless chicken. Daemon not only restarted it after each crash, but also killed it after a set number of retries in a set duration - thus preventing any interference with the rest of what runs on our server. Here is the Daemon launch command that I have used :

#!/bin/bash
path=/usr/local/bin/laconica2IRC
daemon -a 16 -L 16 -M 3 -D $path -N -n laconica2IRC_JML -r -O $path/laconica2IRC.log -o $path/laconica2IRC.log $path/laconica2IRC.pl

And that’s it… Less cut and paste from Identi.ca to my favorite IRC channel, and my IRC friends who have not yet adopted microblogging don’t feel left out of my updates anymore. And I can still jump into IRC from time to time for a real time chat. I have the best of both worlds - what more could I ask ?

Sounds good to you ? Grab the laconica2IRC.pl script !

Africa and Cycling and Travels17 May 2009 at 18:01 by Jean-Marc Liotier

Accra, 22 February 2009.

We wake up to the sounds of religious chants from the Christian center next door. In Ghana, there are churches all over the place and they are packed every week… You can’t miss them ! Churches often feature live music, and while passing by I have several times seen people take the microphone to add their testimonies of spiritual enlightenment. Atheists such as me better swerve when religion comes as a discussion topic : every Ghanaian is a true believer and will lecture you given the opportunity.

We wake up lazily and enjoy an English breakfast on the hotel’s roof. The staff is very nice and we are the only guests in the six rooms hotel. By the way, I recommend this hotel heartily even though it exceeds any typical backpacking budget. Its official name is Golden Oyster Executive Hotel - In Ghanaian English, “executive” means anything that is sophisticated and commands premium pricing.

The sky is a gray ceiling with light rain falling, but it is already so hot that you don’t notice the rain drops falling among your own perspiration. I scan the 802.11 frequency bands but no networks are detected. Data roaming does not seem to be functional in Ghana - at least I won’t be tempted to spend my money !

“Papa, please close your eyes and open your mouth” - and next thing I know I’m chewing on fresh garlic… Pauline probably got that from the hotel’s kitchen and somehow decided I would be the guinea pig for that mystery food.

Next up, assembling the bikes minus one seat and stowing away the flight bags. I use one bike bag for each bike, and a big duffel bag to keep three of the panniers together for the flight. I keep the fourth pannier as a carry-on to protect the most fragile stuff. To pack the bikes, I only disassemble the handlebars, the seats, the trailer’s beam and the big bike’s front wheel - so that assembly is a quickly expedited affair. In theory I should have bothered with disassembling the pedals, but their width is actually not a problem. Removing the pannier racks would have hugely reduced the package’s length and facilitated transportation, but then disassembly and assembly would have been much a more involved business and I prefer to have the bike arrive in a configuration whose solidity I trust. As usual, the tandem bike is a sure-fire conversation starter with any passerby.

Before leaving the hotel I noted its address : East Legon, opposite the Christian center, near the A&C shopping mall. Yes, that is an actual address, as good as you’ll get in most African locations. We are then free to descend downtown Accra for some sightseeing. The hotel lies in a quiet leafy suburb near the airport. A very nice neighborhood even, as measured by how the villas are built and decorated, how vegetation is kept and the amount of security that surrounds them - though the street in the neighborhood are still beaten earth strips sided by ditches with partly broken covers. But there is construction going on in many streets so that might change.

A short walk away from the hotel we catch a tro-tro apparently heading in the general direction of the city center, but it drops us at Nkrumah Circle, a stinking muddy African minibus yard cum marketplace where finding our next tro-tro took some searching among the chaos and language difficulties - the quintessential African experience.

Badly covered drainage ditches, stagnant water with decomposing matter, dust and traffic produce the patented smell of Africa, although the Ghanaian version is very tame and only appears in the worse neighborhoods - in other places the public utilities seems to work rather well. Part of the reason for the relative cleanliness might be the omnipresence of public urinals which make rogue excretive exercises less frequent, although the drainage ditch does seem to double as a toilet - one more reason to watch your step for missing covers. But with dirt and filth often around them, many Africans make a point of being spotlessly clean - in Accra I even saw a several occurrences of a guy hand-washing the wheels of his vehicle with a sponge. And those were apparently not vehicles for sale.

Private schools advertise their results on billboards. With unreliable public services, Africans have no choice but to be entrepreneurs, and education is a market like any other. In Ghana there are establishments named “remedial schools” that are focused on supplementary teaching. It is the same as evening classes in Europe, but the advertising is surprising : instead of being focused on success, the unique selling proposition is invariably based on “not failing”.

It is Sunday so most of the shops in what on the map appeared as the historical center are closed. On the way to Jamestown, I start recording our positions so that I can geotag the pictures. the lack of activity, the derelict buildings and the odd abandoned one produce a strangely quiet atmosphere. Accra’s urban landscape is rather low and extensive, like an overgrown small town.


20090215_150559_7414_Ghana_western_coast_tandem.jpg

We came across a card playing competition with a big scoreboard and a couple dozen of animated tables - I snatched a couple pictures and nobody paid attention to us. Most people in Accra don’t care about photography anyway, and they sometimes even show off a bit.


20090215_155241_7536_Ghana_western_coast_tandem.jpg

Jamestown is supposed to be next to the historical center, but it is very derelict with obvious signs of poverty. But even in this sort of environment, there is not a sign of hassle, aside from a timid half hearted demand from time to time. One girl tried a pass at me - which earned me stern looks from the guys, and a boy tried to sell me fish - yeah I obviously need fresh fish. I felt very secure here, apart from the ship construction yard workers who don’t seem to like tourist intrusion. In any case, this is not cadeau country - this makes me feels much more relaxed.


20090215_153014_7429_Ghana_western_coast_tandem.jpg

The harbour, which is actually a beach protected by a breakwater, is a very interesting place with fishermen mending nets, boats coming and going, children playing in the water, equipment strewn all over the place, habitat in the middle of it all and as usual in Africa heaps of people milling around with mysterious purposes.


20090215_154044_7455_Ghana_western_coast_tandem.jpg

Behind the harbour, people live in narrow alleys where a few goats munch on plantain skins. The presence of goats is a clue that this is a poor neighborhood. Goats eat anything and no vegetation is left.

From what I gather from my feelings and talking with locals, apart from the odd petty thief the place is safe. In crowded neighborhood, the odd opportunistic petty thief is all you have to worry about - but I’m warned that deserted estates at night are a different story.


20090215_155656_7556_Ghana_western_coast_tandem.jpg

We pass by the childhood shack of a famous Ghanaian football player with a life-size portrait painted on the front. Not far, a flock of kids dances in front of a wall of loudspeakers - I did not want to intrude with the camera, but the scene looked like a ragga music video. The best pictures are the one you did not take…

The advertising plastered on walls mostly falls in the following categories :
- Politics
- Mobile telephony
- Religion
- Music
- Obituaries…

20090215_161725_7572_Ghana_western_coast_tandem.jpg

The obituaries are A4 or A3 posters, often in color and containing a picture of the recently departed along with biographical information. I had never noticed them before in other African countries.

A mobile telephony operator advertises free airtime in exchange for receiving inbound calls. I had never seen this marketing scheme anywhere else, but it makes a lot of sense to cash in on termination fees by encouraging prepaid users to ask for calls. The effect could be compounded by having network preferential rates for the postpaid users.

20090215_164715_7578_Ghana_western_coast_tandem.jpg

Kwame Nkrumah memorial park is a tidy place, apparently a favorite of wedding photographers with no less than four couples and their suite posing in the park. According to Wisdom <ameyedowo@yahoo.com>, the only Ghanaian in the park who is not part of a wedding, few Ghanaians come here for any purpose other than the photo opportunity - although Nkrumah remains a big figure with no less than three political parties claiming to be their heir.

20090215_172040_7589_Ghana_western_coast_tandem.jpg

I don’t know what earned me all the smiles from the bridesmaids, and chatting chatting one up definitely crossed my mind but I tried to remain focused on purely touristic endeavours. I learned from the small exhibition near the mausoleum that after having been ousted in 1966, Nkrumah had been named co-president of the Republic of Guinea. A picture as early as 1960 shows them together. After all I’m not surprised, but it is the first time I see it mentioned.

20090215_164736_7582_Ghana_western_coast_tandem.jpg

A couple of roller skaters glide by, one quad and one inline. I had seen a couple in Dakar too, but roller skaters on the African streets are uncommon enough to be noticed. Accra even has enough properly tarred roads for fun skating rides, although the wild traffic might be too much for most riders to handle.

20090215_174417_7606_Ghana_western_coast_tandem.jpg

Short African minibus tutorial - lines exist but all minibuses are alike, with no sign displaying where they are going and the bus stops show no distinctive indication either. So you have to have to listen to the minibus monkey boy calling the destination as the minibus pulls by, and quickly decide if the line ending there passes by where you want to go. The locals have a general idea of what line goes where, but few people can read a map, notions of geography are ofter limited to uni-dimensional concepts and in some places people are not comfortable with reading, so communicating with a map is not going to get you anywhere. Just talk to whoever you find and you will end up finding someone you can communicate with effectively, who knows where you are going and who will point you to the right bus. So “East Legon, opposite the Christian centre, near the A&C shopping mall” might see like a strange address to Europeans, but it is really the best one for finding your way home.

20090215_174136_7600_Ghana_western_coast_tandem.jpg

On the way we passed by the brand new presidential palace, a shiny piece of modern architecture whose cost overruns are currently a matter of much debate in Ghanaian politics. Some government buildings such as the national theater are definitely worth a sight - interesting architectural trends express themselves there. The rest is the usual utilitarian lot of post-independence administrative buildings. In Takoradi I learned from Arama’s father that the National Theater was built by the Chinese, as a few other buildings in Accra and other places - such as Takoradi’s stadium for example. The presidential palace on the other hand was built by Indians.

20090216_155126_7678_Ghana_western_coast_tandem.jpg

Legon and Legon East are farther than they sound. Following the the Legon line we became temporarily unaware of our whereabouts. While Pauline was drinking and eating a coconut, darkness fell. At this latitudes, darkness falls very fast. We tried another direction and then ended up getting a taxi for the last leg. On the way we drove past a drugstore where I found Malarone for Pauline for 90 Cedis, slightly less expensive than in Paris. Street peddlers use a tin can and a wick as a makeshift oil lamp. I spotted a girl frying coconut - I have to try that !


20090215_192225_7669_Ghana_western_coast_tandem.jpg

The night is quiet as there are barely any mosquitoes in Accra, a nice break from the usual tropical fare. But in the bush out of the city I have been told to expect having to use lots of repellent. After fooling around in the hotel’s pool, we showered and washed our clothes while showering - the most efficient way to do it, trust my experience. We then headed out to grab dinner. As we chatted with Sharon, the nice lady who built and owns the hotel, I showed her the pictures we took today. She recognized Jamestown and told us that although she spent a few years in Europe, she is the queen of Jamestown. Named Sharon, she goes by the name of Queen Sha. She showed me pictures of events where she is carried on a ceremonial chair. She is the heir of a centuries old title previously held by her mother. We are hosted by royalty - nice !

Jabber and Social networking13 May 2009 at 11:06 by Jean-Marc Liotier

A year ago this day, Facebook announced ”Right now we’re building a Jabber/XMPP interface for Facebook Chat. In the near future, users will be able to use Jabber/XMPP-based chat applications to connect to Facebook Chat“. The news has been greeted positively in various places everywhere.

A year later, strictly nothing happened, and that silence has not gone unnoticed. Facebook has not even issued the slightest announcement, except a wishlist bug report comment by Charlie Cheever mentioning that “some people are working on this.  It will probably be done in a few months. Sorry the timeline isn’t more clear“.

Is that all that a major player such as Facebook can do to interoperate with the rest of the instant messaging world ? Words with no deeds to back them up are very disappointing, especially from a player with ample means. Annoucements followed by complete silence are an even bigger blow to anyone’s credibility. Will Facebook step up to the plate ?

By federating with the rest of the XMPP world and especially with Google Talk, Facebook has an opportunity to make a huge splash in instant messaging in a rare case where their interests are aligned with their user’s. Why the silence ?

Maybe I should not be using Facebook at all. But it has been so successful at attracting the family, the non-geeks and the girls that I have settled for the compromise of using it while serving some constructive criticism. But I feel better at Identi.ca and Friendfeed

Meta and Social networking and The Web12 May 2009 at 12:21 by Jean-Marc Liotier

One of the benefits of running blogs is the ability to gather traffic statistics and spot emerging trends. The popularity of an article is an interesting information, but my favorite is the key phrases in search engine referrer URL. The key phrases tell us what people were looking for when they ended up on the site.

This month, “Facebook application spam and how to block it” is the most viewed page on this blog, surpassing the apparently very useful mod_proxy tip, the always popular Openoffice outline mode and even the American craze for that French soldier in Afghanistan.

This month also, “block facebook quizzes” and all variations thereof account for an overwhelming majority of search engine referer key phrases on this blog.

I had personal and anecdotal data about the flood of obnoxious simplistic Facebook personality tests, but now I have numbers to back it up.

I predict a bright future for the One-Click Quiz Blocker Facebook application : it is the easiest way to make the newsfeed clean and useful again. It does what it says - it just works and it takes just one click : a real pleasure compared to my former obsessive-compulsive habit of systematic manual blocking (about five hundreds in three years…).

Africa and Cycling and Travels11 May 2009 at 23:20 by Jean-Marc Liotier

Accra, 21 February 2009.

As usual, packing was deferred to the last minute. Some attempts at anticipation are notable, but biking and outdoors are now so deeply embedded in my lifestyle that a sizable chunk of what I bring on tour is a part of my daily life that I cannot pack aside in advance. But I have the drill down pat - I made everything modular and activity based, so that I am confident that even in a hurry I am not forgetting anything I may want to have at hand underway. Apart from a couple of UK electricity mains adapters, I fetched what I needed from my cupboards and I did not have to buy anything - an amazing first. A few seasons of relentless acquisition quenched my requirements for hot and moderate weather touring equipment requirements, so I can nowadays be ready for an exotic deployment in less than an evening.

On top of disassembling the bikes, sorting and packing everything, I left the configuration of the sub-notebook for the last moment and took time on top to configure an USB flash memory as a backup - so I had just one hour of sleep, but the excitement kept me going nicely.

We had an uneventful flight, with breathtaking Saharan landscapes of dark rock and bright sand. Further south the clouds drowned all but the sunset largely compensated that with stunning colors. Claiming our luggage at Kotaka’s we had the disappointment to find the bike’s bag’s zip ripped apart. The bag was open and the seat which was traveling disassembled in a smaller bag had escaped from it. After inquiring to a few useless luggage claim employees, I concluded that prosecuting the case in Accra was hopeless. Filing a complaint to Air France - KLM on the way back in Paris is far more efficient. The smashed rear light on my bike and the abrasion marks on the trailer’s bike tell a story of gross mishandling, but all we have is another lesson in bike shipment hardening. I’m increasingly thinking about shipping the bike in a crate - I’ll think about that unless I find a bag more sturdy than that weak Go Sports bag that was not even cheap and lasted intact for a grand total of three flights.

So, as usual, the tour is therefore going to start with a wild spare part hunt - always a fun way to discover an African city. With a cycling culture supposedly well implanted in Ghana and plenty of riders, I’m guessing that we should have that problem solved in 24 to 48 hours. And what would a bicycle tour be without some exotic spare part problem ?

After almost 40 hours up with one hour of real sleep without Pauline interrupting, I was beginning to feel a bit winded. The Lonely Planet’s selection of places to sleep in Accra was depressing, and I foresaw that I was going to spend more than usual. For my first night in a country, I always spend more than average though : more than comfort, hotel prices are about service - and being disorientated and wary in an African country is not the time to skimp on service.

After lengthy pleas about my lost and broken pieces of luggage, I had lost so much time that the terminal was almost deserted. I managed to change a hundred Euros at the still open forex office and went on. A guy I chatted with on the plane had tried to wait for me to help me find a taxi - but I lost him because of my luggage issue keeping me behind. A security guard told me he had been waiting for me at the arrivals lounge, and he disappeared to search for him. While I waited and minded his recharging phone I noticed the still open albeit empty hotel reservation booth. With nothing to lose I decided to explore its offerings. Coming back empty handed, the security guy fetched the hotel reservations guy for me. I told him I was ready to spend about 90 Cedis (a slightly above low range rate for Accra), did not care about the location and wanted a friendly quiet place. He sent me to the Golden Oyster hotel, which I don’t regret. He called Ernest, the manager of the hotel, who came pick us up at the airport and helped me load the bikes on his pick-up truck, and we were off. By African standards, this is an incredible airport experience : I perceived no threat, no chaos, not even a hint of hassle, the officials were friendly - even with my problems it was all very relaxed. An airport is often the first experience about a country, and this one tells good things about Ghana.

So, in the span of an hour I had met half a dozen very nice people who helped me find my way around my problems. They were all very warm. It was a great surprised, but it is actually a typical Ghanaian experience : you meet an amazing number of friendly people and they are always up for a chat.

The hotel was hosting a wedding reception - actually a mass wedding with ten couples tying the knot at once. The party was taking place on the rooftop and we mingled among the guests, enjoying a meal and an African-sized beer (750 ml is the standard). Ghanaian hiplife dance music was rocking the place - I definitely have to listen to more of that at home (first keyword for Last.fm surfing : “Praye”).

Pauline was excited to find plenty of fun guys and nice girls to play and dance with - as crazy as it might be, this is exactly what she had told me she expected from Africa. Meanwhile I ended up having a chat with the splendid lady who owns the place - an Anglo-Norwego-Ghanaian with an Austrian ex-husband.

Most unexpectedly, the party drew down around midnight - Ghanaian go to sleep at the time when the Congolese begin to go out. That is quite a surprise, but it fits my holiday rhythm perfectly and after two full days with a sleepless night in the middle I was probably not going to dance until morning anyway. So we shut ourselves in our comfortable room - the Golden Oyster hotel is lavishly furnished and not the sort of place where you normally find backpackers : it even has air conditioning in the rooms. To me, this is luxury and the place might even be fit to receive my parents, the golden standards of people you will never find hanging out in a backpacker’s joint. But for a good night of sleep, it will do very nicely !

Africa and Cycling and Ghana06 May 2009 at 14:50 by Jean-Marc Liotier

In the second half of February this year, I rode with Pauline in Ghana : in Accra, in the western coastal region and in the Cape Coast hinterland. As a prelude to the trip reports that shall soon be published here, we’ll start with the GPS track logs collected with my trusty Sony GPS-CS1, sliced and diced by GPSBabel and mashed up on Google Maps by GPSVisualizer.

Most of it is of no particular interest to people other than me, but if you are planning a trip there you might like some parts of our western coastal region track logs : the abandoned road between the Axim and the Axim Beach Hotel on the other side of the bay is nowhere to be found on any map I know, and our forays halfway to Prince’s Town, especially from Busua are bush rides that you probably won’t read much about anywhere else.

So here are our tracks :

  • Accra - back and forth between our hotel, the STC station, Madina market and a walk along the waterfront.
  • Western region - Takoradi, Busua, Dixcove, Axim, Prince’s Town, Agona Junction and quite a few dirt tracks in between.
  • Cape Coast hinterland - Elmina, Hans Cottage, Kakum National Park and Cape Coast itself.

These maps will soon come handy as support material for the trip reports.

Next Page »