The last Saturday, we have had another Sprint of the Arena Project.
Arena is one of the flagship projects of the Uqbar Foundation.
Arena is an MVVM UI framework that strongly encourages the separation between model and ui classes. Although based on automatic bidirectional bindings and small single-responsability reusable controllers. Through this it clearly shape the core concepts of object design applied to UI-development.
It also implements a transparent AOP-based mechanism for object-level transactions and observability (object properties). This makes extremely easy the developer tasks in order to bind UI components with domain, by reducing repeatable domain code such as triggering events or handling transactions.
Arena is being used now since 2010 in several Argentinean Public Universities in order to teach the core concepts of object-oriented user interfaces.
The sprint was a really successful, 11 developers gathered to work in the project.
The main objective of the Sprint was the integration of new developers to the project. Everybody getting a working development environment and through the use of pair programming everybody started improving Arena.
The results of the sprint are amazing:
- A new Continuous Integration effort has been started. The idea is to have an automatically integrated process to release and publish the changes. Every time a developer submit a change the process is fully automatic.
- The whole project was migrated to Scala 2.11.
- The documentation has been improved, with all the things the main developer show to everybody.
- The site of Arena has been improved and fully integrated with the Maven building process.
- We have started the process to integrate all the repositories and the migration to Git.
- Also the process to get a copy of Arena into the main central repositories of Maven has been started.
- Also a number of issues has been resolved and improvements added:
- Now you can bind tooltips to the controls
- The window can have a initial size.
- The labels resize when the content is longer than previously
- The tables can have a minimal number of rows to show.
- You can know bind the visible property of panels.
- The check boxes can be read only.
Even though the main idea was to integrate new developers to the project, we could achieve lots of issues and improvements.
Some nice pictures of the people working: