Rocs Plans for the Randa Sprint 2012

The Randa sprint approaches and it finally gets time for me to organize my plans and ideas on what I want to work there to improve Rocs (the graph simulator shipped in the KDE Edu module).

If you look at the ways Rocs is used practice, you can currently find two groups of users (please write a comment if you do not fit in any of those!): We have users who use Rocs for teaching and studying, i.e., to teach graph and data structure algorithms and provide a tool to their students to explore and develop algorithms. But also, we have users who use Rocs for their research, then as a tool to test algorithmic ideas an small graph instances or to understand effects of distributed algorithms for example.

To provide a powerful though easily accessible tool for both groups of users, a lot has happened during the last years. Actually, I think the current state of Rocs for experienced users is really good: if you know what you want to do and if you are used to the way Rocs works, you can do nearly everything you want (at least the number of feature requests from my colleges as well as got quite low recently). Hence, I intend to focus at the sprint at the group of new or inexperienced users. Especially, the following topics are on the list of things I want to discuss and work on:

  • New Project Wizard: A helper tool (maybe even with a tutorial mode?) to guide first time users through the process of setting up a project and learn how to use Rocs.
  • Teaching Materials: We already support a (scarcely used) way to publish and download graph algorithms with Hot-New-Stuff. As this was implemented long time ago, it lacks support for whole projects (graph files, algorithms, and explanation texts packed together). Further, I would really like to discuss if and how we can provide an even better way to connect Rocs with actual teaching material and explanation texts for the algorithms.
  • User Interface Simplifications: Make the interfaces more clear, reduce complexity, regroup actions and dialogs where necessary.
  • Project Journal Files: Both for research and teaching, it is necessary to provide an easy way to keep track on your ideas and results. Currently I think about a support for simple rich text files that can be used within project to make notes. (Better ideas are welcome!)
  • Rocs Graph Platform: This is an idea that spooked in my head for quite some time: I would like to have a slightly more modular approach of Rocs such that we put the visual graph editor in a module of its own and allow other interested projects to use it… But that needs to be discussed 🙂

And besides all that stuff, it is great to finally meet Wagner, one of the other Rocs developers, for the first time in person. Due to a distance of several thousand miles between Europe and South America, it is not that simple to meet each other often 😉 That is a thing only events like the Randa sprint make possible. — And If you want to make a small contribution to help the Randa sprint, here is your opportunity: