The blog post title says it all. My memory fails me as to the exact date the popular blog – StartupsNigeria.com went offline. There could have been several reasons why it was offline but one day, two days, one week… the site was still offline. I started to get a bit concerned. I began to hear rumors, but then, they were rumors and so paid little or no attention to them.

Afterwards, in discussing with the editor of the blog – Loy Okezie, I got informed that the site went offline due to a “conflict of interest” and yada yada.

I left it at that and celebrated with Loy Okezie when he launched StartupsNigeria.org. Updates on StartupsNigeria.org have been posted by Loy Okezie on his personal blog.

As things will take a different turn, I just got an IM from a colleague a few hours ago who drew my attention to a new blog post by Vic on the whole issue. After reading the blog post, I was more confused but more sad than confused about what the true story had been from the beginning. Right now, I’m so sad about seeing a very promising blog run down like this. Like Ope Awo wrote in his blog post on this, Loy Okezie was really building a brand of the types of Michael Arrington with Techcrunch but issues with integrity can really bring down an entire empire. I’m really sad about this whole development but hey I’m glad to see the impact the site had made while Loy was at its helms.

StartupsNigeria.com will never be the same again; nevertheless, it will not be a deterrent to the Internet revolution in Nigeria.

One of the big benefits of using source code versioning (or source code management systems) is that it allows you to maintain a history of all the changes in code and allows for easy collaboration amongst several developers on the same code base. SCMs will allow you answer the following questions:

  1. Who made what change
  2. What change was made
  3. When was the change made

If you happen to have a number of developers and you’re working on the same project (even if you’re the only developer, this helps) you like to know when a change to the source code breaks the application (this happens alot). Not only that, having an SCM allows you to easily revert that change. This post is not about SCMs but I thought it necessary to provide a little background information.

I recently started using git and have really loved it (although it’s not perfect, it does the job well). I prefer git over subversion (svn) for a major reason that it is distributed: does not require a connection to a server in order to commit to the repository.

Recently, I thought about migrating my svn repositories to git and I found a wonderful resource for that here. I’m not going to attempt to republish what has been said there here. Instead just point out a couple of things I had to do differently.

First of all, depending on the way your git is installed, these are basically the commands to run:

git svn init svn://server/repo/trunk/ --no-metadata
git config svn.authorsfile /path/to/svn-authors
git svn fetch

The difference here is to use git svn instead of git-svn. Also, if you happen to have blank authors (as I had in mine), then your svn-authors file should contain an entry similar to this:

(no author) = Firstname Lastname <emailaddress>

Webmasters out there, how many times have you ignored the advice to backup your site when making an upgrade? Trust me, if you continue (like I’ve been doing) that way, it will come back to bite you one day.

Earlier today, I wrote a new post on this blog and having ignored the blog for a while, I noticed that there was a new upgrade for Wordpress (the software that powers this blog) and I thought – “Hey why don’t I do some site maintenance in the process.” and there I went to click on upgrade automatically. I (like I usually do) ignored the advice to backup the site before upgrading and just clicked through. For some reason (I thought my Internet connection broke) the process didn’t display a success status but I assumed it went well.

Thanks for my friend Tunde Adeyemi (@barbietunnie) who pointed out the fact that the site was broken and needed fixing. I quickly replaced the site with a “We’ll be back soon” banner page and went about fixing it. Thankfully, nothing was damaged and the process took less than 30 minutes. So next time you want to do upgrades (especially when it involves the core), do take the advice you’re given.

Can I see a raise of hand if you use the same password on more than one website? Oh you even use the same password on all websites? Terrible!

Have you ever considered what the consequences will be if a rouge web developer attempts to use that same password you used to register on his website to login to your email? It could be worse.

The problem is that there are numerous websites out there and though I could say use random passwords, you’ll soon have to use the password recovery utility on every website you have an account on as you wouldn’t be able to remember all the passwords.

One solution, is to use a password manager. I’ll personally recommend KeePass – which is a utility that enables you to generate and/or store your passwords securely. It has a number of good security features that even helps to mitigate the activity of key loggers, perhaps they are installed on your system.

Alternatively, I will suggest the use of an online utility like Hashapass. The reason I’m excited about this is because it allows you to use a password you remember and combines this with some other information (e.g. the domain name like cnn.com) to generate a hash that can then be used as a password to the site.

