SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
Starting Your Application
   the SuperNTF Way


       Kevin Pettitt
Your Host for Today’s Session …


Kevin Pettitt
President
LotusGuru Consulting

Independent Consultant
Developer, Admin, Architect

Blog: www.lotusguru.com



                                         2
What Is SuperNTF?

 Generic starter application template that isn’t
  “-blank-”
 Notes Client application framework designed
  for easy understanding to encourage wide
  adoption
 Built from the ground up with the goal of
  making development best practice easy for
  even novice Notes developers
 Fusion of many other open source projects

                                                    3
Agenda…

   A brief history of File – Database – New
   Overview of standards and frameworks
   SuperNTF feature walkthrough
   What’s under the hood
   Creating a new application
   Overhauling an existing application
   Final Word



                                               4
In the Beginning, There Was -Blank-

 And it really was “blank”
 Next step - Doc Library or Discussion
  template
  – Just to have some code to start
 Advanced developers
  created their own “common
  design elements”
  – Great for reusing code among
    many applications
  – Problem: Only they understood
    how it worked

                                          5
Agenda…

   A brief history of File – Database – New
   Overview of standards and frameworks
   SuperNTF feature walkthrough
   What’s under the hood
   Creating a new application
   Overhauling an existing application
   Final Word



                                               6
Design Standards – Huh?

 Notes is a very “approachable” development
  platform
  – Any decent spreadsheet jock can whip up a Notes database
 limited skills hinder code standardization
  efforts
 It takes time and effort to enforce standards
 Only way way to achieve some level of
  coding standards for novice developers
  – Make it EASY to do things “right” without thinking


                                                               7
Key Benefits of Standardized Code

 No more reinventing the wheel
  – Unless it’s a better wheel
 Commonly used routines are readily available
 Easier to troubleshoot, maintain, and
  enhance
  – Especially when the standard code has been more rigorously
    tested than any one application
 The next developer to touch the app won't
  curse your name


                                                                 8
What Is an Application Framework?

 A basic template for jumpstarting a new
  application
 A collection of generic design elements useful
  in any kind of application
 A way to standardize the “plumbing” of all
  your custom Notes applications
 Everything *except* what makes the
  application unique


                                                   9
Framework Pitfalls

 Often developed organically over time by
  single developer
  – Thoughts of having others use the framework may not take
    hold until after most of it is built
  – Only that developer understands the “quirks”
  – Steep learning curve for others without that developer on the
    team
 Tendency toward complexity
  – Time spent “improving” the framework may actually detract
    from others’ ability to maintain code later
  – The more tightly integrated it gets the easier it is to break


                                                                    10
What Makes SuperNTF Different?

 Conceived with ease of understanding in mind
  – Novices can create nice looking applications without quot;breakingquot;
    something
 Design goal: Make it easy to follow and thereby
  gain wide adoption
  – Low learning curve also helps intermediate and advanced
    developers ability to customize and extend more easily
  – Code is written for readability – elegance over complexity
 Designed to facilitate quot;cherry pickingquot; code
  – Many individual pieces can be copied and reused in other
    applications and still work
  – Copying elements with their dependencies will be made easier in
    the future                                                        11
Meet the SuperNTF Team

 Head of R&D: Kevin Pettitt
  – aka quot;Robbery and Deploymentquot;
 With contributions from: The Domino
  community
  – No one has a monopoly on best practice ideas
  – Most borrowed code reworked significantly to adhere to
    SuperNTF simplicity standards
 New quot;volunteersquot; all the time as more great
  ideas appear


                                                             12
So How Simple Is “Simple”?

 Simple doesn’t mean boring
  – There are still lots of cool features, as you will see
  – Significant attention was paid to offering an attractive default
    UI design
 Many advanced functions are “black boxed”
  – Eliminates the need to manipulate truly complex code (although
    you still can if you want)
  – High degree of configurability further minimizes need to touch
    code




                                                                       13
Agenda …

   A brief history of File – Database – New
   Overview of standards and frameworks
   SuperNTF feature walkthrough
   What’s under the hood
   Creating a new application
   Overhauling an existing application
   Final Word



                                               14
Key Navigation Elements

 Separate frameset for normal use…




                                      15
Key Navigation Elements

 …and for administrative functions




                                      16
