Saturday, February 27, 2021

What are Progressive Web Apps and Do We Need Them?


For some time now PWAs have been cited as the "wave of the future" in application development. So what are PWAs? A Progressive Web App is a bridge between the world of web apps and the world of native apps (apps that are developed solely for mobile devices). PWAs are hosted on the web, accessed through a standards-compliant browser, and consist of common web technologies like HTML, CSS and Javascript. However, they can be installed on mobile devices direct from the browser and they work like a mobile app. 

PWAs can be saved to a phone or other mobile device’s home screen and function like a native app, with the ability to access the device's camera, gyroscope, and other hardware and even deliver push notifications. PWAs can also be loaded and used offline, since they store HTML and CSS in your browser's cache. 

So, can you create a Progressive Web App on your favorite no-code platform? The answer is probably "yes", but the process may be a little complicated. For example:

  • Zoho Creator - Web apps created on Zoho Creator are all PWAs by default, with the backend processing built-in. Once your app is created you can access it from a mobile web browser, install it on the home screen of your mobile device and it will work basically the same as a native app. And, as mentioned, any data entered into the application while it's offline will sync to the web as soon as the device connects to a network.
  • Lumavate - Allows users to create no-code PWAs for business as a standard feature of their platform.
  • OutSystems - OutSystems added PWA support last year. They let you turn your mobile app into a PWA simply be selecting "PWA" distribution in your app details. According to OutSystems their PWA apps have been tested against Google's Lighthouse tool to ensure compliance with Lighthouse standards.
  • GoodBarber - You can create no-code PWAs as a standard option on their platform.
  • Bubble - Currently Bubble doesn't provide an option for converting your web app into a mobile or progressive web app. You would have to search for a third party to help you make that conversion.
Many other no-code app platforms are, like Bubble, planning on adding the ability to convert apps developed on their platform into PWAs or can provide a wrapper or third party service to create a PWA from your app.
 
If you decide you want to build a progressive web app you should be aware that there are a few potential problems with PWAs:
  • Not all web browsers support Progressive Web Apps. Google Chrome offers full support for PWAs on Windows, Linux, macOS, Android and iOS, Safari supports PWAs on macOS and iOS (3.11 and above). Microsoft Edge (Chromium) provides full support for PWAs on Windows 10 and on macOS. However, in December of last year Firefox discontinued support on desktops but does still offer partial support on Anroid devices.
  • Unlike native apps, it takes a great deal of effort to link Progressive Web Apps to other native apps on your mobile device.
  • Updates to PWAs are somewhat complicated since they can't be combined into a single, easily installable package.
At the same time there are also some additional advantages to PWAs:
  • After a progressive web app loads, it will run faster than a native app because (being web-based) the content and page elements don't have to be re-loaded each time the page is accessed.
  • PWAs tend to be safer because they work via HTTPS, which guards against snooping and makes sure that content hasn't been tampered with.
  • PWAs can be shared with others through a URL, without having to go through an app store or requiring a complicated installation procedure.

So, are PWAs really worth it? Considering the widespread use of phones and other mobile devices, many businesses that have switched to PWAs have reported a significant increase in traffic and customer interest. Even though the rush to PWAs has slowed somewhat, it's still a good bet that progressive web apps will end up being a major player in application development in the not-too-distant future.

Connecting Your Zoho Creator App to Outside Services

 

As mentioned in a previous post, plugins (AKA add-ins, add-ons, etc.) can be critical in providing the features you need in your app. Plugins are software components produced by the development platform itself, by users, or by third parties. They provide specific features beyond, or in addition to, what you can do using the basic elements available on the platform.

Primarily, plugins supply the ability to link your app to outside services like Stripe, Mailchimp, and Google Sheets, but they may also be a temporary way to provide functions that will be integrated into the platform in the near future. In any case, if you're creating an app on a no-code (or low-code) platform, you need to be aware of what "add-in" functions you have available to you. 

For example, Zoho Creator offers a wide variety of plugins including:

  • PayPal - Accept and make payments to your customers, suppliers, and other stakeholders by using PayPal.
  • Stripe - Integrate your app with Stripe's digital payment service.
  • Twilio - Send instant notifications via SMS to your customers with Zoho Creator's built-in notification system and Twilio.
  • QuickBooks - Your Zoho Creator app can integrate with QuickBooks, to help you manage accounts, generate invoices, and automate payment reminders.
  • Zoho CRM, Zoho Books, and Zoho Invoices - Connect to other popular Zoho products.
  • Zapier - By connecting to Zapier's integration service you can access over 100 other applications.
  • APIs - Zoho Creator allows API calls to multiple apps, either by direct connection or by invoking a URL.
