Hacker News new | comments | show | ask | jobs | submit login
Agony of an African programmer (iafrikan.com)
127 points by ilhackernews on Apr 6, 2014 | hide | past | web | favorite | 132 comments

I would gladly start working with programmers in Africa. I'm based in Europe (Poland), and for a long time I've been thinking about how we're working with people around the globe while completely ignoring the huge continent that is right within ±2h of our timezone.

The problem begins with the word "Africa". Obviously, this is a meaningless word, describing an entire continent full of radically different countries. And yet we use it. I know how I get annoyed when my country gets generalized as "Eastern Europe" (first, we're Central Europe, and second, countries in this part of Europe are quite different from each other). I can't even imagine what it feels to be thrown into an "Africa" bucket.

Then there is the issue of whom to work with (and where), how to start, how to build trust. It's just immensely difficult. I know next to nothing about African countries, much less about major cities, good schools, places where I could find programmers and business partners.

I am hoping for more ties between European and African developers and entrepreneurs, so that we can start working together. Which would hopefully make the life of an African programmer easier, at least on a practical (economic) level.

You could probably get in touch with the trade representative of any the embassy of the country you are interested in. That would most likely be a good starting point to get general information.

In Ghana a few good points of contact would be:

Ghana Consulate Warsaw: http://www.worldembassy.us/embassy/ghana-poland-warsaw.html

Google Ghana:

Mark Davies: http://markdavies.net/

Ghana Telecom University College: http://gtuc.edu.gh/

Meltwater: http://meltwater.org/

University of Science and Technology: http://www.knust.edu.gh

> I know how I get annoyed when my country gets generalized as "Eastern Europe" (first, we're Central Europe, and second, countries in this part of Europe are quite different from each other)

Good point, I'm not fond of that oversimplification, either.

I wrote about it: https://news.ycombinator.com/item?id=6584077

That's a classical read worth recommending for those willing to understand the subject better:


The patchy and expensive internet access that many people around the world experience really emphasises the importance of offline or native apps. There's a relentless (and in my view unnecesary) push by many technology companies to run everything online as if it's some natural progression we should all be moving towards. Some of us, even with broadband access, don't want to run apps in the cloud, (where everything we do is gleefully tracked and recorded). It's clearly to the benefit of many companies to push for an "online first" approach, but I feel it's unsuitable for many apps. I'm not convinced it's a better experience for users either.

> I'm not convinced it's a better experience for users either

It's a weird situation where we have vast power available on our local environments and burn it all to run JavaScript VMs to access huge server farms for functionality which in many cases was already available in local applications.

It's all about moving the software market from an owning model to a renting model. If you depend on their online service to always be around and available to you in order to access your data and get things done, they have a tighter leash on you. Not to mention that cloud apps make it that much easier to data mine usage, pander advertisements, and squeeze pennies out of users at every opportunity.

Shameless plug... I'm African. Cameroonian to be more precise. I grew frustrated with slow download speeds over the "cloud" and the recent obsession over "syncing". I personally prefer normal file transfers over syncing. I created my own tool that does file and folder transfers over a LAN... without Internet. My solution is P2P (no servers), has faster download speeds compared to the Internet, can work even with ad-hoc Wi-Fi hotspots, and is cross-platform (Windows Desktop, Linux, Mac OSX, iOS, Android, Windows Phone 8) . You should try Feem. http://tryfeem.com

I guess the ehm... how to put it nicely... "Eurocentricness" (?) of the screenshots are a deliberate choice and a real life example of the things you have to put up with as an African programmer?

Exactly. The "Eurocentricness" of my screenshots is a deliberate choice. I try to hide that I'm African as much as I can. I prefer email support over voice so that our users and customers don't have to deal with my heavy west african accent. Paypal is also blocked in my country (Cameroon), but I've succeeded to get an account set up for me in Europe. Why go through all of that trouble ? I believe the best path for an African entrepreneur is to build something that can compete and be sold at a global level. Right now, 73% of our users are in the USA.

I'm living in Malawi for a couple of a months and I totally agree the cloud features and automatic software updates on my computer have become a huge nuisance. Often the internet connection is slow (even on Skyband EVDO) and automatic updaters or cloud sync can easily suck up all my bandwidth.

Sometimes I find my internet totally sucking only to find out there's some app like iCloud photo sync trying to download some photos from one of my contact's streams. Or at one point Mac OS decided to download a sizeable XCode update in the background.

These features are a big convenience back in Canada, but really frustrating when travelling and using slow connections. I really wish there was one setting somewhere to turn off all background syncing and downloading.

So far the best solution I've found is to install Little Snitch and just manually approve connections.

I'm the opposite. I'm south african, but I don't want to have to download your native application to get locked into yet another walled garden.

Most of the apps I want to use don't make sense without internet access anyway.

How do native applications lock you into a walled garden and web applications don't? It's the opposite.

Native applications mean you own the data you work with instead of surrendering it to a remote server you have no control over. It means you will be able to use that data even after the provider decides that the application is not profitable any more and they take it offline.

Is one of you talking about desktop apps while the other is referring to smartphone apps?

I think the argument is that every native application is effectively something akin to facebook's walled garden.

1) sharing data between apps is near-impossible, unless format converters are written (they never are) and explicit manual steps are taken.

2) linking between apps is impossible (e.g. you configure an address for a client then click/tap on it to navigate to said client when the application is not made by microsoft).

3) searching across apps is impossible. You can't just go to google.com, type in what you remember and have it show you the app.

4) native apps are expensive, because they never have a huge market (compared to online apps).

5) native apps are really badly supported.

6) you can't give anyone else access to your data (easily, just look at how long it took microsoft's army of developers to give office some semblance of real sharing. And it's still not up to par).

7) anyone you want to give access to a doc now has to buy your (expensive) mobile app.

I'm not saying you're wrong, just that you are forgetting quite a few facts here. Native apps are usually self-contained, small, unmaintained things. Yes, that does have some advantages, but it also has large disadvantages.

I would even agree with the "ads are good for you" argument to some extent : these companies are "spying" on you in order to attempt to create (theoretically) win-win economic transactions. Essentially they show you stuff you want, in order to make you want to buy/have/rent/... it. That is good for you (you get "value" in the economic sense), the other side gets some money, and a small "tax" is paid to the intermediary. Economic activity goes up, and it becomes easier to get a job, ... etc. Of course this argument only holds for pay-for-transaction ads (ie. not for banner ads, not for things like facebook, essentially only for google's model).

> 1) sharing data between apps is near-impossible, unless format converters are written (they never are) and explicit manual steps are taken.

This is different for online?

> 2) linking between apps is impossible (e.g. you configure an address for a client then click/tap on it to navigate to said client when the application is not made by microsoft).

This is not true, all major operating systems support custom URI handlers.

> 3) searching across apps is impossible. You can't just go to google.com, type in what you remember and have it show you the app.

This is somewhat of a fair point, but if you already have the app installed you can search your installed applciations, which will be a limited search space.

> 4) native apps are expensive, because they never have a huge market (compared to online apps).

This is true, but I believe the cause is closer towards ads/datamining.

> 5) native apps are really badly supported.


> 6) you can't give anyone else access to your data (easily, just look at how long it took microsoft's army of developers to give office some semblance of real sharing. And it's still not up to par).

There no reason something like Google Docs couldn't be implemented in a native application, APIs are still just APIs. It may just seem less natural to do so for some reason, though.

> 7) anyone you want to give access to a doc now has to buy your (expensive) mobile app.


[1] https://play.google.com/store/apps/details?id=com.dataviz.do...

[2] https://itunes.apple.com/en/app/documents-free-mobile-office...

So, you can easily export data from any web service and import it into a competing web service? And how exactly would the same code that does that exporting and importing on the server side not work on the client side?

Other than that, I think you are mostly confusing cause and effect - none of those are results of technical limitations of "native apps" per se, but rather an effect of the marketing push towards "the cloud". After all, Firefox is a "native app" - as you might have noticed, it's an "expensive small, unmaintained and badly supported thing with very few users".

This article really nailed it. I spent two months last year in the D.R Congo and in those 2 months I had approximately only 4 hours of coding.

Electricity was reliable only between 11PM to 5AM and we spent New year's eve in the dark.

My data provider had a special 3G plan where you get 1Gb data between 12AM and 6AM for $1. This worked well for the first 2 weeks only then connection became non-existent. The only thing the provider had to say was "sorry but we don't have coverage in your area."

Yet I met some brilliant folks who would make amazing programmers if only they had access to all the resources we get with reliable internet and electricity. I spoke with many of them about starting a computer club where we meet weekly, share ideas and learn from each other. Some were kin but many were skeptical because they're used to unkept promises.

Edit: Forgot to mention that the state has installed fiber optic in some parts the capital city but nobody wants to use it because they know the government will abuse it and extort millions from users. And the country's ccTLD .cd is still one of the most expensive in the world.

I wonder if Joey Hess has any advice he could offer to people in such a situation. He's obviously optimized how to be productive out in the middle of no where with limited network connectivity.

I reckon a big piece of being productive involves learning how to get as many needed resources available offline as possible. If you have offline resources, your biggest hurdle is limited to electricity availability, which I imagine can be solved with batteries and renewable energy.

Africa is a big place. From what I hear, Nairobi is one of the most interesting places to be an entrepreneur these days. Yes, there are huge challenges all over africa including, but not limited to, corruption, unreliable power, political instability, and terrible infrastructure.

But this very constraint is what drives projects like M-PESA, and Ushahidi, and BRCK.

Also, Software Developers in the US and Europe don't necessarily make 100,000 Dollars. In some spots you'd be luck y to make half that.

> Also, Software Developers in the US and Europe don't necessarily make 100,000 Dollars. In some spots you'd be luck y to make half that.

This is correct. Moreover, European salaries are also often lower than those in the US tech hubs.

I would also go so far as to say that nowhere in the US does a median web developer's salary afford her/him a particularly luxurious lifestyle. Salaries are always adjusted, among other things, for regional cost of living.

When I made 6 figures in Washington DC, it afforded me roughly the same standard of living I have in Pittsburgh while making $30k less. That is to say : access to a studio or 1-bedroom apartment, a low cost vehicle and the ability to socialize occasionally while still contributing modestly towards my savings.