Key Navigation Elements

 Standard action bar in separate frame
  – Eliminates need for most typical view actions
  – Leaves room for a descriptive view title
  – Actions show only when appropriate (e.g., “Search” only visible
    if database is full-text indexed)
 Administration panel logically organized
  –   Configuration
  –   Logging
  –   Cool Design Views
  –   Utility views (e.g., Design element views, All Documents)



                                                                      17
Alternate “Dashboard” Interface

 Content of each tab is configurable
 Double-clicking on preview opens document
  fully




                                              18
Centralized Form Configuration




                                 19
Centralized Form Configuration (cont.)

 Each application-specific form has its own
  “configuration” document
 Controls which form features are enabled
  –   Shared Actions – (e.g., Edit, Save & Close, etc.)
  –   Validation – edit a form-wide formula right on the form config.
  –   User Activity Tracking – who read/edited what and when
  –   Field Change History – what did they change and when
  –   Comments – user feedback mechanism




                                                                        20
View Configuration

 Set the View “Header Title”
 Configure “Help” and “New Document”
  behavior




                                        21
User Activity Tracking – Summary

 Keeps a running history of every time a
  document is READ or EDITED
 Saves each record as a separate document
  – Can be easily tabulated and sorted in views
  – Allows user to “jump” directly to the source document




                                                            22
User Activity Tracking

 Consolidated Activity History




                                     23
User Activity Tracking

 Current Document




                                   24
User Activity Tracking – Dashboard Reports

 At-a-glance view to most active users and
  documents
 Apply custom filters to highlight the specific
  information you want




                                                   25
Field Change History

 Form config specifies which form fields to track
  – Also assign user-friendly field labels




                                                     26
Field Change History (cont.)

 All changes to target fields are recorded in a
  single rich-text field
  – Change history dialog accessed via action button




                                                       27
OpenLog Used for Error and Event Logging




                                           28
Integrated Help

 Create help documents within the application
 Link them to specific forms and views via configuration




                                                            29
Integrated Help (cont.)

 Press F1 to pull up the relevant help document




                                                   30
Exporting Data – The Quick and Simple Way

 View actions export all or selected docs
 Use column naming “trick” to …
  – Get categorized column titles to appear
  – Omit specific columns from export




                                              31
Exporting Data – The Structured and
             Repeatable Way
 Integrated with the OpenNTF ASND Export
  Facility




                                            32
Soft Deletions Work!

 No matter how you delete a document
  –   Press <Delete> key at document or view level
  –   Cut document(s) from a view
  –   Drag to Trash
  –   From “Delete” action in document or view
 Confirmation warning always appears




                                                     33
Soft Deletions Work! (cont.)

 Easily restore some or all deleted documents
 Configure deletion purge interval in main DB
  configuration




                                                 34
Design Views




               35
Design Views (cont.)

 Yes, that’s right, you’re seeing design
  elements in regular views!
  – Made possible via the $FormulaClass “hack”
  – Allows ALL design elements to appear in a single view
  – Includes action button to “clean” the design elements (i.e.,
    remove old $UpdatedBy entries and re-sign them)
 Other variations show
  – All image resources with image preview
  – All fields and subforms listed by form(s) where they appear
 Views can be copied to any other database to
  provide instant value
                                                                   36
Icons, Icons, Everywhere

 Outline entry and action icons used throughout to
  provide visual cues to associated function
 Many include mouse-over animations
   – Further improves visual cue of mouse position
   – Injects a little fun into the application, which users love
 All images can be previewed in the “Images Preview”
  design element view




                                                                   37
All Documents View

 Shows all docs in the database grouped by form name
 Useful for finding “lost” docs, the “last” one edited, or the
  300 customer documents you accidentally pasted




                                                                  38
Agenda…

   A brief history of File – Database – New
   Overview of standards and frameworks
   SuperNTF feature walkthrough
   What’s under the hood
   Creating a new application
   Overhauling an existing application
   Final Word



                                               39
                                                39
So What’s It Look Like Under the Hood?

 It’s not a Ferrari, but then you wouldn’t let
  your rookie mechanic work on it if it were that
  complicated
 It is, however …
   – Cleanly designed
   – Easy to work on without
     “breaking” anything
   – Individual parts are
     clearly identifiable
   – Yet still highly functional
     with lots of cool features


                                                    40
A Code Tour of SuperNTF




                          41
Agenda…

   A brief history of File – Database – New
   Overview of standards and frameworks
   SuperNTF feature walkthrough
   What’s under the hood
   Creating a new application
   Overhauling an existing application
   Final Word



                                               42
                                                42
