Skip to content

PracticeCraft/roadmap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

Roadmap

Why does this exist?

Throughout my coding journey I've come across a ton of resources for people that are brand new and want to learn. Those usually cover the basics but leave out a lot of the deep details and the realities of building projects - how to work past problems, how to break things up, how to work on a larger codebase or a codebase others are also working on.

I've also come across a ton of reference style materials and "getting started" guides that are geared toward more experienced programmers and assume a deeper knowledge of the domain. These are great once you have your feet under you as they allow for faster location and parsing of the information you need.

What appears to be missing is the stuff in the middle. A novice programmer that has been doing tutorials is spoon fed what they need to know a step at a time. It's up to the teacher to set the pace and decide when and how a project comes together. When the student gets through the project and wants to start making things on their own, they get stuck. An empty editor screen is intimidating, and suddenly the scope of what they want to do overwhelms them.

What do I hope to accomplish?

I see a chance to help here. The best way I can see this happening is with a more interactive approach. It would inlude:

  • A series of projects that are large enough in scope to be interesting, but small enough for someone to understand at least the broad strokes.
  • a focus on more experienced people breaking the projects into manageable pieces and mentoring inexperienced devs
  • A focus on newer programmers doing the actual work, and getting used to the tools and processes as well as working with others
  • A safe community where people can ask questions without being ridiculed for their lack of knowledge
  • A place where more experienced devs can practice leadership and project management and also give back

How would this work?

I see a few things that would need to be in place for this to start working.

  • A github org that the projects could fall under (this might be in it already??)
  • A starting point for each new project that includes:
    • The very basic project structure is set up in the repo (Hello world and that's it)
    • An idea that the project will work toward
    • The first steps broken up into issues so people can get started
    • Instructions are included for getting development started locally
    • The dev feedback loop is working
    • If the project is deployable, a minimal CI system is in place to ship merges to the 'main' branch
  • A community that allows people to connect, discuss, learn, and share.
    • Discord looks like the best bet for this from what I've found so far
    • Bot integration could allow for notifications of all sorts of events - have to see what's available
  • A landing page on a website that would direct people to the resources they need
  • Some written and / or video content on how to get started working in one of the projects

Target audience

I foresee two audiences for this. The first is newer devs looking to work on the skills required to work in a team and be part of projects that are larger in scope. The second is devs with more experience that are willing to provide time and mentoring in making the community work, and keeping projects moving forward.

Possible pitfalls

The first thing that comes to mind is there will probably be some minimal costs involved. What I don't want to have happen, is for those costs to be passed along to the community. Initially I would probably have to shoulder the cost for DNS registration and whatever would be required for a community to function. Github is free, however the other platforms used might have a fee involved. However it ended up working, I would want to make sure that people without the money to spend would still have access - nothing like Patreon or a premium subscription model. The free tier is the whole thing.

The second thing that comes up is how to attract the people with the experience. I need to figure out how to market this whole thing if it makes it to launch.

I don't know if this could be big enough to support languages other than english. I don't have direct experience, but it has to be frustrating for people who's first language isn't english to have to learn it in order to be a part of the programming world.

About

Roadmap for collaborative learning and building project

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published