Showing posts from November, 2011

Guidelines for creating good open source software

There are 19 guidelines for creating good open source software listed in his essay: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 away; you will, anyhow.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. 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 t…