Here in Western Europe, earning $100,000 per year would be exceptional. You would have to be both self employed and a highly valued rockstar developer to make anything in that ballpark. A third to half that much is more common, and that doesn't take cost of living into account. Paying $15,000 a year in rent and another $10,000 in utilities for less than 1000 sqft of living space, another few thousand per year for a parking license, about $5000 a year in road tax etc. A California cost of living on a Mississippi income.

Europe is a diverse place - From my experience, 100K isn't unreasonable for a seasoned programmer in London or in most of scandinavia. You'd be lucky to get half that in the less well-off countries, even within EU. And outside of EU, well ..

This description sounds a lot like eastern europe :) When I used to live there, electricity was only available when it wasn't raining. The internet was really crappy and it used to cost a pretty big percentage of my salary. Investors were practically non existent, and the brain drain took its toll on any innovation attempt (alongside the corruption). I have now left eastern europe for a better western country, and I have to face their '1st world' complaints. A brit does not, can not understand what that is like. I think the same goes for americans. Feel free to downvote your ignorance :)

I can totally relate to this, but it gets better, doesn't it? Today Internet is often faster and cheaper in the eastern europe than in the west. We no longer need computer books so much. As for brain drain, it's more of an opportunity if you're a developer.

On the other hand, we have every piece of software available in the pirated form and had no shame of using that. Haven't we?

For what it's worth, 250 Mbps (20Mbps up) connection costs $25 per month in Poland (24mo contract).

he's very probably exaggerating the electricity thing and yes the internet is better today in romania (where he left from) than in many other west european countries mostly due to brand new communication infrastructure and a booming IT sector.

@leaveyou exaggerating? really? Otopeni had power outages during most rainfalls, although it's neighboring Bucharest. I still talk to people there (relatives) complaining about this situation in 2014. I know that the capital city had it easy, and probably still does, along with other major cities. But the only internet available in small cities was via copper phone lines. I could go on about this forever, we had to use electricity generators and diesel heaters just 10 km away from the capital city. I guess some people take a lot for granted :P

Nope, I worked in west Africa and spent time in Accra. If anything he is underselling the electricity issues of that part of the continent. Big organization have their own diesel generators because power will go out 10 to 20 times a day especially in residential neighborhoods where power isn't considered essential.

sorry for the ambiguity, I was replying to #guard-of-terra who was replying to #randunel who was complaining that eastern europe is a lot like africa in the sense that there are frequent electricity blackouts and bad internet, which to me is difficult to believe (he's was very unlucky).

Exaggerating? No. When I was in TZ the power was out at least 12 hours out of 24, and this was in a good neighborhood.

Wouldn't an UPS be useful for offsetting the power supply problem? Even just a laptop with a battery in would help you through intermittent fallouts. And for longer stretches, a diesel generator should work. What am I missing?

> 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.

"at least $100,000 dollars per year"

..."at least $100,000 dollars per year"

Where can I find one of these mythical minimum-100k-salary programming jobs, without having 10+ years of experience and working for a massive tech company?

Source: UK twenty-something.

Silicon Valley and the financial industry. Those have always been the high paying options. But outside those areas, most normal programming jobs are closer to half that.

Honestly, if an African programmer makes $20,000 per year, he's not that far behind a starting Dutch programmer (though programmers here are seriously underpaid compared to managers, for example).

In London with 5 years experience that's a reasonable estimation for web developers, especially if you are contracting

If anything, that's an average for well-seasoned developers in one of the best paying cities in Europe. Not a minimum salary ("at least") of a regular programmer in Europe in general.

Last few places I've worked, in London, devs with 10+ years were getting around $70 000.

While 100k (especially as a minimum treshold) is an overestimate even for richest European countries, "Europe" is not equal to "just Western Europe" or "just a bunch of richest countries in Western Europe", as some seem to think.

Apart from the UK, Switzerland or Germany, there are countries like Greece and Portugal, and there's Central and Eastern Europe, too.

Median programmer salary in Poland is 5500 zl, which is about 3900 zl after deductions and 1 USD = ~3 zl, so it's 22 thousands per anum (gross pay) or 15.6 grand net pay.

Grass is always greener, huh?

I can tell you from experience that anything close to 100k would be an exceptional salary in Western Europe (Germany, Benelux) as well, depending on how you factor in the exchange rate. If I simply multiply my income in EUR by 1.4 (average exchange rate vs USD) it doesn't look that bad, but you can only really take advantage of that when mail ordering something from the US or Asia under the minimum amount to owe import duties. You generally spend a euro like you would a dollar in the states.

I live in Sweden, which is by all means a "rich" contry. But a normal developer salary in my not-largest-3 city is about $ 50000 gross.

Working without stable power is such a hassle. Good luck coding something complex with a diesel generator going brrrrr a couple of meters away and all the UPSs in the building going wild. Or all the restaurants just shut down because the roads washed away and power is out for days on end. So no dinner. Or you find a place still serving but you end up with food poisoning because they can't cook properly in those conditions. True story.

Get out of Africa. Africa will steal your life.

If you choose to stay in Africa and have your potential limited by silly things like bad Internet and no electricity, then make that choice consciously, and for good reasons, like wanting to be near family. If you stay because you feel some deeper connection to Africa because you were born there, get over it. Get out of your comfort zone, live your own life. Consider carefully the costs of maintaining that irrational connection. Personally, I think it's a cop out, an excuse to be mediocre. It's a global world, stop thinking locally.

