Skip to content
amaneiro edited this page Apr 23, 2012 · 4 revisions

The beginning

A team of developers from Cartolab was working on the project codenamed gvSIG Fonsagua during 2010. One of the aims of this project was to build a tool for GIS technicians to gather field information. With that goal, we started to craft some forms for gvSIG. Those forms were designed keeping in mind the idea of navigation between registers in a vertical way, as navtable extension does and required very complex information. While the application continued growing more features came to scene. And one of them was pretty handy: validation for input fields.

The development

After some weeks of research and coding we came to use jgoodies validation framework to include field validation in our project. Once we were done, it was clear that this new feature will be useful for old forms too. So, in parallel to this, the number of forms were growing to one extent which recommend us to review the process and automatize it.

So, as we continue coding, we start looking for code reuse and refactor when needed. It included hard working on upstream navtable work, in order to help us to build other kind of forms. At the end of gvSIG Fonsagua project, almost 3 months after the initial idea, we had built a complete workset of classes which helped us to ...

  1. reutilize the vast part of bolilerplate code for creating forms.
  2. make the features for new forms available to old forms (i.e.: validation and unit testing)
  3. build forms faster than we were building them

A brand new library

After gvSIG Fonsagua was done, the developer team start working on other projects. One of them was ArqueoPonte, a customized gvSIG development for archeologist which had some similar requirements than gvSIG Fonsagua: it required good support for collecting field information with gvSIG. That opportunity allow us to completely separate the bunch of classes we use to build forms and become it in a stand-alone library useful for more projects. That was another major step in navtableforms History.

A new beginning

In the meanwhile, part of the team bootstrapped iCarto, a spin-off firm from Cartolab. So, we now have two teams developing actively more projects with the library (almost 5 more were developed if I recall correctly!) and we were pretty happy with it.

But... it had some design flaws which prevent us to develop new features with the speed we liked to. So, during the development of a new project we took the oportunity to rewrite some parts of it and apply the lessons learned after 1 year using it in several projects and developing with it.

Current status

Now, NTForms is an actively and stable library developed and maintained by both teams (CartoLab and iCarto) aimed to developers who want to build customized forms based on navtable capabilities.