Updates

In these unprecedented times, work continues here at agileBase (from our homes). 

Whilst it’s not on the top of most people’s agenda, we do have a new release going out so I thought we should let you know the details so they aren’t a surprise. In brief…

Emailing documents

There’s a new feature to allow easy emailing of documents uploaded to agileBase to co-workers or outside people (e.g. customers) who don’t have a login.

Next to a document, click the email button. You can then click ‘add recipient’ to choose a recipient, or manually enter an address. The system will let you choose from contacts it finds in your database.

Logging changes to locked fields 

When unlocking a field to change the value, the system prompts you to enter a comment. It now automatically pre-populates the prompt with the value you’re changing from, to make it easier to see what the change was. You can add your own comment too.

Intelligent colours for charts

Do you notice anything strange about this graph? Experience any cognitive dissonance?

From now on, agileBase will colour breakdown charts based on the categories. Words like red/amber/green, hot/cold, done/in progress/overdue will be coloured appropriately. Other words will continue to be assigned random colours. If you have any words that you’d like special colours for, please let us know.

Bugfixes

We’ve tweaked lots of other things too small to notice every day but which should make the system run more smoothly.

That’s all for now. We wish all the best to all our customers, stay safe.

Covid-19 and agileBase

A quick post to outline some actions we’ve taken so far and answer some questions.

Free additional users to enable home working

Where you can work remotely, we want to help.

That’s why for as long as the UK schools remain closed, agileBase will give you additional licenses at no extra cost. Helping your team stay safe, and your business stay productive.
For example, senior management may like to have logins in order to be able to step in to help other staff.

We are waiving any fees for additional users for as long as the schools stay shut, for a reasonable number of users at our discretion.

We’ll notify you when things change and give the option of retaining these licences at the prevailing rate or cancelling without cost.

Your system administrator can add users. Automated price increase notifications may still be sent out but we will follow up to cancel them.

We are also delaying any upcoming price review changes – all customers please see the email to your accounts dept.

Our cloud software keeps everything secure, even from home

Two Factor Authentication (2FA) helps to keep your company’s data more secure, to stop outsiders stealing it, editing or even deleting it.

When someone logs in from a new device or location, our Two Factor Authentication (2FA) system prompts them for a code sent to or generated by their phone, to prove their identity.

Also our Content Security Policy (CSP) is a security mechanism that, when someone’s logged in, prevents unwanted code from running.

Only specific places, like our own server and a couple of whitelisted services we use, like Google to display maps, can serve code to the browser.

Vital peace of mind when people are working remotely.

Concerned about agileBase’s business continuity? Don’t worry, we’re good

We’re experts in remote working, having always split our time between our Bristol office and our desks at home. So, we’re taking easily to the current change in circumstances, and this won’t impact our ability to support you.

What’s more we’re a multi-disciplinary team. If Coronavirus means any of us is temporarily out of action, the team will fill in and the show will go on.

We need you to tell us how we can help

Like most people right now, we find ourselves looking around and asking who and how we can help.

We can only begin to understand the challenges many of you are facing. That means we need you to tell us if this crisis shows you things which you feel we should be addressing.

For example, if anyone feels the need, we will be happy to run you through our own home-working processes, tools and systems to see if any are relevant.

Finally, we just want to say thank you.

We know you’ll be as worried as we are about the health of our loved ones, and the livelihoods of all around us. And yet many of you are working round the clock to help others, like those in the public sector and food manufacturing. For that we are all thankful.

If there is anything we can do to help, just ask.

Data security – requiring 2FA for exporting

As well as the headline feature, one other notable feature has made the cut for today’s release.

In line with our continuing rollout and promotion of two factor authentication, it’s now required for all users who want to export any data to spreadsheet. As a sensitive feature in terms of data security and privacy, exporting to spreadsheet fits well with the requirement for the logged in user to have two factor authentication enabled.

Remember, setting up 2FA is a simple process.

We welcome all feedback and ideas for this release – please let us know your thoughts!

First major feature of 2020

We know that many customers are looking forward to the contents of this update. We’re now starting to make good on the promises of the 2020 roadmap and can release one of the headline features – inline editing.

As this is a major feature, it’ll be introduced with a ‘beta’ label for keen early adopters to test and provide feedback on. By default it will be turned off, but can be enabled by an administrator on a view by view basis.

Inline editing

The goal of this feature is to allow rapid and efficient editing of data when in the list view so there’s no need to drill down into a record to edit and back to the list again after each.

Some examples of where this might be useful would be when working through a list of milestones to update statuses, or when in a list of stock items to update quantities.