What would Elon Musk have achieved had he stayed in Africa? Substantially less. Get yourself into an environment that is supportive of your dreams and goals, not one that works against you.

Wow, it seems like you don't really know what you're talking about. It's not easy to move away if you're born and grew up in Africa. It's not like renting a U-Haul, pack your stuff and drive across the country.

You need a visa. But it's impossible to get a visa to work in US/Europe unless you have a job. And even trying and applying for a visa costs more than most people's monthly salary. And there is no money-back guarantee.

But finding a job is also not easy. Applying to some IT company in the US without being able to show of significant work experience? No college education from a well-known university? How can you get job experience that is sufficient to apply for an IT job when you live in a country that has the problems the article talks about?

And no, you cannot just apply to some junior entry-level job. You won't get a visa unless you are so qualified that the host country has a huge demand for people with your skills. And this is just one of the hundreds of problems you're facing when deciding to leave Africa.

So yeah:

>Get out of Africa. Africa will steal your life.

Thanks for that advice. Very helpful.

I was born in Africa and I'm trying to get out right now. It's not easy, but it's not impossible. I didn't get as good a deal in the birthplace lottery as Steve Jobs and others born in Silicon Valley, but I'll be damned if I'll use that as an excuse for a life of mediocrity.

Frankly, if the factors you describe are really what's stopping you from reaching your goals, you're likely to fail anyway.

>>Frankly, if the factors you describe are really what's stopping you from reaching your goals, you're likely to fail anyway.

A very narrow perspective of the world.

Though I hope not, but some day if you fail for reasons beyond your control despite your best efforts may be you will see for yourself why not all failure happens due to a individual's short comings.

The world is full of examples of people who work heroically only to meet chronic failure.

> The world is full of examples of people who work heroically only to meet chronic failure.

I'll bet that a large percentage of those people worked in Africa

Exactly! You're more likely to fail for reasons beyond your control (like no electricity, bad Internet) in African than in San Francisco.

But those things ARE actually under your control. Just move to San Francisco :-)

Spoken like someone who has never lived or worked abroad, and n ever met anyone who has. You can't just move to another country and expect people to let you in.

FYI: I've lived in San Francisco for 1.5 months, and I've met plenty people who have lived and worked abroad.

I'm not sure what your point is.

The point is they don't just let people in at the border, especially not from non visa waiver countries, and especially especially especially not when they think you might want to stay to find a job.

I was born in Africa and I'm trying to get out right now. It's not easy, but it's not impossible.

I am also working at emigrating, and it is a painful process. Huge amounts of bureaucracy. I have to shell out for English exams (despite English being my first language). I then have to shell out more for my work experience and degree to be assessed by the Australian Computer Society. Getting letters from ex-colleagues has proven to be challenging, because the letters need to be notarised - hopefully these will be acceptable- no guarantees.

I then lose an arbitrary two years of work experience points (at least) because I didn't study in Australia. Finally, assuming that I have enough points, and there isn't a revision to the Skilled Occupation List, and I am invited to apply for a Visa, there is another small fortune to be spent on visas. Any small oversight or error, and my money is gone. If I don't have enough points, I have to spend the same amount to have my experience assessed again in six months.

Fortunately, I have enough saved up enough money to play the emigration game, the same probably applies to you. Most people have not.

You have a point regarding electricity - South Africa was having rolling blackouts a few years back, not sure what the state is now.

One thing to consider is that it might be easier to grow into a big fish in a small pond than in a big pond. I've seen people in small pond countries grow into big fish then move to a bigger pond with their big fish credentials. Whereas when a small fish moves from small pond to a big pond, with only small fish credentials, it becomes food, forever battling it's way nowhere. Not always, of course.

Interesting conjecture. I would like to see if there's any hard data to support that.

You've not noticed the massive barriers to legal immigration being built in the West, have you?

You've found an excuse to give up on your dreams, have you?

I'm in the West looking out..

Remember that immigration effort is once-off, and the payoff is life-long.

I agree with you. This is basically the reason I left the US ten years ago. However, there is something to be said for staying and improving the place where you were born and raised - and that goes double (or triple!) if you feel a connection to that place and its people. I definitely think it would be out of line to tell people trying to improve the lot of themselves and their nation that they should 'get over it'.

I genuinely wish those who "feel for Africa" the best of luck in their endeavors to improve it. I'm just not one of them. I urge anyone who thinks they feel this obligation to carefully consider it: is it genuine, or is it just an excuse to stay in your comfort zone?

In other words, vote with your feet. I get it. The idea being, if the government notices (and cares) that it's losing smart, productive, tax-paying (I assume) citizens then the government will have an incentive to do something (hopefully, something good) about it.

This is one of the reasons for the mass exodus away from certain US states and into others. People vote with their feet, and eventually policies catch up due to consequences.

That would be a mistake. Economically speaking, Africa is one of the last place on earth that is widely underdeveloped and has huge economy wide upside potential.

If you ask me, winds are blowing the right way for Africa. It's a good time to be there.

Maybe if you want to sell commodity stuff (furniture or cars or beer), but not for innovation. How many ground-breaking tech things have emerged from Africa? Very few. And that's unlikely to change any time soon.

Much of Africa is indeed the land of opportunity (with the exception of South Africa, which has serious structural and political issues, and is in a sort of terminal malaise).

The calculus changes once children enter the picture though. The continent (a huge place to generalise about) isn't exactly the sort of place to risk raising a family, unless you are rich enough to be able to maintain a ready escape plan for them, and to educate them privately. You don't want to risk having them complaining in 20 years about the same things the OP talks about and being stuck here.

What continents should someone try? What's the immigration procedure like?

I am based in the US but travel to South Africa a few times a year. The tech community there is strong. Though I haven't had my feet on the ground in Kenya I also hear that there are some amazing things happening there. Startups like Soko.com come to mind.

Growing these areas will help. With that being said Africa is a large continent and a large portion of it lacks the basic infrastructure that we are used to. For example I met a guy through a friend who's entire business is setting up and maintaining generators for lodges and other businesses in northern Botswana. He was telling me that there are many areas up there where there is no access to a power grid so your only option is to have a generator (or solar farm) for power.

With that being said some of these challenges have also spawned some interesting solutions. There is a reason why Whatsapp sold for the amount that it did. It is really exciting to see technology begin to make it's way to this continent. The rest will come with time.

I think the article is plein of cliché about the africa: electricity, internet price ?!! seriously these things have been improved in most of african countries especially in the north of Africa (Ghana has the fastest internet speed in africa ), and now its much more an advantage than of disadvantage for tech companies.especially for salaries and low fees.

The question that I looked for an answer for in the article is : where is the silicon valleys of Africa?, I know that there have been many attempts to create tech hubs , like the "cyber parks" in Algeria and Tunisia, where you can rent offices with a symbolic price and create your startup where the process is covered by professionals of different fields (juridique,financial, banks ...) , but these cyber parks remains pretty much empty , or just occupied by big international companies selling their stuffs or promoting dead technologies to young students (like Microsoft)

Person of a Nigerian family here; with a Nigerian-born wife and who's been to Lagos more than 5 times.

Unless some amazing changes in infrastructure have happened in Lagos since the last time I was there in 2008, reliable electricity & internet is still a luxury a lot of people cannot afford.

I think one of the best examples I know of is Cape Town, but it is definitely a microcosm compared to the rest of Africa. There is an initiative to create a silicon valley environment with angel investors as well, http://www.siliconcape.com. There are opportunities for government investing options as well, which provide funding in exchange for creating a company that can provide stable jobs to locals for years to come.

I think the the situation in South Africa will also improve as we start developing the square kilometre radio telescope array to the north of Cape Town - which will require large amounts of server and computing power for data processing. This will attract more international interest, and Cape Town is also the home of an Amazon dev. centre.

It is true that Ghana has good internet access, the same is true for Zimbabwe (even though it has such a bad reputation, fibre optic internet is available). I think in the future we will see more data centres being built in Africa for worldwide redundancy. I think this will happen in Ghana and Nigeria as they have oil reserves to power the data centres as well as low risk for earth quakes.

I think there are lots of opportunities for tech hubs to arise in Africa, even though there are still lots of problems, it may even happen in an unlikely place, for instance Mauritius is trying to be forward thinking and is going to start providing tablets to every child on the island. Zambia are pushing for improved tech infrastructure - widespread rural telecommunications, which may lead to the development of large mesh networks. I think we have many opportunities to solve these problems we face in Africa with technology, with many opportunities for growth, and Africans are particularly hungry for change.

I wonder if creating the environment is enough. The thing that valley has and you can't find around is investors: From seed money to angels. Every region has 2 or 3 but that's about it. The culture is different and you can't change that overnight. Not to mention that Europeans are way more skeptical/prudent when it comes investments anyway compared to USA.

I volunteered at a Startup Weekend in Johannesburg last year and do agree with this statement. With that being said I do think that the investors or starting to get more tech savvy.

My family on my fiancee's side is from South Africa and I regularly travel back and forth between South Africa and the US. Whenever I'm there I try to line the trips up with tech conferences and/or local meetup groups. South Africa has a strong tech community that is doing really interesting things.

The thing that surprised me was that on my last trip I found out that one of my fiancee's family members is a investor in a startup. This guy is not very tech savvy, but even he could see the possibilities. Does the community still have a ways to go, yes. But with that being said I do think they will get there.

Also, the stuff happening in Cape Town is really exciting.

South Africa has serious structural issues preventing a tech revolution: a rotten school system, a welfare-based economy with a tiny tax base, that is dependent on credit-driven consumer demand rather than production, underinvestment in infrastructure, and government with a huge mandate, that is too timid/rent-seeking to change things (heaven help us if our Proportional Representation system fragments into something like those of Israel or Italy), big business that has a long tradition of collusion and price-fixing, a white minority that is hell-bent on maintaining the status quo, and a union movement that cripples job creation. Previously, South Africa was a resource-driven economy - there are limited traditions of entrepreneurship.

The chances are good that the African startup revolution, if it comes, won't start in South Africa.

The trouble with software is that, of all industries, it has the lowest barrier to entry and the lowest capital costs. Crucially, the marginal cost of deploying software across the globe is next to nothing. This is why the Microsoft stack is so dominant worldwide. It was so easy to export when it had a monopoly in the US, that Microsoft had nothing to lose and everything to gain by spreading its products across the globe.

African countries are not the only nations lacking in indigenous technical solutions. A place like Canada has over the years lost all of its comparative advantage in the technology sector to massive US companies.

One of the many consequences of "free trade".

This article is an interesting read that I can relate to, moreover, the author is from Ghana where I currently reside so I understand the challenges he's referring to. I however think that the issues raised are the same generalist ones being made about business/entrepreneurship in Africa that don't go deep enough to address the root causes of the challenges, the solutions successful people are implementing and some possible solutions that are yet to be explored.

Before I go any further I would like to state first that I'm speaking from the point of view of a Ghanaian entrepreneur and not an African entrepreneur because I am more familiar with the situation here at home and I would only be speculating about what transpires in other African nations.

Cost of equipment:


It's true that the duty slapped on the importation of IT equipment makes you wonder what the rational is because I was under the impression that one taxed heavily the importation of luxury goods or items that are manufactured locally to protect indigenous industries. However the market is flooded with used computers/laptops from abroad that are cheap and can get the job done (albeit a bit slower that one would prefer). A core 2 duo desktop with a 15" lcd monitor and a UPS will set you back Ghc700 ($260).

But if the cost is still prohibitive then you have to come up with an alternative solution. For example, when I got my first freelance project, I couldn't immediately afford a pc so I leased one from an internet cafe and agreed to share the work and revenue with the owner.

Availability of learning material:


I think IT is one of the few industries where so much leaning resources are available online for free and more so now with the advent of MOOC. If you don't have an internet connection at home or a usb modem then go the an internet cafe.

PayPal blacklisting:


