RFC Playground
Daniel van Vugt
daniel.van.vugt at canonical.com
Thu Apr 2 02:36:36 UTC 2015
All the features are useful. And use of the word "playground" was not my
choice (I was outvoted). They have all been used to develop other
features or to diagnose bugs in Mir, or soon will be used when I find
the time. By function you can see them documented here:
http://bazaar.launchpad.net/~mir-team/mir/development-branch/view/head:/doc/demo_shell_controls.md
The "cosmetic" stuff is also very useful. Shadows for example make the
stacking order obvious. Title bars show you that you have the correct
title string and that the new API for that works. Which I needed just
recently. The zoom feature I've used repeatedly to see fine pixel
details and even yesterday as an aid in measuring latency.
I use mir_proving_server every day. It helps me to find bugs that no one
else on the team is noticing (but should). Management has asked me on a
couple of occasions "what is your trick to finding bugs that nobody else
does?". The answer is daily manual testing with mir_proving_server.
It's also worth noting that one of Cemil's first contributions (seamless
rotation) would not have been possible without mir_proving_server. And
Gerry uses mir_proving_server regularly to compare features. Including
yesterday, he used it to test resizing, which is more feature complete
in mir_proving_server than elsewhere.
Most importantly however, something slightly pretty motivates people to
get involved. Either directly in Mir or downstream, it allows them to
see potential for Mir which is impossible for most people to see in flat
rectangles. Sparking peoples' imagination is invaluable.
Something like this that people use every day should not be deleted.
That would be most unhelpful. But mold it into some slightly different
form, sure.
On 02/04/15 00:03, Alberto Aguirre wrote:
> Once we release mir 0.13 we can tell our colleagues to use
> mir_demo_server instead.
>
> From what I can see, features missing from the demo server in
> comparison to proving server are mostly cosmetic. If they are not, can
> Daniel list the features that are missing?
>
>
>
> On Tue, Mar 31, 2015 at 8:40 PM, Daniel van Vugt
> <daniel.van.vugt at canonical.com <mailto:daniel.van.vugt at canonical.com>>
> wrote:
>
> Last I checked mir_proving_server was more functional and less buggy
> than our other example servers. That and our colleagues tend to use
> it as their primary development platform when testing toolkit/app
> ports. So mir_proving_server is important and should be reworked to
> use any newer APIs you would prefer it to use.
>
> I know it's frustrating the number of regressions we've had this
> past week or so. But to blame the functionality that regressed more
> than the person who regressed it I think is disproportionate.
>
> Yeah that "god" function is annoying. It needs to be teased apart. I
> can help with that but it's not a major priority right now.
>
> Please try to avoid belittling the project by using words like
> "playground" and "dark corner". It's important and useful example
> code that myself and others use every day to do our jobs. So if you
> want it modernised, let's do it.
>
>
>
> On 31/03/15 21:12, Alan Griffiths wrote:
>
> There's a bunch of code in the mir project that isn't needed for
> supporting the public interfaces (neither by implementing them,
> testing
> them nor demonstrating their use). This code lies in
> "playground" and
> shares that location with the following README:
>
> The Playground
>
> These are mir demos that excercise private in-flux mir
> functionality.
> As such functionality matures, related headers become
> public and the
> playground
> code may become an example of how to use such feature.
>
> It has now been some time since any functionality has "matured" from
> playground and become public (either as APIs or examples). I
> don't see
> any evidence that the code there is being developed toward such
> an event
> in the foreseeable future.
>
> The requirement to support this code is becoming a burden as it
> makes
> use of internal APIs in a way that limits the evolution of Mir
> internals. Updating the code is also costly as it has grown in an
> uncontrolled manner (most of the logic seems to be in one 223
> line "god"
> function). Because it not under test to the same extent as Mir
> production code we've had a number of breakages to this code land on
> trunk recently (often to features I wasn't previously aware of).
>
> So the questions:
>
> 1. Does "playground" still provide a proving ground for new code to
> germinate? Or is it dark corner for legacy code to go and die?
> 2. Do we still need a proving ground like this? Or do our public
> APIs
> now support enough functionality to drive feature development?
> 3. If we still need a proving ground is it desirable to rework
> this code
> to be better aligned with the rest of the project?
> 4. If we don't need "playground" is there anything we need to
> provide
> before dropping it from the project.
>
>
>
> --
> Mircosmonauts mailing list
> Mircosmonauts at lists.canonical.__com
> <mailto:Mircosmonauts at lists.canonical.com>
> Modify settings or unsubscribe at:
> https://lists.canonical.com/__mailman/listinfo/mircosmonauts
> <https://lists.canonical.com/mailman/listinfo/mircosmonauts>
>
>
More information about the Mir-devel
mailing list