If you had an account on say gmail.com, and you used a master password of say jackass, entering in this information into the Hashapass generator will generate the password: y/NTQTnm. Not bad hmm? yahoo.com as the parameter generates DyPh7Z5d. Completely random and very difficult to guess. All you need to remember is your master password. Better still, the bookmarklet will even make it easier to use the service without having to first visit the website.

I remember the first time I used Google Maps. I was thrilled with the ability to find places and locate them on a digital map. That was my first exposure to Geographic Information Systems. But I quickly grew out of it after a while and what was majorly because of the lack of localized information.

Roadmap as appeared on Google Maps on 22 March, 2009

Victoria Island roadmap as appeared on Google Maps on 22 March, 2009

I dabbled into Google Maps mashups and built my first Google Maps application when I was working on my final year project in the University but then I saw little use for it locally.

A few months back, Google announced a community-based mapping project known as Google Map Maker. Google Map Maker enables the people who live in areas that have not been well covered by Google to map their localities using the tools that Google has provided. The implication of this is that you now have the ability to map your village, if you wanted to.

Google Map Maker tile of Victoria Island as at March 22, 2009

Google Map Maker tile of Victoria Island as at March 22, 2009

What’s the motivation?

That’s a rather interesting question because I never really gave thought to it when I started creating maps using Google Map Maker but in giving thought to it, I realized that in providing local content on the Internet not only does it makes the Internet richer but it also provides value for the locals. I earlier mentioned how the Mapping service was of little use to me because there wasn’t local data but now, with other people mapping different areas within the country, I am able to determine routes before setting out (for instance).

I remember a particular day I was to meet up with someone somewhere in Lagos Mainland. He described the point of meeting as around the intersection of Opebi Link Road. I wasn’t sure of the location but then I thought “worst case scenario, I’ll ask someone about it.” I decided to put Google Map Maker to the test. I did a search for Opebi Link Road and voila, it showed me the location and I was able to know where it was and how to get there.

Imagine then that you are looking for the nearest branch of a particular bank. Apart from having to consult the list of branches from the bank’s web site, you can look it up on Google Map Maker. Now eventually, the information will be integrated into Google Maps proper but for now, everything is still available on Google Map Maker.

So what happens if the information you are looking for is not available? Add it! There’s no reason why your company’s branches or building (or other features like street names, restaurants, churches, mosques, entertainment venues, etc) is not tagged on the map. Information is being added to the map on a daily basis and your contributions are not only helping give your company visibility, but it’s also adding value to others who might find that information useful when the need arises.

It’s simple – visibility.

Loy Okezie recently published a blog post listing a few of what he thinks to be the top 100 web developers in Nigeria. I found the comments to be very educative and interesting.

I happen to know virtually everyone on that list and while some comments on the site and elsewhere were such that the author was partial, there’s something very important here that I wish every other developer (that was nominated) will do something about – Get visible. The people on that list were there because Loy happened to know about them. Loy hasn’t met a number of them physically but using online interaction tools and social networks, he’s been able to get to know them.

After reading the comments on the blog and the discussion forum, I was happy to know that there are people making a difference all over Nigeria but they need to get visible and let the whole world know what they’re doing. At the very least, I expect these web developers to have a Twitter account (since I refer to it as a blog for lazy bloggers) and better still a blog. If they are very ambitious, they can go ahead to have a proper web site with profiles of what they’ve done, a blog and so on.

Here’s the synopsis, I have a web development machine that has a NAT connection to the Internet and what that means is that I cannot access the machine directly from the Internet. So if I wanted a friend or colleague to test my work or say I’m at someplace remote and want to be able to view my web application, that will not be possible. However, using some techniques (which I will describe in this post), you can actually make this machine accessible on the Internet.

Here are certain assumptions:

  1. You are using Windows XP or Vista as your local machine.
  2. You have a Linux/UNIX host as your remote machine.
  3. You are using the Apache web server on both machines.
  4. You have basic Linux/UNIX administration skills.
  5. You’re comfortable with basic level Apache configuration and know what .htaccess is.

Step 1

First of all, we will be using a technique known as SSH port forwarding. This makes it possible to have an SSH server that has a public routable address (public IP) to forward an arbitrary port number to our local machine. For this demonstration, I chose to forward port 8080 on the remote machine to port 80 on my local machine.

SSH servers by default are now being configured in such a way that this forwarded port is only accessible from within the remote machine (AKA localhost). In order to ensure that this forwarded port is accessible to any machine connecting from the Internet, you need to tweak the settings of the SSH server running on the remote machine.

