Community Software Development

[This topic is one of four seeking input and ideas from the ABM software development community regarding future directions for the ABM tools community. Even (especially?) if you aren’t past of software development efforts please share your thoughts.]

This is probably not a controversial statement: the ABM software community is fragmented. Perhaps its time to take a look at that and see what can or should be done. Here are some broad questions for discussion – of course feel free to come up with your own or break out separate threads.

  1. Are there “too many” tool efforts? What are costs and benefits of many separate efforts? What is the balance between diversity and efficiency?

  2. Presuming yes, can this change? How? Would it be worthwhile to make an explicit effort or will it happen naturally?

  3. If the number of tools is not an issue, is there still reason to focus on interoperability and/or standards? Is it possible to share any components or efforts?

  4. For good or bad, why are there so many efforts? Different approach or market? Institutional inertia and/or self-interest? Social, domain or methodological barriers?

  5. Presuming a broader software development or simply a generic standards effort makes sense, what what are the best models and practices for open source projects? What doesn’t work? Real-world examples?

  6. How might organizations and practices be designed to encourage individual and organization involvement in a common effort?

  7. Should non-Open Source solutions be included in any efforts?

  8. What technologies outside of ABM toolset might we build on?