Friday, March 26, 2021

Use a Simple To-Do List to Evaluate No-Code Platforms


A while back I posted about a simple to-do list built on Bubble and mentioned that it might be worthwhile attempting to add more features to it. In playing around with that app I learned a good bit about how to accomplish different things on Bubble, and it occurred to me that I could use the same approach to learn more about other no-code platforms.

You can build a simple to-do list application in a hurry on any no-code development site. Once that's done you can try adding some of the features Bubble suggests including in their to-do app (obviously not all of these suggestions will apply to every to-do app): 

  • Highlight to-dos that aren't completed yet and those that are past their due date.
  • Add the ability to edit to-dos - their title, description, due date, etc.
  • Add a "completed date" to the to-dos if you don't have one.
  • Add a "remarks" field.
  • Include a search function so users can search for a specific to-do.
  • The original app often shows just the current "to-dos". If so, try adding the ability to display completed to-dos with a create date that lies within a certain date range.
  • Let the user set up recurring "to-do" items for regularly scheduled tasks.
There are also a couple of more complicated features that might be worth experimenting with:

  • Add "Projects" to the app. Nest to-do tasks inside projects to turn your app into a project manager. That means modifying the existing to-do report or adding a new report to show tasks by project. It may also involve adding new fields like a project due date, project beginning and ending dates, and the person or persons assigned to the project.
  • Modify the to-do app so that outsiders can use it too. Add a landing page, a login screen, and permissions so that a user can only see their own entries. All that will

    require a user table as well, where the user's id and password are stored.
OK, that's about it for my suggestions about an enhanced to-do list. It can be frustrating figuring out how to add features like these without a tutorial to follow, but you'll have a much better understanding of what you can and can't do on a particular development platform.

Wednesday, March 24, 2021

The Ongoing No-code vs. Low -code Debate

For some time now there has been a continuing debate about whether the future of programming lies with low-code platforms or no-code platforms. Right now the edge seems to belong to low-code development since it allows the programmer to add custom code directly in the app, which provides more flexibility than a strictly no-code platform.

However, there's an interesting statistic that may be a clue to why no-code will eventually overtake low-code. From 1980 to 2010 enterprise development times steadily declined as programming techniques and resources helped developers turn out software faster and faster. From 2010 to the present though, enterprise development times have trended in the opposite direction, even with the boost provided by low-code platforms.

Why is it taking longer to build new enterprise solutions? Part of the problem is the need to integrate new software with an increasing amount of legacy code and to maintain that legacy code. Low code platforms have helped relieve some of that pressure by proving applications that are largely composed of "black box" building blocks that require less maintenance and testing. However, low code software still includes custom code and that code has to be tested and possibly modified whenever changes are made to the application or to the programming language used in the application. 

No-code on the other hand is entirely (except in very special cases) "black box" which means that maintenance normally just consists of changing a few components or modifying the options associated with some elements in the software. in the long run that means that using no-code will be faster, more efficient, and require less effort than using low-code.

But what about very complex applications that can't be handled without coding? No-code supporters will argue that 10 or even 5 years ago no-code platforms couldn't produce software nearly as sophisticated as they can today - and it's only a matter of time until they develop to the point where you can build even the most complicated pieces of software.

So there's where the debate stands at the moment - what's your opinion?

Sunday, March 21, 2021

Get Better Performance from Your Bubble App

Echo Lake Tech has a neat tip on how to speed up user response times for an app created on Bubble.io. The idea involves replacing pages that a user moves between frequently with "group" elements.

Every time you switch to a different page in your app you're accessing Bubble's infrastructure which slows things down slightly. If the user has to switch between certain pages often enough that slight delay can add up, slowing down the user's response time. Creating two or more "virtual pages" on a single page will avoid that interaction and help avoid any slowdown.

Go to https://echolaketech.com/2020/11/02/one-strategy-to-improve-your-bubble-io-no-code-web-apps-performance/ for a full explanation and video of how to implement "group pages". You most likely don't need to do this for all your pages, but it could be worth a look in order to make your app as efficient as possible.

Saturday, March 20, 2021

Amazon Honeycode

In June 2020 Amazon introduced its no-code product, Honeycode. Recently we took another look at Honeycode and I would  recommend waiting for Amazon to add more features before spending much time on it. At this point you still have to use a work-around in order to simulate checkbox and radio button inputs. 

Anything associated with Amazon commands some attention, but Honeycode continues to feel like an unfinished product. Hopefully, the platform will get some much needed upgrades in the near future.

Friday, March 19, 2021

A Few Key No-Code Terms

