Blogs

  • Browse Blogs
  • My Blog
  • My Updates

Tags Help

  • View as cloud  | list

Similar Blogs

photo

Yellow is the...

71 Entries |  Tim Tripcony
Updated 
Ratings 2     Comments 34
photo

Lotus Nut

96 Entries |  Chris Whisonant
Updated 
Ratings 12     Comments 131
photo

TexasSwede

81 Entries |  Karl-Henry Martinsso...
Updated 
No Ratings 0     Comments 68
photo

Urs Meli

24 Entries |  Urs Meli
Updated 
No Ratings 0     Comments 17
photo

Uh Clem's Adm...

49 Entries |  Chris Mobley
Updated 
Ratings 8     Comments 51

.Domino Framework

Blog Authors:  Peter Presnell  

All entries tagged with .dominoframework

Main  | Next

New OpenNTF Project - xDomino Framework

Peter Presnell  |     |  Tags:  xdominoframework .dominoframework openntf  |  Comments (3)
It is still early days in my Xpages learning but one thing has already become very clear.  Xpages development is crying out for a framework even more so than LotusScript. It is not yet clear to me how much of my time moving forward is going to be spent doing Xpages development, but the extend to which I do I just know a lot of my time is going to be consumed collecting code from all over the place and consolidating it and combining it with my own code in a way that will allow me to continue to do Rapid Application Development.

It is now clear to me that I need two separate framework.  The existing one that is OOP LS based and will support all non XPage development and a separate one that will focus almost exclusively on Xpages and SSJS (and possbly Java and even LS at a later stage).  My goal is to at least have a beta posted on OpenNTF sometime soo after 8.5.1 is released.

The current .Domino Framework proect is likely to be extended but will focus on non-XPages development.  How much will depend on how much non-Xpages development gets done in the future.

I have now created a community on bleedyellow.com.  Anyone who would like to get involved in any way is encourage to join this community (it is moderated but I have super low standards on membership -- If you drink beer or even if you write some form of Notes code your are a shoe in to be accepted).  Contributions can include ideas, enhancement requests, code contributions, rolling up your sleeves and building the code, or just telling us what we are doing wrong.

Domino Framework 1.0 Released

Peter Presnell  |     |  Tags:  .dominoframework  |  Comments (0)
.Domino Framework 1.0 has been released on OpenNTF under the Apache License (which basically means anyone can use the code for whatever they want).  This project was thirteen years in the making.  It contains a collection of tools, code, and information to assist Lotus Notes developers build Notes applications.

Resources:
.Domino Framework Project (Download)
.Domino Framework Wiki
.Domino Framewrok Web Site
.Domino Framework Blog
.Domino Framework Community

Points of Note:
  1. The framework is not an application template.  It is a component library.  Copy/paste the needed components from the template based upon your own application's needs.  A separate application template will be release soon with core components likely to be used in building a new application.
  2. Application code is separated into a presentation layer and a business logic layer.
    1. The presentation layer is targeted at Notes 6.0+ and contains forms, views etc. to support generic functionality common to many Notes applications.
    2. The business logic layer consists of a collections of LotusScript libraries containing 100+ classes that can be used directly or extended by your own applications.
  3. The framework is specifically designed for Object Oriented Programmers but much of the code be adapted/used by procedural programmers.
  4. The framework has been designed to allow you or your organization to customize and/or extend.
  5. The focus of the framework has been Notes client development.  There is some stuff there for Web development but not a whole lot.
  6. The framework is the basis for EVERY notes application I have created or significantly enhanced over the past two years.  I estimate its use makes me almost twice as fast developing Notes applications.
What is the significance of a 1.0 release?
  1. A number of beta releases were made available as a way of testing the water as well as allow other Notes developers to make use of the code sooner.
  2. Like many 1.0 releases it is going to have issues.  Much of the code has been tested in production applications.  There are still parts that were started but never finished and/or fully tested.  I have left this code there because it may still be of value to others.  Over time I would like to think I will get the chance to finish these parts off in later releases.
  3. I no longer have the need to focus on Notes 6 development.  All my Domino Designer clients are now either 8.5.0 or 8.5.1 (beta).  I wanted to publish this initial release with code that would run on every version of Notes from 6.0+.  I may never get a chance to go back and finish it.
