McTaba Labs logo
By Bonaventure Ogeto|

First year of a computer science degree in Kenya: what the units cover and what they leave out

First-year CS at a Kenyan university typically covers introduction to programming (often C, Java, or Python), discrete mathematics, calculus, and introductory computing concepts. What it leaves out matters: version control, real projects, and modern frameworks. The degree gives you foundations. The gaps are yours to fill, and first year is the best time to start.

What first-year CS units typically cover

The exact units vary by university, but the pattern is consistent across most Kenyan institutions offering computer science degrees.

Introduction to programming. You learn one language (C, Java, or Python depending on the university) from scratch. Variables, loops, conditionals, functions, arrays. The pace is designed for beginners, which means students who already know how to code will find it slow.

Mathematics. Discrete mathematics (logic, sets, relations, graph theory) and calculus. These feel disconnected from coding in first year, but discrete maths shows up again in algorithms, databases, and security courses later. Calculus appears in machine learning and graphics if you go in those directions.

Introduction to computing. A survey unit covering hardware, software, operating systems, number systems (binary, hexadecimal), and basic networking. It is broad and shallow. The goal is orientation, not mastery.

Communication skills. Essay writing, report formatting, presentation skills. Required at almost every Kenyan university across all programmes. Treat it seriously: clear writing is a career skill that CS students often undervalue.

Electives and common units. Depending on your university, you may also take units like "Introduction to IT" or university-wide requirements (HIV/AIDS awareness, development studies). Choose your electives with intent.

What the first-year syllabus does not teach

The biggest gap between a CS degree and industry readiness is not the theory. It is the tools and workflows that every working developer uses daily but most syllabi skip entirely in first year.

Version control (Git). You will not hear about Git in most first-year CS courses in Kenya. Yet every software job expects you to use it. Learn it on your own. The coding cluster has a guide on getting started.

Building real projects. First-year assignments are exercises: "write a function that sorts an array." They teach syntax. They do not teach how to build something that someone else can use. That is a different skill, and it is the one employers test for.

Modern frameworks and tools. Your course teaches the language. It does not teach React, Django, Flutter, or whatever the industry is using by the time you graduate. The language foundations are transferable, but you will need to learn frameworks on your own or through projects.

Working in teams. Software is built by teams. University assignments are individual. Learning to work on a shared codebase, do code reviews, and communicate technical decisions is something you only get through clubs, hackathons, or side projects.

How to fill the gaps without overloading yourself

You do not need to learn everything in first year. You need to start one or two habits that compound over time.

Learn Git in your first semester. Create a GitHub account. Push your course assignments to it. This takes thirty minutes to learn and builds a portfolio as a side effect. By graduation, you will have four years of projects visible to employers.

Build one project per semester beyond your coursework. Start small. A calculator, a personal website, a simple tool for your hostel block. The point is to go from "I know the syntax" to "I built something that works." The semester plan has specific project suggestions.

Join a coding community. A tech club on campus, a Discord server, a WhatsApp group of students learning together. When you get stuck (you will), having someone to ask is the difference between pushing through and giving up.

Balancing this with your actual coursework is important. The goal is not to burn out. The goal is to do a little more than the syllabus, consistently, for four years.

What to do this week

  • Find your first-year course structure document and read through every unit description.
  • Create a GitHub account and push your first assignment to it (even if it is just a "Hello World").
  • Identify one gap (Git, projects, frameworks) and spend 30 minutes this week learning about it.
  • Find one tech club or online community and join it.

Frequently Asked Questions

Is first-year CS hard?
The programming units are manageable if you practise regularly. The maths can be challenging, especially discrete mathematics, because it is unlike secondary school maths. The students who struggle most are those who do not practise between lectures. Coding is a skill, like a language. It needs repetition, not just understanding.
What if my university teaches C and I want to learn Python?
Learn C for your coursework and pass your exams. Then learn Python on your own for projects and practical work. The concepts (variables, loops, functions) transfer directly. Knowing two languages makes you more versatile, and the effort of learning the second one is much smaller than the first.
Should I focus on grades or on building projects?
Both, but grades come first in first year. A strong GPA keeps your options open for scholarships, exchange programmes, and postgraduate study. Build projects in your free time, not at the expense of coursework. By second year, you will have a better sense of how to balance them.

Related articles