: 4409 | 106260 | 11906

New database type: "commons" for in-memory shared elements 
Use this IdeaSpace to post ideas about Domino Designer.

: 8
: 10
: 2
: Domino Designer
: inheritence
: Mark Demicoli10169 11 Apr 2011
:
: / Email
 I've raised the idea previously that design inheritence needs to be improved to ensure fidelity, but I'd like to articulate it more clearly.  There are too many ways to break design inheritence.  From accidentally (and commonly, mind you) ending up with 'prevent inheritence' ticks here and there, to simply needing to manually run designer in DEV after changes to high-up inherited design elements.
 
At the most simple level, it works (ie well designed, simple and well deployed template).  However ultimately, the actual inheritence depends often on a series of conscientious (and sometimes not), decisions, especially in complex environments.  In the development environment, changes to 'commons' must be pulled out using the Client or running designer constantly.  Did someone call the Inquisition?
 
SINGLE COPY TEMPLATES work in a one-to-one relationship.  Individual design element inheritence breaks this model.
 
I'd like to see a 'commons' database type which only allows shared design elements (eg script libraries).  This design type would allow PURELY referential (pointer) references to it's design elements from other databases.  That way a common set of classes, for example, can be maintained centrally and all referencing applications will reliably use the same object code (script_O).
 
Result: If a commons script library is changed, a recompilation / pre-compile error report occurs in the UI showing all affected designs on the whole server and respective errors.  This Idea really points to a deficiency in the designer client to recognise relationships.  It does so almost completely.
 
Such a scheme raises the question ofcourse, what if a 'commons' database is deleted?  Well be a little clever and create full copies of affected commons elements in referencing databases.
 
Ambitious?, yes, but are we not Lotus?  These suggestions are really only speculation as to how a decent Lotus engineer might solve the problem.  But a problem it is.



1) Dave Navarre339 (10 Jun 2011)
I don't think this is a good idea because any time someone updates a design element in 'the commons', the server would have to either immediately recompile every piece of code that uses it or would have to recompile on the fly when those agents/actions/events get called.

What if the user changing the commons doesn't have designer rights in every database? What if the change which seems minor to the one changing the commons is actually major in one or more databases? The "error report" showing all affected designs and respective errors could actually be a huge challenge to create.

Sounds like a disaster waiting to happen.
2) Mark Demicoli10169 (10 Jun 2011)
Thanks for the comments Dave, very interesting. I see your perspective but I have to disagree because the perspective we're talking about is a very structured one (not anarchic). Therefore changes would be broadly understood and tightly controlled.
3) Dave Navarre339 (13 Jun 2011)
Mark, the trouble is that you're proposing that it be available to everyone, not just your own, very structured group. I would be willing to bet that most Notes development teams are not tightly controlled and that in many places, the recipe would provide the disaster that I'm imagining.

As such, third-party tools for would be a more appropriate source for this. Teams that can use it would buy it, but the great unwashed masses would avoid it.
4) Mark Demicoli10169 (13 Jun 2011)
Well we should make a great effort to wash them!! :)
5) Mark Demicoli10169 (13 Jun 2011)
With respect I see your point though. The Lotus Notes developer community from my experience is not disciplined like for example the Java community. The great IBM machine has tried for years to prod the sheep into a Utopia of Java Beans, Faces and the like. My beef though, is that there is currently absolutely no way to even *hack* such a solution for third-party fanatics like myself!
6) Dave Navarre339 (13 Jun 2011)
Have you thought about doing it via DXL? I just searched using "design element lotus notes refresh" on dogpile.com and found:

{ Link }

I already knew that design elements were "notes", but didn't realize that is was possible to could display them in a view:

{ Link }

So, I have doubts about it the "absolutely no way" part, but I've never thought about trying it before, so you could be right.

I also have doubts that the open source Java community is disciplined, but I have no experience with that community yet, so have to defer to your analysis.
7) Mark Demicoli10169 (13 Jun 2011)
Key problem is when you save a 'common' script library, there's no way to trigger any code to update / recompile related databases. DXL would be a possibility otherwise.
8) Kenneth Axi1679 (13 Jan 2012)
To me, this sounds like that what Mark is aiming for is actually a code repository and I don't think it's a bad idea. It is only very hard to implement due to a lot of problems.
The security-part is easilly delt with : If a user tries to checkin a scriptlibrary that is used in a database where he/she has insufficient rights - then he will simply be denied to checkin the object. But then there is signature check, compilation etc etc...










:
:

Welcome to IdeaJam™


You can run IdeaJam™ in your company. It's easy to install, setup and customize. Your employees, partners and customers will immediately see results.

Use IdeaJam to:

  • Collect ideas from employees
  • Solicit feedback and suggestions from employees and customers
  • Run innovation contests and competitions
  • Validate concepts
  • Use the power of "crowd-sourcing" to rank ideas and allow the best ideas to rise to the top

IdeaJam™ works with:

  • IBM Connections
  • IBM Lotus Quickr
  • Blogs and Wikis
  • Websphere Portal
  • Microsoft Sharepoint
  • and other applications.

IdeaJam has an extensive set of widgets and API's that allow you to extend and integrate IdeaJam™ with other applications.

Learn more about IdeaJam >>


5
Mail print as PDF or export as PDF
10
Upgrade the admin client. Still has Notes 7 status bar even.
-5
Toolbar buttons for mail Recall and Encrypt
8
Settings / Option for sending read receipt
6
To: field label in memo is a address dialog hotspot. CC and BCC should also be hotspots.
-1
Native Traveler Client for all platforms
7
Add server and database as optional parameters for @GetProfileField and @SetProfileField
6
New "Copy into new Notebook entry" functionnality
3
Stop Opened/Closed session logging for Traveler Servers
5
Improve Support for XPage in Notes Client







IdeaJam developed by