Web integrated development environment
||This article possibly contains original research. (September 2011)|
A web integrated development environment (Web IDE or WIDE), also known as cloud IDE, is a browser based IDE that allows for software development or web development. A web IDE can be accessed from a web browser, such as Google Chrome or Internet Explorer, allowing for a portable work environment. A web IDE does not usually contain all of the same features as a traditional, or desktop, IDE, although all of the basic IDE features, such as syntax highlighting, are typically present.
Many web IDEs, such as Cloud 9, support several programming languages, while others like PythonAnywhere only support a specific language. Most web IDEs allow access to a Command-line interface (CLI) that allows the user to install or run any software that is needed for development, allowing "full" control over the development environment. Open source web IDEs allow for installation on local servers or machines and can be used to give the developer more control over the development environment.
Pros and Cons
- Access from anywhere or any computer (with Internet access).
- Minimal configuration needed (or only needed once).
- Centralized workspace.
- Easily included in a virtual development environment (such as when using a Vagrant system).
- Many open source options such as Cloud 9 or Codebox for self hosting.
- No need to install a lot of software locally.
- Allows for development from inexpensive machines, such as Chromebooks, since the testing and development occurs on a separate machine (server).
- Can be used as a desktop IDE when setup with a Web server on the local machine.
- Must have (good) Internet access.
- If not self hosted, possible outside security issues.
- Possible server downtime.
- Maintenance if self hosted
- Most do not support smart phones or tablets well.
Web IDEs usually contain the same basic features as a desktop IDE, such as:
- Syntax highlighting
- Warnings/Error checking
- Repository support (e.g. GIT, Subversion, or Mercurial)
- Plugin system/management
- File management
Most Web IDEs also include a collaboration feature, allowing users to work with other developers around the world (or locally) in real time.
Web IDEs can be used in many scenarios outside of programming and development. The ability for real time collaboration makes web IDEs ideal for group projects or meetings. The centralized nature, short setup times, and minimal configuration allow for web IDEs to be used for educational purposes.