SlideShare a Scribd company logo
1 of 120
Rethinking
Notes
Peter Presnell
CEO
Nathan T Freeman
Chief Software Architect
Hands On
Graphs
Rethinking
Notes
Design
Matters
Web
Components
Lotus
Position
Wednesday
4:30 PM
Thursday
1:00 PM
Thursday
1:00 PM
Friday
9:00 AM
Friday
10:15 AM
Nathan
Freeman
Bob Kadrie
Keith
Strickland
Peter
Presnell
Nathan
Freeman
Kito Mann
Keith
Strickland
Peter
Presnell
Clarence
White
Case Study
Challenge the way you think about Notes data
10 million
Notes Applications
The Average Company
200Notes Applications
Time To Rethink Notes…
Wheel of Destiny
Rethinking Databases
Rethinking Data Silos
Rethinking Data Schemas
Rethinking Web Development
Rethinking Forms
Rethinking Addresses
Rethinking Dates
Rethinking Search
Rethinking Dates
Traditional (Notes) Dates
Traditional (Notes) Time
REALLY?
Date Picker
Time Picker
Anniversaries
Today
Friday
Jan 15
Milestones
Today
In 5 days time
Next month
In 3 months
3 days past due
Rethinking Databases
Notes Databases
Supplier
Form
Order
Form
Supplier
Documents
Order
Documents
Orders By
Supplier
View
Embedded View
@DBLookup
SQL Databases
Supplier #1
Supplier #1
Supplier #1
Order #101
Order #102
Order #103
Supplier #2 NULL
Supplier #1
Supplier #2
Order #101
Order #102
Order #103
Join
No SQL Databases
Supplier
Form
Order
Form
Supplier
Documents
Order
Documents
Orders By
Supplier
View
REALLY?
Graph Databases
Supplier
#1
Supplier
#2
Order
#101
Order
#102
Order
#103
Try this one with Notes….
Supplier
#1
Supplier
#2
Order
#101
Order
#102
Order
#103
Item
#1
Item
#2
Item
#3
Item
#4
Openntf ODA
Tinkerpop
Any document can be a vertex
Suppliers
(NSF)
Orders
(NSF)
Supplier Order Item
Any view entry can be an edge
Supplier
Order
Suppliers
(NSF)
Orders
(NSF)
Orders By
Supplier
Any edge can be a document
Supplier
Order
Suppliers
(NSF)
Orders
(NSF)
Edges
(NSF)
Orders
Proxy documents can support graph-only data
PersonPerson
Directory
(names.nsf)
Person
Proxy
(NSF)
Office
Locations
(NSF)
Any form can be a frame
Supplier
Form
Order
Form
Supplier Order
And not just Notes
Employee
Directory
(Names.nsf)
Employees
(Employees.nsf)
Active
Directory
Rethinking Data Schemas
Traditional (Notes) Data
SchemaItem Value Type
FirstName Ray Text
LastName Ozzie Text
FullName Ray Ozzie/RedPill Name
DOB 11/20/1955 Date
EMail Ray@redpill.com Text
EmployeeNo 1001 Number
Spouse Dawna Bousquet Text
JobTitle Evangalest Text
City Redmond Text
State WA Text
PhotoURL Pho.com/ray.png Text
Item Value Type
FirstName Ed Text
LastName Brill Text
FullName Ed Brill/RedPill Text
email Ed@redpill.com Text
EmployeeNo 1002 Text
JobTitle Product Manager Text
City Highland Park Text
State IL Text
PhotoURL Pho.com/ed.png Text
UNK Table
FAX
FullName
Text
Name
LastName Text
UNique Key Table
Supplier Form
EmpNum: Text
Supplier Form
EmpNum: Number
Full Text IndexEmpNum Text
REALLY?
ContactCard
Person:
SalvationArmy
Employees
Officers
Cadets
BandMembers
Rangers
Volunteers
Counselors
Counselees
KROCCenter
Participants
AidRecipients
Donors
PersonSchema
Person
Donor
Program
Participant
Counselee
Aid
Recipient
Youth
Programs
ExplorerRanger Moonbeam
Camp
Attendee
Associate
Employee
Officer
Cadet
Employee
Counselor Volunteer
WebComponent Officers
Volunteers
Councelling
Troops
RESTAPIs
Person
JSON
ContactComponent
Rethinking Data Silos
Case Study: Salvation Army Divisions
Salvation Army Corps
Corps Details
Division
Form
Corps
Form
Division
Documents
Corps
Documents
Corps By
Division
View
Disposition of Forces
DHQ
Form
Corps
Form
Division
Documents
Corps
Documents
Corps By
Division
View
Domino Directory
Person
Form
Person
Documents
Users By
Division
View
Officer Management System (OMS)
Division #1
Division #1
Division #1
Corps #101
Corps #102
Corps #103
Division #2 Corps #201
Division #1
Division #2
Corps #101
Corps #102
Corps #103
Join
Other databases
Division
Form
Request
Form
Division
Documents
Request
Documents
Requests
By Division
View
And yet other databases
“ALM”
“AOK”
“FLA”
“GEO”
“KTN”
“NCV”
“THQ”
“TXS”
Data Mismatches
• ALM
• Alabama Louisiana & Mississippi
• Alabama Louisiana and Mississippi
• Alabama, Louisiana & Mississippi
• Alabama, Louisiana, and
Mississippi
• Alabama, Louisiana and Mississippi
Use the
force, Harry
- Gandolf
REALLY?
Database Cleanup
Corps
Details
Dispo OMS
Database Cleanup
Corps
Details
Dispo OMS
REST Services
Database Cleanup
Corps
Details
Dispo OMS
REST Services
Database Cleanup
Corps
Details
Dispo OMS
REST Services
Database Cleanup
Corps
Details
OMS
REST Services
Database Cleanup
OMS
REST Services
In the future….
OMS
REST Services
OMS
Next
Unit-Selector component
<unit-selector
division=“Div”
corps=“Corps”
displayDivision=true
displayCorp=true>
</unit-selector>
Rethinking Addresses
Old school addresses
Mailing Labels
REALLY?
GPS Location
Address Typeahead
Or even…
Rethinking Web Development
JSF (XPages) Lifecycle
Built on aging technology
SSJS = ES3 (1999)Eclipse 3.4 (2008)
HTTP Servlet
(2005)
Java 6 (2006)
XPages roadmap
REALLY?
Keep Your
Notes Data
RESTServices
Domino Data Service
Java Servlets
JavaScript
Frameworks
Web Components
Polymer
Vaadin
REST API
HTML 5
Structure
CSS 3
Style
JavaScript
Behaviour
REST API
HTML 5
Structure
CSS 3
Style
JavaScript
Behaviour
Rethinking Search
Traditional (Notes) search
Now considered old school…
Word Variants
Fuzzy Search
Form Searches
Traditional Notes categorized views
Now considered old school…
Response Documents
Conflict Documents
Categories
Domain Search
REALLY?
Faceted Search
Faceted Search
Faceted Search
Faceted Search
Faceted Search
Faceted Search
All Documents By Form View
Person
Job
Company
Group
University
All Documents By Location View
United States
United Kingdom
Greater New York City
Canada
Australia
Rethinking Notes
Rethinking Notes
Rethinking Notes

