203 Lotus blogs updated hourly. Who will post next? Home | Blogs | Search | About 
Latest 7 Posts
When your Tool is a Hammer, Everything is a Nail, Transformation of Domino - Part 2
Mon, Nov 13th 2017 283
Domino X and Beyond, What Does this Mean?
Fri, Nov 3rd 2017 10
All Good Things Must Come to an End and the New Hope and Direction
Sat, Aug 19th 2017 6
Highlights of MWLUG 2017
Thu, Aug 17th 2017 5
Phora Group Announces iPhora® integration with DocuSign
Wed, Aug 9th 2017 5
Phora Group Announces iPhora® Async
Mon, Aug 7th 2017 4
MWLUG 2017 - Announcing MWLUG Community Outreach Program Beneficiary
Mon, Aug 7th 2017 7
Top 10
When your Tool is a Hammer, Everything is a Nail, Transformation of Domino - Part 2
Mon, Nov 13th 2017 283
Two Weeks to the Start of MWLUG 2015, See What You Are in For
Thu, Aug 6th 2015 10
Domino X and Beyond, What Does this Mean?
Fri, Nov 3rd 2017 10
Data Binding and React with Dojo
Mon, Apr 24th 2017 9
Transforming Domino into a Social Collaboration Platform Part 2A - Experimentation
Mon, May 12th 2014 7
MWLUG 2017, "Moving Collaboration Forward", The New is Old and the Old is New
Tue, May 2nd 2017 7
MWLUG 2017 - Announcing MWLUG Community Outreach Program Beneficiary
Mon, Aug 7th 2017 7
Installing Nginx Reverse Proxy on CentOS for Domino Our Experience
Mon, Sep 29th 2014 6
The Good, Bad, and Ugly about AMD in Dojo
Thu, Oct 2nd 2014 6
IBM Champion Gabrielle Davis Talks About Coming to MWLUG 2016
Wed, Jul 6th 2016 6

Our Adventures into Creating a Secure MVC Framework - Prologue
Twitter Google+ Facebook LinkedIn Addthis Email Gmail Flipboard Reddit Tumblr WhatsApp StumbleUpon Yammer Evernote Delicious

Now that MWLUG 2015 is history and MWLUG 2016 is in the planning stage, I can now start writing a series that I have wanted to do for awhile about creating a MVC framework.

This will a multi-part series on my adventure into creating my own MVC framework.  I will be talking about MVC in the generic sense and it will include MV* of all types.

Creating your own MVC framework? Am I out of my mind? Why in the world would you do that you may ask. There are so many popular and great MVC frameworks available including Angular, Backbone, Ember, React, and etc.


When we rolled out iPhora Touch v2 just before MWLUG 2014, the feedback for the interface was lukewarm at best, it was slow since the page had to be refreshed each time and it did not work well on tablets and other devices.  Though we were using Bootstrap the interface it just would not respond the way that we wanted.

So after MWLUG 2014, I set out to figure out a way to improve the design so that it would be faster, more responsive, and easier to maintain.  The previous UI framework was built using Dojo 1.53 which needed a significant amount of Javascript to be loaded before the page would initialize.  So moving forward we wanted a AMD JavaScript framework to reduce the loading time.

We want to provide a simple and usable user interface for our iPhora solutions that would work for both desktop and tablets.  In our iPhora technology, the UI is totally decoupled from the server and there is a total separation between the data and the form.  We have never been a big fan from having the server generate the HTML interface. That approach requires you to couple the data with the UI. By decoupling the data and UI, what technology is used to generates the data is irrelevant. Currently, it is Domino, but it could easily be a combination of other propriety or open source technologies.  All information is sent and received through a series of JSON RESTful APIs that is managed by the iPhora Gatekeeper. What information you have access to is based on user authentication, roles, ACLs, and permissions. Note for Domino developers, don't use DAS.

Our approach of using Restful APIs makes the use MVC framework ideal. We have long been intrigued by the different MVC frameworks including the popular ones like Angular and Backbone. So our goal was to replace our entire front end with one of these open source MVC frameworks. Even Dojo has a MVC framework, kind of.

However, the selected MVC framework had to meet a number of criterion including easy adaption to how our iPhora data security model worked. It had to handle our multi-level UI Bootstrap-based widget design that are part of the iPhora security model. It had to be lightweight, while being very structured allowing the use of design patterns to help maintainability. In addition, the goal was to have a multi-pane single page application (SPA) interface to help to reduce the constant loading of core libraries over and over again while allowing for constant changes to what appeared on the screen. Since iPhora is designed to handle sensitive information, we needed to control when and how information was to be cached or destroyed both in memory and visually.

From our research and experimentation, we decide the popular MVC frameworks were not going to meet our needs.  Stuff like bi-directional coupling did not work for us since it is assumed that at every RESTful API call your security level and access might have changed.  Not only that, the security level for each of the multi-panes within the single page application interface may be different.

So our adventure of creating our own MVC framework began.  We rolled up our sleeves, got many 6-pack of beer and started laying out want we needed.

Next time, Design Requirements.

Sep 29, 2015
3 hits

