Very cool to see Slashdot address framework design, although I am a bit disappointed they didn't reference the Framework Design Guidelines as it covers all of these areas.   I do basically agree with the primary point of the post...


Our presumption is that software developers mostly evaluate following software framework characteristics based on:

  1. perceived ease of use (e.g. easy to learn, easy to adapt)
  2. perceived usability (e.g. improving developer performances, reducing work, faster development),
  3. perceived sustainability (e.g. perceived long term support, supporting standards, clear project directions) and
  4. perceived fit to specific developer requirements (e.g. suited language, suited functions, suited architecture).

And it is interesting that this not only goes to base frameworks (Java, .NET Framework, etc) but also to the frameworks you design for your own internal usage.  Are they easy learn, usable, sustainable and appropriate for the audience? 


Are there any other characteristics that you use to chose a framework?