Brief History
I started collecting code for .Domino Framework in 1996 when I first started doing LotusScript programming.  Before that I had kept to forms, views, agents and @formulas (yeah I was one of those Notes developers!).  I had a research and knowledge management background and quickly collected and stored lots of stuff to help me while I was learning.  I soon had so many code samples, samples databases, and bookmarks to Web sites etc. it was getting hard to find specific code as I needed it.  This was slowing me down.  So I started to build a Notes database I called "Code Central" to hold all this stuff.

During the Dark days of Notes 7 and IBM Workplace I thought it was a smart career choice to move away from Notes.  I was presented with a great chance managing a team of C# and .Net developers.  This is where I learnt to understand and appreciate the power of OOP.  I was particularly impressed with Microsoft's .Net Framework and how it took VB.Net (a language very much like LotusScipt) and took it a whole new level.

Two years ago I found myself back doing Notes development.  IBM seemed to be interested in Notes again (yeah).    Only now I was convinced OOP represented the future and I needed a framework to elevate  LotusScript and my productivity.  IBM didn't seem to be doing much with LotusScript (boo)  So, for the past two years I have rewritten Code Central from the ground up as an OOP framework.

Contributions
My many inspirations for the .Domino Framework come from hundreds of people in the yellowverse that published code or ideas into the public domain.  Unfortunately due to the way the code was developed I lost details about the original sources for a lot of the stuff I had collected.  Sorry, I never intended to share this...  I have since written almost every line of code in the framework myself to suit an OOP style and to ensure the general style and my own best practices are implemented.  Where I can I have tried to identify sources of the original code or ideas upon which it was based.  Please,please, please... if you see anything in the framework that you feel you may have played a role in at some time please let me know.  It is not my intention to lay claim to anyone else's ideas and I will happily acknowledge your contribution.  Even if I never saw your code I don't mind acknowledging your work..  As I have said, I believe I have painfully written each line of the code eventually implemented., but just in case, let me know.

I do want to acknowledge several people who did not participate directly in this project but have provided signifcant  indirect contributions (in alphabetical order).

Ben Poole: Ben was kind enough to provide me with an early 1.2 beta of his OpenNTF DominiWki project.  I have modified some of Ben's code to suit my own needs but the credit for all the code in the .Domino Framewok Wiki  belongs to Ben and his great project.  (Note to self: I need to share with Ben some of the changes I made).

Chris Blatnik is one of the Notes UI gurus.  I have tried to follow his many ideas.  Its not great but the .Domino Framework is distinctly less ugly than the original Code Store.

Damian Katz did much of the early pioneering work on accessing design elements from LotusScript.  I studied this code carefully before building my own solution.

Jake Howlett: has been one of the largest contributors of code to the Notes community via has codestore.net site.  I have followed this site and blogs closely for ideas and information on how to solve common Notes problems.

Julian Robichaux:  I decided to replaced my own error logging solution with Julian's OpenNTF OpenLog project.   In my early days I used Julains nsftools site a lot for examples of LotusScript code I could use.  I have also incorporated Julian's LS2HTML applet as a developer tool within the .Domino Framework.

Nathan Freeman and the entire Lotus911 team have consistently developed pioneering work in the Notes arena and I have tried where I can to incorporate some of their ideas in the framework.  Nathan, Tim, Kevin et al have read my stuff and frequently comment on my work and crazy ideas.  Lotus911 also provide the bleedyellow blog site and Lotus Connections community I have been using for this project.  Much appreciated guys.

Finally to all those I have not mentioned I would like to thank the entire yellowverse and your willingness to share code and provide comments and feedback to my own blog.  These have all been a big help in improving my own limited understanding of Notes development.  Even you Java guys!!.  I still have a long way to go but I am hoping by publishing this framework I can provide something back to the community as a small thanks for the help I have received these past 13 years in making me a better Notes developer.  There has been a lot of yellow blood spilt over this project... Please enjoy.

LotusScript v JavaScript

Peter Presnell  |     |  Tags:  lotusscript .dominoframework javascript  |  Comments (0)
I don't normally plug my own ideas on ideajam, but this is one I would like to encourage notes developers in the yellowverse to cast a vote.  As many of you know from reading my blog I am in the process of learning how to develop xpages.  It is still early stages for 8.5, xpages ,and server sided Javascript but I am interested in getting and early indicator based upon your own experiences and insight as to whether or not xpages is likely to change Notes developer programming habits away from LotusScript towards Javascript.  Away from forms, views, pages and outlines to xPages.  IBM may or may not care but I am certainly interested.  It will help me decide what I do next with my OpenNTF project  .Domino Framework.  Do I continue to focus on LotusScript, do I turn my attention exclusively to xPages and Javascript, or do I focus on both?