How to Actually Learn to Code at Makerere University (Alongside Your Degree)
Supplement your Makerere CoCIS degree by spending 1 to 2 hours per day on practical coding outside your coursework. In Year 1, learn HTML, CSS, and JavaScript basics. In Year 2, pick up React and start building small projects. In Year 3, learn Node.js, databases, and MoMo/Airtel Money integration. In Year 4, build portfolio projects and start applying for jobs. The degree gives you theoretical depth and a credential. The self-study gives you employable skills. Together, they make you significantly more competitive than classmates who only do the coursework.
The Gap Between CoCIS and the Job Market
Makerere CoCIS teaches you how computers work at a fundamental level. Algorithms, data structures, discrete mathematics, operating systems, database theory, networking. These are the concepts that separate a developer who can think through complex problems from one who can only follow tutorials. That knowledge is genuinely valuable and difficult to acquire outside a structured university program.
The gap is on the practical side. The curriculum updates slowly. The job market moves fast. When a Kampala startup posts a junior developer position, they want someone who knows React, Node.js, Git, and mobile money integration. CoCIS teaches C, Java, and database theory. Both are useful, but the job posting does not ask about Big-O notation. It asks about React components and API integration.
This gap is not unique to Makerere. It exists at virtually every university CS program worldwide. MIT graduates face a version of this too. The difference is that Makerere students often do not realize the gap exists until they start applying for jobs, at which point they have spent four years and millions of UGX without building the practical skills employers screen for.
The fix is straightforward: supplement your coursework with 1 to 2 hours per day of practical coding. Your degree provides the depth. Your self-study provides the breadth. Together, they produce the kind of graduate that employers compete for.
A Year-by-Year Plan for Practical Skills
This plan assumes you can commit 1 to 2 hours per day on weekdays, with occasional longer sessions on weekends. Adjust based on your course load and exam schedule. The goal is consistency, not intensity.
Year 1: Web Fundamentals
Your coursework is heavy on mathematics, introductory programming (likely in C or Java), and foundational CS concepts. Your self-study should focus on the web.
- Learn HTML and CSS. Build 3 to 5 simple static web pages. A personal profile page. A page for a fictional Kampala business. A portfolio template.
- Start JavaScript. Variables, functions, arrays, objects, DOM manipulation. Build a simple interactive project (a quiz app, a to-do list, a currency converter for UGX).
- Set up a GitHub account and start pushing code from day one. Your GitHub profile is the portfolio that employers will check.
- Install VS Code and get comfortable with the terminal.
Resources: freeCodeCamp (free), The Odin Project (free), or McTaba Tech Foundations (KES 2,999, approximately UGX 85,000) for a structured starting point.
Year 2: Front-End Frameworks and Projects
Your coursework moves into data structures, algorithms, and more advanced programming. Your self-study should build on your JavaScript foundation.
- Learn React. Components, props, state, hooks, routing. Build 2 to 3 React applications.
- Learn responsive, mobile-first design. Practice building UIs that work on the affordable Android phones most Ugandans actually use.
- Attend your first hackathon (Makerere and Kampala tech hubs host them periodically). Build something real under time pressure.
- Join a developer community: GDSC at Makerere, or communities at Innovation Village or Hive Colab.
Year 3: Back-End and Mobile Money
Your coursework covers databases, networking, and software engineering. Your self-study should add the practical back-end and payment integration skills the curriculum misses.
- Learn Node.js and Express. Build REST APIs. Connect to PostgreSQL databases.
- Learn authentication (JWT, sessions) and deployment (Vercel, Railway).
- Learn MTN MoMo and Airtel Money API integration. Start with sandbox testing. Understand the callback architecture.
- Apply for internships at Kampala tech companies. Your practical skills at this point put you well ahead of most third-year CoCIS students.
Year 4: Portfolio, Final Year Project, and Job Hunt
- Your final year project should be a deployed, full-stack application. Ideally one that integrates mobile money and solves a real Ugandan problem.
- Build or polish 3 to 5 portfolio projects on GitHub. Each should be deployed with a live URL.
- Start applying for developer jobs in your second semester. Your combination of a CoCIS degree and a strong portfolio makes you a rare candidate in the Ugandan market.
Practical Tips for Balancing Coursework and Self-Study
Use your coursework, do not fight it. When your class covers database theory, use your self-study time to build a real database with PostgreSQL. When your class covers algorithms, practice implementing them in JavaScript alongside whatever language the class uses. The coursework and self-study reinforce each other when you align them.
Morning hours tend to work best. Many Makerere students find that coding before their first lecture (6:30 to 8:00 AM) is the most reliable slot. Afternoons and evenings get eaten by group work, social obligations, and exhaustion. Find your consistent slot and protect it.
Build, do not just watch. An hour of writing code is worth more than three hours of watching YouTube tutorials. The temptation is to watch a two-hour React tutorial and feel productive. You learned nothing until your fingers typed the code and you debugged the errors yourself.
Use campus Wi-Fi strategically. Makerere campus Wi-Fi may not always be fast or reliable. Download documentation, tutorial videos, and resources when you have good connectivity. Tools like freeCodeCamp work offline once loaded. Keep your development environment (VS Code, Node.js) installed locally so you can code without internet.
Find one or two classmates doing the same thing. You do not need a large study group. You need one or two people who are also supplementing their coursework with practical coding. You will keep each other accountable, help each other debug, and push each other to keep building when motivation dips during exam season.
Do not neglect your grades. The degree matters for the employers who require it. A first-class or upper-second honours from CoCIS combined with a strong portfolio is the best possible position. Do not sacrifice one for the other. The 1 to 2 hours per day of self-study should not replace your coursework. It adds to it.
Project Ideas for CoCIS Students
Your portfolio should demonstrate both your academic depth and your practical skills. Here are project ideas that do both, tailored to the Ugandan context.
Year 1-2 projects (front-end):
- A student portal dashboard UI (React). Design a better interface for checking results, timetables, and announcements than what Makerere currently offers.
- A local business directory for Wandegeya or Kikoni. Build a responsive, mobile-first web app listing shops, restaurants, and services near campus.
- A campus event finder. A React app that displays upcoming events at Makerere, The Innovation Village, and other Kampala venues.
Year 3-4 projects (full-stack with payments):
- A school fees payment system. Parents pay via MoMo or Airtel Money, the school sees payments in a dashboard. This is a real problem that Ugandan schools need solved.
- A campus marketplace where Makerere students buy and sell textbooks, electronics, and services. Include MoMo payment integration for transactions.
- An event ticketing platform for Kampala events. Users pay via mobile money, receive a QR code ticket, organizers scan tickets at the door.
- A boda-boda booking prototype. A simplified version of SafeBoda focusing on the payment flow.
Each project should be deployed to a live URL and have clean, well-documented code on GitHub. When a potential employer visits your GitHub profile, they should see not just code, but evidence that you understand the Ugandan market and can build products for it.
Start This Week
If you are currently a CoCIS student and you have not started practical coding yet, today is the right day to begin. Not next semester. Not after exams. Today.
Here is your first week:
- Create a GitHub account if you do not have one.
- Install VS Code on your laptop.
- Create a free McTaba Academy account and explore the available material.
- Build your first HTML page: a personal profile with your name, your program, and what you want to build. Push it to GitHub.
- Set a daily alarm for your 1-hour coding slot. Guard that time.
If you want a structured starting point, Tech Foundations: Before You Code (KES 2,999, approximately UGX 85,000) covers the web fundamentals that CoCIS assumes you know but may not have formally taught. It is designed as a weekend project.
Four years from now, you will graduate. The question is whether you graduate with just a degree, or with a degree and a portfolio that proves you can build. The 1 to 2 hours per day you invest now is the difference.
Key Takeaways
- ✓The Makerere CoCIS curriculum provides strong CS fundamentals (algorithms, data structures, databases, networking) that bootcamps cannot match in depth. These concepts form a foundation that lasts your entire career.
- ✓The practical gap is real: most CoCIS graduates need additional self-study in modern frameworks (React, Node.js), deployment, Git, and mobile money integration (MoMo, Airtel Money) before they are job-ready.
- ✓You only need 1 to 2 focused hours per day of practical coding alongside your coursework. Consistency matters more than marathon sessions. An hour every weekday beats five hours on Sunday.
- ✓By graduation, aim to have a GitHub profile with 3 to 5 deployed projects, including at least one with mobile money integration. This portfolio, combined with your degree, puts you ahead of the majority of CS graduates in Uganda.
Frequently Asked Questions
- Is 1 to 2 hours per day really enough to learn practical coding?
- Yes, if you are consistent. One focused hour per day, five days per week, adds up to roughly 250 hours per year. Over four years at Makerere, that is 1,000 hours of practical coding on top of your coursework. That is more coding time than many bootcamp programs include. The key is consistency. An hour every weekday beats a five-hour binge on Sunday.
- What if my CoCIS coursework already takes all my time?
- Audit how you actually spend your time for one week. Most students find 1 to 2 hours of time that goes to scrolling social media, watching videos, or unfocused socializing. Redirect that time. During exam periods, reduce self-study to 30 minutes per day or pause entirely. The point is that across four years, you find the time more weeks than you skip.
- Should I learn the same programming languages CoCIS teaches or different ones?
- Learn JavaScript for your self-study. CoCIS likely teaches C, Java, or Python for coursework. Use those for assignments and exams. Use JavaScript for your practical projects. By the time you graduate, you will know multiple languages, which is itself a valuable skill. The concepts (loops, functions, data structures) transfer between languages.
- Can I get an internship before Year 3?
- If you follow this plan, you will have enough practical skills for a basic internship by the end of Year 2. Kampala startups and tech hubs sometimes offer short internships or apprenticeships for students who can demonstrate front-end skills. Start looking at Innovation Village, Outbox Hub, and Hive Colab job boards. The formal corporate internships at banks and telecoms typically require you to be in Year 3 or 4.
Ready to build real-world apps?
Join the McTaba Labs full-stack marathon (4 months full-time · 6 months part-time). Learn M-Pesa, USSD, and WhatsApp engineering while shipping 8 production apps.
Apply to the McTaba Marathon