I yearned to learn programming since I was in high school. I would use every chance I got to expand my knowledge in ICT and, looking back, I can’t believe how far I have come since then.

Back when the Internet was only accessible via luxurious phones or a computer, it was hard to get my hands on any online learning resource since I could not access any of these devices.

The first step I took was to employ a dictionary. I wanted to learn about all the words used in the computing world. To my rescue, Macmillan dictionary nicely indicated computing against each word related to computers. I was overjoyed when I realized this.

I took out a notebook and skimmed the dictionary word by word, page by page to find anything tagged computing. Whenever I found a tagged word, I would note it down together with its definition.

This exercise took I don’t know how long but it got me a list of amazing words I could use to color my new world. It helped underpin ideas ranging from how computers function to the trends in ICT. It was a revelation.

Looking back, I think it was a foundation of a larger mission to understand ICT because the hunger to learn more became insatiable.

That was in form one.


In form two, I came across two soon-to-be favorite pull-out magazines inside the dailies. These were the “Smart Company” and the “Financial Journal”. They were released every Tuesday. I don’t know if they’re still available today, more than a decade later.

In my high school, we used to get newspapers each day pinned in a monstrous notice board so students can read during breaks.

The discovery of these pull-outs nudged me into friendship with the library prefects so I be allowed to pin the newspapers each day. Therefore, every Tuesday, I would keep the pull-out sections and read them at my free time. To my delight, no one really missed them, and so I ended up with a large pile of them.

Tracking technological advances in the country was such a joyous exercise I lack enough vocabulary to express. I learnt about the upcoming fiber optics undersea cable; three major fiber optic cables were heading for the Kenyan coast. I looked forward to fast and cheap Internet access that was promised by those reports.

The small treasure of computing words I got from the MacMillan dictionary kept growing whenever I learnt something new from these magazines. I would revise the notebook like my life depended on it, it does now 😉.


By form three, my passion for ICT had grown wings. My dream career had also shifted from electrical engineering to software engineering and nothing was going to stop me from going for it. I even had this project for science contest where I was theorizing a cyber cafe with slave monitors powered by one server so as to save money of running the cyber.

I was so excited about ICT.

So, when I got handed the key to the ICT laboratory having been a laboratory prefect, it was an opportunity to learn more. I convinced the teacher heading the lab, Mr. Bor, to get me an internet modem so I can load it with airtime and browse the Internet. Sadly, my 50 shillings of airtime wasn’t enough to find me what I wanted online but firing up the browser and searching, I think it was on Yahoo!, was such a beautiful and fulfilling experience.


When I cleared high school, all I wanted was to get online. I started with a Nokia 2626. It was sad that electricity was a problem, however, and I could only get to browse with the phone for no more than 2 or 3 hours a day and yet I wanted to be online more like 24/7.

Things improved significantly a few months later.


I received a cash prize from my former high school during prize giving day. With the amount and a little more from my brother, I got me a Nokia x2-01. This was way better. Actually, no. It was time travel!

I could now be online the whole day because it held power much longer and with its full qwerty keypad and a larger 2.4-inch screen, compared to a meager 1.5-inch screen on the Nokia 2626, it was from the future.

I sold my whole soul to it. I was completely hooked.

With my new computer, I started learning about how to get started with programming. I researched what it takes to do game development. I got introduced to the C language, for I read somewhere that to be a game developer, C was the way. (I haven’t verified the truth about that idea up to now since my interests shifted elsewhere.)

There was just a little hiccup.

It is almost impossible to learn programming by just reading; you don’t cram programming. Programming can be internalized better through practice. Therefore, I didn’t get a chance to progress at the speed I wanted because I could not access a computer with the required tools to do C programming.

This challenge did not stop me from learning about blogging though. It was like being unable to learn programming was a chance to start learning about blogging. I found WordPress. I created a blog and toyed with styling using html elements such as emphasis and lists. I didn’t know about CSS at the time.

But the results? Oh boy! The results were magical. In fact, I still recall using black text with a red highlight and loving the results. I could make things, finally.

The browser I was using wasn’t built for blogging though.

Opera Mini didn’t allow me to do much online. I started wishing I could do more. I didn’t want to just learn. I wanted practical stuff.


One year later, that is in 2012, I bought a smartphone. I tried blogging again, and even posted a few articles, like 3 or so on WordPress. However, this still wasn’t as optimal as I expected.

2014 - 2015

Fast forward 2 years later, I bought a laptop. It was refurbished, but I didn’t care. It was running Windows 8. I downloaded Microsoft Visual Studio, Eclipse and many other development tools I knew about at the time.

I even consulted a lecturer who was taking us Introduction to Computers and he told me if I needed a website, I had to learn Joomla and Dreamweaver. I thought those things would give me the answer, and I installed them too.

Several things happened during this period, almost simultaneously, or miraculously. I was learning a lot of things at the same time. I dived.

Within a short while, I had a domain and a self-hosted WordPress blog. The website was hosted at Hostgator and I even started creating websites for other people too, for money.


I blogged about technology for another one and a half years but by mid 2016, I was still hungry to learn more. I wanted to do mobile apps and Web applications, WordPress was not the answer.

I used YouTube to learn about Ionic framework and Cordova but they still weren’t making a lot of sense yet as I was still new to Node.js. Yet, I had only used a little of both JavaScript and CSS. I still wasn’t good at Java too and so native mobile application development wouldn’t cut it.

I took courses on Python, Node.js, JavaScript, and NoSQL.

In January of this year, a friend introduced me to an entrepreneur who gave me a contract to become their Digital Business Manager, handling web development, online marketing and graphics design. I did this part-time for the following two years. I ended up making a mobile app for the company, just because, why not?


The most reasonable thing to try and master next, therefore, was JavaScript and databases. By sometime in 2017, I was confident in my JavaScript skills as well as a little of Java. I started working on a few projects which got abandoned as soon as coursework got too hungry for my time.


When 2018 came, my final year at the University, I had a good grasp of JavaScript and Python and had already used VueJS for client projects. Therefore, for my final year project, I picked up Cordova from where I left in 2016 and used it to package a mobile app. I used electron for the desktop app and wrote some severless functions for the API. All these in JavaScript. Everything was coming together. The bits and pieces were finally making sense.

From this story of my development and growth, you could have noticed that all the small pieces made sense in the end and that I have so much passion for software engineering.

2019 - Date

At present, I am specializing in JavaScript, Python, and a few frameworks to deliver web and mobile experiences. I still want to master Elixir, Rust and C++. I don’t yet see how good my specialization is going to be useful in 5 or 10 years from now. Oh, did I tell you I am a graduate Electrical and Electronic Engineer? Even though I self-studied software engineering, I am happy with the results. May the gazillion things I am doing now make sense looking back from the near future.

Technologies and Platforms I am Comfortable With So far

Python, JavaScript, Django, PostgreSQL, CSS, HTML, React, Angular, Node.js, Vue.js, Gatsbyjs, Hugo, Cordova, React Native, Git, REST APIs and JSON, AWS Lambda, Firebase Functions and Database, GraphQL.

Some important quotes:

just do it. - Nike

stay hungry, stay foolish. -Steve Jobs in his Stanford commencement speech

do something with what you have, where you are. - Unknown

God enabling me, I still keep learning with all I have. 😄

Thank You for reading!