Friday, June 25, 2021

Bubble: Using Containers to Make Style Changes Easier

 A quick tip when building an app using Bubble. Place a container (Group element) on each page in the app and put all the other elements for the page inside that container. That way any style changes you make on the page will automatically apply to all elements on the page.

Tuesday, June 22, 2021

A Quick Tip on Using Bubble (Highlighting)

Imagine you have a repeating group filled with "to-do" records that include a due date along with a "Finished" field and you want to highlight those records that are still incomplete and past their due date. Here's how to do that:

  • To change the font color of the due date field in the list of to-dos, double-click the “Due date” element in the first row of the to-do list repeating group to display the element's property editor.
  • Click on the “Conditional” tab in the properties box, go to the "When" field  and build the expression “Current cell's Todo's Due Date < Current date/time and Current cell's Todo's Finished is 'no'”.
  • In the “Select a property to change when true” dropdown, pick “Font color”. Then select to change the font color of the due date to red when the condition is true.



An Interesting Bubble Article on Medium.com

I just came across a really detailed article on medium.com about one person's experience deciding whether or not Bubble could build his business startup application (Could I Build My Product on Bubble.io?, Will Ericksson, Dec. 2020). It's strictly Will Ericksson's opinion, but the article covers a lot of questions in depth about what you can or can't do with Bubble.

While the author ended up building his application with Bubble (and now teaches a course on Bubble), he does try to provide a balanced discussion of the pros and cons of using Bubble for a relatively complex software project. The topics he covers include scalability, integrations, security, and flexibility. You can find the full article at: https://medium.com/swlh/could-i-build-my-product-on-bubble-io-75923a41b9b6 



Friday, June 18, 2021

UK Providing Free No-Code Training with Bubble