More Related Content

What's hot (7)

Synchronicity: Just-In-Time Discovery of Lost Web Pages
Synchronicity: Just-In-Time Discovery of Lost Web PagesSynchronicity: Just-In-Time Discovery of Lost Web Pages
Synchronicity: Just-In-Time Discovery of Lost Web Pages
 
Horizontal decomposition of freebase
Horizontal decomposition of freebaseHorizontal decomposition of freebase
Horizontal decomposition of freebase
 
Experiments in Data Portability
Experiments in Data PortabilityExperiments in Data Portability
Experiments in Data Portability
 
CrossRef Secondary Query: Practice and Problems (2011 CrossRef Workshops)
CrossRef Secondary Query: Practice and Problems (2011 CrossRef Workshops)CrossRef Secondary Query: Practice and Problems (2011 CrossRef Workshops)
CrossRef Secondary Query: Practice and Problems (2011 CrossRef Workshops)
 
Presentation on google
Presentation on googlePresentation on google
Presentation on google
 
Behind the Algorithm: Back Stage Pass - Ryan Jones
Behind the Algorithm: Back Stage Pass - Ryan JonesBehind the Algorithm: Back Stage Pass - Ryan Jones
Behind the Algorithm: Back Stage Pass - Ryan Jones
 
Smx advanced-william-slawski-final
Smx advanced-william-slawski-finalSmx advanced-william-slawski-final
Smx advanced-william-slawski-final
 

Viewers also liked

MEMS Sensors Overview
MEMS Sensors OverviewMEMS Sensors Overview
MEMS Sensors Overview
Jennifer Chin
 
Innovate in new and exciting optical sensing applications in industrial marke...
Innovate in new and exciting optical sensing applications in industrial marke...Innovate in new and exciting optical sensing applications in industrial marke...
Innovate in new and exciting optical sensing applications in industrial marke...
Design World
 

Viewers also liked (20)

Review: Wellness technology in the workplace
Review: Wellness technology in the workplace Review: Wellness technology in the workplace
Review: Wellness technology in the workplace
 
Getting your hands on graphs
Getting your hands on graphsGetting your hands on graphs
Getting your hands on graphs
 
The Lotus Position: Four Degrees of Freedom
The Lotus Position: Four Degrees of FreedomThe Lotus Position: Four Degrees of Freedom
The Lotus Position: Four Degrees of Freedom
 
Break Your Designer Dependency
Break Your Designer DependencyBreak Your Designer Dependency
Break Your Designer Dependency
 
Assistive Technology in the Workplace
Assistive Technology in the WorkplaceAssistive Technology in the Workplace
Assistive Technology in the Workplace
 
Once You Go Graph
Once You Go GraphOnce You Go Graph
Once You Go Graph
 
Graphs in Action
Graphs in ActionGraphs in Action
Graphs in Action
 
Best practices for optimizing performance and reducing costs when selecting a...
Best practices for optimizing performance and reducing costs when selecting a...Best practices for optimizing performance and reducing costs when selecting a...
Best practices for optimizing performance and reducing costs when selecting a...
 
An Introduction to Web Components
An Introduction to Web ComponentsAn Introduction to Web Components
An Introduction to Web Components
 
Design Matters
Design MattersDesign Matters
Design Matters
 
GL Optic Optical Spectrophotometers from Saelig
GL Optic Optical Spectrophotometers from SaeligGL Optic Optical Spectrophotometers from Saelig
GL Optic Optical Spectrophotometers from Saelig
 
The Lotus Position : 3 Degrees Of Freedom
The Lotus Position : 3 Degrees Of FreedomThe Lotus Position : 3 Degrees Of Freedom
The Lotus Position : 3 Degrees Of Freedom
 
MEMS Sensors Overview
MEMS Sensors OverviewMEMS Sensors Overview
MEMS Sensors Overview
 
Blending
BlendingBlending
Blending
 
Innovate in new and exciting optical sensing applications in industrial marke...
Innovate in new and exciting optical sensing applications in industrial marke...Innovate in new and exciting optical sensing applications in industrial marke...
Innovate in new and exciting optical sensing applications in industrial marke...
 
A World Without Applications
A World Without ApplicationsA World Without Applications
A World Without Applications
 
Poised For Growth. Digital And The Future Of A Rapidly Expanding Fitness Indu...
Poised For Growth. Digital And The Future Of A Rapidly Expanding Fitness Indu...Poised For Growth. Digital And The Future Of A Rapidly Expanding Fitness Indu...
Poised For Growth. Digital And The Future Of A Rapidly Expanding Fitness Indu...
 