Now this is a very annoying and unfortunate situation! West Africa is made up of the following countries: Benin. Burkina Faso, Cape Verde, Gambia, Ghana, Guinea, Guinea-Bissau, Ivory Coast, Liberia, Mali, Mauritania, Niger, Senegal, Sierra Leone and Togo (http://en.wikipedia.org/wiki/West_Africa). Of all the listed countries PayPal isn't in 4, namely: Ghana, Nigeria, Ivory Coast and Liberia (https://www.paypal.com/webapps/mpp/country-worldwide). One of the reasons PayPal doesn't want to do business with us is because of credit card fraud which I think is a rather lazy excuse. If Skrill can make it work then really...

However iTunes, Skrill, iStockPhoto, Hetzner.de, Linode, AWS, Rackspace, Register.com, Gandi among others all accept visa cards from Ghana so you can get by without PayPal (although you can't register your copy of Sublime Text so you have to I've with the annoying reminders or switch to Komodo IDE).

Banks here don't issue Visa Credit cards willy nilly but you can more easily apply for an international Visa Debit card and if your bank doesn't offer one then change to another institution!

I'm going to end this comment here because it's getting too long and I'm running on a UPS (lol) but my main point is that yes, there are challenges but they are surmountable. You either solve them head on or work around them but there is always a solution. And besides entrepreneurship is all about the fun of solving challenges anyway so come over to Ghana and have some REAL Fun!

Regarding fraud, I think that African (huge generalisation) governments just don't seem to take it seriously enough. Even in South Africa, where every SIM card should be registered, it isn't uncommon to see phishing emails with local numbers.

Companies also don't really care: phones stolen in one African country are sold in others (South Africa to Nigeria seems to be one popular route), and blacklists aren't shared cross-border. In South Africa, SIM-swap scams result in people's bank accounts being cleared out with cellular networks and banks both disclaiming responsibility.

Until the attitude to this sort of fraud changes, I don't blame payment companies for staying away from Africa.

Very true. PayPal has an incentive to handle more transactions, not fewer ... so making the deliberate decision to blacklist a region wouldn't happen lightly, wouldn't happen without careful study, and likely would be revisited from time to time.

The article writer speaks in this general direction, actually:

It is also high time our governments start to stand firmly behind young African men and women developers ... 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 and much more.

I would call taking their reputation seriously and dealing with the problems falling under the "much more" category.

Is bitcoin practical somewhere like Ghana? It's practically a use case for the people who have bad banking services, and service providers don't have to worry about fraud from buyers.

You could even start an exchange in Ghana, like these guys do in the Philippines: http://buybitcoins.ph/

The author forgot to mention something; Finding good staff.

Finding staff is difficult because of the scarcity of developers and anyone talented almost always has a job paying far more than a startup can afford.

Training juniors is the only alternative, but in doing so your company ends up being a training shop for other companies to headhunt from.

I totally agree with you on this. We had the same problem with recruiting talented staff when we started. We ended up hiring graduates who where on a 1 year National Service Scheme. We spent a quarter of the year training them and got about 8 months worth of production work out of them. A couple stayed on after the 1 year "obligatory service to the nation" period had expired and the rest joined better paying companies.

Honestly being a training ground for young graduates isn't that bad. It was very good for my personal development because teaching/training inexperienced but bright coders really raises your game because believe you me, they will challenge you and put you on the spot! Lol. I should probably make a living of organizing bootcamps for CS graduates and after 3-4 months, "auction them off" to companies … evil laugh!

>"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."

Either he doesn't consider Eastern European softwware developers as colleagues or he thinks all of Europe is London, which it certainly isn't. The upper limit he gave is more than most Eastern European developers make.

In Greece PhD level programmers make from 25-35 EUR[1]. It's abotu 26,5k with taxes paid. It's extremely bad, but that's the Greek reality apparently and Greece (was supposed to be) in Europe last time I checked. A normal BSc programmer is around 1,5k/month. You get the (sad) picture...

[1] http://www.dotnetzone.gr/cs/forums/thread/34443.aspx

"In Greece PhD level programmers make from 25-35 EUR[1]. It's abotu 26,5k with taxes paid. It's extremely bad, but that's the Greek reality apparently"

Uh that's pretty decent anywhere in Europe for anyone doing actual 'programming', i.e. not management or consulting, so basically meaning all junior- to mid-level software development jobs. I'm not even sure what 'PhD level programmer' means - it's not like 'programming' is an academic exercise.

OK, but this Greek programmer can move and work anywhere within the EU no questions asked, and that includes many places with better pay (among other things). Not so for an African.

sure the perspective is probably skewed, however the salaries listed are generous. I did some consulting in west Africa in the last 5 years and the majority of people working in tech and making 10 or 12k a year are only doing so if they are killing it.

The only people making more are working directly for foreign entities or governments and that is a very small community of people.

In reality most people I worked with were making around 1400 dollars per year.

What type of work were they doing? Because even in the dirt cheap, cut throat markets of sites like vworker and odesk, a good web developer can make significantly more than that.

they are doing basic programming and database work for small banks and businesses. The thing that is important that he said is...

>Add to that, a good number of African countries have been blacklisted from PayPal.

I actually tried to set some friends up doing work on odesk and elancer. It is simply not possible this part of the world(west africa, cote d'ivoire, ghana, togo, benin, nigeria) is basically cut off from international money transfers unless you are part of a high income elite that qualifies for real banking. So they could do work, but would never be able to get the money.

That makes sense... I wonder if there's an opportunity there for someone who is part of that elite to act as a go-between of sorts. I could imagine they have their payments sent to a PayPal in US or UK, etc, and then the account holder wires money to someone with an actual bank account in one of the countries you listed, who dispenses the money back in cash to the workers. I doubt there would be much money in it for the middle man, but the numbers you are quoting are right then that person would be having a major impact of the lives of those programmers.

yeah the problem is, that's pretty much what the point of sites like elance and odesk are, is to act as a go between and limit risk. So maybe there is just a niche for someone to cater to that area.

"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."

I don't think this is factually true.

That said, the article really makes you think how much easy we have it in the developed world, yet we always find the time to complain about everything.

"I don't think this is factually true." Agreed.

I work in a US metropolis. I don't know any web developers making $100,000 per year. I know seasoned software developers and engineers making that, but that is what experience costs. I can't really speak to the author's experience, but often, this downtrodden treatise on salary disparity tends to come from the younger, less-experienced programmers out there, regardless of nationality.

Ultimately, comparing salary to distant economies is fallacious. This is why things like cost of living should be taken into account. As an example, I'm currently earning less than a similarly-experienced software creator in San Francisco, while also spending at least an order of magnitude less on housing. I don't begrudge my SF compatriots their salary.

> Ultimately, comparing salary to distant economies is fallacious. This is why things like cost of living should be taken into account.

Yes, and it's easy to take things for if you aren't used to different cultural contexts. I know Kiwis who look enviously at Californian salaries without really properly understanding how much of that salary difference may go on e.g. healthcare costs that are taken care of from general taxation in New Zealand.

As another data point: I work in a (non-NY, non-CA) US metropolis, am largely a web developer, make $100k per year, and don't know many who don't who aren't absolutely at the beginning of their careers.

3-5 years of experience seems to be enough for 100k as far as I can tell. I don't think his lament is that far off.

edit: I may just be assuming that my peers make more than they do, though. It might be more accurate to say that it seems like most of the peers I meet socially make as much as me or (sometimes much) more, and when I hear about companies that are looking for someone, it's always in the 100k+ range.

In the Midwest, 60K/yr is not uncommon. I know a dev with 7 years experience making ~50K. But the cost of living here is nothing. I spend under 20K/yr and I eat out plenty, live in a 1000 sq ft apartment, etc. My friend making 50K supports his wife and kid easily in the new house they just got. Cost of living is huge factor when taking into account salary and location.

10K in the vast majority of African countries puts you way above average.

Something doesn't sound right with this. In Atlanta a developer worth their salt with 7 years of experience is going to be getting into the 80-100K range depending on their skills etc.. The only time it is lower is if they are with a startup and taking equity. Atlanta is also much less expensive the New York, San Fran etc..

Looking at Ruby developer salaries it looks like there is a bit of a different between Atlanta and the midwest, but the spread between New York, Atlanta and the Midwest appears to be a 30k difference from what I could find online. Which skill set does the developer with 7 years of experience have making 50K?

I'm genuinely curious.

He's making 50K by choice. He has a great work/life balance and spends his free time developing indie games. I mainly mentioned him to demonstrate that it's easy to live a great life on 50K here, whereas there is no way he could support his stay-at-home wife and kid on 50K on the Bay at the same standard he does here.

> Cost of living is huge factor when taking into account salary and location.

To add to this comment, I live in Silicon Valley, and spend ~20k/yr on rent alone, for a 600 sq. ft. apartment. I'm also not in the worst areas, price-wise. Of course, salaries tend to be higher here.

UK, outside of London the average salary is roughly £40k for an experienced programmer ($66k). It does seem to be climbing rapidly though, 3 years ago £35k was more the avg, now I'm getting recruiter emails claiming up to £45k.

So unsurprisingly it's just a sliding scale depending on your local GDP, there's not some universal pay grade.

Which languages? From what I understand you could earn that in South Africa and have a much better standard of living. Given the cost of things in the UK that is crazy....

All of them.

I think part of the problem is class, there's a psychological barrier in the UK that employees shouldn't earn more than managers.

The other part of the lower pay is that we had a lot more people dabble with development in our school system in the 80s/90s because of the BBC programs and the Micro/Archimedes in schools which means we started running short of developers a lot later than other countries.

Both of those are speculation, but that's my belief.

I've seen c#, Ruby, and the odd PhP with a decent salary up North.

C and C++ also has a calling up here, but more specialized to the particular company (think Ubisoft).

Recently saw a posting for a Linux kernel dev.

I haven't really seen calling for more niche languages, but I'm also only looking at the postings that come into my email.

Re the comment about management salary, I have been given that as a reason during salary negotiation as to why they can't pay what I'm asking.

The salaries I've been seeing have risen quite a bit in the past 2 years (after dropping suddenly, recession and all).

I, in Italy, as a junior software developer, earn €17000/year.

And genuinely I'm not complaining.

Yeah, it's not really accurate for the PIGS , and even in northern Europe, it's not as high as in the States.

I had to look the term up, but my first guess was correct ("Portugal, Italy, Greece, Spain")


FYI - Another one I learned while being in Europe is FIGS, which sort of represents the "more economically developed" Euro languages - French, Italian, German, Spanish. This pretty much covers every nation you would need to speak to in order to do legitimate business in Europe. (Scandinavia generally will do business with English speakers)

The Germans are pretty solid English speakers too. More so than the French, Italians, or Spaniards, anyway.

I live in Germany, good luck trying to speak English outside the big cities or people with lower levels of education.

Thankfully it doesn't matter to me as I speak the language fluently.

I was about to flag him for being offensive to Italians ;)

Possibly a dumb question, what does PIGS mean?

Maybe "Portugal, Italy, Greece, Spain"?

Actually it's PIIGS you add Ireland to the mix and you're right.

Portugal, Italy, Greece and Spain

Doesn't sound like much. What lifestyle do you afford on this? Any improvement prospects?

Better than half of my peers for sure.

Of course you can grow with time, both in salary and in responsibility, for now I'm the classical code monkey but I have an idea for a startup that would like to develop so I will leave the job before the end of the year.

I've read that many "young" Italians live in their parents house at least until their early 30s. Maybe he's in the same situation.

Actually yes, I live with my parents.

I would probably be able to rent a small 1-room flat but for now I prefer to save money.

I'm not sure you know what you're talking about, 17k in Italy as junior-anything, is EXTREMELY well!

I actually missed the junior part :)

