On 07/19/2011 01:17 PM, Chris Lalancette wrote:
On 07/19/11 - 02:11:26PM, Hugh Brock wrote:
Other UX work
- I think we should be able to launch single images from Conductor without requiring a deployable XML. To make that easier for users, it would be nice if there was some UI for displaying images that are available to launch.
I know this is going to make me unpopular, but I think we need to re-instate the UI for building images. As a short-term solution, removing it and going CLI-only removed a roadblock for us, but the immediate reaction of (potential) users when presented with it is revulsion.
One problem the CLI solves is that it separates the function of creating the deployables from the activity of displaying the user interface. A CLI is really just an API with a command line presentation.
I have seen in my 10+ years of software development, GUI development fail time and time again because the detail of the actions were tightly integrated with the graphical user interface. The failure to use abstraction results in too much complexity in one place. The net result is complexity fatigue resulting in inability to ship a functional GUI. Once the functionality was abstracted from the presentation, software was shippable.
I advocate keeping the CLI and making a GUI that uses the cli internally. The CLI then acts as a an interface between the act of building images and the act of presentation to the user. With this approach, engineers are not overwhelmed with complexity and unable to make functional software. The disadvantage to this approach is the extra time required to negotiate a proper interface between the GUI developers and CLI developers. This is time well spent if the result is functional software.
Regards -steve
I know that there is talk about making Katello do it, but I still don't love that solution for 2 reasons:
- It is a separate place to do things. That is, you'd have to (potentially)
log into Katello to do the building, then switch back to Aeolus. I guess I could imagine ways to integrate it into the Conductor UI so it is seemless, but I don't think I can imagine getting those ways in a short time-frame. 2) It is another external dependency. If one of the goals of the project is to keep required external dependencies down, then the Conductor should have its own UI for building images.
Let the flames begin :).