Beyond XPages
Beyond XPagesBeyond XPages
Beyond XPages
 
Big Data With Graphs
Big Data With GraphsBig Data With Graphs
Big Data With Graphs
 
SLOPE 3rd workshop - presentation 3
SLOPE 3rd workshop - presentation 3SLOPE 3rd workshop - presentation 3
SLOPE 3rd workshop - presentation 3
 

Similar to Rethinking Notes

1RUNNING HEAD Normalization2NormalizationNORM.docx
1RUNNING HEAD Normalization2NormalizationNORM.docx1RUNNING HEAD Normalization2NormalizationNORM.docx
1RUNNING HEAD Normalization2NormalizationNORM.docx
drennanmicah
 
A2 databases
A2 databasesA2 databases
A2 databases
c.west
 
Webinar tech. that drives modern mktg department - part 1
Webinar  tech. that drives modern mktg department - part 1Webinar  tech. that drives modern mktg department - part 1
Webinar tech. that drives modern mktg department - part 1
RingLead
 
Initial implementation planning debrief for agency management 2010 0812
Initial implementation planning debrief   for agency management 2010 0812Initial implementation planning debrief   for agency management 2010 0812
Initial implementation planning debrief for agency management 2010 0812
rlanzotti
 

Similar to Rethinking Notes (20)

Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan KohlHaystack 2019 - Search-based recommendations at Politico - Ryan Kohl
Haystack 2019 - Search-based recommendations at Politico - Ryan Kohl
 
1RUNNING HEAD Normalization2NormalizationNORM.docx
1RUNNING HEAD Normalization2NormalizationNORM.docx1RUNNING HEAD Normalization2NormalizationNORM.docx
1RUNNING HEAD Normalization2NormalizationNORM.docx
 
Structured Document Search and Retrieval
Structured Document Search and RetrievalStructured Document Search and Retrieval
Structured Document Search and Retrieval
 
Supporting GDPR Compliance through Data Classification
Supporting GDPR Compliance through Data ClassificationSupporting GDPR Compliance through Data Classification
Supporting GDPR Compliance through Data Classification
 
Toward a parliamentary domain model
Toward a parliamentary domain modelToward a parliamentary domain model
Toward a parliamentary domain model
 
Aen007 Kenigsberg 091807
Aen007 Kenigsberg 091807Aen007 Kenigsberg 091807
Aen007 Kenigsberg 091807
 
Understanding Queries through Entities
Understanding Queries through EntitiesUnderstanding Queries through Entities
Understanding Queries through Entities
 
A2 databases
A2 databasesA2 databases
A2 databases
 
Minnesota Recruiters 11 Summer 2010 Event Day Slides
Minnesota Recruiters 11 Summer 2010 Event Day SlidesMinnesota Recruiters 11 Summer 2010 Event Day Slides
Minnesota Recruiters 11 Summer 2010 Event Day Slides
 
The Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
The Five Graphs of Government: How Federal Agencies can Utilize Graph TechnologyThe Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
The Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
 
The Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
The Five Graphs of Government: How Federal Agencies can Utilize Graph TechnologyThe Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
The Five Graphs of Government: How Federal Agencies can Utilize Graph Technology
 
Webinar tech. that drives modern mktg department - part 1
Webinar  tech. that drives modern mktg department - part 1Webinar  tech. that drives modern mktg department - part 1
Webinar tech. that drives modern mktg department - part 1
 
Initial implementation planning debrief for agency management 2010 0812
Initial implementation planning debrief   for agency management 2010 0812Initial implementation planning debrief   for agency management 2010 0812
Initial implementation planning debrief for agency management 2010 0812
 
Mecms
MecmsMecms
Mecms
 
Migrating to Alfresco Part II: The “How” – Tools & Best Practices for Renovat...
Migrating to Alfresco Part II: The “How” – Tools & Best Practices for Renovat...Migrating to Alfresco Part II: The “How” – Tools & Best Practices for Renovat...
Migrating to Alfresco Part II: The “How” – Tools & Best Practices for Renovat...
 
