What is an App?

Introduction

Applications are a great way to provide tools that address community specific needs. An application is a program or piece of software designed and written to fulfill a particular purpose, such as a word processor, image editor, navigation system or messaging application. Applications can come in many forms -- a website which you access from a web browser or something that you install on a device such as a smartphone application or software program. Commotion makes it possible to provide applications that are available only when you are connected to the mesh network or wireless access point. In planning for local applications, whether you use existing applications or develop your own, it’s best to follow a similar model to building the network itself -- shaping the technology to fit human relationships rather than shaping our relationships to fit the technology.

This module will help you understand what applications are and how they work.

Time required: 1-2 hours, depending on the activities.

MATERIALS + SUPPLIES NEEDED

  1. Markers / Pens / Pencils
  2. Paper
  3. Scissors (optional)

What is an application?

“Apps” or applications are the tools we use to fulfill a particular purpose. In the world of technology this can look like a word processor, image editor, navigation system or messaging application.

Activity: What are the 3-5 applications that you use on a regular basis?

  1. __________________________
  2. __________________________
  3. __________________________
  4. __________________________
  5. __________________________

How do applications work?

Many of the applications we use today are “network applications,” which get and send information for the application to another computer on a network. For example, applications that live on a website - such as Social Media tools or webmail -- live on a web server.


Network Applications

In network applications -- such as a website, your computer sends a message across the network to a server, which sends your device (the “client”) the content of the webpage in response.




Smartphone Application or Computer Application

A smartphone application or software program is an application that you download to your device (a smartphone or a computer). For downloaded applications -- your application can send and receive information with the device it is installed on. Many smartphone and computer applications also make use of the features of a network application. For example, your writing application or word processor saves documents to a location on your computer.

Activity: Name That Tech: What does your application look like?

  1. Think of an application that you are familiar with. It can be old or new, real or imagined.
  2. Find the shapes and words you want to use and cut them out.
  3. Arrange the shapes and words on the page in a way that explains the technology: how it works or how you use it. Imagine that the person you are explaining it to doesn't know anything about the technology.
    Note: You may use any number and combination of words and shapes; you can cut, fold and paste; but you can only use what has been provided.
  4. Glue the pieces in place. Make sure they are all glued.
  5. Write your name and contact information, along with the technology you are explaining, on the back of the sheet of paper.
  6. Using the binder clips, hang the flyer up to display and dry on any of the hooks on the window.

To learn more about networking basics, check out the activities in the CCK Networking Module: “Learn Networking Basics.” The web server can be located anywhere on a network - including someone’s laptop within the network or on another computer somewhere on the Internet.



Local Applications

Network applications talk to a web server, but that web server does not have to be on the Internet. It can live in many places - the Internet, the local network, or even be someone’s laptop. Running applications on a local web server within your network -- such as on a laptop -- allows you and your community to have tools and services just for you. Many applications do not need access to the Internet to work, which means that the applications running on a local web server would be useable whether your network has Internet access or not! In the same way that the mesh network allows multiple people to share network resources, running a local application server makes it possible to share information without going out to the Internet - keeping local communications local and more efficient.

There are also applications that do not need to talk to a server at all. These applications are called peer-to-peer applications.

Activity: Your community decides that it wants to have the ability to chat with anyone connected to the network. You could setup the chat to be hosted on the internet or run it on a computer on the community network.

  1. Create a diagram of how the chat application would send messages if it was hosted on the Internet.
  2. Create a second diagram of how the chat application would send messages if it was hosted on a server on the community network.
  3. Lastly, create a diagram of how the chat application would send messages if it was a peer-to-peer application, and just sent messages to other people on the network directly.
  4. What are the differences between the different options? What are the benefits and challenges of the different options?

Internet Chat Chat via the Internet

Mesh Chat Chat via Peer-to-Peer

To learn more about setting up a local application server and determining an ideal location on the network for it, check out the module on Locating a Local Server. To figure out what types of application your community needs, check out the module on Determining Community Needs (Coming Soon).

Definitions

Application
a program or piece of software designed and written to fulfill a particular purpose, such as a website, smartphone application or software program.