Programming and Information Systems, taught together
Mawj is a small school with one instructor and a simple idea: learn to build software and learn how organizations use it, from someone who has studied both.
Who teaches this
Mawj is taught by Abubeker Afdel, an Information Systems graduate who writes code. An IS degree sits between two worlds: the technical one of programs and databases, and the human one of businesses, processes, and the people who use the systems.
Most courses pick one side. Programming courses teach code with no idea where it will be used; IS courses teach systems in theory, without building any. Mawj teaches both, because each makes the other easier to understand.
The lessons are written for students in Ethiopia first: examples in birr, Telebirr and CBE for payment, Telegram for everything else, and pages light enough for mobile data.
Why a wave
موج (mawj) is Arabic for wave.
A wave starts as something small, a ripple you would hardly notice, and builds as it travels. Learning to program works the same way. Your first line prints one word. Keep going, one short lesson at a time, and the small things add up to real skill.
That is also why the courses are drawn as a descent: you start in the Shallows, move through the Currents, reach Deep Water, and finish at Landfall, where what you learned meets real work.
How the lessons work
Short lessons, one idea each
Each lesson teaches one thing in about ten minutes. You finish it able to do something you couldn't before, not just knowing a new word.
You run the code
Every example runs in your browser. Change it, break it, run it again. Reading about code and writing code are different skills; the lessons build the second one.
One project that grows
Instead of thirty unrelated exercises, each course builds one real project across its modules. In Python it's Birr Ledger, an expense tracker that grows from a short script into a tested, installable package.
Honest about difficulty
When something is hard, the lesson says so and explains why. Mistakes get their own sections, with the exact error Python shows and how to read it.
The best way to see if Mawj suits you is to try a lesson. The whole first module of Python is free.