3 ms·
Code Reading Club: https://codereading.club https://codereading.club The idea of this project is to make a small, cozy kind of “book club for code” that enable
by didizaja 6y ago
Code Reading Club: https://codereading.club https://codereading.club
The idea of this project is to make a small, cozy kind of “book club for code” that enables club members to study and discuss the architecture/structure of open source code. I wanted it to be both a way to study others’ work as a means of developing more intuition about how to structure software, as well as a creative exploration and discussion of code as art.
I know the UI is quite poor right now, and the information about the time of the first session needs to be updated. I’ve pivoted to working on another project (a CLI reader for HN that lets you navigate with a UI like that generated by pager utilities such as “more”) while I flesh out the idea for this one more, as I’m not sure if I can reconcile the two aims for the club I cited above. I have to think more carefully about what I want it to be, and who I want to reach/how I want to reach them.
I really like the idea of doing this, but I just don’t have the mental/emotional bandwidth for it at the moment, which is why I’m working on other, more solitary projects instead. I think it’s important to have discipline and “grind” through things at times, but when I’m doing something in my free time for my own enjoyment and already feel a bit burned out from my other existing roles/responsibilities, I prefer not to add to it by actively building something that might create even more expectations from others. Instead, I try to get back to my first passion, which is just the joy of building programs bit by bit and understanding every piece of what I do in a gradual, methodical fashion.
A related idea I’ve had is making a YouTube channel where I do a similar thing to Code Reading Club, but just break down different applications on my own, bit by bit. I’d include architecture diagrams, doodles, and source code snippets. I imagine it being something like MaiZure’s Decoded: GNU coreutils project[0].
[0]: https://www.maizure.org/projects/decoded-gnu-coreutils/ https://www.maizure.org/projects/decoded-gnu-coreutils/
- Freeboots 6y agoI like this idea. As a still learning developer I have occasionally stumbled across code reviews on youtube, and they've been enlightening. I rarely find them on purpose (If anyone knows or runs a channel that does this i would sub). Reading source code with some guidance from more experienced developers sounds similarly useful.
- didizaja 6y agoYeah, I think it could be quite useful as well! I will make sure I post a Show HN once the project is in a more polished state.
- KraftKacke 6y agoI like the idea a lot. I've been thinking about something similar: An explanation/notes "wiki" for exemplary open source repository snapshots. With the goal to document everything you can see in a repo so beginners can understand and catch up with structure, conventions and understand algorithms and common problems IRL. Imperfections and errors are part of the game and need to be explained as well, and because of that infrequent snapshots are sufficient. Something to overcome tutorial hell and lower the threshold for participation in FOSS projects.
- didizaja 6y agoWow, that sounds extremely useful! I haven't contributed to any FOSS projects in a meaningful way (yet), but I imagine that lots of potential contributors spend an inordinate amount of time trying to familiarize themselves with structure, conventions, and how everything fits together. Having all of that information in one, well-documented place could definitely help with getting up to speed/creating a mental model for the project faster. On a semi-related front, I'm also interested in lowering the threshold for participation in FOSS projects, but I approached things from the lens of helping potential contributors better grok/intuit the social/organizational structure of a project. To that end, I made small badges that projects can add to their READMEs to indicate, to a rough approximation, what "type" of project they are[0]. The project types are described in a really interesting book called Working in Public: The Making and Maintenance of Open Source Software[1] by Nadia Eghbal. [0]: https://project-types.github.io/ https://project-types.github.io/ [1]: https://www.amazon.com/dp/0578675862/ https://www.amazon.com/dp/0578675862/