Recent Blog Posts
When your Tool is a Hammer, Everything is a Nail, Transformation of Domino - Part 2
Mon, Nov 13th 2017 4:03p   Richard Moy
The recent announcement by IBM to continue the development and support for the IBM Domino platform indefinitely was great timing for part 2 of this series. This series is about the direction that we are taking Domino. This journey has taken more than five years with many different designs and experiments to get to where we are in our iPhora technology. You can find Part 1 of this series here. There are many tools and solutions out there from many vendors for "Modernizing" a Notes application
Domino X and Beyond, What Does this Mean?
Fri, Nov 3rd 2017 5:07p   Richard Moy
On October 25, 2017, IBM announced their strategic partnership with HCL with Domino, Sametime, Traveler, Verse and other products. As many have blogged and tweeted, IBM is turning over the development of these products for the forseeable future to HCL. Also, Ed Brill announced that IBM will be releasing Domino X in 2018 and #Domino2025 Jam to help determine the future of the Domino technology. I am not going to dwell on the details. You can find it yourself. I am going to discuss what this mean
All Good Things Must Come to an End and the New Hope and Direction
Sat, Aug 19th 2017 7:47p   Richard Moy
MWLUG 2017 was our most successful MWLUG conference we have ever had. With over 232 registered and a small number of cancellations, MWLUG 2017 was the most attended and largest conference. We had over 60 sessions, workshops and round tables with speakers from all over the United States and Europe. Over a third of the sessions were non-IBM specific and included sessions covering new topics like MongoDB and GDPR. In tuned with our theme this year, Moving Collaboration Forward, our goal was to expa
Highlights of MWLUG 2017
Thu, Aug 17th 2017 5:11a   Richard Moy
This year the MWLUG conference was held at the Hilton Mark Center in Alexandria, VA. The theme for MWLUG 2017 was "Moving Collaboration Forward." There are numerous changes to the IBM Collaboration landscape and we wanted to cover these changes, but at the same time augment our normal ICS specific sessions with sessions focused on the greater landscape of collaboration. We had sessions on non-ICS specific topics like MongoDB, IoT, and Sharepoint. MWLUG 2017 this year comprised of 60 sessions
Phora Group Announces iPhora® integration with DocuSign
Wed, Aug 9th 2017 11:42a   Richard Moy
Posted August 9, 2017 - By Louise Burton - Communication Phora Group, a DocuSign Partner is pleased to announce that its iPhora application platform now integrates directly with DocuSign, the leading cloud-based provider of electronic signature services with over 200 million users in 188 countries. With the integration of DocuSign, complex document workflows and business processes requiring electronic signatures can be instantly signed, anywhere in the world, using a process that is secure and
Phora Group Announces iPhora® Async
Mon, Aug 7th 2017 3:28a   Richard Moy
Posted August 4, 2017 - By Louise Burton - Communication Phora Group is pleased to announce iPhora Async, a secure, asynchronous, event-driven add-on to iPhora Foundation, Phora Group's primary application platform for collaboration and business process management (BPM). iPhora Async allows organizations to integrate external cloud-based services into their core business processes in a secure and controlled environment. iPhora Async extends Phora Group's commitment to providing highly secure
MWLUG 2017 - Announcing MWLUG Community Outreach Program Beneficiary
Mon, Aug 7th 2017 3:18a   Richard Moy
As members of the IT community, we are also an important part of our local community. Through the MWLUG 2017 Community Outreach Program, we are raising money for organizations that help the local community. Each year we identify an organization in which our contribution would have the greatest impact on the local community of the host city. Thanks to the generosity of the Hilton Mark Center, we will be raffling off a weekend stay at the Hilton Mark Center as the grand prize. Please take the opp
MWLUG 2017 Transportation from Airport and Parking
Mon, Aug 7th 2017 3:15a   Richard Moy
If you are traveling to the Reagan International Airport to the Hilton Mark Center remember there is a free shuttle. Here is the shuttle schedule:National Airport/Pentagon City Mall & MetroThe Hilton Alexandria Mark Center offers a complimentary shuttle service 7 days a week from 6:00 am. to 10:30 pm. The vans depart from the front of the Hotel on the hour and half hour, arrive at Pentagon City Mall/Metro (blue and yellow line) at approximately 10 minutes and 40 minutes after the hourand c
When your Tool is a Hammer, Everything is a Nail, App Modernization - Part 1
Sun, Jul 30th 2017 8:12p   Richard Moy
I wrote this blog post about 9 months ago and never got around to finishing it. I felt this would be a good time to post this since MWLUG 2017 is coming up and with the Domino Application Development Roundtables at MWLUG 2017 both customers and partners have the opportunity to voice their desires on how they want IBM to move forward with IBM Domino. As an long time IBM Business Partner and ISV focused on the IBM Domino platform, we have been quite disappointed with the progress and improvements
MWLUG 2017 - Domino Application Development Roundtable
Thu, Jul 20th 2017 5:16p   Richard Moy
IBM Domino is nearing its 30th anniversary and yet it is still one of the most innovative software products on the market with features still not found in other solutions. Want to discuss with IBM your thoughts on how we can continue to make Domino one of the most relevant product for the next 30 years? We are please to announce that MWLUG 2017 will be hosting two Domino Application Development Roundtables on Wednesday August 9, 2017. Each roundtable session will be 45 minutes. There is one fo

Created and Maintained by Yancy Lent - About - Planet Lotus Blog - Advertising - Mobile Edition