Pages

Wednesday, 3 October 2012

Agonies of an African Programmer: Part 2

Working as an independent mobile, web and software developer in Africa can be a trying experience.  Africa for so long has being recognized by the world as an agricultural continent and for the past decade many software developers ( African Code Kings )  are working tirelessly to prove that we are also a technological nation by building great websites , mobile apps and softwares that aims to solve our problems on the ground. This does not come at a cheap cost. We live in an environment that tech equipment cost 2-4 times than what it does in Europe and the USA, where technical books are almost nonexistent, where there are no credit cards to purchase from Amazon.( We have been blacklisted from paypal ). 
In Africa there is a problem, people still think Technology comes in a box like a camcorder, computer, laptop, iPad and so on..Let's all visualize technology as a process and something we are going to build ourselves here in Africa. I have listed below a few of the agonies myself and most developers go through as African Code Kings.

LOAD-SHEDDING.
Infamous "load-shedding" -- a practice of cutting off electricity to whole sections of the city in order to conserve power in Ghana. They never mind that you need electricity to work and you need to work to eat. Nowadays things are much better - they just cut off electricity without any warning whatsoever or the power fluctuates crazily and the electricity corporation thinks that is entirely normal. With this load-shedding factor you should be rest assured that most developers cannot meet their deadlines.

High Internet Cost
Internet bandwidth has being my major problem since I decided probably six years ago to venture into software and web development. Internet bandwidth in Africa is sold exactly at the same rate as phone credit vouchers. It is so expensive. There is no special package for developers who consume huge amount of data. This telecommunication companies forget that the internet possess a huge amount of informative data that can be used as a powerful tool for boosting economic growth and poverty reduction.

Investment
Most developers set up a tech start-up in search for investors to fund their projects. In Africa, most people do not understand the Silicon Valley style of Angel investment and funding, this so called investors perceive technology as selling tomatoes in the market. When they fund a start-up they are looking for the short term profit. For strong developers who do not need this kind of funding they work their ass out trying to fund their personal projects. They end up taking up so many odd web dev jobs that will in turn slow down their personal projects / innovations.

The Salary factor
It takes a lot of guts and zeal for a good African developer to turn down job offers and internships to pursue his passion. Once the money sets in, the developer tends to slow down in his innovations and instead works hard to better the firm or company his working in and to gain more promotions. A web and software developer in Africa earns from $10,000 to $20,000 dollars per annum whereas their colleagues in Europe and the US earns at least $100,000 dollars per year. You could be working hard to build great technologies that can help you rack in tons of thousands dollars when you are a tech-preneur. Next time if you want to be comfortable with such a job, think again? 
I personally turned down a lot of internship and job offers when I came home for the long vacation and I have learnt so much and earned so much recognition for a small I.T start-up Oasis Websoft, I created exactly a year ago. I am currently changing  from being just a developer into a great business man.
Every day I meet great techies who work for huge tech companies but they would have being better off as entrepreneurs building great technologies for Africa. You don’t have to blame them so much; this is Africa where women would hardly marry guys who do not have financial security.


Jack of all trades and master of nothing.
It is difficult to find a team who believes in the same vision for them join a start-up in Africa. You will realize that there are so many developers and startups building similar apps instead of coming together in the spirit of free and open source development to build one great app.
An African developer tries to play all the roles in a company from being the CEO to the company’s publicist. Instead of focusing on one thing and mastering the art. He spends his time mastering all the aspects of a company. It is sometimes good but it comes with its own banes.
It is also great for a developer to understand all the roles but it will be best if he can focus on one lead role and be a master of it. So in one start up we could have a developer, user interface designer, two top coders and one marketing guy
J

School
Each month a horde of new programmers, freshly trained out of Universities and professional ICT institutions graduate with impressive looking syllabuses, certificates ,degrees etc. claiming skills in Java, C++, C, Php, JavaScript,  COM, Oracle, SQL, HTML and MS Office. The problem is that, though the syllabus looks good and would be a good starting point for being a software and web developer, these students do not spend time working on their personal projects and instead code for a grade “A” in exams.
Bottom line: These guys are less than half-baked and cannot do productive work.
Those who get jobs afterwards land more technical jobs like computer administrators, hardware jobs and so on. Instead utilizing the methodologies they learnt in programming and so on. Companies who hire them for such job do not realize that these guys can actually build software to make their work a lot easy. It time for Africans to believe that software is actually something we can create for ourselves.


Awards and Competitions.
There's a difference between winning technology awards & competitions verses winning in the marketplace. The sooner African developers and start-ups recognize this, the better.
It is great to participate in code competitions and hackerthons to test your coding skills but it is a different ball game if you want to build kick-ass technology to solve real life African problems and make money along the way.
It is also high time our environment start to stand firmly behind young African men and women developers who are always up at dawn working on something they believe in. It is not enough to congratulate them vocally of their achievements, it will be right if you can support them with your resources be it financially, intellectually, skills set and much more.

The Moral Of The Story
System.out.println (“  It's not easy being an African software developer. Don't give up and always Ask God for directions. Use the right technologies for the right tasks.  The future of the African software industry lies in enabling the scattered bunches of individual hobbyist programmers. Those people who would be coding even if it didn't pay because that is what they like doing. People like that should be given a chance, should be given work to do, encouraged to stick it out. When there are enough programmers around and working as a programmer is a viable occupation that can buy a car and build a house, the industry will have grown up.
Until then, it is dog eat dog -- monkey go work, baboon go chop...
“);

Learn to appreciate the rainbow after cursing the rain. It's just like loving again after experiencing the pain!
 </ Raindolf >

References.
So you want to be a Web African programmer? - Guido Sohne (2003)
The Agonies of an African Programmer – Gregg Pascal Zachary

13 comments:

  1. Great blog. Very educative. Many lessons not just for the tech-preneurs but any enterpreneur. You have just began. You will be the biggest thing to have hit our tech industry in a long time. God bless and keep you on top. #MoreVim

    ReplyDelete
    Replies
    1. Thanks so much Freddy for your continuous support.God Bless you too.. #MoreVim

      Delete
  2. The piece is deep. You showed understanding of the terrain. Good show.

    ReplyDelete
    Replies
    1. Thanks for your comment boss.I'm really excited about it. Learning a lot from you. Glad i met you.

      Delete
  3. Good job. Keep persevering and the doors of success will be opened for you. You're among the trailblazers of a new generation in Africa. #MoreVim!

    ReplyDelete
  4. Hi,
    its really nice post. i apprentice for your post. thanks for shearing it with us. keep it up.
    NY CPA License

    ReplyDelete
  5. True, "There's a difference between winning technology awards & competitions verses winning in the marketplace. The sooner African developers and start-ups recognize this, the better."

    ReplyDelete
  6. I don't agree that "Jack of all trades" is a weakness in African development. I think overspecialisation is a disease in e.g. the UK, and it's a strength of African developers that they will take on any role they need to.

    ReplyDelete
  7. I think that a lack of good conferences/community events can be an issue (at least in Kampala where I am). Without people around you to learn from it's hard to fulfil your potential.

    ReplyDelete
    Replies
    1. Thats so true.as I said on twitter a lot has changed since I published this article, I might write a sequel in October to mark the article's first year :) Being a little bit of jack of all trades has taken my career to greater heights. Going to conferences and presenting my works at tech events has given me a lot of good publicity.

      Delete
  8. Thats a good piece Raindolf . I think Ghanaians should be masters of one or two things and also embrace the idea of team work where we work as a team to achieve an ultimate goal.

    ReplyDelete
  9. Competitons serve to boost your skills. Even Big companies use it to hire. And we all know africa is bad when it comes to global IT competitions so don't hide behind the fact.

    arthurugochukwu@gmail.com

    ReplyDelete