What does Knack do? (and is it any good?)

 
Knack screen shots.

Knack screen shots.

Knack is a database, right?

Knack is a Database management system - and it’s offered as a tool to build data driven web applications quickly and easily.


Databases got a 'bad press' from the start of desktop computing. DBase, FoxPro, Oracle, Q&A1, Filemaker and ESPECIALLY Microsoft Access were/are all hard to use, and harder to share across teams.

In the early days, Data was hard to structure and store. Once you’d built your database - it was hard or at least time consuming to get reports and when it came to sharing access across a small or medium sized team - it got slow and complicated to administer.

some obervers (and users) were a little cynical....

Database: A complex set of inter-relational data structures allowing data to be lost in many convenient sequences while retaining a complete record of the logical relations between the missing items. Stanley Kelly Bootle

Is it any wonder most companies used tactical spreadsheets instead?

I’m Chris Bampton and I've worked as a consultant with desktop computing and databases for over 30 years (I started young!!) - my experience as a database consultant and trainer for over 700 client companies, puts me in an unusual position to comment and observe on Knack.

So seriously - What is a Database?

It's Confusing.

A Database Management System (DBMS) is used to create databases, which in turn hold data that is referred to a database…. !! so a ‘Database’ Can be the software platform for Example Filemaker Pro 17, is a Database Application. With it you can build databases which may or may not contain any data but are files ready to collect data… and then you could enter data to create…. a database of yellow cars…… (Sorry it was the first thing that can to mind) .

Confusing?

Absolutely - it's a mess. A Database can be the software, the files, or the data… the term is used interchangeably (and indiscriminately.)

My terminology….

A database is a set of tables of related data that can be added to, edited, deleted and searched in a structured way - often via a user interface that makes the whole process as easy and intuitive for the users. The distinction between ‘Database’ and ‘Application’ has become a bit blurred with the increasing sophistication of the look and feel, the ‘workflow’ and the integration with the internet and mobile devices.

Historically it was often the case that the designer of the database system was a specialist and traditionally would not be responsible for the content of the system. More recently there has been a trend towards ‘workgroup’ databases - as database management systems have become more accessible, so end users have started to build and maintain systems.

What makes a good database? My Criteria!

In short a good database is one that does what you need it to do! A good database in your context will be a combination of Technical Essentials that are common to every user, and a mixture of 'nice to haves'.

Technical Essentials

  • SECURITY!
    • Secure in Storage Data should be encrypted in storage and the physical location should be within the legislative jurisdiction you work in - for example within the EU.
    • Secure in transit
      Data should only ever be transmitted via HTTPS and all calls to and from the database should be via this protocol.
  • Scalable: The Database can grow (in terms of data stored or numbers of people accessing the data) without slowing down.
  • Fast: The database should deliver search results and other services quickly irrespective of how many people are using it.
  • Hosted on a server: Maning that lots of people can access the information from anywhere and that the tasks of maintenance and backup are carried out centrally.
  • Multi User: The database should understand that different users will have different requirements.
  • Easily embedded on HTML web pages - with tweak able CSS to customise the colours and typography
  • ‘Relational’ meaning that data tables can be linked together to create efficient data storage with minimum duplication. as data storage costs have fallen, There are new techniques for storage that place emphasis on speed rather than compact storage, but for most managers related tables are still the way to go.2
  • Management Tools for collectively removing and updating records
  • Import/Export functions
  • API to interface with other applications and operate as part of an application 'Stack'

This list will evolve over time, but there is an underlying truth in that power is nothing without usability.

Desirable Extra Features

  • Data visualisation: There should be sets of tools to build useful reports/graphs and drill down to underlying data.
  • Easy Management: Key tasks should be easy to understand and perform with automation where possible,
  • Task Management: The Database should have a task manager to perform rule based actions at defined intervals
  • Workflow Manager: The Database should integrate with communication methods and dovetail into company work flows.
  • Provide an API to link to the rest of the Application ‘Bitosphere’
  • Integrate with Zapier!
  • NOT priced per user for front end publishing (Makes the application impossible to use on a publicly accessible website)
  • Affordability: It’s all relative when it comes to business critical systems and the size of your business, so affordability is not only relative to your business, but will also change over time.

Lack of any one of the list above would not be the end of the world, nor would it be at all unexpected. I’ve created a ‘wish list’ that until now has been almost impossible to satisfy…. so the question is: Does Knack deliver and how does it compare to the rest of the market?

This is the set of criteria that I have established before I go and evaluate the current crop of online and offline database options.

The Database Market as it stands includes offerings from the the following:

  • Knack
  • Amazon DynamoDB
  • Caspio
  • Microsoft Access
  • Filemaker Pro
  • VisionFlow
  • Ragic
  • Quick-base (UPM)
  • BettyBlocks
  • Firebase
  • AwareIM
  • VisionX
  • KiSSFLOW
  • Bubble
  • RestDB
  • Airtable
  • Clappia (UPM)
  • Scoro (UPM)
  • Odoo

Clappia (UPM) Scoro (UPM)

Odoo

Form Tools

  • Fastfield
  • Formstack
  • Typeform
  • ZoHo
  • TheFormTool
  • WuFoo
  • Cognitoforms
  • JotForm
  • 123formbuilder

Initial conclusion

We have used all of these products and continue to evaluate all of them as they develop.

Currently we use Knack because it most closely fulfils my criteria and we find it is the most appropriate solution for our clients. Depending on where you place your emphasis and what’s most important to you, you might decide on something different: There is no absolute right or wrong - and it’s a great time to be choosing Databases - it’s never been easier to work with great tools to get the job done.


  1. Q&A from Symantec was easy to use and powerful database that was hobbled by file size limits and the early equipment it ran on, but was an outstanding example of a powerful database management system - it's only in the last couple of years that much of it's functionality has been overtaken in terms of usability ↩︎

  2. More modern alternatives to relational data structures that are less efficient in terms of size, but can be more powerful for example XML databases ↩︎