Creating a “SuperNTF” View

 Shortcut: create a new view based on one of
  the demo views
   – Easy way to get actions that are the “hooks” into the view
     configuration
 Customize columns, row colors, etc., as desired
 Display view into the outline and open it
 Click
   – Any guesses what that does ?
 Fill out the view configuration
   – You may need to come back after creating a form to change the
     “New Document” behavior
                                                                     43
Creating a “SuperNTF” Form

 All the “hooks” into the configuration are
  encapsulated in two subforms
   – SYSTEM - Standard Hidden Form Header
   – SYSTEM - Standard Hidden Form Footer
 Just a few other details
   – “Form” field – set to form alias
   – Window title: @If(@IsNewDoc; quot;New Documentquot;;
     WindowTitle)
   – Turn off the create menu – PLEASE!
 Tie the form into one or more views
 Compose a document and click
                                                    44
Agenda…

   A brief history of File – Database – New
   Overview of standards and frameworks
   SuperNTF feature walkthrough
   What’s under the hood
   Creating a new application
   Overhauling an existing application
   Final Word



                                               45
                                                45
Basics of Overhauling Existing Application

 Add SuperNTF design elements to existing
  application
  – Or for very simple examples, copy the key elements into a
    “blank” SuperNTF database
 Migrate views to new design
  –   Remove unnecessary actions
  –   Add Standard SuperNTF Actions
  –   Update column fonts
  –   Ytria Tools make this dead easy
 Add standard SuperNTF subforms to key
  forms
  – Configure the enabled features for each form
                                                                46
Agenda…

   A brief history of File – Database – New
   Overview of standards and frameworks
   SuperNTF feature walkthrough
   What’s under the hood
   Creating a new application
   Overhauling an existing application
   Final Word



                                               47
                                                47
Resources

 Download SuperNTF
  – www.superntf.org
 My Blog: www.lotusguru.com
  – Includes many articles pertaining to SuperNTF, including
    upcoming features
 SuperNTF IdeaJam?
  – Stay tuned 




                                                               48
                                                                48
Parting Thoughts

 Coding standards will only gain wide adoption
  if they are easy to learn and use
  – And what use is a “standard” no one uses?
  – Even experienced developers will appreciate the freedom to
    focus on application logic
 Cool things to do with SuperNTF
  – Give power users more power without giving yourself more
    headache
  – Give older apps a professional facelift
 Sharing is good!
  – Please share your good ideas and useful SuperNTF
    customizations
                                                                 49
Sharing is Good

 Sharing is good!
  – Please share your good ideas and useful SuperNTF
    customizations




                                                       50

Weitere ähnliche Inhalte

Ähnlich wie Start Your Notes App the SuperNTF Way

Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applicationsdominion
 
SHOW102 XPages: Still No Experience Necessary IBM Connect 2014
SHOW102 XPages: Still No Experience Necessary IBM Connect 2014SHOW102 XPages: Still No Experience Necessary IBM Connect 2014
SHOW102 XPages: Still No Experience Necessary IBM Connect 2014Kathy Brown
 
OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020Howard Greenberg
 
Hey open source, don’t forget the user! - by Chad Kieffer
Hey open source,  don’t forget the user! - by Chad KiefferHey open source,  don’t forget the user! - by Chad Kieffer
Hey open source, don’t forget the user! - by Chad Kiefferdmthompson
 
Connect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience NecessaryConnect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience Necessarypanagenda
 
Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...
Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...
Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...InfluxData
 
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!ddrschiw
 
7 Ways To Leverage SP for PM Success
7 Ways To Leverage SP for PM Success7 Ways To Leverage SP for PM Success
7 Ways To Leverage SP for PM SuccessDux Raymond Sy
 
NDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDDNDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDDjbandi
 
PLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code Editor
PLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code EditorPLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code Editor
PLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code EditorYoungSeok Yoon
 
Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06Eric Barroca
 
Ad107 - Enhance Your Existing Applications with XPages
Ad107 - Enhance Your Existing Applications with XPagesAd107 - Enhance Your Existing Applications with XPages
Ad107 - Enhance Your Existing Applications with XPagesddrschiw
 
Building Composite Applications in Lotus Notes
Building Composite Applications in Lotus NotesBuilding Composite Applications in Lotus Notes
Building Composite Applications in Lotus Notesdominion
 