No-Code Terms:
  •  aPaaS (Application Platform as a Service) -  Cloud-based software services which allow you to develop and build applications on their platforms in exchange for payment of a recurring fee.
  • API Connector - A platform feature that allow you to set up an API connection with an external service that you want to use in your app (a customer payment service for example).
  • Business Process Automation - Improving business processes by automating repetitive manual tasks.
  • Business Process Management - BPM involves designing, monitoring, and executing inter-related business processes. 
  • Business Process Reengineering - Redesigning and rebuilding business processes to improve performance.
  • Canvas Apps - Refers to applications created by visually designing and building a program by placing components on a blank screen or "canvas".
  • Citizen Developers - People with no background in program coding who are developing their own apps thanks to no-code app platforms.
  • Digital Transformation - Transforming services or businesses by replacing non-digital or manual processes with digital processes.
  • Hyperautomation - Refers to the enhancement of business processes through the use of artificial intelligence, particularly machine learning models.
  • Microservice Architecture - A software development method that looks at applications as a loosely connected group of self-contained pieces or "microservices", which can be developed quickly and efficiently on no-code platforms.
  • No-code Apps - Applications created on development platforms that employ visual modelling to build software programs. Users can access a library of pre-built components that they can drag-and-drop onto a graphic interface in order to construct various web and/or mobile applications.
  • Progressive Web Apps (PWAs) - Web-based application software built using common web technologies including HTML, CSS and JavaScript. PWAs are intended to work on any platform that uses a standards-compliant browser, including both desktop and mobile devices.
  • Rapid Application Developement (RAD) - An iterative approach to software development that emphasizes rapid release of prototypes followed by modifications based on user feedback.
  • Robotic Process Automation (RPA) -  Robotic Process Automation is the use of computer software to emulate (and possibly integrate) the actions of a human being in order to execute a business process.
  • Template - A pre-built app that you can use as a starting point for building your own app.

Tuesday, March 16, 2021

SAP adds AppGyver

With the rise of no-code and low-code platforms, the current trend is for large companies in the software industry to gobble up one of these platforms to take advantage of the DIY software boom. One of the latest to take that step is the German software giant SAP, which recently acquired the no-code operator AppGyver. 

SAP expects AppGyver to help its customers and partners respond more easily to specific needs and to act as a complement to the company's low-code offering provided by its business partner, Mendix Tech. Also, no major changes to AppGyver are expected as a result of the purchase. AppGyver's policy of providing its Composer Pro platform for free to any organization with less than $10 million in annual income will continue, although new features will probably be restricted to paid plans.

Sunday, March 14, 2021

Microsoft Power Automate Desktop is now free for Windows 10 Users

NOTE: Power Automate was previously known as Microsoft Flow.

 A few days ago Microsoft made Power Automate Desktop, its low-code, robotic process automation (RPA) tool, available to all Windows 10 users at no additional cost. To  be clear, Power Automate is only free for personal use - to share flows with others or to make use of AI components or cloud flows, you still have to upgrade to the paid version. To take advantage of the offer for your own use though, just search for "Microsoft Power Automate Desktop" and go to the website, click where it says "Download for free", then click on the downloaded file to install the software.

So, what is "Power Automate Desktop"? Power Automate allows anyone familiar with a particular business process to create an automated, repeatable workflow that can be triggered to perform that process for you. Along with creating workflows, users can also use Power Automate to send reminders about past due tasks, move data between systems based on a predetermined schedule, and talk to more than 275 data sources (or any publicly available API).

Basically, Power Automate is designed to help automate any business process that consists of a series of repetitive steps, such as downloading files from emails and  transferring them to a database. In addition to creating a flow that allows the computer to execute the entire process, you can have Power Automate guide a user from step to step along the way.

In fact you can create three types of flows:

  • Event driven flows - Flows that you initiate with a trigger event of some type, followed by a series of actions joined by "connectors".
  • Business process flows - Data-driven flows that consist primarily of components pre-chosen according to the data being processed.
  • Desktop flows - Flows created by recording yourself performing a series of actions (basically the same way you recorded macros in MS Word or Excel).
One other important feature of Power Automate is its ability to add artificial intelligence to your flows (if you have a paid license). You can add four types of AI models to your flow:

  • Form processor - Extracts particular pieces of text from the uploaded image of a form.
  • Object detector - Identifies objects from an uploaded image and provides a count of the number objects present in the image.
  • Prediction - Predicts whether or not something will happen based on previous historical data.
  • Text classification - Categorizes text according  to some classification scheme, making the text easier to analyze. 
For further information and example flows, go to: 

https://docs.microsoft.com/en-us/learn/modules/introduction-power-automate/