How does this work: In a list view, the rows can be made editable by your system administrator. (If you do want to drill down into a particular record, that’s still possible).

In inline editing mode, the list view changes from something like this:

into this editable version:

Within a view, certain fields will be editable, but others will be read-only. Fields that can be editable are all those which are from the view’s parent table, except for

  • Large text fields – we want the UI to remain compact and it’s not usually required to edit large amounts of text in inline editing scenarios
  • Tags fields – at least not in this first beta version – this may come in a future release

Of course, calculations aren’t editable either.

To edit a field click in an editable (white) field to edit the data.
Navigate to other rows with the up or down arrow keys, and across to other fields in a row with the tab key.

Clicking a non-editable field will take you to the full editing form for a record. (Alternatively, just click at the space at the beginning or end of a row).

Hovering over a text field will display the full contents. In the more condensed inline editing mode, only the start of longer content may be initially visible.

Enabling inline editing

In order to retain control, an administrator must set a view to be inline editable. There are three settings you can select

  • Disallow: the view can’t be inline edited
  • Allow but turn off by default
  • On by default

As an admin, go to the manage tab for a view and under ‘advanced options’, select one of the above.

When inline editing is allowed (either off or on by default), a switch appears at the bottom of the view with which the user can change modes.

We hope you enjoy this feature and find it useful. As a beta release, feedback is especially welcome.

Integrating with third party software using Zapier

agileBase’s API is a very powerful yet easy to use feature. Each view gets an automatically generated API, with a URL that third parties can use as a data source. Our documentation covers generic use, however one of the most common methods of pulling data into other systems is to use Zapier, which is a ‘drag and drop’ integration tool that requires no programming (just like agileBase itself). As they put it “Easy automation for busy people. Zapier moves info between your web apps automatically, so you can focus on your most important work.”

Until now there has been no specific help documentation on using Zapier with agileBase – today’s the day to remedy that!

We will use a worked example: building a system to send a ‘hello’ SMS message whenever a new contact is added to our database. In real life, you may send appointment reminders or other notifications by text. Of course Zapier isn’t limited to sending text messages, there are tons of third party systems you can use, under many different categories, but text messages are a nice simple example for example purposes.

For this example we’ll use

  • agileBase as a source of data
  • Zapier to collect the data and send it to…
  • Twilio to send the text messages

Let’s jump right in!

agileBase setup

First, some preparatory work in agileBase. Assuming we already have a contacts database, each person with a name and mobile phone number, there’s just one extra thing we need to do.

The system will need to know when a contact has been sent a text, so it can filter them out and prevent them being repeatedly texted. To allow this, we need to add a field, call it ‘intro text sent’. Make it a date and time field, accurate to the second.

We can set it to ‘show never’, as this information’s unlikely to be useful to the average user.

Next, we create a view to provide the data to send to the text messaging service. Here’s such a view. It’s very simple, containing just the info necessary, i.e. a message calculation and the mobile phone number to send it to. We’ve put it in a tile called ‘System – Integration’. It’s a good idea to put views used for system purposes somewhere like this so they’ll be hidden from everyday users, but administrators can still easily find them.

We’ve added a couple of filters, firstly to make sure we only pick up people who have a phone number entered and secondly to filter out any who’ve already been sent the message (using the Intro Text Sent field we created above). You’ll notice for initial testing only, I’ve added a third filter here so only one contact is listed – myself. When we’ve confirmed the system works as expected, this filter can be removed.

One small note to do with this specific example only – Twilio likes to receive phone numbers in international format but without the leading +, i.e. rather than “07891 123456”, use “447891123456”. In real life we’d probably create a calculation field to format them this way, for now we’ll just make sure to enter test numbers like that.

Zapier Setup – receiving data from agileBase

That’s the agileBase side of things prepared, now to Zapier.

Log into your Zapier account and press the Make a Zap! button.

Under ‘choose app’, select ‘Webhooks by Zapier’. Webhooks are the way to communicate with agileBase. At the time of writing you’ll need a paid Zapier account to use them.

Under ‘choose trigger event’ two options will be shown – Retrieve Poll and Catch Hook. In brief, if you select Retrieve Poll, Zapier will regularly poll agileBase (say every 5 minutes) to check if there’s any new data to retrieve. If you select Catch Hook, communication will instead be started by agileBase, which will ‘push’ data to Zapier only when there is something new to send.

Here, we’ll use Catch Hook, which is generally recommended. It’s more efficient and a bit easier to set up, as agileBase will automatically record the time each record is sent to Zapier. Otherwise, you’ll have to set up additional steps in Zapier to send this information back.