Chap 6 - Software Architecture Part 1.ppt
Chap 6 - Software Architecture Part 1.pptChap 6 - Software Architecture Part 1.ppt
Chap 6 - Software Architecture Part 1.pptkhalidnawaz39
 
Chap 6 - Software Architecture Part 1.pptx
Chap 6 - Software Architecture Part 1.pptxChap 6 - Software Architecture Part 1.pptx
Chap 6 - Software Architecture Part 1.pptxssuser0ed5b4
 
How to build the ultimate Custom Controls UI5 Library
How to build the ultimate Custom Controls UI5 LibraryHow to build the ultimate Custom Controls UI5 Library
How to build the ultimate Custom Controls UI5 LibrarySebastian Mahr
 
XPages: No Experience Needed
XPages: No Experience NeededXPages: No Experience Needed
XPages: No Experience NeededKathy Brown
 
JavaScript All The Things
JavaScript All The ThingsJavaScript All The Things
JavaScript All The ThingsJordan Yaker
 

Ähnlich wie Start Your Notes App the SuperNTF Way (20)

Designing Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite ApplicationsDesigning Great User Interfaces for Composite Applications
Designing Great User Interfaces for Composite Applications
 
SHOW102 XPages: Still No Experience Necessary IBM Connect 2014
SHOW102 XPages: Still No Experience Necessary IBM Connect 2014SHOW102 XPages: Still No Experience Necessary IBM Connect 2014
SHOW102 XPages: Still No Experience Necessary IBM Connect 2014
 
OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020OpenNTF Webinar, October 2020
OpenNTF Webinar, October 2020
 
Oracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel Oldenkamp
Oracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel OldenkampOracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel Oldenkamp
Oracle 12c Launch Event 01 JDeveloper Jonathan Damen and Marcel Oldenkamp
 
Hey open source, don’t forget the user! - by Chad Kieffer
Hey open source,  don’t forget the user! - by Chad KiefferHey open source,  don’t forget the user! - by Chad Kieffer
Hey open source, don’t forget the user! - by Chad Kieffer
 
Connect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience NecessaryConnect 2014 SHOW102: XPages Still No Experience Necessary
Connect 2014 SHOW102: XPages Still No Experience Necessary
 
Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...
Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...
Kristina Robinson [InfluxData] | Understand and Visualize Your Data with Infl...
 
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
Ad101 - IBM Lotus Domino Designer: Full Speed Ahead!
 
7 Ways To Leverage SP for PM Success
7 Ways To Leverage SP for PM Success7 Ways To Leverage SP for PM Success
7 Ways To Leverage SP for PM Success
 
Magee Dday2 Fixing App Performance Italiano
Magee Dday2 Fixing App Performance ItalianoMagee Dday2 Fixing App Performance Italiano
Magee Dday2 Fixing App Performance Italiano
 
NDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDDNDC 2011 - Building .NET Applications with BDD
NDC 2011 - Building .NET Applications with BDD
 
PLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code Editor
PLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code EditorPLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code Editor
PLATEAU 2011 - Capturing and Analyzing Low-Level Events from the Code Editor
 
Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06Nuxeo Roadmap 2008/06
Nuxeo Roadmap 2008/06
 
Ad107 - Enhance Your Existing Applications with XPages
Ad107 - Enhance Your Existing Applications with XPagesAd107 - Enhance Your Existing Applications with XPages
Ad107 - Enhance Your Existing Applications with XPages
 
Building Composite Applications in Lotus Notes
Building Composite Applications in Lotus NotesBuilding Composite Applications in Lotus Notes
Building Composite Applications in Lotus Notes
 
Chap 6 - Software Architecture Part 1.ppt
Chap 6 - Software Architecture Part 1.pptChap 6 - Software Architecture Part 1.ppt
Chap 6 - Software Architecture Part 1.ppt
 
Chap 6 - Software Architecture Part 1.pptx
Chap 6 - Software Architecture Part 1.pptxChap 6 - Software Architecture Part 1.pptx
Chap 6 - Software Architecture Part 1.pptx
 
How to build the ultimate Custom Controls UI5 Library
How to build the ultimate Custom Controls UI5 LibraryHow to build the ultimate Custom Controls UI5 Library
How to build the ultimate Custom Controls UI5 Library
 
XPages: No Experience Needed
XPages: No Experience NeededXPages: No Experience Needed
XPages: No Experience Needed
 
