I have always wanted to start an opensource project. A year ago or so I was trying, with a few friends, to write a portal to rate craft beers. There are plenty of apps like this, but this was supposed to be a way to learn something new. As it always turns out, no one besides me had time to focus on the project. Within 3-5 weeks we abandoned the whole idea. I started to doubt if there is any sense in working that way in my off hours.
After I changed my job, I started to have more challenging tasks. A few of them made me create a PoC project, which I put on my github. With time passing by, I came back to writing on dev.to. In that time I created a project to support CI/CD processes on Azure DevOps, also documented on this portal :). And then it came to me - Let's give it a try, again. So I asked myself, is there anything which would help me in regular work, which I am missing? Recently, I have started giving technical interviews. I was doing this by filling some excel files. It was annoying, ineffective etc. And that's how I found my idea for an opensource project.
I am mainly backend .net developer. I know something about Azure Cloud. It was obvious that my project will be based on that technology. A cloud-based, web application which supports technical interviews. Ok, I decided about the backend, but it would need some frontend as well. Should I use React? Or Angular? Or some other? Naaaaaah. Dotnet rocks, right? Recently, I have found an article about a .net SPA framework. I dug into that. It is currently an unsupported experimental web framework, but hey, it is dotnet and this will be something that I want to work with. The framework is called Blazor. As the docs say:
Browser + Razor = Blazor!
I didn't have any expectations at the time. I did not want to force anybody to contribute. I started this alone and made a few first steps, to get a scaffolded app working. I created a repository on GitHub, downloaded the aforementioned framework and started learning. Few friends follow me on GitHub. They started asking about the project because they also heard something about that framework and wanted to learn it from a scratch.
After some time I was looking at new GitHub features. One of them is the project board. It helps to organize work for a project. I created a project to get to know how it works. It looks like a kanban board. I guess that we can use it as a scrum board for a single sprint. So I created one. Filled it with GitHub issues which described what I wanted to achieve with the project.
When tasks (
issues) arrived, I asked my friends if they wanted to help. Currently, we are getting really close to version 1.0 of our app. They are happy to participate. They have done some tasks and so have I. It is really going in the right direction.
- How do you start your opensource projects?
- Do you use GitHub's project board?
- How to organize a project on GitHub differently?