Simply edit the /etc/ssh/sshd_config (the path may be different) file on the remote machine and comment out the line GatewayPorts no. Change the value from no to yes. Save the file and reload the SSH server.

Step 2

Next on your local machine, you will need to create the SSH tunnel to the remote machine. This can easily be done using the plink application in the PuTTY suite of applications. Please visit http://www.chiark.greenend.org.uk/~sgtatham/putty/

Simply launch the plink application from your command prompt using the following syntax:


plink -R %REMOTE_PORT%:%LOCAL_IP%:80 %USERNAME%@%SERVER_ADDR%

%REMOTE_PORT% is the remote port you wish to forward. In my case it was 8080.
%LOCAL_IP% is your local machine’s IP address. In my case, I simply used the localhost IP – 127.0.0.1
%USERNAME% is your username on the remote machine and %SERVER_ADDR% is either the IP address or hostname of the remote machine.

Once you’ve logged in, the port on the remote machine is forwarded to your machine. If your web server is running on a port different from 80, change the syntax accordingly.

You can test connectivity by going to http://%SERVER_ADDR%:%REMOTE_PORT%/. This should display contents from your local web server. If you wish to simply use this, you’re fine but if you want something cleaner and more invisible, then you’ll want to proceed.

Step 3

Next step is configuring your hosting account (a subdomain will be best) to proxy requests to your local machine’s web server.

Create your subdomain and navigate to the document_root of that subdomain. Edit/create a .htaccess file and put the following into it.


RewriteEngine on
RewriteRule ^(.*)$ "http://%DOMAIN%:%REMOTE_PORT%/$1" [P,L]

Here, %DOMAIN% is either localhost or your domain/subdomain (which of course should have previously been configured to point to the remote machine), %REMOTE_PORT% is the remote port configured on the remote machine. The magic being performed here is done by the [P,L] directive that proxies any requests to the local machine through the tunnel accessible from the remote port. The $1 parameter passes on any url parameters to the local web server.

Once this has been completed, visiting http://%DOMAIN%/ will bring up content from your local machine. This is made possible by virtue of the proxy features in the Apache web server.

Step 4

This final step is only needed if you intend to be able to log the original ip address the request came from before the proxying was done.

This involves modifying your local machine’s web server configuration.

Simply locate the VirtualHost or main configuration section in the Apache configuration file and add this:


LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" proxylog
CustomLog logs/custom-access.log proxylog

This directive is a modified combinedlogs directive to use the HTTP_X_FORWARDED_FOR header parameter instead of the IP address in logging the request.

Save the file and reload/restart your web server.

I can’t remember exactly how I stumbled upon (no pun intended) this very exciting news but I did realize that this had been out since January and I only got to know about it today and that’s precisely the reason why I’m blogging about it.

It’s come to my notice that a lot of good, exciting, newsworthy things go on around us on a daily basis and we are almost completely oblivious to them. I believe that if you find something (a resource, a link, a download, whatever) that is useful not only to you but to someone else, publishing it (or telling about it) is doing great service. Those in the Social Network Services (SNS) space like to call it social bookmarking.

Google’s free SMS search is a service that enables you to access a number of Google’s search features online through SMS. So you could do things like language translation, check the meaning of a word, check the latest headlines, retrieve latest sports scores and even lookup Bible passages with it – all via SMS.