JavaScript All The Things
JavaScript All The ThingsJavaScript All The Things
JavaScript All The Things
 

Kürzlich hochgeladen

Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Neil Kimberley
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...Any kyc Account
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Dave Litwiller
 
Best Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in IndiaBest Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in IndiaShree Krishna Exports
 
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...amitlee9823
 
Understanding the Pakistan Budgeting Process: Basics and Key Insights
Understanding the Pakistan Budgeting Process: Basics and Key InsightsUnderstanding the Pakistan Budgeting Process: Basics and Key Insights
Understanding the Pakistan Budgeting Process: Basics and Key Insightsseri bangash
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Lviv Startup Club
 
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...Suhani Kapoor
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Centuryrwgiffor
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...lizamodels9
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesDipal Arora
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...lizamodels9
 
HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsMichael W. Hawkins
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Servicediscovermytutordmt
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLSeo
 
RSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors DataRSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors DataExhibitors Data
 

Kürzlich hochgeladen (20)

Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023Mondelez State of Snacking and Future Trends 2023
Mondelez State of Snacking and Future Trends 2023
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
 
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
Enhancing and Restoring Safety & Quality Cultures - Dave Litwiller - May 2024...
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Best Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in IndiaBest Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in India
 
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
Call Girls Jp Nagar Just Call 👗 7737669865 👗 Top Class Call Girl Service Bang...
 
Understanding the Pakistan Budgeting Process: Basics and Key Insights
Understanding the Pakistan Budgeting Process: Basics and Key InsightsUnderstanding the Pakistan Budgeting Process: Basics and Key Insights
Understanding the Pakistan Budgeting Process: Basics and Key Insights
 
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
Yaroslav Rozhankivskyy: Три складові і три передумови максимальної продуктивн...
 
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
VIP Call Girls Gandi Maisamma ( Hyderabad ) Phone 8250192130 | ₹5k To 25k Wit...
 
Famous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st CenturyFamous Olympic Siblings from the 21st Century
Famous Olympic Siblings from the 21st Century
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
 
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best ServicesMysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
Mysore Call Girls 8617370543 WhatsApp Number 24x7 Best Services
 
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
Call Girls In DLf Gurgaon ➥99902@11544 ( Best price)100% Genuine Escort In 24...
 
HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael Hawkins
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Service
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 
Forklift Operations: Safety through Cartoons
Forklift Operations: Safety through CartoonsForklift Operations: Safety through Cartoons
Forklift Operations: Safety through Cartoons
 
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRLMONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
MONA 98765-12871 CALL GIRLS IN LUDHIANA LUDHIANA CALL GIRL
 
RSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors DataRSA Conference Exhibitor List 2024 - Exhibitors Data
RSA Conference Exhibitor List 2024 - Exhibitors Data
 

