I have been following a mindset of learning in public for quite a few years now. In a nutshell, it means openly sharing what I’m learning, what I’m building, what I’m struggling to understand and sharing the full(-ish) process openly in my blog, social media, events and so on.
Recently, I’ve been thinking about wanting to expand it more also into building in public. I’m only in the beginning of this because it’s even scarier than doing something in private and then sharing the learnings in public. What I mean by building in public is for example putting drafts for my writing (blogs, tutorials, community announcements, event pages and so on) out there, sharing them with the community and having a discussion way before they get published somewhere.
It’ll still take time to really be able to write about my experiences there.
In the meanwhile, I learned about a couple of people who have been doing public notes.
I was watching Ryan Cheley’s talk Contributing to Django or how I learned to stop worrying and just try to fix an ORM Bug from DjangoCon US 2023 in which he talked about the value of writing down notes as you learn something new. He shared that as he was researching and fixing the bug, he kept notes in his public-notes GitHub repository. I’m sure it helped him understand the things better and having a nice record of thoughts and actions somewhere is valuable to him. But it’s also valuable to others! It’s fascinating to me to be able to read this kind of semi-raw stream of thoughts and questions and ideas and the discussion he’s having with himself in those notes.
Simon Willison is another developer who keeps public notes in his GitHub repository. His notes of going through Jinja’s documentation are a delight to read. Simon talked about this more in his DjangoCon US talk Increase your productivity on personal projects with comprehensive docs and automated tests where he talks about in general why it’s a great idea to document your single-dev hobby projects and have discussions with yourself in the issue tracker and pull requests.
This is something I’d love to find a way to incorporate into my own flow. I do quite often right a lot of notes as I explore new things and making them public as I write them down would create such an interesting artifact of the process over a longer time.
I’m not sure if in the long run, storing these in GitHub issues fit my workflow the best but I’m willing to give it a go. Last Thursday, I bravely started my first public note about learning PyO3 and let’s be real: I really liked writing them. Especially since I struggled in a few places. If I wasn’t writing this type of series of notes, a lot of those experiments and failed attempts would have been lost and forgotten.
I would like to find a way to write these in a way that they would live in my website instead of a third-party platform I cannot control but until I figure out a great UI for that, I’ll start experimenting and seeing what I like and how this fits my flow.
Sign up for Syntax Error, a monthly newsletter that helps developers turn a stressful debugging situation into a joyful exploration.