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