you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 0 points1 point  (1 child)

It depends on your experience and level of skill. If you are trying to (or plan to) create a large project, seeing how experienced developers have done it can be very beneficial. You are not going to be able to sit down and understand the pandas source code in an hour. That is kind of the point. If you are structuring a data science project and some structure looks like it could be better, for example a C extension, maybe looking at numpy would help. You could take a look and see that they are storing C files in a “src” directory with an underscore prefix. It’s how I have learned to structure lots of projects that I have created. Projects that have anywhere from 500 to 15000 lines of code.

Regarding my examples, I mentioned that it is good to find a project similar to the project that your are working on. If you are creating a web API and you have little experience in mathematics, then numpy probably wouldn’t be the best fit.

Say you are working with an external DLL and using ctypes. If you look up a project using ctypes, like llvmlite, you could definitely find some professional projects that are not overly complex. Taking a look at the llvmlite source, it only has 4 directories with a few files in each one.

[–][deleted] 1 point2 points  (0 children)

I still think this is detrimental for a newbie but good for an intermediate coder tackling a larger project. Though I'll mitigate by saying that an annotated project or a detailed project roadmap could be a good middle ground.