From Wikipedia, the free encyclopedia
Jump to: navigation, search

Workspace is a term used in various branches of engineering and economic development.

Business development[edit]

Workspace refers to small premises provided, often by local authorities or economic development agencies, to help new businesses to establish themselves. These typically provide not only physical space and utilities, but also administrative services and links to support and finance organisations, as well as peer support among the tenants. A continuum of sophistication ranges through categories such as 'managed workspaces', 'business incubators' and 'business and employment co-operatives'. In cities, they are often set up in buildings that are disused but which the local authority wishes to retain as a landmark, such as tramsheds. At the larger end of the spectrum are business parks, technology parks and science parks.

Technology and software[edit]

In technology and software, "workspace" is a term used for several different purposes.

Software development[edit]

A workspace is (often) a file or directory that allows a user to gather various source code files and resources and work with them as a cohesive unit. Often these files and resources represent the complete state of an IDE at a given time, a snapshot. Workspaces are very helpful in cases of complex projects when maintenance can be challenging. Good examples of environments that allow users to create and use workspaces are Microsoft Visual Studio and Eclipse.

In configuration management, "workspace" takes on a different but related meaning; it is a part of the file system where the files of interest (for a given task like debugging, development, etc.) are located. It stores the user's view of the files stored in the configuration management's repository.

In either case, workspace acts as an environment where a programmer can work, isolated from the outside world, for the task duration.

Graphical interfaces[edit]

GNOME's workspace switcher.

Additionally, workspaces refer to the grouping of windows in some window managers. Grouping applications in this way is meant to reduce clutter and make the desktop easier to navigate.

Multiple workspaces are prevalent on Unix-like operating systems and certain operating system shells. Mac OS X 10.5 includes an equivalent feature called "Spaces"; a Windows XP PowerToy is available to bring this functionality to Windows.

Most systems with support for workspaces provide keyboard shortcuts to switch between them. Many also include some form of workspace switcher to change between them and sometimes to move windows between them as well.

Workspaces are visualized in different ways. For example, on Linux computers using Compiz or Beryl with the Cube and Rotate Cube plugins enabled, each workspace is rendered as a face of an on-screen cube, and switching between workspaces is visualized by zooming out from the current face, rotating the cube to the new face, and zooming back in. On Mac OS, the old set of windows slides off the screen and the new set slides on. Window managers without "eye candy" often simply remove the old windows and display the new ones without any sort of intermediate effect.

Online applications[edit]

In the context of software as a service, "workspace" is a term used by software vendors for applications that allow users to exchange and organize files over the Internet.

Such applications have several advantages over traditional FTP clients or virtual folder offerings, including:

  • Ability to capture task performance data and version data
  • Organization of information in a more user-friendly interface than a traditional file-based structure
  • Secure storage and upload/download of data (many FTP clients are unsecured, susceptible to eavesdropping, or open to other abuse)
  • Compatible with virtually all web browsers and computer operating systems.
  • Updated on the server-side, meaning that a user will never have to update the software.

Beyond organizing and sharing files, these applications can often also be used as a business communication tool for assigning tasks, scheduling meetings, and maintaining contact information.