We can make learning code easier in Zimbabwe. Let’s teach each other

L.S.M Kabweza Avatar

learn-code-teach-codeAfter writing the “To learn code, teach code” article last week, I got emails from a few people asking me to teach them code. Some offered to teach me how to write secure code. And most, who had experienced the same, just generally echoed that it’s a great idea.

But then sharing my experiences in an article is good, but it doesn’t really change much on the ground. And the reality is I don’t want to learn all languages and platforms under the sun so I can teach those contacting me. Actually, reality is I don’t know much programming aside from clumsily hacking together a WordPress plugin in PHP. Wouldn’t it be great if anyone could offer to teach people in the community?

So, maybe we can do something together as a community. Individuals, tech startups and large tech companies and the the tech hubs that have been established can all be involved in an initiative to learn and teach programming. The tech hubs locally have all acknowledged and made a deliberate push to start skilling people in all things internet and mobile. Maybe we can all learn and teach 2 hour session there?

It can be evening events where for example every Thursday, for two hours, someone is teaching something. Every hub can do this and we can have a central place where these events are posted. Can be a Facebook page or group or just an email list even where people share learning and teaching programming opportunities. For example, anyone can post “I’m teaching an introduction to python in a week at Muzinda Hub. Please confirm attendance by replying to this post so I have a good estimate of the numbers“.

Private companies and startups can be part of this network to do “learn code/teach code” meetups at their offices. I know we can at Techzim. And these would serve (in addition to the acquisition of new skills that is) as a general networking thing as well. A bring and share thing for drinks & snacks etc…

We can even have a very loosely coordinated movement here in Zimbabwe and even globally where we all acknowledge that we are learners and teachers that need each other. People identifying themselves with the initiative can wear t-shirts that say “I teach code” at the front, and “I’m learning code” at the back. We can do it on social media by using badges on our profiles. We can put badges on our blogs etc… This would act as a soft invitation to anyone that wants to learn (and teach) to ask how they can be involved in improving this vital skill.

And it doesn’t have to be complicated code that you’re teaching. it can just be what you learnt setting up your first “hello world” app on Heroku, or Google App Engine. It can be even be something softer like setting up a WordPress site, or understanding Android development platforms, or how to build a simple Android app that just says “Yo!“.

It doesn’t have to be free. People rarely value free, but the point of such an initiative shouldn’t be making top dollar out of it. Anyone that teaches can charge a nominal fee of $2 per individual per session, payable after the session but only if the learner feels they gained something. Or something else, I don’t know.

I’m really just dumping the thoughts because I don’t think it should depend on one person. In fact it being loosely/independently coordinated and run by anyone in the community who feels like it, is better. The tech hubs though, can definitely play a more deliberate and organised role. Especially as their spaces are already organised to accommodate learners/teachers. But so are tech company boardrooms etc…

Let’s learn and teach each other.

