Re: systemd as external dependency



Le vendredi 20 mai 2011 à 18:03 -0400, Shaun McCance a écrit : 
> http://www.packagekit.org/pk-faq.html#user-interaction
> 
> I don't believe this is a case of developers not having researched
> what different systems do. Rather, I think it's a case of making a
> conscious design decision about how we think users should interact
> with computers running GNOME.

No, it is precisely a case of developers designing with blindfolds and
then wondering how to stick their restricted design on other operating
systems.

The application design is correct; the developers made a good case of
why they don’t want user interaction for the kind of use cases
gnome-packagekit is about. But the D-Bus interface design is not, since
it makes it impossible to re-use existing low-level interfaces. The
result is that we have to maintain two interfaces: one for high-level
operations, and one for low-level ones. How is this code duplication
useful to anyone?

If the developers had wondered by advance how their interface could be
made to work with the existing Ubuntu tools, this would have not
happened.


Let’s take other examples. You want to design a new interface to replace
ConsoleKit; does it make specific assumptions about VTs? Are there OSes
where the concept of VT does not exist and how does the interface deal
with them? If a method expects to be returned a device name and VTs are
not associated with devices, what can you do? You want an interface that
sets a host name; does this concept make sense in all cases?  You want
an interface to create users; what defines a user on BSD, on Solaris?
Does it cope with SELinux and/or RBAC?

I’m not saying these questions are all relevant, but you have to ask
them. This should be obvious, but since we have precedents, it is fair
to wonder whether these situations have been taken into account. You
don’t have to implement RBAC support, but if you design an interface
that makes it impossible and then tell Solaris developers “you just have
to implement that interface”, it’s like giving them the finger.

> Understand that GNOME 3 is design-focused: We create a coherent
> design for users, then we figure out what technology we need to
> make that design happen. Some people seem to want to go the other
> direction: See what technology we have, and figure out what kind
> of design we can bolt on top of it.

This is a correct approach for an application design; it is not for a
protocol design. Users don’t have to cope with the protocol, but other
developers will. You need to think the application in a user-friendly
way, and the protocol in a developer-friendly way.

> I think it is absolutely fair to ask GNOME developers to document
> what they expect of the system to achieve their designs. I do not
> think it's fair to ask them to compromise their designs because
> some technology stack behaves differently.

I think it would be better to ask people who know how to design system
interfaces and work with them to make them portable and fit with your
application design, instead of making your own interfaces and insulting
people when they start complaining as they discover the disaster.

-- 
.''`.      Josselin Mouette
: :' :
`. `'
  `-

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]