How to Set Up Your Coding Environment as a Beginner in Kenya (Step-by-Step)
To set up your coding environment as a beginner in Kenya, install VS Code (use the offline installer if your internet is slow), set up Git and create a GitHub account, install Node.js through nvm, and learn 5 to 10 basic terminal commands. The entire setup takes 1 to 2 hours on a decent connection, or half a day if you need to download offline installers from a cyber cafe.
What You Need Before Starting
Before installing anything, make sure your hardware can handle the basics. You do not need a powerful machine. But you do need one that will not freeze every time you open a code editor.
Minimum laptop specs:
- 8 GB of RAM (4 GB will work technically, but you will hate every minute of it)
- An SSD, not an HDD. This is the single biggest factor in how fast your machine feels
- At least 20 GB of free disk space for your tools and projects
- Any Intel i5 (8th gen or newer), AMD Ryzen 5, or Apple M1 chip
If you are unsure whether your laptop meets these specs, check our guide to the best laptops for coding in Kenya. It covers budget options starting at KES 25,000.
Operating system: Windows 10 or 11, macOS, or Ubuntu Linux all work fine. This guide covers all three where the steps differ. Most Kenyan beginners start on Windows, so that is what we lead with.
Internet: You need a connection to download the tools. If your home internet is slow or capped, here are your options:
- Download everything from a cyber cafe with fast Wi-Fi and transfer to your laptop on a flash drive
- Use a friend's office or university connection during off-peak hours
- Buy a Safaricom daily unlimited bundle (around KES 250 for 24 hours) and download everything at once
- Download the offline installers listed below, which are smaller and do not require a constant connection during installation
Total download size for everything in this guide: roughly 500 MB to 800 MB. Plan accordingly if you are on metered data.
Step 1: Install VS Code
Visual Studio Code (VS Code) is the code editor you will live in. It is free, lightweight, and used by the majority of professional developers worldwide. There are other editors out there, but VS Code is the standard for good reason: it works on every operating system, has thousands of extensions, and runs well even on modest hardware.
How to install (Windows):
- Go to code.visualstudio.com/download
- Click the big blue "Windows" button. This downloads the User Installer, which is about 95 MB
- Run the downloaded
.exefile - During installation, check the boxes for "Add to PATH" and "Register Code as an editor for supported file types." These save you time later
- Click Install, wait for it to finish, then open VS Code
How to install (macOS):
- Go to the same download page and click the macOS button
- Unzip the downloaded file
- Drag the "Visual Studio Code" app into your Applications folder
- Open it. macOS might warn you about an app from an unidentified developer. Go to System Preferences, then Security & Privacy, then click "Open Anyway"
How to install (Ubuntu/Linux):
- Download the
.debfile from the VS Code download page - Open your terminal and run:
sudo dpkg -i filename.deb(replace "filename" with the actual file name) - If you see dependency errors, run:
sudo apt-get install -f
Kenya internet tip: If your connection keeps dropping during the download, use the "Offline" or "System Installer" version from the VS Code download page. The system installer is a standalone .exe (Windows) or .dmg (macOS) that does not need an internet connection once downloaded. You can also download it at a cyber cafe with fast Wi-Fi, copy it to a flash drive, and install at home. The file is under 100 MB, so even a flash drive your friend has lying around will work.
Once VS Code opens, you should see a Welcome tab. Close it. You are ready.
Step 2: Install Git and Create a GitHub Account
Git tracks changes in your code. Think of it as an unlimited "undo" button that also lets you collaborate with other developers. GitHub is a website where you store your Git projects online. Every developer has a GitHub account. Your future employer will look at it.
Install Git (Windows):
- Go to git-scm.com/download/win
- The download should start automatically. The installer is about 55 MB
- Run the installer. You will see many screens with options. For every screen, keep the defaults and click Next. The defaults are fine for beginners
- One screen asks about the default editor for Git. Change this from Vim to "Use Visual Studio Code as Git's default editor." Trust us on this one. Vim will confuse you right now
- Finish the installation
Install Git (macOS):
Open the Terminal app (search for "Terminal" in Spotlight). Type git --version and press Enter. If Git is not installed, macOS will prompt you to install the Command Line Developer Tools. Click Install and wait. That is all you need.
Install Git (Ubuntu/Linux):
Open a terminal and run: sudo apt update && sudo apt install git
Verify Git is installed:
Open a terminal (or Git Bash on Windows) and type:
git --version
You should see something like git version 2.44.0. The exact version number does not matter.
Configure Git with your name and email:
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
Use the same email address you will use for GitHub.
Create a GitHub account:
- Go to github.com and click Sign Up
- Use a professional-sounding username. "john-mwangi" is fine. "xXcoolhacker99Xx" is not. Employers will see this
- Choose the free plan. You do not need GitHub Pro
- Verify your email address
That is it. You now have version control set up. You will learn how to actually use Git commands when you build your first project later in this guide.
Step 3: Install Node.js (Using nvm)
Node.js lets you run JavaScript outside the browser. If you are learning JavaScript (which we recommend as a first language), you need Node.js. Even if your main interest is frontend development, tools like React and Vite require Node.js to run.
We recommend installing Node.js through nvm (Node Version Manager) rather than downloading it directly from the Node.js website. Why? Because nvm lets you switch between different Node.js versions easily, which matters when you start working on multiple projects. It also avoids permission issues that trip up beginners who install Node.js globally.
Install nvm and Node.js (macOS and Linux):
- Open your terminal and run this command (it is one long line):
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash - Close your terminal and open a new one (this is important; nvm will not work in the same terminal window)
- Verify nvm is installed:
nvm --version - Install the latest LTS (Long Term Support) version of Node.js:
nvm install --lts - Verify Node.js is installed:
node --version
Install nvm and Node.js (Windows):
The original nvm does not support Windows. Use nvm-windows instead:
- Go to the nvm-windows releases page
- Download
nvm-setup.exe(about 5 MB) - Run the installer with default settings
- Open a new Command Prompt or PowerShell window (not Git Bash for this step)
- Run:
nvm install lts - Then:
nvm use lts - Verify:
node --version
You should see a version number like v22.x.x. Node.js also installs npm (Node Package Manager) automatically, which you will use to install libraries and tools. Verify with npm --version.
Kenya internet tip: The nvm install script is tiny (under 1 KB), but downloading Node.js itself is about 30 MB. If your connection drops midway, just run nvm install --lts again. It will resume where it left off. If you are completely offline, you can download the Node.js binary directly from nodejs.org (choose the LTS version, not Current) and install it manually. You lose the version-switching benefit of nvm, but it works.
Step 4: Install Python (If You Are Going That Route)
If your plan is to learn Python instead of (or alongside) JavaScript, you need to install it. If you are starting with JavaScript only, skip this section. You can always come back to it later.
Check if Python is already installed:
Open a terminal and type: python3 --version (macOS/Linux) or python --version (Windows). Many systems come with Python pre-installed. If you see version 3.10 or higher, you are good to go.
Install Python (Windows):
- Go to python.org/downloads
- Click the big yellow "Download Python 3.x.x" button. The installer is about 25 MB
- Run the installer. Critical step: at the bottom of the first screen, check the box that says "Add Python to PATH." If you miss this, Python will not work from your terminal and you will have to reinstall
- Click "Install Now"
- Verify by opening a new Command Prompt and typing:
python --version
Install Python (macOS):
macOS comes with an old version of Python. Install the latest through the official installer at python.org, or use Homebrew if you have it: brew install python. Verify with python3 --version.
Install Python (Ubuntu/Linux):
Ubuntu usually has Python 3 pre-installed. Check with python3 --version. If you need to install or update it: sudo apt update && sudo apt install python3 python3-pip
Python also comes with pip, its package manager (similar to npm for Node.js). You will use pip to install libraries like Flask, Django, or pandas later. Verify with pip --version or pip3 --version.
Step 5: Terminal Basics (The 10 Commands You Will Use Daily)
The terminal (also called command line, console, or shell) is where you run your code, install tools, and manage files. It looks like a black screen with a blinking cursor. It seems intimidating at first, but you will use the same handful of commands 95% of the time.
Which terminal to use:
- Windows: Use Git Bash (installed with Git) or the built-in PowerShell. Git Bash is better for beginners because it uses the same commands as macOS and Linux
- macOS: Use the built-in Terminal app, or install iTerm2 if you want something fancier (not necessary)
- Linux: Use the built-in terminal emulator
You can also open a terminal directly inside VS Code by pressing Ctrl + ` (backtick key, usually above Tab). This is convenient because it opens right in your project folder.
The 10 commands you need:
pwd # Print Working Directory. Shows where you are right now
ls # List files and folders in the current directory
cd folder-name # Change Directory. Move into a folder
cd .. # Go up one folder (back)
cd ~ # Go to your home directory
mkdir new-folder # Make a new folder
touch filename.js # Create a new empty file (Git Bash/macOS/Linux)
rm filename.js # Delete a file (be careful, no recycle bin)
clear # Clear the terminal screen
code . # Open the current folder in VS Code
Windows note: If you are using PowerShell instead of Git Bash, touch does not work. Use New-Item filename.js instead. Or just switch to Git Bash, which is simpler.
That is genuinely all you need for now. You will learn more commands naturally as you build projects. Do not try to memorize a list of 50 terminal commands before you start coding. That is a waste of time. Learn by doing.
Quick practice (try this now):
cd ~
mkdir coding-projects
cd coding-projects
mkdir hello-world
cd hello-world
pwd
You just created a folder structure for your first project. The terminal should show something like /Users/yourname/coding-projects/hello-world or C:/Users/yourname/coding-projects/hello-world.
Step 6: Your First "Hello World" Project
Time to write actual code. This section walks you through creating a simple project that displays "Hello World" in a browser. The point is not to build something impressive. The point is to confirm that everything you just installed works, and to feel what it is like to go from an empty folder to something running on screen.
Create the project:
- Open VS Code
- Click File, then Open Folder, and select the
hello-worldfolder you created in the terminal practice above - In VS Code, open the built-in terminal with
Ctrl + `
Create an HTML file:
- In VS Code's file explorer (left sidebar), click the "New File" icon
- Name it
index.html - Type the following code:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Hello World</title>
</head>
<body>
<h1>Hello World!</h1>
<p>My coding environment works.</p>
</body>
</html>
Save the file (Ctrl + S). Now right-click on index.html in the file explorer and choose "Open with Live Server" if you have the Live Server extension (we will install it in the next section). Or simply find the file in your file manager and double-click it. It will open in your browser.
You should see "Hello World!" in big text and "My coding environment works." below it. Congratulations. You just built a web page.
Now add JavaScript:
- Create a new file called
script.jsin the same folder - Add this code to
script.js:
console.log("Hello from JavaScript!");
alert("My JavaScript is working!");
- Go back to
index.htmland add this line right before the closing</body>tag:
<script src="script.js"></script>
Save both files and refresh your browser. You should see a popup alert saying "My JavaScript is working!" and if you open the browser's developer tools (press F12, then click the Console tab), you will see "Hello from JavaScript!" logged there.
Everything works. Your environment is set up. That whole process, from empty folder to working code, is the loop you will repeat thousands of times as a developer.
Step 7: Sensible VS Code Settings and Extensions for Beginners
VS Code is powerful out of the box, but a few settings changes and extensions will make your life noticeably easier. Do not go overboard. Five extensions are plenty to start with. You can add more as you discover specific needs.
Settings to change now:
Open VS Code Settings with Ctrl + , (or Cmd + , on macOS). Use the search bar at the top to find each setting:
- Auto Save: Search "auto save" and set it to "afterDelay." This saves your files automatically so you stop losing changes when you forget to press
Ctrl + S - Tab Size: Search "tab size" and set it to 2. This is the standard for JavaScript and web development. It keeps your code from drifting too far to the right
- Word Wrap: Search "word wrap" and set it to "on." Long lines will wrap instead of scrolling off screen
- Format On Save: Search "format on save" and check the box. Your code will be automatically formatted every time you save
Five extensions to install:
Click the Extensions icon in the left sidebar (it looks like four squares) and search for each one:
- Live Server by Ritwick Dey. Launches a local development server that automatically refreshes your browser when you save a file. Right-click any HTML file and choose "Open with Live Server." This alone saves you hundreds of manual browser refreshes
- Prettier by Prettier. Automatically formats your code so it looks clean and consistent. After installing, open Settings, search "default formatter," and select Prettier. Combined with Format On Save, your code will always be tidy
- ESLint by Microsoft. Highlights JavaScript errors and bad practices in real time, before you even run your code. It draws red and yellow underlines under problems. You will thank it later
- HTML CSS Support by ecmel. Adds autocomplete for CSS class names in HTML files. When you are writing class names, it suggests ones you have already defined. Small convenience, big time saver
- Material Icon Theme by Philipp Kief. Adds colourful icons to files and folders in your sidebar. This is cosmetic, but it makes it much easier to tell file types apart at a glance. A
.jsfile gets a yellow icon,.htmlgets orange,.cssgets blue
Kenya internet tip: VS Code extensions are small (usually under 5 MB each), but if your connection is patchy, install them one at a time rather than all at once. If the extension marketplace is slow to load, wait and try again during off-peak hours. Extensions are downloaded once and cached locally, so you only need internet for the initial install.
What NOT to Install Yet
When you start reading developer blogs and watching YouTube tutorials, you will see people recommending all sorts of tools. Docker, PostgreSQL, MongoDB, Redis, Kubernetes, Postman, multiple terminal emulators, custom shell themes. Their setups look impressive. They are also completely unnecessary for a beginner.
Here is what to skip for now, and when each tool actually becomes useful:
- Docker. You do not need containers until you are deploying backend applications or working in a team that requires identical environments. That is months away. Docker also consumes significant RAM and disk space, which matters if your machine only has 8 GB
- Databases (PostgreSQL, MySQL, MongoDB). When you need a database for a project, you will know. Until then, local JSON files or a free cloud database like Supabase or Firebase are enough. Installing a local database server adds complexity and background processes that slow down modest hardware
- Postman. A popular tool for testing APIs. You will not need it until you start building or consuming APIs, which is a month or two into learning. When you do, VS Code has extensions like Thunder Client that do the same thing without a separate app
- Linux/WSL on Windows. Some guides tell beginners to install Windows Subsystem for Linux immediately. It is useful eventually, especially for backend development. But it is another layer of complexity, another terminal, another set of file paths to keep track of. Start with Git Bash on Windows. Switch to WSL when you actually hit a limitation
- Multiple code editors. You do not need Vim, Neovim, Sublime Text, and VS Code. Pick one. VS Code. Learn it well. Experiment with others once you have opinions about what you want from an editor
- Framework CLIs (create-react-app, Angular CLI, etc.). Do not install a JavaScript framework before you understand basic HTML, CSS, and JavaScript. Framework knowledge built on shaky fundamentals leads to developers who can follow tutorials but cannot debug their own code
The pattern here is straightforward: install tools when you need them for a specific project, not because a YouTuber's "ultimate dev setup" video told you to. Every extra tool is another thing that can break, another thing consuming your system resources, and another thing you feel pressured to learn before you are ready.
A clean, minimal setup is faster, less confusing, and perfectly capable of taking you through your first six months of learning.
Your Environment Is Ready. Now What?
You have a code editor, version control, a language runtime, and a working Hello World project. That is a fully functional coding environment. Professional developers at major companies use the exact same core tools.
The next step is to start actually learning a language and building projects. Here is where we recommend going from here:
- If you have not chosen a language yet: Read our guide on the best first programming language. Short version: JavaScript for most people, Python if you are focused on data or AI
- If you want a structured roadmap: Our self-taught developer roadmap lays out a clear study order, week by week, with free resources for each stage
- If you want guided, structured learning from day one: Our Tech Foundations: Before You Code course (KES 2,999) covers the fundamentals you need before writing your first real program. It picks up right where this setup guide leaves off and walks you through how the web works, how programming logic fits together, and how to think like a developer before committing to a language or framework
The biggest risk at this stage is spending another week "getting ready" instead of writing code. Your environment is set up. It works. Open VS Code, create a new file, and start building something. You will learn the rest by doing.
Key Takeaways
- ✓You only need four tools to start coding: a code editor (VS Code), version control (Git and GitHub), a language runtime (Node.js or Python), and a terminal. That is it.
- ✓If your internet is slow or expensive, download offline installers from a cyber cafe or a friend's connection. Every tool mentioned in this guide has an offline installer available.
- ✓The terminal looks intimidating but you only need about 10 commands for daily use. You will pick them up naturally within your first week of coding.
- ✓Do not install Docker, databases, or complex tools on day one. They will make sense later. Right now they will only overwhelm you and eat your disk space.
- ✓Your first project should be a simple "Hello World" page. Getting something on screen in the first hour is more important than understanding every setting.
Frequently Asked Questions
- Do I need to install all of these tools before I can start coding?
- No. Strictly speaking, you only need a code editor (VS Code) and a browser to start writing HTML, CSS, and JavaScript. Git and Node.js become necessary once you start building real projects and want to save your work properly. Install VS Code first, write your Hello World, then install the rest as you go.
- My internet is too slow to download VS Code. What should I do?
- Download the offline installer from a location with faster internet, like a cyber cafe, a university lab, or a friend's office. Copy the installer to a flash drive and install it on your machine at home. The VS Code offline installer is under 100 MB. You can also try downloading during off-peak hours (late night or early morning) when network congestion is lower.
- Should I use VS Code or another editor like Sublime Text or Atom?
- Use VS Code. Atom has been discontinued by GitHub and is no longer maintained. Sublime Text is good but lacks the free extension ecosystem that VS Code offers. Nearly every modern coding tutorial assumes VS Code, which means the keyboard shortcuts, settings, and extensions they reference will match yours exactly. Learning a different editor adds unnecessary friction when you are already learning to code.
- Do I need to learn the terminal or can I just use the graphical interface?
- You need to learn at least basic terminal commands. Many developer tools only work through the terminal (npm, Git, nvm). The good news is you only need about 10 commands for everyday work, and you pick them up quickly through repetition. Within a week of regular coding, the terminal will feel normal.
- How much disk space do I need for a coding setup?
- About 2 to 3 GB for the base tools (VS Code, Git, Node.js, and a few extensions). Your actual projects will be small, usually a few MB each. The things that eat disk space later are node_modules folders (which can be 200 to 500 MB per project) and Docker images (if you install Docker later). With 20 GB of free space, you have plenty of room for months of learning.
- I installed everything but something is not working. How do I troubleshoot?
- First, close all terminals and VS Code, then reopen them. Many installation issues are solved by restarting, which forces your system to recognize new PATH variables. If a command like "node" or "git" is not found, the tool probably was not added to your PATH during installation. Reinstall and make sure to check the "Add to PATH" option. If you are still stuck, copy the exact error message and paste it into Google. Chances are someone has already solved it on Stack Overflow.
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