One year ago today I pushed my first commit to the Puppeteer-Sharp repo. As most “first commits” it was a small commit, adding the readme and the gitignore, but that commit marked the beginning of a year full of learned lessons.

What did we accomplish so far?

  • 18 releases
  • 237 stars
  • 15k+ downloads
  • 11 contributors

What did I learn?

I think the best way to get in touch with OSS projects (and enjoy it!) is being humble and having a learner mindset, and I learned a lot this year!
Puppeteer-Sharp is async by nature. It helped me master the art of asynchronous programming, not only as a consumer but also as a producer.
I learned how to handle files asynchronously for real. I also learned some WebSockets internals (not much, but something about it), and I even had the chance to learn about pipes and file handles internals, and also its limitations on C# from the dotnet team.

Getting out of my comfort zone improved my coding skills. When your code is being reviewed by the same people over and over, you know what they expect from your code, and you adapt yourself to that review style. Getting out to the OSS world means that your code will be reviewed by people you don’t work with every day. That means people who see the code different and have different expectations. That ends up being a big win for both parts. The reviewer learns new approaches to a problem and the reviewed learns better ways to code a solution.

Being humble. Exposing your code, and even your WIP code, means that people you never met or spoke with, will review your code. That requires accepting that you are not perfect and you have many things to learn.

What’s next?

We are only one version behind Puppeteer, ONLY ONE! Once we catch Puppeteer, we will be able to work in many pending things. We have some tech debt to work on, Linux support, Docker examples, and better documentation.

It was an exciting year, and I hope many of you join the Puppeteer-Sharp team and make this library even better.

Don’t stop coding!