7.1. Introduction

An interface is a system of controls through which you communicate with a system. It shields you from the complexity of the system's inner workings and is supposed to simplify the ways to work with the system. An EMBOSS interface allows you to specify input and output files, set application options and, of course, run the applications.

7.1.1. Types of EMBOSS Interfaces

EMBOSS was designed to make interfacing the applications simple and automatable. This is largely due to the simple ACD file syntax (see the EMBOSS Developers Guide). Many interfaces are available. These simplify, at least for some people, the ways to run the applications. For instance, options might be chosen by using lists, checkboxes and radio buttons, rather than typing commands at the command line. They often have many other features besides basic application parameterisation, such as project management and the ability to link programs together in workflows.

The various types of interfaces include:

  • Web Interfaces

  • Graphical User Interfaces (GUIs)

  • Workflow Interfaces

Additionally, various programmatic interfaces to the applications are available. These link EMBOSS and some other system and include procedural (manual) or automated interfaces. For example, EMBOSS may be interfaced via perl and python script modules, making it easier in some contexts to run the programs and process the results. The programmatic interfaces are summarised in the EMBOSS Developers Guide.

7.1.2. Selecting an Interface

There is no such thing as a "best" interface:

  • Programmers and system administrators often prefer the speed and directness of the command line.

  • For laboratory scientists the web interfaces are convenient as they require no setting up.

  • For bioinformaticians GUIs are also good

  • For production jobs and automation, a workflow-based approach, which includes simple scripts, might be best.