After the disappointment of finding that there is no Eclipse LotusScript Editor it took me a while before I could motivate myself to take a serious look at Domino Designer 8.5. I would like to be more positive about this release but it is shaping as a major disappointment.
I have been developing Notes applications for 15+ years. During that time 80-90% of my work has been developing applications for use with the Notes Client. As a result, these comments relate specically to that aspect of what I would consider as “Core” Notes development.
This release will be significant for several reasons:-
-
For the first time design elements are being added that are NOT supported on the Notes Client
-
This release will probably be the first where developers of Notes client applications are actually worse off.
On the positive side I can see where the Eclipse environment is going to be HUGE for development. The new Outline, Properties, and Component panels provide me with a lot more information about my design elements and provides additonal tools that will make me more productive. I also love the ability to switch between design and code perspectives.
The problem is that these features appear to only be available for the two new design elements (X-Pages and Custom Controls)and these are for Web client development ONLY. For the other 90% of design elements (100% of the Notes client design elements) I am left with what looks and feels like a hack to place what I already had with a non-eclipse Designer in the eclipse environment. I very much doubt the Notes 8 client would have been allowed out the door looking like this so I wonder why IBM are considering letting Domino Designer be released in this sort of a state.
When I step back and look at it, as a developer of Notes client applications, I would consider myself to be worse off if I were to migrate to 8.5 than remain with an earlier release of Notes:-
-
There doesn’t appear to any significant enhancements for either the IDE or programming functionality. (Sorry, but setting the system date/time and a few NotesDOcumentCollection methods does almost nothing). So even if all the bugs with the Eclipse port can be found and fixed, at the very best I will be left with nothing more than what I already have.
-
I now have an outline, properties, and control panel eating up screen real-estate and offering absolutely nothing for Notes client design elements. So I know have to close these all down so that I can get back the space I need.
-
This is still a beta so I am sure improvements will be made to performance, but I doubt that the Eclipse IDE is ever going to run faster that the existing IDE.
-
I now have to find my design elements in a new heierarchy (especially the database icon). This is a pain I would usually accept if I was getting something in return, but I’m not.
-
It seems we now have new naming standards for design elements such as XPages and Custom controls.
-
By offering design elements with work in the be client and not the Notes client it is even harder for me to build applications that support both clients with a consistent UI and functionality. Users never understand that, they just exect their application to work the same!
In short, I get no additional functionality, the likelihood of new bugs, in a slower environment, and with less screen real estate to work. So the value proposition of this is…?
Suggestions:
-
If we are going to have design elements that work in one environment and not the other, provide an attribute at the Application level where I can designate if the application will be accessed by Note client and/or Web client. Then automatically hide the design elements that are not relevant.
-
With the number of design elements growing, give me the ability to nominate the design element types I plan to use for the application so the options available can be reduced (e.g. I rarely have Java Resources, Navigators)
-
Automatically close the new Outline, Properties, and Control panels when the design element does not support them.
In the past I have had to push the organizations for whom I work to upgrade to newer versions of Notes so that I can get access to the latest development capabilities. This has been difficult because such decisions are tied to the deployment of the Notes client across the organization. Unfortuantely, with this release I will be doing the opposite. I will actually be campaigning to stop this release from being deployed for the client I work for because (as I see it) I am actually worse off. I am still hopeful that another release will come out that addresses the needs of Notes client developers, but this is NOT that release.