First of, congrats. Out of curiosity, what technologies are you paid to use? Rails/ObjC (ios)?

Junior 17k in Italy? That sounds a little bit wild...

NOTE: Sorry, I understood 17k per MONTH. Scratch the comment (keep the congrats! :-P )

I work in C#, sometime javascript if needed.

For a small IT consulting firm.

Where in Italy?

My girlfriend studies Italian and we might move to Italy for a year or two, hence I'm curious. Significant differences in terms of salary?

A medium city in north Italy. There are significant differences in terms of salary and HUGE differences in term of jobs availability and cost of living.

Some planning is needed if you want to a nice living.

I thought about the north for sure - maybe Genova or Milano

You mean 17000 after taxes?


That's like what, 22K before tax?

Much more - you should consider that under "taxes" in Italy we also consider medical coverage (which is actually part of the taxes) and a retirement plan (which is not actually a tax, but practically it's almost the same). The retirement plan for full time, normal employees, runs at an incredibly high 33% of your salary. In my personal opinion, this is the REAL problem here, more than taxes.

I'm getting payed more than that for an internship in france!

> 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.

What, these students only work on getting good results in school, where they're studying? What a bunch of slackers.

I think that this may feel like a fun line to poke at but based on my experience in this part of the world I would say that what the author is getting at is that in education (with no exceptions given for learning software) there is a base belief in learning by route. people learn the single method to accomplish a task, if you ask them to do that very specific task that was on their c++ final in that way they will execute it flawlessly because that is what an A looks like and so they have memorized it. But the minute you change the constraints in any kind of way you find that people are missing the breadth of the entire skill set needed to function.

Which is a strong argument for rigorous coursework. The type that's sufficiently time-consuming that it trades off with personal projects.

Definitely, however this is a situation caused by a lack of teaching talent. Teachers are simply not skilled enough to create a programming curriculum that could be considered rigorous.

Thanks. Fixed.

Edit: On closer inspection, that post was blogspam, so I changed the url again.

Sometimes I think it would be a better idea to let any educated African (or any African for that matter) immigrate to any country he wants. In the first world, programmers (and most other professionals) are more productive and earn more. They can then send home some of the money they earn, which results in a net-positive effect of emmigration.

Currently the barrier to this solution are the immigration controls inspired by irrational fear (rationalized by unquestioned assumptions and generalizations).

Fixing African institutions to a point where they can compete with the rest of the world will take decades or even a century or two. The process could be accelerated by returning expatriates.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact