I am a developer who in the last years decided to do more open source projects in my free time. I'm currently focusing on Unity and C# in general since I think the core foundation of the Unity ecosystem would be a really great start for beginner programmers, but there are high quality programming assets missing in this ecosystem that allow new developers to to start creating Unity applications and games more easily.
Unity can be used quite well to teach coding in general and provides the right amount of visual tooling with the Unity editor and the ability to write individual building blocks that can be composed in this editor plus with C# a in my opinion perfect entry language in the work of programming.
That's why my plan was to first provide a basic foundation with a single open source library https://github.com/cs-util-com/cscore and on top of that create development resources and tutorials to easily get started with software development. An ambitious goal to tackle in my free time, I know, but writing the open source library already was a lot of fun, provided me a mechanism of accountability to keep on developing it and not abandoning the project in the middle and now its in a stage where it allows complex problems to be solved using to my knowledge and best practices from other development ecosystems (like proper decoupling, dependency injection, Redux etc).
My goal is to create a library that takes what already works well in C# and Unity (which is a lot) and try to make it a little bit better without introducing many new bloated APIs or concepts but instead stick close to the paradigms that are introduced from the C# and Unity side anyways and just guide the developers with examples how they could use these to their best advantage.