There are dozens of additional plugins for Zoho Creator - take a little time to go through the list and you may find just the one you need for your app.

Friday, February 26, 2021

Connecting Your Bubble App to Outside Services

If you want to send an email to multiple recipients, receive payments, send data to Google Sheets or access other outside services from your Bubble app, you're probably going to need to use a "plugin." Plugins (also referred to as add-ons, add-ins, etc.) are software components that add a specific feature to an existing computer program. They allow you to create workflows between your app and a variety of other applications.

If you've created a no-code app on Bubble and want to connect it to the outside world, what plugins are available? Here's a partial list (some are free, some require a one-time payment or a monthly fee):

  • Airtable - Allows you to create a fully functional web application using an existing Airtable base. This plugin lets you read from and write to a database in Airtable, and process that data in Bubble, using custom user interfaces and workflows.
  • Box - Save your app's data (such as images or files uploaded by users) in Box instead of in Bubble's database. You can also set privacy rules around the files you store in Box.
  • Braintree - Accept payments by credit card or through PayPal.
  • Card Validator - Check if credit card numbers are valid, and determine the card type. All checking happens locally, no APIs are used so the card info is not sent anywhere.
  • Camera Capture and Video Recorder - Capture still images and video from a webcam or mobile device camera.
  • Codeless Academy Native Apps - Allows you to integrate the functionality of native apps into your Bubble web app. Utilize features such as Face ID, Apple Pay, Push Notifications, and access to device Contacts.
  • Excel - The "Excel Connector" allows you to upload Microsoft Excel data in .xls format (rather than CSV format) and to download data on Bubble in .xls format.
  • Google Analytics - There are a number of GA plugins. For instance, the "Google Analytics V4 + Custom Events" plugin allows you to add the Google Analytics V4 Stream tag and trigger custom events from your workflow in Bubble.
  • MailChimp - There are currently 3 different MailChimp plugins for Bubble apps, all of which allow you to send emails through MailChimp.
  • Slack - Currently there are four Slack plugins on Bubble, each of which is slightly different from the others. For example, one version allows users to log in with Slack, access Slack data, and perform actions as a Slack user or bot.
  • Stripe - Bubble has close to 20 Stripe plugins to allow you to receive payments in your app.
  • Twilio - With the Twilio plugin you can send text messages, make calls and send faxes to other users.
There are dozens of additional plugins available on Bubble to expand the capabilities of your apps. Keep that in mind if you're thinking about building an app on Bubble and aren't sure that the platform's standard features will be sufficient to do what you want. Plugins can be an extremely valuable building block in creating your program and connecting it to other popular apps.

Tuesday, February 23, 2021

No-Code in the Olden Days

At about the same time that the world was beginning to move from DOS to Windows, I was looking for some way to simplify the process of building and, more particularly, modifying new applications.  The idea was to find some software development system that would allow a relatively inexperienced employee to create simple programs and make changes to those programs.

There were several systems that promised that coding was so easy anyone could do it with a couple of days of training.  I tried a few of those packages (the ones that had a free trial) and found that they fell into two categories – either I couldn't make them work or they were only good for producing “Hello World” level programs.