When you press Continue, Zapier will provide you with a custom URL and some additional options which can be left unchanged. Copy this URL and record it in agileBase: go to the view’s manage tab, press the Send button and select ‘send data to a third party system using the API’. Paste the Zapier URL into the space provided:

Secondly, select the date & time field ‘Intro Text Sent’ (created above) in the dropdown. That means whenever a record is sent to Zapier, the timestamp will be recorded in that field. All other settings can be left on their defaults.

Finally, press the Run Workflow Now button to send a test record to Zapier.

Back in Zapier, just press Test and Continue.

Finishing Zapier setup

Zapier now has our data, at least a test record. The next step is to set up actually sending the text message.

There are dozens of Zapier-compatible services that can send text messages. We use Twilio but the process is similar whatever you choose. In fact the process is similar whatever you’re doing with the data, be that sending a text, sending the data to a Google Spreadsheet or Mailchimp, to name just three examples.

When you press Continue, you’ll be asked to sign into Twilio (in this example). Do that as prompted, then you’ll be able to set the options below. The important ones are

  • From Number: just select, this will automatically show any phone numbers you’ve set up in Twilio
  • To Number: here, click the selector on the right and select the phone number field from agileBase. By this stage, Zapier, knows which fields are in agileBase
  • Message: similarly, click the selctor and choose the message field from agileBase

Press Test and Continue. If all goes well, a text message will be sent and you’ll get the option to turn the integration on permanently!

Then, you can remove the test filters from the view in agileBase and everything will be live.

Although today we used the example of sending a text message, the process is very similar whichever service you decide to connect to with Zapier – you should be able to follow along the example replacing the SMS-specific steps with your own.

Good luck and please let us know what cool things you do with your data. Also if anything can be improved in this documentation, we’d be very keen to hear about that too.

agileBase Platform vision 2020 – from startup to scale-up without screwing up*

Our ambition is to create a Low Code / No Code platform that can support truly ambitious organisations to build their back office across the three phases of their development; startup, scaleup and growth.

Since agileBase’s inception we’ve had the good fortune of working with a wide range of successful customers.

Some have have been driven by dedicated individuals that have grown their companies organically, from small local businesses, through SME territory to become enterprise with hundreds of millions of pounds turnover and growing.

A fair proportion are VC-backed, started by individuals with experience in an industry, who had an idea, convinced funders of its (and their) worth and put in a lot of hard work to make the vision a reality.

Still more are long-standing family firms, where each generation brought something new to the business.

Others have grown rapidly by acquisition.

Most are increasing revenues, customer and employee numbers as they grow their businesses to cover new industries and geographies.

In fact, every story is different, though luckily success is a common factor.

What does this mean for agileBase?

We have built a platform to enable business agility through technology. Specifically, the agile development of back office systems – those that can easily grow and adapt as a company finds new challenges, or pivots to a new area, as sometimes happens.

…and where do we go from here?

When we started, we were the only platform with the technical capabilities to create advanced systems. Indeed, the reason for creating agileBase was because all the other systems we tried to use for customers had a technical ceiling of some sort that meant they had to be abandoned after a certain point in time – they couldn’t create multi-level relationships for example, or couldn’t bring data from different sources into one screen.

What now sets us apart from others who’ve entered the low-code/no-code field is the ability to scale through the entire journey of a business, whatever size they reach and however fast they move.

This is important for companies because it means that they don’t need to experience the upheaval of swapping out core systems at the very point at which they need to be focusing on their own business concerns.

Switching from one major software system to another is resource-sapping at the best of times, as anyone who’s been through the experience will testify. You don’t want to be doing that when orders, working hours and stress levels are going through the roof!

We aim to capitalise on that ability and build further on it – to prove we’re the best option for companies who think for the long term.

Where are we starting from?

We have always focussed on three things; being fast, friendly and flexible.

  • Fast to build new systems
  • Flexible enough to allow you to re-build and adapt to new circumstances just as quickly 
  • Friendly enough to be easily adopted and enjoyed by all users

We have also been very lucky in that, from the very start, we have used a rock-solid database engine that’s inherently scalable and proven at massive data volumes. That’s not something we claim to have built ourselves, but rather comes from our choice to use PostgreSQL: the world’s most advanced open source relational database.

That was an early decision that’s paid dividends ever since.

Where can we improve?

For larger, sustainable companies, additional concerns become important, such as

  • Ecosystem integration
  • Control
  • Efficiency
  • Reliability
  • Data privacy and security

What do these mean and how are we taking them into account?

Well, here is our…

Roadmap

