On 14/10/17 11:47, Doug Hellmann wrote:
Excerpts from Zane Bitter's message of 2017-10-13 15:21:14 -0400:
Replying to myself here, to avoid singling anyone in particular out. I
want to rephrase the question, because people are overwhelmingly either
failing to understand or refusing to answer it in the way I intended it.

Most of the candidates are essentially saying that the answer is 'everyone'.

I'm glad that we have such a bunch of next-level geniuses running for
the TC that they are able to analyse the needs of all 7 billion people
and evaluate every decision they make against all of them in real time.
Me, I'm just an ordinary guy who can only hold a few things in his head
at once, so I just try to focus on those and collaborate with people who
have different perspectives to make sure that a range of needs are
covered. This is kind of the founding principle of the Open Source
(note: not Free Software) movement, actually. None of us is as smart as
all of us (present company excepted, apparently). So it's good, but
somewhat surprising that y'all are still here, given that you would be
guaranteed insta-billionaires if you went out and started a proprietary
software company.

All sarcasm aside though, 'everyone' is a BS non-answer. It's the
politician's answer.

Blaming the respondents for answering a imprecisely worded question
in a way other than it was intended? We can do better.

I honestly didn't feel it was an imprecisely worded question - I included an example, and carefully defined things such as "By 'users' here I mean end-users, the actual consumers of OpenStack APIs". Nevertheless, I have no problem admitting that I was wrong. Allowing for that possibility was the reason I rephrased the question.

Your original question "Who are _you_ building OpenStack for?" was
much more vague than the rephrasing below that specifically asks
about advocacy.

I agree, reading your and Ildiko's and James's responses it's now clear to me that this was the root of the problem. It was too easy to interpret this as the entirety of the question, rather than just a glib way of summing up the actual question immediately preceding it, the paragraph of exposition before that, and the example that followed. I regret muddying the waters by tacking it on the end.

Even the rewritten question can be answered
legitimately using several different personas by people with a bit
of experience.  I have worked at a public cloud provider and two
distributors with a wide range of customers, and I use OpenStack
clouds myself. I hope that all of that background feeds into my
contributions.

Yes, that's great. I think most people would agree that there's a threshold somewhere between 'several' and 'infinity' beyond which we've crossed over into platitudes though.

Not only because engineering trade-offs are a real thing, and some use
cases will *definitely* be excluded in order to better serve others, but
because the average user doesn't exist. If you design for the 'average'
user then you are designing for nobody, because nobody is the average
user. We shouldn't be designing for 'everybody' (aka nobody in
particular), but for a large variety of somebodies.

As an example, look at the Keystone discussion that I linked below.
- If you were designing Keystone for an individual user, you'd might
just have one account per tenant.
- If you were designing Keystone for a team deploying semi-autonomous
apps, you might design a way for multiple agents to authenticate to each
tenant.
- If you were designing Keystone for 'everyone', you might have a matrix
of users, tenants and roles - the most generic solution, right? - and
spend half a decade polishing it without ever realising that individual
users don't need it and teams can't use it.

Or you might conclude that the real problem isn't in the identity
service data model, but in the services that don't yet have an
operation to transfer ownership of resources when a user is
deactivated.

Sure, although note that Keystone itself would have to be one of those services - you'd have to be able to transfer ownership of trusts for it to work.

Suffice to say that nobody should take my example here as anything more than a rationale for the importance of user-centred design.[1] Specifically, nobody should take it, or anything else that fits in 3 sentences, as a prescription for the successful design of an identity management service - a topic which is vast, complex, intricate, and at times highly unintuitive.

cheers,
Zane.

[1] https://en.wikipedia.org/wiki/User-centered_design

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to