Why am I excited about it?
As at 2007, Africa had over 280 million mobile subscribers (Source: Blycroft Ltd.). GSM subscriber growth has been at an average of 62% annually (Source: http://www.gsacom.com). A considerable number of the handsets used in this region have basic functionality – voice and text. Due to their lack of complex features like web browsers, you could say that these devices are not capable of accessing data-rich applications.

Not so anymore. With Google SMS, handsets that were unable to access the mobile web have a chance of accessing useful online information. Whether it’s weather updates or latest sports scores, all this information can be retrieved using text messages.

What’s also great about it?
When a content provider provides a service via shortcode, the default pricing comes at about ₦50 or ₦100 per query. I was impressed when I learned that Google SMS search was doing ₦10 per query. Anyone who’s looking to retrieve vital information can now do so cheaply.

What else could be done?
I went through the list of services being offered and to be sincere, these are not the kind of services people around here will likely consume in large numbers: weather, glossary, translation, calculator? Ok maybe sports scores can be appealing to those who are on the move and will like to keep track of the scores of one of their favorite games but if local services that provide real value can be developed on this platform, we are looking at very good patronage. An example will be providing local listings search. It will be useful if anyone can search for certain businesses or products in their neighbourhood using the Google SMS service. This is just one of the many local services that can be provided.

How to use the service
To find out more information on how to use Google SMS search, please go here.

Technology Times Outlook is an annual event organized by The Technology Times Newspaper which is aimed at getting industry leaders together to come and discuss and deliberate on technology issues in the country and give road maps on ICT development in Nigeria.

This year, we had Mr. Jim Ovia of Zenith Bank Plc, Engr. Ernest Ndukwe of the Nigerian Communications Commission, Chief Leo-Stan Ekeh of Zinox Technologies Ltd., Mr. Chinenye Mba-Uzoukwu of GrandCentral and Mr. Akinwale Goodluck (Corporate Services Executive) of MTN Nigeria Ltd. in attendance.

The event was held yesterday February 26th, 2009 at the MUSON Center, Onikan, Lagos and officially started at about 9:30am and lasted until about 5:15pm.

Ijeoma Nwogwugwu, the editor of Thisday, The Saturday Paper was the moderator of the event.

Mr. Jim Ovia gave the first presentation where he talked on the topic: Empowering The Nigerian Masses Through Communication.

He described the masses as the less privileged, poor or less fortunate members of our society. In examining the digital divide, he shared some statistics such as the average income per capita being about US$500. Teledensity as at 2008 is 40% and only a measly Internet penetration of 2%.

He stated that the only way Nigeria can become one of the largest economies in the world by 2020, is through technology. In addition, the per capita income has to improve to about US$1,000. He also stated that Internet penetration is important for a country to become developed. He cited the cases of India, China and Singapore.

In stating some of the challenges to Internet penetration in Nigeria he made a rather interesting point that the greatest challenge to Internet penetration was the high cost of broadband access and not necessarily the cost of Internet hardware like PCs as we might have initially thought. NITEL’s monopoly over SAT-3 hasn’t helped either. Every time NITEL staff are on strike, Internet users are adversely affected. Internet Service Providers have to develop backup routes for Internet traffic to cater for their customers when such is the case.

In closing, he stated the top ten strategies for empowerment which I’ll briefly enumerate:

  1. Strengthen education
  2. Promote trade and e-commerce
  3. Create employment
  4. Distribute locally, relevant information
  5. Promote local entrepreneurship
  6. Target disadvantaged and marginalized groups
  7. Improve agriculture
  8. Social mobility
  9. Improve health care
  10. Encourage good governance

The next presentation was made by Engr. Ernest Ndukwe of the Nigerian Communications Commission (NCC) on the State of Telecoms Development in Nigeria and Sustaining the Next Growth Phase.

He started off by giving a few statistics on the telecoms market in Nigeria: Average annual telecoms growth in Nigeria has been at 8 million lines per annum since 2001. Africa has 280 million subscribers and recorded an annual growth of 38% in 2007. This (for the first time) surpassed the number of mobile users in the US (277 million).

In stating some of the challenges facing incumbent telecoms operators in the country, he referred to something he calls the Incumbent Disease where he described it as being the reluctance of existing telecoms operators to interconnect with new operators coming into the market. It’s the job of the NCC to check such behavior.

In stating the road map for the NCC this year, he said that their primary focus will be to facilitate faster roll out of broadband services in Nigeria.

He also mentioned that the NCC will work on resuscitating the activities of the Digital Bridge Institute. A capacity building institute that was nearly going defunct ever since it was brought under the management of NITEL.

By the side, I learned that the NCC has actually published guidelines on infrastructure sharing which encourages infrastructure owners to share these infrastructure with other operators removing the unnecessary need of building new infrastructure in many cases. Operators like Visafone and Etisalat are enjoying the dividends of this provision already through fibre-optic cable and cell-site sharing agreements.

An individual from a telco asked a question about what the NCC was doing about the 2.3GHz and 2.5GHz spectrum that was being utilized by the Nigerian Broadcasting Commission and the response was that there are ongoing talks with the NBC to see how they can release the spectrum for telcos to use in broadband deployments. At the moment, the release of the 2.3GHz spectrum looks more promising.

Also, it was learned that the 3.5GHz (a.k.a extended c-band) spectrum currently being enjoyed by telcos was originally operated by NIGCOMSAT until they had problems with their satellite. They still have plans of launching another satellite and it is learned that the NCC is discussing with them to use the proper c-band spectrum which makes a better business case than the extended c-band spectrum.

One other individual raised the question about what the NCC was doing to encourage MVNO startups and national roaming and the response from the chairman was really interesting. He said in a country where the operators can barely provide good service for their customers (due to inadequate capacity), it would be foolish to start making moves in those directions. Nigeria as a whole has probably about 15,000 masts, in mainland UK alone, there are over 40,000 masts. He said when the companies have built much capacity, no one will have to tell them before they start to invite MVNOs.

After the question and answer section, Mr. Chinenye Mba-Uzoukwu of GrandCentral gave a presentation on the topic: At the Outskirts of Our Vision: Our Past Need Not Be Our Destiny.

A rather engaging presentation. Mr Chineye was there to “peel the onions” as he took us through interesting facts comparing Nigeria and the rest of the world. He hammered on the lack of local content available on the Internet on Nigeria and by Nigerians and warned about how we cannot attain any level of development by being consumers instead of producers. He discussed the global financial crises and how the way to address the problem the crises has caused is to be creative.

Here’s some statistics that will disturb you. Half of a Yellow Sun - a novel by Chimamanda Adichie sold 255 thousand copies last year. 250 thousand of which where sold in the UK and only 5 thousand copies sold in Nigeria.

He also explained how capital flight is still occurring even with all the technology around us. Think about it, all the handsets, connectivity, bandwidth and content being consumed are produced outside the country.

What Chinenye is advocating for includes building a domestic Internet with local content and local connectivity (did someone mention NIXP?). We must choose to become producers. We can be better producers if we are properly educated.

The morning session was ended by the presentation Chief Leo-Stan Ekeh of Zinox Technologies Ltd. made on A computer on every Nigerian desktop: Myth or Reality.

Chief Ekeh (interestingly) made his presentation without slides and was as direct as he could be relating his experience as an entrepreneur – the rewards, challenges and accomplishments he has been able to make with Zinox Computers.

One of such, was the recently completed city-wide free Internet access in Enugu State. See here and here for more information. Chief Ekeh’s dream is to see computers on every Nigerian desktop and not only that but have 60% of all Nigerians computer literate by the year 2019.

One other thing Chief Ekeh will like to accomplish is to bring down the cost of Internet access so that a student in the University will have to pay no more than ₦5,000 per year to have unlimited access to the Internet.

One of Chief Ekeh’s concerns is that a lot of ICT companies in Nigeria make a lot of noise and would like to see ICT companies really making a difference in the society.

After his session, there was a questions and answers session and then a tea break.

On returning, there was a session by Ronke Oyeneye (Head or Legal and Regulatory Affairs  – MTN Nigeria Ltd.) on the MTN Foundation and their accomplishments.

Afterwards, Mr. Akinwale Goodluck (Corporate Services Executive – MTN Nigeria Ltd.) gave the concluding presentation on Developing a definite mobile broadband policy for Nigeria.

He talked about how the average revenue per user (ARPU) in advanced countries is about $30/mo whilst in Africa, it varies between $4 and $20/mo. In such markets, the economic driver is volume of talk. Since it’s majorly a voice driven market.

He went on to explain the disparity between what we call broadband in Africa (300 – 500kbps) and what is regarded as broadband in other countries (1mbps and above).

He mentioned that deploying broadband not only requires speed but also the content to make the speed worth the deployment. There’s no use having a 1mbps pipe if you just check your email and do light surfing. You have got to use data intensive applications to justify the installation.

It is their belief that as the market develops, there will be a shrink on voice usage and more demand for data services.

And the event was brought to a close by the editor of the Technology Times Newspaper, Mr. Shina Badaru.

I hope you found this roundup useful. It’s not a bad way to launch your blog now is it?

About this blog

Tim Akinbo's Weblog is the personal weblog of Tim Akinbo. Here he discusses issues relating to technology. Special interests include the web, mobile technology and location based services.

Photostream

    Panel Session on Realizing Nigeria's Internet PotentialDelegates during Justin's Keynote PresentationBarCamp Attendees 1main hallmain hall 2main hall 3
  • Ola White: Its what we've been waiting for for so long... Its time to get the buzz on... i just hope it w [...]
  • Kizito S.M.: What I gather is that this G-Buzz is something like a blend between Facebook Updates and Twitter fol [...]
  • concept37: They are trying to out-facebook facebook and out-twitter twitter, Folks who want to do these things [...]
  • ray: Funny u took it from the LBS angle, which makes better sense. But from the social networking perspec [...]
  • Ahmad Mukoshy: I've been using uniqid() for months now ;) #Lolz . I came across it on the php docs web site af [...]