Free Software Anti-Patterns

Resources for Free Software

Anti-Patterns

If free software is to be understood to promote an ethical approach to sharing code and caring for each other, a pragmatic approach to engineering great software, and an effective way to facilitate cooperation among strangers, the following anti-patterns must be avoided.

Burn-out

Coding may be addictive, it brings highly satisfying intellectual pleasure. But you require sleep, exercise, a social life, and proper food. Do not overestimate your power, and do not underestimate others’: delegation is a great way not to burn out. The fine folks at Basecamp understood it early, and they thrive. Read their books! https://basecamp.com/books

“Scratching an itch”

If motivation is key to success, individual motivation should come second to solving actual world problems. Don’t waste your talent procrastinating. Instead, realize that Gödel’s incompleteness theorem also applies to individuals: and individual problems are better solved collectively. Maybe scratch someone else’s itch?

Meritocracy

The “Benevolent Dictator For Life” (BDFL) and hero coder myths focus on excellence, not on collaboration. The former without the latter burdens the community. Not everyone is a genius coder, let alone a fantastic community leader, and the objective is not to foster a society led by highly specialized egotistic morons.

Sexism

As soon as computer science became valuable to the market, it was invaded by males who prolonged a culture dismissive of women. It’s not cool to pretend being great when you’re hurting people. Meritocracy and sexism often go hand in hand – and a way to keep among men is to dismiss women’s work, however great it is. If you’re male, learn about your privilege, seriously.

Feel free to discuss anti-patterns below, and add new ones to this wiki post!