Friday, May 11, 2012

Oh the things I've seen

I was doing a web training session for a customer recently.  Since I know the user interface for the tool, I let the customer do the driving because it helps them become familiar with the interface, and the other attendees try to find the correct button before the person doing the work.  All in all this has worked real well for me to keep web attendees involved in the training.  So, the first step is to open one of their databases in designer and there it was.

and so on, perhaps twenty 'different' forms altogether.  This is a form of version management and way too common in Notes shops.  When you see this in forms, you know it happens in views where it is a really bad idea.  With forms, they don't take much space, but every view has an index that must be maintained.  It also means you might have things on Create menus or Action menus that you didn't anticipate.

So what do I mean by version management?  It is a way to track the changes in your design elements.  And it is a very good idea to track changes in your designs for many reasons.  Version management is one component of Source Code Control.  Ah, yes.  So that is why you need source code control.  People talk about it,  people tell you how to set up Git or Mercurial, but they don't tell you why you need source code control.

One of the other things you typically get with source code control is a tool to tell you what has changed.  Without printing a Design Synopsis for each of the forms.

So look for these features in your source code control system - it will really improve you development environment.

But let's go further.  The difference between these forms was several labels were changed.   This is another classic example of design meets data.  The data has now become part of the form.  This is bad because whenever the data changes, a developer is required to make changes to the database.  The whole database should be changed so that a new document was created, and the changed information entered on the document.  Use picklist or comboboxes to control the selections if you need to, but make it document level updates.  Now you are simply managing documents, not design changes.

I hope this was useful.

No comments:

Post a Comment