FrankRay78 / PatienceOS

A baremetal C# kernel.
https://frankray.net/blog/category/software-development/os-development/patienceos/
MIT License
21 stars 4 forks source link

Better roadmap planning and information management #12

Closed FrankRay78 closed 2 months ago

FrankRay78 commented 3 months ago

Background

Attempting to develop a whole OS is a pretty big deal, especially if you've never done anything like this before. It's also very easy to quickly become overwhelmed, disillusioned and put off, as my post PatienceOS isn’t living up to its name starts to indicate.

Approach

I suspect that maintaining focus on the most interesting things (personally), having a clear list of prioritised topics to delve into, better information management (eg. note-taking whilst also keeping the majority of information pigeonholed until actually needed), and the ability to quickly start and stop new pieces of work as time allows, are major strategies to adopt.

Some ideas to try include:

  1. Follow Simon Willison’s advice in How I build a feature
  2. Experiment with community involvement, eg. Top Issues GitHub Action
  3. Adopt practices from the Better Software Requirements handbook

From Simon's article above, I particularly like:

"Every piece of work I do has an associated issue. This acts as ongoing work-in-progress notes and lets me record decisions, reference any research, drop in code snippets and sometimes even add screenshots and video" and also "Being able to quickly spin up a development environment for a project is crucial. All of my projects have a section in the README or the documentation describing how to do this".

I intend to make better use of Issues for PatienceOS, and this issue covers the topic of better information management.


Please upvote :+1: this issue if you are interested in it.