lrn open-source software

for teaching open-source software development

Computer programming is not difficult, learning computer programming is what's difficult.

The lrn software facilitates lessons in computer programming.

It runs inside a Linux terminal to bring students up to speed with real-world coding faster than ever before.

Expand the demo to fullscreen mode

Popular education options are often terrible

Academia and Industry don't talk. There are millions of search results on google for the gap between academia and industry. When it comes to the software industry, educations suffers two severe problems:

  • Obfuscation: making simple things difficult and complex. University curriculums are sometimes so obfuscated that students get confused about the usefulness of the boolean data type or the purpose of the print() statement. This happens, it's terrible.
  • Plastic toy hammers: these are not used in trade school, but we use them in computer programming education with web-based simulators and hello_world() scripts.

No learning programs use a professional toolkit as the learning environment — until now…


real-world code real engineering tools efficient explanations

Automate the manual processes of learning to code
Faster and easier learning by allowing the student to focus simply on the code itself

Real tools, real code — no plastic toy hammers!
To create more effective and empowering learning experiences.

Automating the learning session frees the student from having to know how the tools work; they're there "under the hood" for the student to learn at their own pace.

Computer programming education unlike ever before

lrn enables us to do things that no other curriculums in the world do:

  • demonstrate language constructs and nuances by showing live scripts from different programming languages running side-by-side
  • compare software design patterns by loading source code from different projects side-by-side
  • run an already complete database-driven app to allow the student to interact with it and observe how it works
  • automate steps like: run the script, reload the web browser, etc

With these tools that lrn brings together, including linux, tmux, docker and more, we can develop a whole set of curriculums more excellent than anyone's yet to imagine.

Accessibility, opportunity and justice for all

lrn and the entire toolkit are free, the curriculums and lessons are free, it works offline with no internet connection, and it runs on old computers that you can salvage for free!

Start Coding

Test-drive the lrn software on your Linux system.

The first lesson is on parsing text files in Python.

Get started by using the Debian installer to install lrn and download the lesson. It's as simple as:

git clone
bash lrn_installer/

Questions? Comments?