I’m just generalizing, like if you want to copy some cleaver feature or modify some Python program you came across, what are the red or green flags indicating how well your (or particularly some hobbyist’s/your early learning self’s) results are likely to turn out?

Also how can you tell when reading into such a project is going to be a major project that is beyond the scope of you ultimate goals. For instance, I wanted to modify Merlin 3d printer firmware for hardware that was not already present in the project, but as an Arduino copy pasta hobbyist, despite my best efforts, that was simply too much for me to tackle at the time because of the complexity of the code base and my limited skills.

How do you learn to spot these situations before diving down the rabbit hole? Or, to put it another way, what advice would you give yourself at this stage of the learning curve?

  • jeffhykin
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    edit-2
    4 months ago
    • Use cloc to get an idea of line count.
    • See how hard it is to find the entry point
    • Try building it
    • Try hacking a feature into it
    • Try hacking a bigger feature

    Thing is, for repos of any typical size, its going to take a lot more than a glance to know.

    For example the Atom Editor codebase is immaculate, best formatting/commenting I’ve ever seen. But getting it to build is a nightmare, so its too hard to contribute to/hack.

    Lots of times you just have to dive down the rabbit hole