The Making And Maintenance Of Open Source Software (book) by Eghbal

goodreads, wiki, amazon openarchive, gutenberg

authors: - Nadia Eghbal

pdf links:

Baris' notes

Part 2, how people maintain - the work required by software - code as artifact, code as organism - observation 1 - “most computer programmers begin their careers doing software maintenance, and many never do anything but” -Nathan Ensmenger - large open-source projects tend to become modular as they grow, because of cost of maintenance coupled with lack of motivation to maintain - observation 2 - software never dies after finding its set of users - because someone will continue using it no matter how much time passed - COBOL is still out there. Banks don't want to change it due to technical risks - lots of issues with having to maintain out-of-date software - Javascript - ECMAscript - browser compatibility headaches, frequent breakages - Neal Stephenson: - “(Unix is) not so much a product as it is a painstakingly compiled oral history of the hacker subculture. It is our Gilgamesh epic . . . Unix is known, loved, and understood by so many hackers that it can be re-created from scratch whenever someone needs it” - Code is not a product to be bought so much as a living form of knowledge - reminds me Marc Andreessen's remark about software's economic moat. It starts developing, and with each bug fix it becomes more stable and collects a wisdom. It has wonderful economic properties that can be copied infinitely with zero cost. Hence software eating the world. - open-source is "free as in speech, not free as in beer" –Richard Stallmann - open-source is "free as in puppy" –Jacob Thornton of Bootstrap

  • The hidden cost of software
    • 3 types of cost
      • creation
      • distribution
      • maintenance

    - My idea: Current LLM coding helps with creation and maintenance cost somehow. But as developer might not understand creation part too well, it makes maintenance harder too. Complicated relationship.