~ Ecosystem integration ~

Over the past year, agileBase’s API has become one of the core aspects of the platform, this ‘interface to the outside world’ is as important as the user interface itself. Customers have been using it to transfer GB of data in and out of the system per month. agileBase is in effect their ‘data engine’ powering other parts of the business, from reporting systems to public websites.

Whilst it would be nice to be able to say that we foresaw all trends, truthfully some things have surprised us and the rapid increase in API use has been one. We’ve responded by putting a lot of work in to making the API interface highly scalable and performant.

In the longer term, we will be working on not just the API itself but other enterprise integration features such as single sign-on, implemented in standards compliant ways like OAuth.

~ Control ~

In the build phase, agileBase is all about agility (duh!). In large companies, we need a way to retain the holy grail of being adaptable, whilst ensuring that developed systems retain stable and trustworthy. How do we square this circle?

We’ve thought about this for a long time and have a really exciting, even revolutionary solution.

The aim is to democratise the ability to develop apps in agileBase even further.

The first thing we’re going to do is add the ability for people to modify views directly in the tiles interface, taking advantage of modern UX practices and of our recent usability learning. That will make it even simpler and quicker for non-technical users to build systems without having to flip back between an administration interface and a separate user interface. The effect will be that changes can be seen in real time as they happen.

This allows control of departmental apps to be pushed down to the departments themselves. If someone in purchasing want to tweak the PO system to update processes and create new reports, leveraging existing databases of suppliers and contacts for example, they can do, without having to go back to central IT.

However, and this is the key point, we by default hide those changes from anyone else in the system. New views that a user creates will only be visible to them. If an administrator decides they’re really useful, they can then flip a switch and make them available to everyone (with the correct permissions). So admins can mandate a core set of views that are globally available, but then let others go for it to make the most they can of their data.

~ Efficiency ~

As you know, agileBase allows applications to be built quickly, but once those applications are in use, particularly in larger organisations, they want to be scaled up so lots of users can process lots and lots of records rapidly – efficiency becomes really important.

We have one other really revolutionary change in the offing that will affect all users’ experience of agileBase. We are going to introduce a new ‘spreadsheet’ or inline editing mode so data can be edited rapidly, in bulk, without navigating back and forth from lists of data to individual records. Of course, various protections will be built in to avoid accidentally doing damage and overwriting data by mistake.

Together with the existing workflow automation features, this and other updates in the pipeline will drastically reduce the number of person-hours specific tasks take.

~ Reliability, Privacy and Security ~

It goes without saying that these are key concerns of ours, our customers and our future customers. Our GDPR policies, procedures and security features we’ve consistently built up over a long period form a bedrock upon which the exciting capabilities above can be assembled.

We will continue to follow emerging trends and implement new data security & privacy best practices.

Summary

Our core mission of ‘business agility through technology’ remains, along with our three characteristics – to be fast, friendly and flexible. They’re part of our DNA and we will always champion them. Many of the features here will be developed in the light of those.

agileBase is now being put to work in ways we didn’t originally envisage, working as the engine for scaled up business enterprises as well as startups. There are some big and exciting changes coming, do get in touch and join us for the journey.

* with apologies to Jurgen Appelo

Burndown 2019

As 2020 draws near, we’re excitedly preparing a roadmap of all of the sci-fi style features that are planned to become part of the agileBase platform.

That will be released soon. While it’s in progress, here’s a quick rundown on some interesting stats and features from the year to date. Actually, to start with, we have a long term overview. This is a chart showing the growth of the agileBase codebase over the past 10 years.

This is what’s called a ‘burndown’ chart. Each colour band represents the amount of code added in one year. The thicker the band, the more code added. After each year, the bands get thinner towards the right because the original code is modified or removed, so there’s less of it left. New code gets added ‘on top’, a bit like layers of sediment being laid down.

You may notice a large jump half-way through 2019 at the right. That corresponds with a major change to our development and release methodology. Partly, a lot of ‘testing’ code was added to allow us to run automated tests whenever a change is introduced. Also, some infrastructure was changed to let us utilise modern tools such as Gradle and CircleCI.

The outcome of those changes is that customers can better trust the reliability of the agileBase platform for running 24×7 mission critical services, even as major new features are introduced.

2019

Here are some outline stats of the other work completed since January.

For a rundown of the main changes, take a look through recent posts on https://blog.agilebase.co.uk/. Here are some of the main themes

In 2020, having laid the groundwork by making the process changes described at the top of this post, we’ll be able to make some more radical feature improvements around ensuring agileBase is the best platform for high growth businesses at allstages of their life.