"Switch to Full IDE UI" Option - Potential UI Impact
Author: Ondrej Langr
$Id: switchToFullIDE.html,v 1.2 2008/01/09 17:04:25 ondrej Exp $
Disclaimer: This document analyses the UI impact of enabling the Full IDE UI, it is by no means a UI specification
Table of Contents
This documents aims to analyse the UI impact of another proposed use of feature on demand - distributing the IDE in a physically small package containing UI of the big IDE where modules would be downloaded and installed when first used.
Not all entry-points make sense in all contexts. If the module is disabled to improve performance, maximal transparence is desired and the module should be enabled whenever used. However, only some entry points make sense to enable as triggers for module download and install. To allow download and install from e.g. option panel assumes the user wants to configure something he/she do not yet have, which is not a real-life use case and would only cause confusion. This means the UI would, in this case, be not identical with the "big IDE" anyway.
- UI clutter - users would have a lot of functionality in the UI
- Frequent downloads - subjective feeling of product incompleteness
- Unability to use functions present (from users' point of view) in the UI when offline.
- Web project frameworks
- Imagine a visual web project module is not downloaded. A user creates the new project and during the wizard, this project is downloaded and installed. However, during the wizard, there are several web project frameworks. If these are entry points only (i.e. the modules are not downloaded), user will be forced to run second download during one project wizard to be able to deploy and configure these frameworks.
- Note: this is an example easy to solve by not disabling the web project. However, there may be other similar dependencies we are not yet aware of.
- More complicated UI. Instead of simply providing entry-points and seemless activation of disabled modules, we would need to consider download, licence agreement, module dependencies, etc ..
- Third state of a module would be introduced. Available states would be:
- disabled with enabled UI
The same result can be achieved by downloading all modules contained in the Full IDE via plugin manager or by downloading and installing a new IDE version.