Ed Toner

Blog: Application Graveyard

I was recently contacted about a survey I had participated in on the topic of Low-code/No-code (LC/NC) tools. I am largely a supporter of LC/NC, which we have utilized for several years with our enterprise content management system (ECM).  However, I wanted to be prepared to provide the opposing position, so I did several internet searches. Not for Low or No-code, but for similar forerunner “citizen developer” tools such as Lotus Notes and Microsoft Access. 

These pioneering self-service software development environments allowed developers and business users development-like ability to drag and drop application components. Enabling the business to build applications rapidly with minimal knowledge of traditional programming practices including development environments, deployment, and testing protocols.
The LC/NC platform sales pitch is the ability to provide the “citizen developer” with the tools needed to solve business needs on their own. Implementing applications by “democratizing development.” Connecting data from different sources is almost effortless and frequently unmanaged. No technology standards or oversight is needed or, more likely, desired. 
Certainly, this can’t be an issue in the making? The business gets urgently needed solutions virtually instantaneously and IT gets to focus on their backlog of projects. This sounded too much like the promises of the tools of my past which led to my internet search to get a reminder of the painful experiences.

  • The business gets urgently needed solutions to their issues.  
  • IT departments get much-needed relief from their workload. 

Possibly too good to be true?
Much like my blog titled, “The Truth About Predictions” I always look at both the pros and cons of any trending technology to ensure that I am objective about the capabilities, demonstrated benefits, and downsides to avoid. I do that on every position I take, it’s not reserved for just technology. My over-analysis of nearly everything I do drives my spur-of-the-moment and carefree wife crazy, but she has unenthusiastically accepted the predictable research that is part of my decision-making process.
I have always been a supporter of LC/NC tools, but only under controlled situations. I began searching for technologies I have maintained in the past that I feel were the forerunners or at least counterparts of this “new” breakthrough technology offering. It reminded me of the issues I have dealt with throughout my career due to the lack of governance and process. 
I was using IBM Lotus Notes in the mid ’90s before Exchange or SharePoint were even viable products. Microsoft was still struggling to market Windows.  During my research, I found this job listing. 


Lotus Notes Developer


Full Time
Professional
5 years exp
Information Technology
SHOULD BE ABLE TO DEMONSTRATE THE SKILLS REQUIRED TO EFFECTIVELY BUILD AND MAINTAIN DOMINO 8 APPLICATIONS

0 applications Posted 22 Mar 2022


Remember my search was in late May and still no applicants for the job. We think Cobol programmers are scarce, try to find this skillset.
Gartner has estimated that more than 50% of existing Notes/Domino applications “would be classified as fit for decommissioning.” We found a few Lotus Notes applications during our Application Portfolio Management (APM) discovery process, and decommissioning is easier said than done. 
This brings me to my first concern about LC/NC,
  • Maintainability.

Will these soon-to-be orphaned applications continue to work with the next version of Windows or the next server upgrade, and if not, who is going to fix the issues? I am sure the OCIO Service Desk will receive a call, but unfortunately, the working knowledge of this niche and unfamiliar environment is sparse.  
How much time and effort should we put into the maintenance of an unsupported application?  Is there an alternative application available?  A possible alternative would be to migrate the application to a supported platform built on LC/NC, being careful not to simply replicate the existing functionality but upgrade it with new functionality based on new requirements. 
Another reminder of my past life was found in a support board for Microsoft Access users.  Yes, Microsoft is painfully aware of my views on Access Databases. The excerpt below taken directly from the user message board is a very painful memory of my past support issues:
Access database error code 3734 message

 

LC/NC and their cousin Access database applications often include the assimilation of data in disparate systems. Often misunderstood by the “citizen developer,”

This leads to additional concerns:

  • Data Silos
  • Misinformation
  • “Shadow IT”

IT organizations need to maintain a certain level of control over development. There are also basic rules which must be followed when dealing with data utilized by these systems. These include adequate data security, maintenance of least privileged access for data privacy, and data reliability. IT policy must restrict the data types shared and used. Incorrect reports in my past that were provided to upper management often caused me to spend months correcting the inaccuracy of the reports which were actually worse than providing no data at all. Poor decisions were being made on misleading and inaccurate information. 

My final concerns include a lack of vendor control:

  • Vendor lock-in
  • Lack of visibility
  • Auditing of vendor systems

Lack of governance will introduce these unnecessary risks. You don’t own your source code so threats such as vendor lock-in or a vendor security breach are always a possibility. 

The majority of the code remains hidden from the developer. This makes the ability to effectively and cost-efficiently switch providers nearly impossible. Even if a vendor makes the source code accessible, it is often easier and more cost-effective to create applications from scratch versus untangling undocumented source code.

To wrap up, what is needed to adequately utilize LC/NO and avoid the issues described in this blog:

  • A governance framework that provides guidance and policy.
  • Review boards that provide complete control in regard to security.
  • Low code/No code platforms that do not allow everyone in the business to build applications.

LC/NO platforms in my opinion are best suited to small internal business applications with no customization and little need for future scale. When additional scale is necessary, there must be a transfer of the application to professional developers. Another benefit is the transformation of customer transactional systems by professional developers. Converting both internal and external manual effort to a modern web and mobile digital environment to capture data in a digital framework. 

I appreciate your efforts each day to provide a high level of customer service to the State and the Citizens of Nebraska!


Ed Toner