In case you missed it, Bubble's posted an article by Vivienne Chen back in March, discussing how the UK is funding no-code learning. Here's an excerpt from the article (https://bubble.io/blog/uk-no-code-bubble/):

"Many local and national governments invest in funding to help people develop professional skills that can grow local business and improve their residents' lives. But the West Midlands region of the United Kingdom has become the first region in the world to turn to no-code technology like Bubble as an affordable, scalable solution to drive economic growth and innovation.

This year, a cross-sector partnership called Supertech, funded by the Greater Birmingham and Solihull Local Enterprise Partnership (GBSLEP) launched a free program teaching business professionals how to build web apps without code, using Bubble's no-code web app builder. What started out as a pilot program of 30 people is now expanding to a hundred more opportunities, including a potential university student cohort from the area."

I thought this was an interesting example of how much importance is being attached to the future of no-code programming, not just by private companies but by governmental organizations.

Tuesday, June 15, 2021

Can Plugins Affect Your App's Performance?


Can plugins affect your no-code app's performance? The short answer is yes, they can. Plugins are a great asset to have available to implement features that your app platform doesn't include, but too many plugins can definitely affect load times and general performance. Every plugin you use adds more code to your app, so as you make changes to your application, keep an eye on which plugins you really need.

There's a huge "need for speed" in today's apps and better performance can mean better sales. Many years ago the company I worked for sold a computer system to the manager of the local Coca-Cola bottling plant because we could sort 2500 items in less than 2 hours. Things have changed dramatically since then, but the point is still valid. If your app is faster than your competitors (or at least on the same level), that's important.

Plugins can be great - but you can have too much of a good thing.

Wednesday, June 9, 2021

Make Your No-Code Mobile App Stand Out

Want your mobile app to stand out from the crowd? One way to do it is to make your app capable of being used offline. It's really frustrating when your friendly ISP has a problem and you lose your Internet connection just when you're in the middle of working on something. That's when you really appreciate an app that lets you continue to work even when you're offline.

So how do you build no-code mobile apps that can function offline? Choosing the right development platform is the key. Not all platforms offer offline capability, but there are a few, including the ones listed here:

  • Zoho Creator - According to Zoho: "The Zoho Creator mobile app can cache recently accessed Forms, so they're available when a user's device is offline or unable to connect to Zoho Creator. Apart from automatic caching of Forms, the mobile app supports saving of Reports, so that they can be accessed offline. Records submitted during offline state are synced automatically when your device is online.
For iOS devices, the Zoho Creator app must be active, to enable automatic synching of records. For Android devices, automatic synching of records take place when the device comes online, irrespective of the app state. The cached data is refreshed when a user accesses Zoho Creator. All cached data, failed entries, and saved reports will be deleted on logout."

Note: Offline access won't work for any form that contains an integration field, a formula field that includes other fields, or a workflow that triggers actions prior to the form being submitted. If some forms do fail once the user gets back online, the user will be able to see why and make corrections or deletions. Also, remember that reports won't include any entries made after the report was last saved while the user was online.

  • AppSheet -  According to AppSheet: "AppSheet apps can be used on a mobile device even when that device is offline and disconnected from the network. This is possible because the information needed to run the app (the app definition, the data, and optionally images and documents) is stored locally on the mobile device."  Note: The app must initially have been launched when the user was online for offline access to work. Also, if the user is running the app in a web browser offline image and document caching won't work. In addition, audio and video files aren't stored locally on the user's device so they won't be available in offline mode.
  • Appy Pie - According to Appy Pie: "Appy Pie apps are light, fast and deliver a native app’s user experience. What’s more interesting about them is that they have the capability to provide content to the users in offline mode also."  Since data and content are stored in the user's device the app can allow them to continue working if the network connection fails or has intermittent outages - once a connection is re-established syncing will take place automatically to download any changes in the app.
  • TrackVia - Offline capability is available in all apps if you're using one of TrackVia's "Enterprise +" plans.
  • DronaHQ -  DronaHQ is a fairly expensive platform to use (currently $100 per month, paid annually, for their basic plan), but they have offered offline access in all mobile apps built on their platform since 2017.


Monday, June 7, 2021

Sometimes it's the Small Things

Many years ago (many, many years ago) when I went to work for Litton ABS and first got involved in computer programming, my manager and I went to try to sell a new up-do-date computer to an existing client. The client's old system was actually built around a modified teletype machine. Like the 30-year old car currently sitting in my driveway, the antique computer still managed to do what they needed (albeit slowly and with the help of a lot of manual input), but the client had become attached to it and kept resisting the temptation to change.

Our new system was a huge improvement in every way (or almost every way as it turned out). It included a high-speed printer, much greater storage capacity, and a brand new bright and shiny software package. There was no way the client could resist all the features packed into the software and the great job we did of presenting it, including sample print-outs and a full-color brochure. And yet - after all that, the customer turned us down.

Why did we lose the sale? What shortcoming in the software or our presentation doomed us? Well, as it turned out it was the one thing we couldn't do for the client. The owner believed in keeping all his employees out on jobs, which left his wife to handle the computer and work the front counter in their store. Periodically, when the computer finished a stage in the job costing program it was running she had to go into the back room, check on some interim figures, and decide what to do next. Then she had to hurry back out front and be ready to serve any in-store customers.

So how did the owner's wife know when the computer had finished a stage in the job costing process? The old system, built on the skeleton of a teletype machine, rang a bell (left over from its teletype days) whenever a particular section of the program ended. With all the huge improvements incorporated in our new software package, the program couldn't perform one critical function - it couldn't ring a bell. In spite of all the work we put into developing a crackerjack job costing program and all the effort we put into presenting all its virtues, we forgot to listen closely enough to what the customer needed.

Given time we could have found a way around "ringing the bell" but we got too focused on everything we packed into our program and not what was missing. It's many years later now but the point is still valid - let as many people as possible look at your app now, while you're building it, to make sure you're not overlooking something important that could cost you sales.

Saturday, June 5, 2021

A No-Code Challenge from Microsoft - Response #2


In a post the other day, I mentioned that I came across a statement in an article about Microsoft's Power Fx language that read:

"The truth is, point-and-click tools are great for quickly assembling experiences and workflows, but many real-world solutions need a layer of logic that goes beyond what is practical to drag and drop, for example:

Show a list of customers who signed up in the last 7 days within 15 miles of this location.

Highlight the newest entries in green.

When a user clicks for more details, if the record has outstanding action items associated with it, pop those to the top of the screen."

I wanted to find out how true that statement is, so I decided to try building an app on no-code platforms that met those criteria. Below is my second attempt, which I created on Caspio. 

================================================

I used the same database as before (customer Id, customer name, address, distance from us in miles, sign-up date, action items) and imported it from Google Sheets. Once the data had been imported I selected the "Data Pages" tab and created a tabular report to display the customer records:


Next, I made a copy of the report, opened it and selected to filter the report with pre-defined criteria:


Once I picked the "distance" and "sign-up date" as the fields I wanted to use in my filter, I set the first criteria as "distance" less than or equal to "15":


And I set the sign-up date to "within the previous 7 days":


Once I made those changes, I previewed the report again and this time the only record displayed was the one record that met the two criteria:


Note: You can also set a different colored background for certain records with Caspio but it requires using some JavaScript statements. The exact steps you need to use (including the JavaScript) are laid out in detail at:

https://howto.caspio.com/tech-tips-and-articles/advanced-customizations/how-to-dynamically-change-the-background-of-a-results-page/ 

However, since this is supposed to be a "no-code" project I decided to leave this example as is and not bother trying to include the record coloring feature.

Friday, June 4, 2021

No-Code Communities

Audio Link: Communities 


Looking for other no-code fans? Want some help learning how to use no-code? Just want to have somebody else to run a few ideas past? In case you're not already aware of them, there are a number of no-code communities for those of us who are working on a no-code app (or thinking about working on one) and could use some support:

  • No Code Founders - With over 5,000 members, I believe this is the largest group of its kind. NCF members can:
    • Complete certification courses.
    • Get discounts from various no-code providers.
    • Ask for help from the community for any problem you're having with a no-code app project.
    • Take part in monthly meetings where you get the opportunity to meet to staff members from no-code platforms like Airtable and Bubble.
    • Talk with other no-coders about the apps they've built and how they did it.
    • Check on job openings at no-code companies.
  • 100 Days of No-Code - In March of 2020 Max Haining challenged himself to spend at least 30 minutes a day for 100 days learning to use no-code. Now his project has spawned an entire community, with the only requirement is to make the same commitment Max did. Members can:
    • Find useful learning resources.
    • Share daily progress reports on their projects with the community.
    • Take part in weekly sessions where they can get feedback and advice about their no-code project.
    • Get personalized support including 1-on-1 sessions with a mentor.
    • Read about upcoming events and other no-code news in the weekly newsletter. 
  • Launch MBA - If you're looking for help in figuring out how to monetize your no-code app projects, take a look at this website. Launch MBA's goal is to help you create multiple no-code businesses. To accomplish that members are given a multi-step plan:
    • Over a 12 month period you'll launch 12 online products that slowly increase in size and complexity and have the potential to become paying businesses. You will be given a calendar with proposed launch dates and suggestions as to the type of product to create.
    • You'll build up to a full software-as-a-service (SAAS) product, social network, or marketplace app, which can be either a web-based or a native mobile app.
    • The community will provide continuous advice, feedback and encouragement over the 12 months.
    • The plan also includes biweekly AMA (Ask Me Anything) sessions with successful app makers. 
Note: Launch MBA is an "invite-only" site and membership costs $33 per month monthly, payable quarterly.

  •  No Code Devs - With members in over 50 countries NCD provides a global perspective to no-code development. Members get:
    • Personalized feedback on their no-code projects.
    • Exposure to key skills for building no-code projects.
    • Access to job opportunities.

Wednesday, June 2, 2021

A No-Code Challenge From Microsoft - Response #1


In a post the other day, I mentioned that I came across a statement in an article about Microsoft's Power Fx language that read:

"The truth is, point-and-click tools are great for quickly assembling experiences and workflows, but many real-world solutions need a layer of logic that goes beyond what is practical to drag and drop, for example:

Show a list of customers who signed up in the last 7 days within 15 miles of this location.

Highlight the newest entries in green.

When a user clicks for more details, if the record has outstanding action items associated with it, pop those to the top of the screen."

I wanted to find out how true that statement is, so I decided to try building an app on no-code platforms that met those criteria. Below is my first attempt, which I created on Airtable. 

================================================

Before I even started I decided to include the customer information and the "action items" together, in a single data base table. If I were doing this for real I would have set up a separate "base" for the action items and linked them to customers in the customer base, but for this experiment I took the easy way out and just set up a "long text" field for the action items. The other fields in my customer base are customer id, customer name, address, distance (in miles) from a central address, and signup date (when the customer signed up with us). 

I set up a field for distance from "our location" because I assumed that we're talking about a business that serves multiple customers from some central address. Since that's the case, it would make sense to simply take a minute or so when the customer record is being created and use Google Maps to enter the distance to the customer's address.

After I entered a few customer records (including multiple action items) my base looked like this:


At this point I had to make another decision. The Microsoft article said to select customers who had signed up within the last 7 days and lived within 15 miles of our location and then added a requirement to highlight the newest records in green. I'm assuming that meant to highlight the customers who had signed up in the last 7 days, but in any case to do something like that on Airtable requires a paid "Pro" subscription and I didn't feel like buying a subscription just to do this example. Besides, I've always felt that if you want to look at a subset of your data, you should show only that data. So instead of doing any record highlighting I decided to just filter for the records I wanted and show only those records.

To set up the two filters, I clicked on "Filter" (the funnel icon) and clicked "+ Add filter". Then I selected the available options to create a filter that read "Where Distance less than or equal to 15". Next, I clicked "Add filter" and built a second filter reading "SignUp_Date is within the past number of days: 7":


Applying those two filters left me with this (the only record that matched both criteria):


To look at all the action items for this record I clicked on the "Actions" field, then hit the Shift and Space keys:


Once I pressed the Shift and Space keys, the 3 actions items for this customer displayed. 

That was the final result for my attempt to meet Microsoft's example of something that's very difficult to do with a no-code app. It may have been a little different from how you would do it on Power Fx, but personally, I felt like this version on Airtable met the challenge.

A Partnership Between Traditional Programming & No-Code


When I first started in the software business, a "systems analyst" would gather specifications for a new programming job from the potential users, give the specifications to the programmers, and the programmers would build, test and deliver the software. Unfortunately, it wasn't until the job was done that the eventual users discovered that there were things that were overlooked or misunderstood when the specifications were put together. As a result, software development gradually changed to include more participation from the users as the programs were being written.

Now, with the growth of no-code platforms, the users are capable of doing some of the software building themselves. It's a great chance to carry the relationship between the software professionals and "citizen developers" one step further. Instead of just consulting with the users during development, let the professionals create the overall plan and allow the users to "assemble" the different pieces of the software on no-code platforms. That frees up the professional developers, giving them more time to focus on how best to integrate the business's different software systems.

Tuesday, June 1, 2021

A No-Code Challenge from Microsoft

I was reading an article** about Microsoft's "Power Fx" programming language when I came across this statement:

"The truth is, point-and-click tools are great for quickly assembling experiences and workflows, but many real-world solutions need a layer of logic that goes beyond what is practical to drag and drop, for example:

  • Show a list of customers who signed up in the last 7 days within 15 miles of this location.
  • Highlight the newest entries in green.
  • When a user clicks for more details, if the record has outstanding action items associated with it, pop those to the top of the screen."
This example plays to the strength of Power Fx since it's built on the framework of Microsoft Excel, but the point is well taken. There are situations that strain the boundaries of what no-code platforms can do - but I'm not convinced that this is a fair test of no-code app platforms. I've decided to try creating the above example on different platforms to see if Microsoft is right.

I'll be publishing the results from time to time (with the label "Microsoft Challenge"...


** "Introducing Microsoft Power Fx: the low-code programming language for everyone", Ryan Cunningham, Director PM, Power Apps, March 2, 2021