1. Building a Presentation Tier
Core UI Team
John Cokos, Jason Taylor, Benjamin Waite, Brett Ritter, Fumiyo Conway-Yasuyama, Ben Hakala
Anisologicalapproach
ADP|Cobalt
Automotive Marketing
2. Cobalt: A Case Study
Monolithic Web
Application
Separate
Presentation
Tier
Our Quest …
#isological
10. Isological Rendering Process
• Model Initialized
• Acquire Service Data
• Hydrate the Template
#isological
Server Rendered
• Model Initialized
• Acquire Service Data
• Hydrate the Template
Server Client
11. Isological Rendering Process
• Model Initialized
• Acquire Service Data
• Hydrate the Template
#isological
Client Rendered
• Model Initialized
• Acquire Service Data
• Hydrate the Template
Server Client
12. Isological Rendering Process
• Model Initialized
• Acquire Service Data
• Hydrate the Template
#isological
Deferred Service
• Model Initialized
• Acquire Service Data
• Hydrate the Template
Server Client
14. Next Time …
We have successfully peeled the presentation tier away from the
big bad Java application.
Next up is getting this into production, load testing, hardware,
and eventually migration of those 10,000 customers
In future MeetUps we look forward to
Detailing the go-live process and getting into our “Co” library
Core UI Team
ADP|Cobalt www.cobalt.com
#isological
Editor's Notes
We were looking at it all wrong. What we needed was a new weapon, a new approach
The “A-Ha” moment for us came when we realized that the current solutions are drawn on Client/Server lines. We need something completely different … a solution that can operate independently … agnostically to the initiator.
We needed something “Isological” – the optimal solution is not about sharing libraries, it’s about sharing LOGIC
Using a Common “Isological” Codebase allows us to wire everything the same way, with each “side” optimizing the wiring for that its strength
As a result, we have a radical reduction in duplication and complexity
Isomorphic – taking the same form or shape. In a JavaScript context … “Same Code Client and Server”
Isological – takes isomorphic a step further, sharing logic, behavior, and code flow
----- Meeting Notes (7/23/14 16:39) -----
“And the Lord spake, saying, "First shalt thou take out the Holy Pin. Then shalt thou count to three, no more, no less. Three shall be the number thou shalt count, and the number of the counting shall be three. Four shalt thou not count, neither count thou two, excepting that thou then proceed to three. Five is right out. Once the number three, being the third number, be reached, then lobbest thou thy Holy Hand Grenade of Antioch towards thy foe, who, being naughty in My sight, shall snuff it”
Each “Stage” can be independently deferred and cached
----- Meeting Notes (7/23/14 16:54) -----
Our templating system operates much like other mainstream systems, where a data model of some sort (JS Objects in our case) are married to tokenized HTML