3 ms·
Ask HN: Best way for finding open source projects to read and learn from?
In my computer science education the idea of reading relevant literature was always limited to books and articles. In only one case (kernel programming) was source code part of the literature. Because of this, I'm woefully behind in reading amazing quality open source projects.
What are your strategies for finding quality open source projects? And do these strategies differ if you're just learning a new language (or framework) compared to if you already have a good grasp for it?
Currently, my personal interest is in learning best practices for node.js (and its ecosystem). This question, however, is aimed for learning best practices or gaining interesting ideas about all languages and frameworks.
- itamarst 10y agoSome reading material - The Architecture of Open Source Applications: three books (+ bonus book) for your education. Different levels of writing quality since it's many authors, but lots of useful stuff in there: http://aosabook.org/en/index.html http://aosabook.org/en/index.html Doesn't include much if any source code, but once you've read the explanation of how something works you can then go read the source. -- My 5-second heuristic for judging open source project quality: check for tests. If there's no tests, I assume it's broken crap and move on. Not always true, but it's a pretty good heuristic. Next, check for different levels of tests (depends on project): unit, end-to-end with running system. Good tests will also have comments/docstrings explaining the goal of the test separately from the code. Good comments/docstrings in the code are also useful signs of quality. I barely know Ruby, but today I submitted a PR to Sinatra. It wasn't that hard to figure out what was going on, because the code was well-commented and easy to follow. I even have some sense of how to do testing because they have a bunch of well-documented tests.
- mettamage 10y agoThanks! That helps a lot :)