2018 NYC Localogy: Using Data to Build Exceptional Local Pages
2018 NYC Localogy: Using Data to Build Exceptional Local Pages2018 NYC Localogy: Using Data to Build Exceptional Local Pages
2018 NYC Localogy: Using Data to Build Exceptional Local Pages
 
Nyc open data meetup wasserstein presentation
Nyc open data meetup wasserstein presentationNyc open data meetup wasserstein presentation
Nyc open data meetup wasserstein presentation
 
Using Microsoft Outlook
Using Microsoft OutlookUsing Microsoft Outlook
Using Microsoft Outlook
 
HCI Webinar Talent Pipeline/Community
HCI Webinar Talent Pipeline/CommunityHCI Webinar Talent Pipeline/Community
HCI Webinar Talent Pipeline/Community
 
Semantic Search on the Rise
Semantic Search on the RiseSemantic Search on the Rise
Semantic Search on the Rise
 

More from Red Pill Now

More from Red Pill Now (18)

M is for modernization
M is for modernizationM is for modernization
M is for modernization
 
Take 5 Modernization Workshop
Take 5 Modernization WorkshopTake 5 Modernization Workshop
Take 5 Modernization Workshop
 
Reusability is the goal
Reusability is the goalReusability is the goal
Reusability is the goal
 
The internet of (Notes) Things
The internet of (Notes) ThingsThe internet of (Notes) Things
The internet of (Notes) Things
 
Countdown to Domino 2025
Countdown to Domino 2025Countdown to Domino 2025
Countdown to Domino 2025
 
Red Pill Now - Taking the Guesswork Out of Selecting a Solution for Modernizi...
Red Pill Now - Taking the Guesswork Out of Selecting a Solution for Modernizi...Red Pill Now - Taking the Guesswork Out of Selecting a Solution for Modernizi...
Red Pill Now - Taking the Guesswork Out of Selecting a Solution for Modernizi...
 
Design for the Visually Impaired
Design for the Visually ImpairedDesign for the Visually Impaired
Design for the Visually Impaired
 
Migration Verus Modernization
Migration Verus ModernizationMigration Verus Modernization
Migration Verus Modernization
 
I Smell a RAT: Rapid Application Testing
I Smell a RAT: Rapid Application TestingI Smell a RAT: Rapid Application Testing
I Smell a RAT: Rapid Application Testing
 
IBM XPages: The Next Step in Your Life As a Notes Developer
IBM XPages: The Next Step in Your Life As a Notes DeveloperIBM XPages: The Next Step in Your Life As a Notes Developer
IBM XPages: The Next Step in Your Life As a Notes Developer
 
FIVE Reasons Not To Use Red Pill Now
FIVE Reasons Not To Use Red Pill NowFIVE Reasons Not To Use Red Pill Now
FIVE Reasons Not To Use Red Pill Now
 
Influencing Behavior Through Color and Page Design
Influencing Behavior Through Color and Page DesignInfluencing Behavior Through Color and Page Design
Influencing Behavior Through Color and Page Design
 
The PRPL Pattern
The PRPL PatternThe PRPL Pattern
The PRPL Pattern
 
Big Data With Graphs
Big  Data With GraphsBig  Data With Graphs
Big Data With Graphs
 
The Internet of (Notes) Things
The Internet of (Notes) ThingsThe Internet of (Notes) Things
The Internet of (Notes) Things
 
M is for modernization
M is for modernizationM is for modernization
M is for modernization
 
Digging for Gold
Digging for GoldDigging for Gold
Digging for Gold
 
IBM Connect 2016 Recap
IBM Connect 2016 RecapIBM Connect 2016 Recap
IBM Connect 2016 Recap
 

Recently uploaded

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Recently uploaded (20)

Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Rethinking Notes

