- Generally speaking, the code cannot stand alone
- Many people have to be involved in keeping it alive
- Refer to first lecture notes...
- Without people who care, projects fail and have issues
- Projects sometimes still fail with people who care
- Software is hard!
- Refer to first lecture notes...
- A community...
- Looks out for the code
- Makes enhancements
- Fixes bugs
- Reviews contributions
- Follows strong technical principles
- Looks out for the users
- Holds discussions with them
- Hangs out in places like IRC and email
- Watches the tracker
- Attends/speaks at conferences
- Looks out for the community
- "Polices" the places where discussions happen
- Sets governance and rules for behavior
- Creates a culture
- Finds sources of funding or support
- Money for bandwidth
- Sponsors for hosting
- Scouts/recruits potential talent
- Behaves in a good way
- Protects branding/legal
- The lifeblood of the project
- Having a community helps the odds of the project surviving...
- If someone leaves
- If a competitor enters the arena
- As people become more or less involved
- Looks out for the code
- Open Source communities...
- Have changed how software is produced
- Various new build tools
- Communication methods
- Have changed the way proprietary companies work
- See guest lecture coming about InnerSourcing
- Have changed how software is produced
- This makes sense (referring to previous lectures)
- When you have motivated smart people together
- The focus is delivering quality software
- Stuff gets done