Tuesday, February 16, 2021

Testing No-Code Platforms by Building an Enhanced To-Do App

 When I started experimenting with building apps on no-code platforms I built basically the same app each time. I was managing a payroll services company a few years ago and we ended up at one point needing to produce a web-based payroll entry program. I had a lot of experience planning and creating that application, so I decided that I would go with what I knew and try building that same app on each platform. That gave me a pretty good idea of how each platform worked, but it also limited the number of features I made use of - and that's why I've decided to use a different approach in the future.

One of the first small projects I looked at was a simple to-do list on Bubble. I was about to move on when I saw that Bubble had added some suggestions at the end of the tutorial about what you could add to expand on and improve on the app (see: https://manual.bubble.io/learning-bubble/more-features-for-your-to-do-app). I think that approach should allow you pretty much test all the features available on a particular no-code platform.

This approach may or may not work for you, but if you're looking over several platforms this could help you compare them and give you an idea of what's possible with each one.

Monday, February 15, 2021

Try it Yourself To-Do List on Bubble


Go to this URL to try out a basic To-Do list created on Bubble.io:

 https://mastering-nocode-todo-list.bubbleapps.io/version-test?debug_mode=true 

Note: We will be adding more features soon...

Machine Learning with Google Sheets

Recently I published a book on Amazon about how to make use of no-code machine learning models: Mastering No-Code: No-Code AI Apps (Create Your Own Machine Learning Apps). Then a few days ago I realized I left out one of the most popular platforms that offers machine learning features - Google Sheets.

The "Explore" button (the star-shaped icon) in the lower right corner of Sheets is your key to unlocking the machine learning features in Google Sheets on the Web (Note: Explore is also available for iOS and Android versions of Googe Sheets). Using Explore lets you simply ask questions about your data rather than having to develop formulas to try to extract the information you want. For example, if you have a spreadsheet with fields for "Sales" and "Date of Sale" you could type "Total sales for February 2021" in the Answer box, hit Enter, and let Explore provide the answer.

There are also add-ons for Google Sheets, like the one from Aasaanai which lets you build, train, and use machine learning models inside Google Sheets without writing any code. Or the BigML add-on that allows you to integrate machine learning models on BigML with Google Sheets.

Considering the number of people who use Google Sheets every day, the ability to use machine learning with your Sheets is a major step forward and I'll post more about it in the future.

Sunday, February 14, 2021

Protecting Your Data on a No-Code App Platform

Securing your data on a no-code (or low-code) platform should certainly be a part of the planning that goes into building an app. However, the first thing you need to decide is whether or not you want your data secured. If you're building a blog or sharing recipes privacy is probably not a problem. 

Even if you're dealing with data connected to your business, it may not require protection. For example, if you've built an app to handle employee leave requests and the database includes employee names, requested leave dates, whether or not the request has been approved or not, and how much time off the employee still has available, there's nothing really sensitive in there. If you add the employees' social security numbers though, then you need to secure that information.

Almost every no-code (and low-code) platform gives you the option of keeping your data private by forcing users to log in and out and by assigning "roles" to users and restricting their access based on their role. There are additional options though that can increase the security of your data. such as:

  • Require a moderately complex password - more than 5 or 6 characters, a mix of upper and lower case letters, one or more numbers, one or more special characters, etc.
  • Set up 2-factor authentication - users have to provide a password plus some other means to prove their identity.
  • Force users to change their password after a certain period of time - 60 days, 90 days, etc.
  • Log users out automatically if they've been inactive for a certain period of time.
Most platforms offer these options, so if you have sensitive data in your app consider making use of one or more of these methods to help keep that information secure.


Saturday, February 13, 2021

What's the Difference Between a Website and a Web App?

 

What is a "Website"?

Guru99:

A website is a group of globally accessible, interlinked web pages which have a single domain name. It can be developed and maintained by an individual, business or organization. The website aims to serve a variety of purposes. 

Essential Designs:

Websites, accessible through browsers, display useful content. They are navigable and can present digital content, images, video, and audio. Websites (vs web apps) are static, meaning the content doesn’t update dynamically. 

BrowserLondon.com Blog (Oliver Creswell 8/06/2020):

If users intend to simply access information or gain understanding, then you have a site. If they intend to accomplish some task that requires inputs and responses, then you have an app.

Website or Web App?

These explanations of how a website is different from a web app apply in general. The fact is though, there's no absolute difference between a website and a web app. I can pay for a membership on a no-code platform like Bubble, create an app with both static and dynamic pages, and add a custom domain name for that app. 

That means users can go to "www.myapp.com", read articles, news blurbs, healthcare tips or other information and also run an app that allows them to enter, update and chart their calorie intake. I think that's essentially a website - which means, yes, you can build yourself a website on a no-code app building platform. Apps and websites don't have to be two separate things.


Friday, February 12, 2021

Budget Friendly No-Code App Platforms

If you want to experiment with no-code app building, here are a few of the platforms that offer a free plan. Each of the "free" plans comes with limitations, but having done some tinkering on most of these sites myself, they are usually flexible enough that you can manage to build at least a basic version of the application you want to create:

  • Open As App - You can have as public (available to everyone) apps as you want, but only one private (by invitation only) app and only one user for that app (for example, if you're developing an app specifically for another user).
  • Caspio - One of the main limitations with Caspio is that their free plan only allows you to have five "data pages" in your app, where a data page refers to any form, report, chart, calendar - basically any screen that you display to a user.
  • Bubble - No custom domain name, no CSV import or export.
  • Zoho Creator - One app, no ability to use certain advanced fields.
  • OutSystems - Only one "environment" (the area where your application runs).
  • Unqork – No pricing information available.
  • Tonkean – Has a “sandbox” free trial with 1 day data retention.
  • Thunkable – You can develop Android and iOS mobile apps for free on Thunkable. All your apps will be public however – to make your app private you have to have pay for a “Pro” membership ($25/month). Note: You also have to pay a small percentage of your earnings if you use Stripe to accept customer payments.
  • Adalo – Adalo has a free “Explore” plan. You can create an unlimited number of apps, but you have to publish to an Adalo domain, your app will have Adalo branding, and you're limited to 50 rows of data per app.
  • Budibase – The Free version of Budibase allows you 1 app, 5,000 total records, 3 data tables, 3 views, 500 MB of attachment storage, and 100 automation runs per month. “Automation runs” refers to business automation processes (running processes automatically that were previously done manually) and to integrations with third party apps.
  • Quickbase – Quickbase has a 30-day free trial that includes the platform's main features: workflow automations, data and app integration, and the ability to create unlimited mobile-ready applications.
  • Quixy – Quixy's free trial includes all of the platform's core features.
  • Kissflow – No free plan and no free trial.
  • Mendix – The free plan on Mendix allows you to create no-code or low-code apps with 2 environments per app (where an environment is a deployment site).
  • AppSheet – You can use the free version of AppSheet as long as you want in order to develop prototypes. However you can't actually deploy the apps you develop.


How to Select Certain Records from a Set of Data in a Bubble App

 The Problem: Your company makes shoes and boots for men and women. You recently introduced a new all-weather boot called the "Sno-Boot" and you want to list all the customer comments on your website that deal with the Sno-Boot. Here's how to do that in Bubble...

Let's assume you have all your customer comments stored in a dataset on Bubble and that you have an input form where all the existing comments are displayed in a repeating group. To display just the comments concerning Sno-Boots:

  • Add two (or more) search boxes to the form. The reason for adding multiple search boxes is that you need to be able to search for "Sno-Boots" or any terms close to that, such as "snow boots", "Sno Boots", etc.
  • In this example let's say that you defined your customer comments as Data Type "customerComment", containing three fields: "custDate" (the date of the comment), "custProduct" (the shoe or boot that the customer is commenting about), and "custComment (the comment itself).
  • Double click the Repeating Group to display its Properties box and enter "customerComment" in the "Data type" field (since you're displaying records from the customerComment dataset).
  • In the "Data source" field do this:
    • Enter "Search for"
    • Select "customerComments"
    • Add a constraint: "custProduct" "contains" "Search box1's value".
    • Add a second constraint: "custProduct" "contains" "Search box2's value".
    • In the "Data source" field, following "Search for customerComments", add "merged with" "Search for customerComments".
Normally, if you have more than one search term, Bubble will look for records that have all the search terms. For example, if you entered "Sno-boots" in one search box and "snow boots" in the second search box, Bubble would look for records that contain both "Sno-boots" and "snow boots". By using the "merge" command between the two search terms, Bubble will search for records that have one term or the other, which is what you want.