Getting Started with NExS

NExS is a platform which makes it easy to create simple web applications ("apps") using a spreadsheet editor such as Excel or Google Sheets. Basically, you design your app, both the front end "look and feel" and the back end functionality in a spreadsheet and upload it to NEXs where it is automatically converted into a web app that can be used stand-alone or embedded in an existing website.

Why use NExS to build a web app?

Traditional tools for building web apps have a steep learning curve and require a deep understanding of software architecture and programming. With the advent of personal computers in the 1980's, spreadsheets became immensely popular as a tool for doing powerful computations without having to learn how to write, compile and deploy software programs. Microsoft estimates that 25 times as many people are able to "program" with Excel as compared to traditional programming languages.

Source: Simon Peyton Jones, Margaret Burnett, Alan Blackwell. Proc International Conference on Functional Programming Uppsala, Sept 2003

Source: Simon Peyton Jones, Margaret Burnett, Alan Blackwell. Proc International Conference on Functional Programming Uppsala, Sept 2003

The bottom line: Building a software application (or “app”) in a spreadsheet is much easier than with traditional programming. If you know how to create spreadsheet formulas, you don’t need to hire a software developer (or become one) to create a useful web app.

Anatomy of a Web App

An app is simply a piece of software that runs in a particular environment, such Windows, MacOS, Android, or iOS. A web app runs in the environment of a web browser, which is nice because web browsers are mostly uniform across PCs, Macs, tablets and phones. By properly designing an app to run responsively in a browser, it works well on most any platform.

Web apps have two core components, generally called the frontend and the backend. The frontend is what you see and interact with in the browser. It may have buttons, menus, forms to fill in, etc. The front end also displays whatever results are computed by the back end when you fill in forms and click things. For example, on Google you fill in a form with what you want to search for, click a button, and the backend searches a massive database for web pages that hopefully match what you're looking for. (Sidebar: Pretty amazing that such a simple idea spawned one of the most successful software companies in history!)

The backend is usually the more complicated part. It is code that runs on a server in the cloud and responds to messages sent from your browser. It is where the data and logic that drive your app are stored. Both the frontend and the backend share responsibility for making your app secure so that confidential information is protected, but most of the work falls on the backend. Frontend and backend programming require different sets of knowledge and skills. Software developers who are skilled with both are known as full stack developers.

NExS App Architecture

NExS takes care of building both the frontend and backend of a web app from the spreadsheet itself without the need for understanding the technologies and programming languages for either. The frontend is based on the "look and feel" that you've designed into the spreadsheet, while the backend is generated from the formulas and data stored in the spreadsheet.

The best way to illustrate this is to use a simple example. We'll use the Body Mass Index (BMI) calculator for adults from the CDC. The CDC defines BMI as weight in pounds divided by the square of height in inches times 703 for adults greater than 29 years of age:

BMI = weight (lb) / [height (in)] 2 x 703

Further, they define a BMI of less than 18.5 as underweight, between 18.5 and 25 as normal, between 25 and 30 as overweight, and greater than 30 as obese.

We can easily take these definitions from the CDC and build a spreadsheet that implements a BMI calculator, as we’ve done here. The diagram below shows how the NExS platform translates our spreadsheet into a complete web app, both frontend and backend.

Once your BMI spreadsheet is designed, simply upload it to NExS. The NExS platform will analyze your spreadsheet and generate the web app automatically. You'll have to specify just a bit of information; specifically, which spreadsheet cells you want visible on the frontend (the view), and which cells within the view are inputs to your app. Once that information is entered, the platform will generate a live preview that allows you to see what the app will look like in the browser and test its functionality. When you're satisfied, simply save it and publish it to the web. NExS will provide you with a set of links for using it stand-alone, or for embedding it in an existing web page.

The next tutorial, Hello World, will step you through the process of creating the classic “Hello, World!” app with NExS. If you’re ready to jump right in, go to Creating your First App and build the BMI calculator described above.