The ‘How I Learnt to Code’ series is back! A diverse group of individuals tell us how they began their career in programming. This time, we’re kicking it off with Fritz Ekwoge.
What if I told you I didn’t learn to code on a PC?
I have one of those brains that tends to forget things a lot. Among all of the negative side effects this condition causes, the worst is the low number of childhood memories I have left. Alas, I have lost all but the most powerful memories of my teenage years. The day I learnt about programming isn’t one of those lost memories, because it was a life changing moment.
Let’s rewind all the way to 1998. Age: Fourteen. Location: Buea, Cameroon. I was still in boarding school then, and had spent the whole day arguing that colorless is a color. (I still think colorless is a color). The argument was heating up; so it probably came as a relief when one of my classmates interrupted me.
“Fritz, I have something to show you,” he said.
What he wanted to show me was a TI-82 graphic calculator. It was the first of its kind in our whole school. This calculator included a PRGM button which I had never seen before in any other scientific calculator. I was intrigued. My curious mind wondered what this PRGM button was all about. I had to find out. Fortunately for me, the TI-82 came with a manual. As I was devouring every single page of the manual, little did I know I was beginning my future life as a product builder.
The TI-82 embedded a dialect of the BASIC language called TI-BASIC, with concepts you’d expect in a programming language: conditional statements, loops, console I/O, and graphical I/O. As I gained mastery over these concepts, epiphany hit me hard. It dawned on me that I was entering into a world with no limits. I had no idea what I was doing back then was called ‘programming’… All I knew was that I was having fun.
In the beginning, I was more interested in cloning existing ideas. Remember that I didn’t have access to a computer in my boarding school. All I had access to was the TI-82 graphic calculator of my classmate. The first game I cloned on that calculator was the classic snake game. The next year, I saw my dad play Minesweeper (it’s still his favorite game). So I did what any child would do to impress his dad; I created a clone of the Minesweeper game, still on the same TI-82 calculator. Physics, Biology, Chemistry, and Math were no longer interesting to me… it was all about cloning the next game on the TI-82 calculator.
Cloning is fun… but not as fun as creating something new. I really, really, wanted to do something original. I remember the night an ‘original’ idea popped into my head. I had turned sixteen. Dragon Ball Z (DBZ) was all the rage back then, and I had a physical copy of a DBZ comic book with Son-Goku in Super Saiyan mode. I wondered if I could create an exact replica of Son-Goku on the TI-82 calculator.
I spent the whole night creating a pixel perfect representation of Son-Goku in Super Saiyan mode using a page of the comic book, a ruler, a pencil, and a notebook. The first step was to generate an extremely large array of pixel coordinates. The second step was to manually input those pixel coordinates into my program. I was extremely happy with the end result: an exact replica of Son-Goku on a graphic calculator. Needless to say, this feat increased my reputation amongst peers in high school; I became known as the ‘computer wizard’ (the phrase ‘computer wizard’ has now been replaced by ‘geek’. I preferred the term ‘computer wizard’).
Success came at a price. I was bullied by some TI-82 owners to create programs they could use to cheat with during exams. Sometimes I felt like I sold my soul just so I could continue my passion of programming on those calculators.
On the plus side, the success I was getting with the TI-82 gave me delusions of grandeur. At the age of sixteen, I already knew I wanted to create my own company. But a company needs a name. What name will I give my future company? At that time, I thought I would call my company “Heavens Corporation”, and our tagline would be: “We create angelic software”.
After high school, I successfully gained admission into the most selective engineering university in Cameroon: Polytechnique, Yaoundé. Over the years, I immensely improved my software engineering skills while working every single day on very challenging projects. I gained a lot of experience working and improving my skills in almost every aspect of Software Engineering. Some of my projects were published in international scientific journals. Others were used to showcase what my school had to offer. In 2007, I graduated top of my class with a diploma in Software Engineering. My academic performance helped me secure a job at a top auditing firm where I spent the next three years obtaining other valuable skills in finance and accounting. Within that period, I also cofounded one of the most popular Cameroonian website at the time.
In 2010, I was finally ready to create “Heavens Corporation”, the company I always wanted to create since I was sixteen. Unfortunately, the domain name heavens.com was already taken. I ended up naming my company FeePerfect. Even though we are registered as FeePerfect AG in Switzerland, we build all of our software from the beautiful city of Buea in Cameroon. Running a hi-tech startup from Cameroon has been quite an amazing journey thus far. I sometimes wonder how my life would have turned out if I didn’t come across that PRGM button on the TI-82 calculator.
This was the story of how I learned to code. There’s still a lot to learn.
Fritz Ekwoge (@ekwogefee) is the founder of FeePerfect, a hi-tech startup based in Cameroon. FeePerfect recently launched Feem, a fast cross-platform Wi-Fi file transfer utility that can be used at home or in the office.