What are the challenges of being a programmer in Kampala?
Resources. The software isn’t in great condition and they are always forced to use platforms that are JUST acceptable. Programmers here get tired of using simplified versions that don’t give them full access to the software’s potential. A lot of times, and because they don’t have the money, they are forced to use unauthorized versions. This makes it harder for them to publish code when they know it wont be accepted. There is also a fear of being tracked down for using unlicensed software. This limits the programmer’s ability to push the potential.
Why should Software be developed in Kampala?
Many believe it is the field with the most potential. One programmer explained, ‘I see applications from the US that probably work great for the US market. But this doesn’t mean it works perfectly here. So you need someone who can adapt these applications to the local setting.’
The programmer went on to explain, ‘Or you can develop something from scratch. You have to create your own things because you train yourself to handle your situation on your own time. It’s cheaper and you are no longer dependent on people/partners abroad. And many times the program from outside need specific hardware that is not here. The applications don’t work to their expectations given the local infrastructure. So you need homegrown platforms in the effort to fill this gap.’ It was also made clear that if you only import technology then you miss an opportunity to create work.
One student explains, ‘There is always software development. Where is the world moving? It’s moving to a digital age and you need software to run it. Even in a small county like Uganda. In five years most of the things we will be using will require software.’ When I asked if we could just import the solutions the programmers disagreed. ‘It’s cheaper to produce it locally.’
Firefox is an example of a project where the programmers worked to translate the interface into a local language (Lugandan). Many of the programmers referred to this project. The programmers made clear that they were the only ones who could do this kind of work and that it was important to create tools and applications that reach out to people in the rural areas. One programmer explained, ‘if people in these areas can start to understand the Internet then they can figure out how it works. They can then create their own versions or maybe even something better!’
One programmer explained, ‘This is an example of a process that cannot be done abroad. It has to be done here. It’s about personal solutions. You need to talk to the user and you need to know their needs.’ When pushed to explain why, one programmer argued that he had worked previously to develop a software solution for a company in Uganda. He explained that most of the contact was via Skype and e-mail. In the beginning this was fine but eventually he delivered a final product they didn’t want. He decided to go to their office and spend a week with the team. He said, ‘Only then did I start to understand what it was they wanted. I could get to their need. This is something you can’t do from Skype in Germany. You need that physical contact. You need to know what the person is saying.’
What kind of software works in Uganda?
One programmer explained, ‘Software has to be easy to use and cheap. A lot of times users reject a program because they simply can’t figure out how it works. Sometimes great software is created but it’s too expensive for people to adopt.’ The programmer went on to say, ‘Great software has to find the sweet spot between the two. When working on a project there is always a lot of focus on how to create something really cheap. Every kilobyte of data costs money so the more you can do with less the better.’