For the last couple of months, I have been working on a new interactive course to teach systems programming.
Basically, it can be described as "Khan Academy for low-level coding". It is built with Rust and it uses WebAssembly
and JavaScript to visualize what happens when you run your code. This idea was inspired by Bret Victor's "Learnable
Programming", and you can read more about it in the blog [0]. The code is also publicly available [1].
I'm a JavaScript developer (just made a career change from law...) but I'm interested in dipping my toes in the water with "low level" languages. It's intimidating for someone like myself who is self taught with no CS degree or formal training.
A resource like this is just what I need to try it out.
> It's intimidating for someone like myself who is self taught with no CS degree or formal training.
I know what you mean. I don't have a formal training or CS degree either. :)
And I know how scary and complex it can look, but in the end it's not that much harder compared to JavaScript or Web development. It's just different, but just as fun, and my goal here is to show that it doesn't have to be intimidating!
We need more people with low level understanding of how everything works and how to do it from scratch (so that we can ultimately make things simpler to do basic tasks for future programmers and reduce overall complexity).
Thanks! I haven't thought about it, but yeah, since the content is also published under the Creative Commons license, any derivative works would be very welcome. The only catch is that it takes a lot of time to create new lessons. :)
Great. One other thing I think you could add if not already is not cover all the topics yourself but also create a kind of roadmap of high quality resources with some order of steps to take the resources in.
As there exists lots of material already for TCP/UDP, Rust etc.
For the last couple of months, I have been working on a new interactive course to teach systems programming. Basically, it can be described as "Khan Academy for low-level coding". It is built with Rust and it uses WebAssembly and JavaScript to visualize what happens when you run your code. This idea was inspired by Bret Victor's "Learnable Programming", and you can read more about it in the blog [0]. The code is also publicly available [1].
Any feedback is welcome.
Thank you!
[0]: https://lowlvl.org/blog/explorable-programming
[1]: https://github.com/lowlevelacademy