Editor's Notes

  1. After alll…. There are 10 million Notes applications out there.
  2. The average company has an estimated 200 Notes applications in us
  3. With the Notes client sunsetting most IT Managers are looking for ways to provide modern Web front-ends to these
  4. In recent years there has been a ground-swell of support for no SQL alternatives. Of course Notes databases have been doing No SQL for over 25 years, long before they became popular. In a Notes (document) database we would represent Suppliers and Orders as different sets of documents. To represent the relationship between the two we would use a combination of embedded views in a form or computed fields on a form the use @DBLookup to locate the related information. Consolidating the data in a view is almost impossible. Outside of response documents there is no simple way to connect related information together at the data layer. So a simple construct such as Suppliers and Orders can sometimes be challenging in Notes client development.
  5. When it comes to storing data in a database, SQL has for many years been the defacto standard. In the SQL world, if we have two business objects such as a a Supplier and a Customer we would represent that relationship using a SQL Join.
  6. In recent years there has been a ground-swell of support for no SQL alternatives. Of course Notes databases have been doing No SQL for over 25 years, long before they became popular. In a Notes (document) database we would represent Suppliers and Orders as different sets of documents. To represent the relationship between the two we would use a combination of embedded views in a form or computed fields on a form the use @DBLookup to locate the related information. Consolidating the data in a view is almost impossible. Outside of response documents there is no simple way to connect related information together at the data layer. So a simple construct such as Suppliers and Orders can sometimes be challenging in Notes client development.
  7. Really? In 2016 we don’t have a better way to represent relationships between documents held inside an NSF?
  8. There is a solution if you care to challenge the conventional approach to storing data inside an NSF. It turns out that the characteristics of Notes databases are not all that dissimilar to those of Graph databases. Here we can conceptually see the relationship between a supplier and orders as represented using a graph structure.
  9. If we add just one more object type (Item) we quickly get an application that is immensely complicated to reproduce in a traditional Notes application without making a lot of compromises on the user experience.
  10. The solution is to extend the capabilities of the Notes File Store (NSF) to support the capabilities of Graph as defined by the Tinkerpop interface. Allowing any Notes database to behave as a graph database.
  11. In essence any document stored in an NSF can become a vertex in a graph
  12. View entries can be used as edges to automatically connect related information.
  13. If edges between vertices do not exist it is possible to store those edges as new Notes documents.
  14. To protect the data integrity of existing Notes applications it is possible to create proxy documents that acts as surrogates for existing documents holding the additional data needed to support a graph structure used in new Web applications. This can include new properties for a vertex as well as the information that stores the relationship between vertices (edges).
  15. Documents stored using Notes Forms can be represented as frames, allowing access to a collection of documents created using a specific form.
  16. And best of all, there is nothing in this approach that excludes data stored in formats other than Notes allowing a graph to be built using data stored in Notes, SQL, and No SQL databases alike.
  17. Graph and ODA allows organizations to think big when it comes to mapping the complex relationships between data held across a portfolio of Notes (and non-Notes) databases, allowing information to be displayed that transcends the traditional boundaries artificially created by databases.
  18. When you look at most Notes applications that store addresses you will find a familiar pattern. StreetAddress StreetAddress2 (optional) City State Zipcode Country (optional) This will be repeated for each and every address such as Business Address and Home Address As a result we are often storing as many as six fields for each and every address.
  19. And why do we do that? Well the origins this fall back to the era in which everything with sent via mail. No, I am not talking about e-mail, but physical (snail) mail. One of the many features built into the Notes client that is rarely used is support for mail labels when printing a collection of documents. If you Notes applications are not printing mailing labels, why are you still splitting addresses into so many
  20. In 2016 it is kind of up there with modem. For the millennials in the audience the device on the right is called a telephone, and the device on the left is a modem that was used to connect a computer to the Internet via the telephone…. Yes these things really did exist.
  21. Really… thats the way we store addresses in the era of Google Maps
  22. Here we see an example of a page from the Salvation Army’s US Western Territory that helps locate SA Locations near a specic zipcode. And while the data in this case is not coming from a Notes database, it could be (and soon will be).
  23. And if I am using a device equipped with GPS I shouldn’t need to explain where I currently live. The application should know.
  24. Users of applications today expect a single address field. And not just that, but one that supports typeahead.
  25. Perhaps even one that shows in real time a map for the address matched address to quickly verify the address is correct.
  26. If you follow IBM’s advice you would migrate to XPages, a server-sided platform based upon JSF that it carried over from its failed Workplace venture.
  27. And a non-existent roadmap
  28. Is that the best you can do IBM… Really?
  29. First lets start with something we do agree… There is no need to discard your Notes data. Data is not the issue. Moving to SharePoint, Mongo DB, or SQL servers doesn’t solve anythig.
  30. Instead, what is needed is a robust REST interface that allows Notes data to participate as a first class citizen in modern Web development
  31. The simplest way to start is to utilize DDS which requires enabling at both the database and view level to generate REST services for Notes databases. The JSON generated can be somewhat difficult to use.
  32. To get around that, consider creating your own Java servlets that will allow full control over the JSON. This can be especially useful if you are wanting the JSON to conform to a specific data schema such as those outlined by schema.org.
  33. Having created a REST API for your databases we would strongly recommend adopting a JavaScript framework. There are many of these now on the market. While we have our preferences we consider it far more important to embrace one of these rather than waste too much time debating which (if any) is superior. To do so would be like trying to get a consensus as to which city is the best one to live in….
  34. At Red Pill Now we believe Web Components are going to play a very important role in modern Web development in much the same way as jQuery. For this reason we would urge everyone to find a JavaScript framework that implements Web Components.
  35. Our favorite is Polymer. We selected Polymer because it has an implementation of Google’s Material Design, has strong cross-browser support, provides good software engineering principles, and great performance characteristics.
  36. We would also strongly recommend the use of Vaadin controls such as the grid and dropdown to build great looking web applications.
  37. So here is what our modern web development architecture looks like… First, we keep our Notes data in-place allowing existing Notes client and XPages applications to work as before. This means a lot less risk. Next we build a REST API around each Notes database. This can be done in a range of ways including the Domino Data Service On top of that we develop Web applications using your JavaScript framework of choice. In the case of The Salvation Army we are focusing on the use of Polymer to implement Material Design and Web Components. This delivers code that conforms to the standards of HTML5, CSS3, and JavaScript that are mow well supported by modern web browsers.
  38. Then over time your organization is free to mix and match the database formats used as a decision separated from the front end applications now in use.
  39. Without doubt Google have been the thought leader when it comes to Search.
  40. Notes users will be familiar with the Notes client search bar. A mechanism that was made available in the later parts of the 20th century and had barely changed since.
  41. Ideas such as Form Searches, Fuzzy Search, and Word Variants were new and innovative at the time but are no longer relevant in the 21st century.
  42. To help find content in Notes databases we continue to rely things like categorized views.
  43. Using categorized views as a way of finding information makes about as much sense in 2016 as it does to display conflict documents or response documents. The world outside of Notes has moved on in the 2st century leaving Notes applications and views especially and outdated for of information discovery.
  44. And then there is the quest for a domain search capability. A feature that first Lotus and later IBM have promised to provide a solution but never really delivering on that promise. What does it say when it is easier for your users to find information outside of their company than it is to find information indside the company?
  45. Really IBM… This is the best that we can do for search.
  46. If you visit Web sites such as Amazon and search for Lotus Notes you will the common use of facets as a way to filter in on information
  47. If you visit Web sites such as Amazon and search for Lotus Notes you will the common use of facets as a way to filter in on information
  48. Same at ebay
  49. Yelp
  50. And Linked In
  51. SO how can we achieve this with Notes data? What if linked-in was a Notes database? We would want to have a Documents by Form View and a Document by Location View
  52. This wuld be denoted by the presence of facets Object (Form) and Location
  53. When we select “Company” as our Object, pur search results would be constrained to just those in the By Form View where the Form is “Company”
  54. Using a By Form By Location view we could then further constrain the results to those in the Company (Form) and US (Location) category.