Winged Monkey

Eric Helms ehelms at redhat.com
Mon Oct 29 19:28:46 UTC 2012


I've tried to follow the length of this thread, so apologies up front if 
this was already covered as I have one sort of broad question and one 
comment.

The question: As a user of Openshift, aspects of the design and the feel 
of the UI feel 1-for-1 and in some respects are attempting to meet the 
same needs.  On which points are there clear divisions between the two 
projects? Would I be choosing based on maturity and feature sets down 
the road or is there a clear 'Openshift fills these needs' while 'Winged 
Monkey fills these other needs'?

The comment:  The concept behind Winged Monkey reminds me of a project 
that was launched at NC State called VCL (Virtual Computing Lab) to 
allow students and faculty to easily acuire on-demand and scheduled 
spin-ups of pre-configured instances with pre-installed software stacks 
to make lives easier on the students.  The interface attempted to get 
users from I need a machine with X to using machine X as fast as 
possible while handling a large user base (30k+ students).  This has 
been quite successful as I understand it, especially given the wide 
range of users from Engineering to English majors.  I personally found 
the use of such an interface much needed.  And, as someone that took 
classes pre-VCL and post-VCL at NC State, I was able to appreciate how 
limiting, and time-consuming class work and grading was in both eras.  
For example, pre-VCL, students were limited to what software and version 
of languages were available in the various labs scattered around campus 
- as well as being limited to the number of machines.  Post-VCL, 
professors were able to allow students to choose their languages to 
program in due to availability of virtual systems with an interface that 
the students could easily interact with.  I believe this also allowed 
other departments to branch out and begin using and offering software 
previously not available.  All that is say, in my opinion, there are 
real world usages already at play that make a simplified, focused UI 
relevant and needed.

- Eric Helms

On 10/24/2012 01:21 PM, Greg Blomquist wrote:
> What is Winged Monkey?
>
> The idea for Winged Monkey started as a simple end user cloud access portal.
> We are trying our best to stick to this idea.  But, it requires a certain set
> of consistent key ideas:
>
>   * Winged Monkey is geared towards users and not administrators
>   * Winged Monkey should provide simple usable access to cloud back ends
>   * Winged Monkey cannot do anything that a back end provider cannot do
>
> In the end, we want it to be an attractive, simple, and intuitive user
> interface that makes the resources of multiple underlying cloud providers
> accessible to non-technical users who are focused on achieving their goals
> rather than on attempting to understand the "cloud".
>
>
> Why Winged Monkey?
>
> Originally, the name started as joke.  But, like all project names, we
> rationalized the name to fit the project.  The monkey only knows how to do
> simple things.  If you teach the monkey, it can eventually learn to do more
> complex things.  It's still just a monkey, though, and will never be the
> smartest primate in the room.  It's one advantage is that it has wings, so it
> can play in the clouds.
>
>
> Monkey Goals
>
> The primary focus is to make a simple user interface for cloud resource
> consumption.  The simplest interface we think we can provide is one where a
> user can start/stop VMs and launch pre-existing applications.
>
> The simplest ideas are sometimes the hardest to implement.  For instance, how
> do we provide the ability to start/stop VMs against various back ends while
> trying to shield the user from having to configure the access to those back
> ends?  Clearly there needs to be an administrative component.  We're just
> doing our best not to worry too much about the administrative side at this
> point.  The fact is that there are several other applications that handle
> cross cloud administration.  Eventually, we'll likely just tie into one of
> those systems to off load the administrative
> portions.
>
> If it turns out we need to implement something that's already implemented by
> another application, we'll grudgingly do it.  But, we're gonna exhaust every
> potential integration point, first.
>
>
> A Winged Monkey is not a ...
>
> ... Conductor.  Winged Monkey will avoid providing any type of cloud account
> multiplexing directly.  It will avoid cloud management interfaces.  It will
> not build or push images to back end providers.  And, it will not implement
> quota and cost management.
>
> Instead, it's more likely that Winged Monkey would like to plug into Conductor
> APIs to take advantage of these features.
>
> ... Deltacloud.  Winged Monkey is an end-user application, and not intended to
> be an API.
>
> If Winged Monkey takes advantage of Conductor's API for account multiplexing
> and cloud cost/quota, it will in turn be using the Deltacloud API to connect
> to cloud back ends.
>
> ... Heat API.  Winged Monkey will not have a concept of stack templates or
> managing the high availability of applications running in the cloud.
>
> Winged Monkey will rely on APIs like Heat to provide stack (or application)
> deployments and health monitoring.
>
> ... Foreman.  Winged Monkey will not present puppet classes or manifests for
> configuration management.  It will not contain administration for networking
> configuration of hosts or guests.
>
> Winged Monkey could use the Foreman API to launch systems that connect to a
> puppetmaster for configuration management.
>
>
> Progress so far
>
> Everything we've done so far has been in the vein of brainstorming.
>
> Jeremy Perry has put together some excellent wireframes[1] that nicely convey
> the theme of simple user interface for consuming cloud resources.
>
> We threw together some high level user stories[2] that try to capture what we
> would want this thing to do.
>
> And, I've started an extremely simple rails app[3] that attempts to meet
> Jeremy's wireframes.  The current goal of the rails app is to connect directly
> to oVirt and show what pieces of the proposed user interface can actually be
> provided.
>
>
> Milestones
>
> We're still working on these.
>
>
> Call for help
>
> We are in need of people who want to explore this idea further.  We're looking
> for people who:
>
>   * are good at visual design and user experience
>   * have interesting ideas about servicing end users of cloud resources
>   * dream in ruby/rails
>
> Initially, we want the team to stay small.  There's not a lot of work to divvy
> out right now, so there's not a immediate need for a bunch of helping hands.
>
> But, we also want feedback.  If you think we're heading down the wrong path,
> speak up!  If you have ideas about how to make this idea work, speak up!  If
> you just wanna find out why we would do this, speak up!
>
>
> [1]: https://github.com/wingedmonkey/documents
> [2]: https://github.com/wingedmonkey/documents/wiki/Winged-Monkey-User-Stories
> [3]: https://github.com/wingedmonkey/wingedmonkey
>
> ---
>   Greg




More information about the aeolus-devel mailing list