I have to admit though, I actually bought a copy of one package, a product called Layout.  The company had versions for MS-DOS, Windows 3.1 and Windows 95 and they were working on versions for Windows NT and OS/2 (IBM's attempt to introduce their own operating system to compete with Windows).  Layout was billed as “object-oriented” which meant that you constructed programs by joining pre-defined “objects” together.  You built a “flowchart” on-screen using those objects and you could modify certain properties of each object (like the text of a text box or the comparison part of a decision box).

You could design data entry, database, and report formats visually on-screen and then convert them to real .EXE executable files or structured C++ programs.  The system supported OLE 2.0, DDE, DLLs, hypertext links – all kinds of neat stuff.  And according to the seller, there were over 200,000 users, all kinds of add-ons, and widespread third-party support.  All for only $299.95.

Well, it sounded like a great deal – and maybe it was for some people.  In my case, it didn't really work out that way.  First of all, I made the mistake of ordering the DOS version, thinking that it would be a couple of years before Windows really took over the market.  Sort of like thinking that rock and roll in the late 50s was a passing fad.  By the time I had learned enough to start playing with the DOS version, Windows was spreading like wildfire.

The second thing I discovered was that Layout was fairly complex - and it had to be in order to be really useful. You needed to work with it on a regular basis or you wound up spending most of your time paging through the manual looking up information on what object to use and how to use it.  So much for using it just to whip up a quick program every once in a while.

On the other hand, like most such products Layout wasn't flexible enough to build a really complex program.  If you wanted to insert multi-level subtotals in your report that were dependent on a given set of conditions – well, that wasn't happening. To be fair though, any visual designer product that could do things like that back then would probably have been so large and cumbersome that it would be too hard to use.

Then too, the simple mechanics of handling the visual designer, dragging and dropping objects, modifying properties, and connecting everything in a flowchart was, to coin a phrase, a bit of a drag for me.  The process was somewhat slow and awkward, and positioning the objects on the screen exactly where you wanted them took a considerable amount of patience.

Still, the package had some really nice features; for example, you had almost complete control over printer positioning, you could run other programs and “read” the command line, and you could insert comment boxes and “spy” boxes in your program flowchart (spy boxes were a debugging tool to pause the program and show you some intermediate result).

Regardless, Layout had a fatal flaw.  You had folders of different types of objects and you had the ability to set or modify the properties of those objects.  Then you could drag them onto your screen to build a program.  Sound familiar?  Once the 800 pound Microsoft gorilla in the room started marketing Visual Basic – well products like Layout were pretty much doomed. 

It would take a couple of decades for no-code tools to come to the forefront again, but fortunately for out-of-practice programmers like myself that day has arrived and this time visual programming is here to stay.

Saturday, February 20, 2021

A Template to Create an Online Course

If you have a lesson or course of some type that you want to share with others like you would on Udemy (and make money from subscribers), Zeroqode has created a template that will help you do that. The template (called "Coursely") was built using Bubble and includes the option to integrate it with Stripe to receive credit card payments and Braintree to receive payments through PayPal.  

According to Zerocode the template features an admin dashboard, responsive design, messaging, social media links, and the ability to upload video using a Bubble plugin. Basically, you insert your lesson material, quizzes, video and other content into the template, activate any options (like receiving payments), and you're ready to go.

There are two versions of the template, a "standard" license and a "developer" license. The standard license (currently $249) allows you to use the template to create as many apps as you wish for your own personal and business use. To build apps for clients you need to purchase the developer license (currently $747). You should also be aware that you will need a little basic knowledge of Bubble and that the apps you develop have to be hosted on Bubble.io (there's no option to host it on your own webserver).

You can find a full description of "Coursely" by going to www.zeroqode.com and scrolling down the page until you see the template for "Coursely". Click on that image to go to the page describing Coursely. 

Friday, February 19, 2021

No-Code Showdown (circa 2016)


 Back in 2016 PCMag (https://www.pcmag.com) held a demonstration where they asked low-code developers from Appian, Microsoft, Salesforce, and Zoho to face off against each other. The idea was for each group to show that they could produce a usable app in one hour. 

Each team had to create a event scheduling app that could add a new event (including name, date/time, and duration), invite users to come to the event, and allow visitors to view a list of upcoming events in a calendar view or as a chronological list. If the competitors completed the required functions for their app and still had time left, they could add more features such as notifications.

All four teams were able to construct a working scheduling app within the hour time limit. To read more about the competition and see what the apps looked like and how they performed, go to: https://www.pcmag.com/news/building-an-app-with-no-coding-myth-or-reality (Building an App With No Coding: Myth or Reality?, By Rob Marvin, June 30, 2016).

Thursday, February 18, 2021

Where to Find More Information About No-Code

 


If you're looking for more news, articles, tips and announcements about no-code  apps, here are a few great resources for the citizen developer:

  • The No-Code Journal (https://www.nocodejournal.com/) - The No-Code Journal is a digital magazine directed at people who want to learn more about no-code and low-code app development. It features pieces written by enthusiasts from a variety of backgrounds and provides information on current trends and the future of No-Code. The No-Code Journal can be a big help both for newcomers to no-code and for experienced "citizen developers".
  • Coaching No-code Apps Blog (https://coachingnocodeapps.com/blog) - If you're looking for advice on how to build, market and launch your no-code app, this blog can be your personal advisor and guide. It can help you plan, create, promote and bring your MVP app from initial design to finished product.
  • Zeroqode Blog (https://blog.zeroqode.com/) - This blog features interviews with leaders in the No-Code movement, information on templates and plug-ins, and articles on the importance of no-code app development. Zeroqode has also created its own series of lessons on no-code app building and includes a forum for its active community of developers.
  • Without Code Blog (https://www.wocode.com/blog) - No-Code also applies to website building and Without Code provides news, advice, comparisons, and design tips for anyone working on creating no-code websites.