Start Your Notes App the SuperNTF Way

  • 1. Starting Your Application the SuperNTF Way Kevin Pettitt
  • 2. Your Host for Today’s Session … Kevin Pettitt President LotusGuru Consulting Independent Consultant Developer, Admin, Architect Blog: www.lotusguru.com 2
  • 3. What Is SuperNTF?  Generic starter application template that isn’t “-blank-”  Notes Client application framework designed for easy understanding to encourage wide adoption  Built from the ground up with the goal of making development best practice easy for even novice Notes developers  Fusion of many other open source projects 3
  • 4. Agenda…  A brief history of File – Database – New  Overview of standards and frameworks  SuperNTF feature walkthrough  What’s under the hood  Creating a new application  Overhauling an existing application  Final Word 4
  • 5. In the Beginning, There Was -Blank-  And it really was “blank”  Next step - Doc Library or Discussion template – Just to have some code to start  Advanced developers created their own “common design elements” – Great for reusing code among many applications – Problem: Only they understood how it worked 5
  • 6. Agenda…  A brief history of File – Database – New  Overview of standards and frameworks  SuperNTF feature walkthrough  What’s under the hood  Creating a new application  Overhauling an existing application  Final Word 6
  • 7. Design Standards – Huh?  Notes is a very “approachable” development platform – Any decent spreadsheet jock can whip up a Notes database  limited skills hinder code standardization efforts  It takes time and effort to enforce standards  Only way way to achieve some level of coding standards for novice developers – Make it EASY to do things “right” without thinking 7
  • 8. Key Benefits of Standardized Code  No more reinventing the wheel – Unless it’s a better wheel  Commonly used routines are readily available  Easier to troubleshoot, maintain, and enhance – Especially when the standard code has been more rigorously tested than any one application  The next developer to touch the app won't curse your name 8
  • 9. What Is an Application Framework?  A basic template for jumpstarting a new application  A collection of generic design elements useful in any kind of application  A way to standardize the “plumbing” of all your custom Notes applications  Everything *except* what makes the application unique 9
  • 10. Framework Pitfalls  Often developed organically over time by single developer – Thoughts of having others use the framework may not take hold until after most of it is built – Only that developer understands the “quirks” – Steep learning curve for others without that developer on the team  Tendency toward complexity – Time spent “improving” the framework may actually detract from others’ ability to maintain code later – The more tightly integrated it gets the easier it is to break 10
  • 11. What Makes SuperNTF Different?  Conceived with ease of understanding in mind – Novices can create nice looking applications without quot;breakingquot; something  Design goal: Make it easy to follow and thereby gain wide adoption – Low learning curve also helps intermediate and advanced developers ability to customize and extend more easily – Code is written for readability – elegance over complexity  Designed to facilitate quot;cherry pickingquot; code – Many individual pieces can be copied and reused in other applications and still work – Copying elements with their dependencies will be made easier in the future 11
  • 12. Meet the SuperNTF Team  Head of R&D: Kevin Pettitt – aka quot;Robbery and Deploymentquot;  With contributions from: The Domino community – No one has a monopoly on best practice ideas – Most borrowed code reworked significantly to adhere to SuperNTF simplicity standards  New quot;volunteersquot; all the time as more great ideas appear 12
  • 13. So How Simple Is “Simple”?  Simple doesn’t mean boring – There are still lots of cool features, as you will see – Significant attention was paid to offering an attractive default UI design  Many advanced functions are “black boxed” – Eliminates the need to manipulate truly complex code (although you still can if you want) – High degree of configurability further minimizes need to touch code 13
  • 14. Agenda …  A brief history of File – Database – New  Overview of standards and frameworks  SuperNTF feature walkthrough  What’s under the hood  Creating a new application  Overhauling an existing application  Final Word 14
  • 15. Key Navigation Elements  Separate frameset for normal use… 15
  • 16. Key Navigation Elements  …and for administrative functions 16
  • 17. Key Navigation Elements  Standard action bar in separate frame – Eliminates need for most typical view actions – Leaves room for a descriptive view title – Actions show only when appropriate (e.g., “Search” only visible if database is full-text indexed)  Administration panel logically organized – Configuration – Logging – Cool Design Views – Utility views (e.g., Design element views, All Documents) 17
  • 18. Alternate “Dashboard” Interface  Content of each tab is configurable  Double-clicking on preview opens document fully 18
  • 20. Centralized Form Configuration (cont.)  Each application-specific form has its own “configuration” document  Controls which form features are enabled – Shared Actions – (e.g., Edit, Save & Close, etc.) – Validation – edit a form-wide formula right on the form config. – User Activity Tracking – who read/edited what and when – Field Change History – what did they change and when – Comments – user feedback mechanism 20
  • 21. View Configuration  Set the View “Header Title”  Configure “Help” and “New Document” behavior 21
  • 22. User Activity Tracking – Summary  Keeps a running history of every time a document is READ or EDITED  Saves each record as a separate document – Can be easily tabulated and sorted in views – Allows user to “jump” directly to the source document 22
  • 23. User Activity Tracking  Consolidated Activity History 23
  • 24. User Activity Tracking  Current Document 24
  • 25. User Activity Tracking – Dashboard Reports  At-a-glance view to most active users and documents  Apply custom filters to highlight the specific information you want 25
  • 26. Field Change History  Form config specifies which form fields to track – Also assign user-friendly field labels 26
  • 27. Field Change History (cont.)  All changes to target fields are recorded in a single rich-text field – Change history dialog accessed via action button 27
  • 28. OpenLog Used for Error and Event Logging 28
  • 29. Integrated Help  Create help documents within the application  Link them to specific forms and views via configuration 29
  • 30. Integrated Help (cont.)  Press F1 to pull up the relevant help document 30
  • 31. Exporting Data – The Quick and Simple Way  View actions export all or selected docs  Use column naming “trick” to … – Get categorized column titles to appear – Omit specific columns from export 31
  • 32. Exporting Data – The Structured and Repeatable Way  Integrated with the OpenNTF ASND Export Facility 32
  • 33. Soft Deletions Work!  No matter how you delete a document – Press <Delete> key at document or view level – Cut document(s) from a view – Drag to Trash – From “Delete” action in document or view  Confirmation warning always appears 33
  • 34. Soft Deletions Work! (cont.)  Easily restore some or all deleted documents  Configure deletion purge interval in main DB configuration 34
  • 36. Design Views (cont.)  Yes, that’s right, you’re seeing design elements in regular views! – Made possible via the $FormulaClass “hack” – Allows ALL design elements to appear in a single view – Includes action button to “clean” the design elements (i.e., remove old $UpdatedBy entries and re-sign them)  Other variations show – All image resources with image preview – All fields and subforms listed by form(s) where they appear  Views can be copied to any other database to provide instant value 36
  • 37. Icons, Icons, Everywhere  Outline entry and action icons used throughout to provide visual cues to associated function  Many include mouse-over animations – Further improves visual cue of mouse position – Injects a little fun into the application, which users love  All images can be previewed in the “Images Preview” design element view 37
  • 38. All Documents View  Shows all docs in the database grouped by form name  Useful for finding “lost” docs, the “last” one edited, or the 300 customer documents you accidentally pasted 38
  • 39. Agenda…  A brief history of File – Database – New  Overview of standards and frameworks  SuperNTF feature walkthrough  What’s under the hood  Creating a new application  Overhauling an existing application  Final Word 39 39
  • 40. So What’s It Look Like Under the Hood?  It’s not a Ferrari, but then you wouldn’t let your rookie mechanic work on it if it were that complicated  It is, however … – Cleanly designed – Easy to work on without “breaking” anything – Individual parts are clearly identifiable – Yet still highly functional with lots of cool features 40
  • 41. A Code Tour of SuperNTF 41
  • 42. Agenda…  A brief history of File – Database – New  Overview of standards and frameworks  SuperNTF feature walkthrough  What’s under the hood  Creating a new application  Overhauling an existing application  Final Word 42 42
  • 43. Creating a “SuperNTF” View  Shortcut: create a new view based on one of the demo views – Easy way to get actions that are the “hooks” into the view configuration  Customize columns, row colors, etc., as desired  Display view into the outline and open it  Click – Any guesses what that does ?  Fill out the view configuration – You may need to come back after creating a form to change the “New Document” behavior 43
  • 44. Creating a “SuperNTF” Form  All the “hooks” into the configuration are encapsulated in two subforms – SYSTEM - Standard Hidden Form Header – SYSTEM - Standard Hidden Form Footer  Just a few other details – “Form” field – set to form alias – Window title: @If(@IsNewDoc; quot;New Documentquot;; WindowTitle) – Turn off the create menu – PLEASE!  Tie the form into one or more views  Compose a document and click 44
  • 45. Agenda…  A brief history of File – Database – New  Overview of standards and frameworks  SuperNTF feature walkthrough  What’s under the hood  Creating a new application  Overhauling an existing application  Final Word 45 45
  • 46. Basics of Overhauling Existing Application  Add SuperNTF design elements to existing application – Or for very simple examples, copy the key elements into a “blank” SuperNTF database  Migrate views to new design – Remove unnecessary actions – Add Standard SuperNTF Actions – Update column fonts – Ytria Tools make this dead easy  Add standard SuperNTF subforms to key forms – Configure the enabled features for each form 46
  • 47. Agenda…  A brief history of File – Database – New  Overview of standards and frameworks  SuperNTF feature walkthrough  What’s under the hood  Creating a new application  Overhauling an existing application  Final Word 47 47
  • 48. Resources  Download SuperNTF – www.superntf.org  My Blog: www.lotusguru.com – Includes many articles pertaining to SuperNTF, including upcoming features  SuperNTF IdeaJam? – Stay tuned  48 48
  • 49. Parting Thoughts  Coding standards will only gain wide adoption if they are easy to learn and use – And what use is a “standard” no one uses? – Even experienced developers will appreciate the freedom to focus on application logic  Cool things to do with SuperNTF – Give power users more power without giving yourself more headache – Give older apps a professional facelift  Sharing is good! – Please share your good ideas and useful SuperNTF customizations 49
  • 50. Sharing is Good  Sharing is good! – Please share your good ideas and useful SuperNTF customizations 50