image credit: tech.co


  1. A

    i am willing to share the basics on Java, Android, and C#.Net. using a few simple applications i have built before. Going through the planning, designing and coding can help someone out there, i definitively support this

    1. L.S.M Kabweza

      Thanks for the response and offer, A. We can organise that you do this at one of the hubs one of these days, and we’ll list your session. Will definitely be in touch.

  2. Tim Masson

    We offer training on website design / wordpress theme building and custom plugin design and also html / css / php / javsascript courses! We do have a couple of interns working with us at the moment and would like to offer these courses, and perhaps an internship to any young coders who are interested.

    Also we should coordinate with TechZim/HyperCube and anyone else who can offer space for a growing tech hub for start ups and entrepreneurs. We are also offering training to women entrepreneurs who want to grow there businesses, especially in tech. Would love to coordinate with anyone with the enthusiasm and commitment to help the Zim tech scene reach the heights that is should be at!

    1. L.S.M Kabweza

      Hey Tim,
      Thanks for the response. You can let us know what training you’d like to give and we can post it here. I’m thinking a very short 2 – 3 hour lesson is the best so that there’s as little disruption of daily life as possible for the people being taught. And to teach one specific thing that is useful, no matter how basic it seems to you. And maybe in addition a few prerequisites in terms of knowledge so that you can touch the ground running with those that sign up. Both Hypercube and Muzinda are open can avail a day. Let me know if you want me to check with them once you have session title, date and time. email is limbikani at techzim

  3. Trevor Sibanda

    Great idea,

    I am offering to teach for free to anyone the basics of pen testing, defensive programming and advanced c++ ( just a basic introduction to the standard template library) and if you want to get your hands real dirty. I will have to charge. And to the brave hearted, an introduction to malware analysis and reverse engineering.

    (If you have a certified ethical hacker certificate, make sure to contact me…. you wasted money on nothing more than theory and case studies )

    I am currently based in Bulawayo, if interested just send me an email, trevorsibb <<<>>> gmail [dot] com .

    Might organise with SkyHub.

    1. L.S.M Kabweza

      Cool @Trevor. Thanks for the response. If you have a specific date you want to do this then please do let us know so we can help get word out. I recommend you focus on one thing that can be taught within 2 – 3 hours. That way there’s less investment of time and energy + less frightening. Also keep it simple and attractive for anyone that wants to learn. E.g. “learn how to test if your site is secure in 5 simple steps”.
      Good to also list the prerequisite knowledge. (None at all / Knowledge of basic internet terms/Basic programming terms / PHP entry level ) etc…

    2. tino

      i want to learn coding from scratch
      please help

  4. OSSZ

    This is a brilliant piece. Its quite simple really to get people together after work or during weekends. We have plenty resources to be able to do this. But we must first analyse how we think and work in Zimbabwe to come up with how we can help each other to code. After doing that we will be able create an ecosystem that allows people to learn and teach code. The more people we have who can code the easier it will be solve our day to day problems.

    1. The biggest hurdle is our upbringing as a people. We were taught to go to school, to make sure we were the best in our class. After that we developed a killer instinct. One that says i want it all to myself. I am the best and most importantly what i know is mine to use to beat everyone in the game.

    2. Our economy has created an even more complicated ecosystem for us to live in. One that says whats in it for me every time we are confronted with a problem or an opportunity. This tends to cloud our judgement most of the time. Instead of helping each we scheme on how we can do something better than the other person.

    3. We have coders who know how to program, and we have non-coders who have a deep understanding of problems in our dear country but have no clue how to code.

    4. Lastly i am not here to stereotype. I am here to highlight that for what you are proposing to work we must confront our issues head on and promote collective effort and development of solutions.

    I liked your last article where you highlighted how Econet is crying foul on ZESA tokens while it frustrates its ecocash agents who are trying to signup on telecash. This is not a reflection how econet is as a corporate, its a reflection of how we Zimbabweans think or run our affairs.

    I am personally ready to donate time and space into seeing Zimbabweans willing to code our country out the several challenges we face today. And I am happy that there are several like minded people commenting on this article.

    1. L.S.M Kabweza

      Hey. thanks for the response. We can’t solve a way of thinking over night. I suggest every little positive thing that anyone can do will help. If you are ready yourself to offer your time and space to people that want to learn and teach, that alone is good enough. Let’s focus on that and the negative stuff will change, one day at a time.

      If you’d like to teach something, invite some people you know that may benefit from it and just go ahead teach it. if no one you know is interested, let us know and we’ll post it here and maybe some strangers will appreciate the opportunity to learn. It’s a good thing to meet new people!

  5. tsano

    i have experience in mobile application development(Android), Web development(Joomla, html, css, php) and i have developed a couple of applications with these technologies. I’m determined to see my country progressing. i also have a tone of programming resources(Video tutorials (from sites such as lynda[dot]com, Video2brain) and E-books) and i’m willing to share.

    Keep me posted!

  6. Khayelihle Tshuma

    I believe unless you dedicate your self fully to the discipline of developing software, by that i mean going full circle on the various concepts in the art , a 2 hr weekly session will not get you very far. Software Engineering is not rocket science but if you want to build a rock solid professional product take our time to do a complete course on the subject. As a developer myself, I will tell you , we need more developers NOT more coders. Anyone may write program… Not everyone may develop software. That is why you never hear people clamoring abt 2 hr weekly sessions in Architecture , Acturial Science or Chemical Engineering. Owning a computer does not mean you are a programmer , in as much as owning a house makes you an architect or builder.

    1. L.S.M Kabweza

      “You don’t need to become a software engineer; you just need to be able to build the first version of Twitter, or the first version of Yo. Those kind of things can be done by an average person who has no background at all in computer science. You can go on and hire proper engineers when you have the problem of needing to scale the app so that it can handle 10,000 users a day. What a good problem to have that will be.”

      1. Khayelihle Tshuma

        Hi LSM

        The gist the comment is its not all about coding. There is plenty of aspects that I would consider much more valuable than writing code. There is a tendency to think it all about code. There are important aspects of building software that are being overlooked because of this “code rush” such as System Design , UX Design , Re usability of Code, Code Elegance , Software Project Management. Lets not rush to teach, but rather lets teach things the right way. A student with a well rounded education (formal or informal) is a greater asset to our nation. Its not all about the dessert…Lets have our greens guys. And ..From your comment , I see you are routing for enterprenuers not developers in this “Learn to Code ” drive. Which is perfectly fine, but lets not forget to have our own home grown “proper engineers ” . I would recommend you make a distinction between those that “build the first version of Twitter” and those that “scale the app so that it can handle 10,000 users a day”. I would love to see a well rounded IT ecosystem of the business minded and those with the technical prowess. It would really be shameful to us a s a nation if we manage to do the first versions and have to outsource the scaling and refinement of our s/ware to outsiders.

        1. L.S.M Kabweza

          I’m in agreement with you. We do need more engineers. I’m really just advocating for people being able to write basic lines of code the same way they are able to write lines of basic english. A lot of people that have app ideas that they can test themselves right now, can’t because they cannot do basic stuff.

          1. L.S.M Kabweza

            Likely, however, the 2 hr a week session may result in someone developing an appetite for the deeper stuff, once they experience how much power a few lines of code yield

        2. agree

          totally agree with Khayelihle Tshuma.. for me i think the better approach would be to start at the grassroots level. start teaching the kids and make them aware of such opportunities. we need to invest in the future..so many people are writing bad code out there we don’t want to add to that number especially when people do it for the money.

  7. Thomas Mutswiti

    LSM contributors should not give opinionated comments too much here. Let those who can teach basic code say so and those who think they can do the big scary developmental stuff say so too and tell us where and when they can do it and what they require. Interested parties should then be able to choose where they want to go (coding or developing).

    Am pretty sure everyone knows Zimbabwe needs macro economic interventions etc but for now lets teach/learn code first and those that can develop should teach/learn developing.

    1. Khayelihle Tshuma

      Comment sections are meant for the opinions of article readers. An open communication platform is vital for growth of the site and ultimately the tech ecosystem in Zimbabwe. I will not be bullied into silence. Gone are the dark ages where opinion and views are suppressed. Any way , I teach programming courses at NUST and have done some work on Java at Ski Hub. Those interested may contact Ski Hub admins or enrol at NUST.

      1. Thomas Mutswiti

        I hear you about opinions but my point was that instead of then stating where coding/developing info can be accessed (which by the way if the useful part), it was getting lost in opinions only. The good thing was you stated your opinion (when responding to my comment) but still stated the relevant information of where to get the education if one needs it. It might also be better to elaborate if the enrolling at NUST bit is about short courses (over what dates and also if there are Harare sessions or one has to be strictly in Bulawayo etc or a fully fledged programme (Electronic Engineering, Computer Science etc)).

  8. tino

    hey i want to learn code and programming from scratch please do help