Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
The Cathedral and the Bazaar
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Lessons for creating good open source software== Raymond points to 19 "lessons" learned from various software development efforts, each describing attributes associated with good practice in open source software development:<ref>{{cite web|last=Raymond|first=Eric Steven|title=The Cathedral and the Bazaar|url=http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/index.html|access-date=18 April 2012}}</ref> #Every good work of software starts by scratching a developer's personal itch. #Good programmers know what to write. Great ones know what to rewrite (and reuse). #Plan to throw one [version] away; you will, anyhow (copied from Frederick Brooks's ''[[The Mythical Man-Month]]''). #If you have the right attitude, interesting problems will find you. #When you lose interest in a program, your last duty to it is to hand it off to a competent successor. #Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging. #[[Release early, release often|Release early. Release often.]] And listen to your customers. #Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone. #Smart data structures and dumb code works a lot better than the other way around. #If you treat your beta-testers as if they're your most valuable resource, they will respond by becoming your most valuable resource. #The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better. #Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong. #Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away. (Attributed to [[Antoine de Saint-Exupéry]]) #Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected. #When writing gateway software of any kind, take pains to disturb the data stream as little as possible—and never throw away information unless the recipient forces you to! #When your [configuration] language is nowhere near [[Turing completeness|Turing-complete]], [[syntactic sugar]] can be your friend. #A security system is only as secure as its secret. Beware of pseudo-secrets. #To solve an interesting problem, start by finding a problem that is interesting to you. #Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one.
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
The Cathedral and the Bazaar
(section)
Add topic