5
Whenever we are thinking about what Launchpad should be, or how we should
6
implement a change, or whether something is a good idea or not, we have
7
recourse to two distinct sets of guidelines.
9
The first is the Launchpad Vision <vision>. It can help us answer questions
10
such as, "Is this in scope?", "How does this help Launchpad meet its goals?".
11
It tries to sort out the 'matter' of Launchpad.
13
The second is this document, the Launchpad Values. It tries to address the
14
'manner' of Launchpad. It, perhaps, will not answer specific questions for
15
you. Rather, it will rule out certain options and decisions before they are
18
Like the Vision, this document is living: it should be changed and improved as
19
we learn more about how to make Launchpad. It is also aspirational: not all
20
of Launchpad lives up to these values.
26
Launchpad is fundamentally based on the principle that improving the tools
27
that we use to make things will help us make better things than we could
28
before and indeed make better things more cheaply than we could before.
30
Launchpad should be that "better tool" and be always aiming to smooth and
31
accelerate the process of making software.
34
Invisible. If not, fun.
35
========================
37
Launchpad is a tool to help busy people get important stuff done. It should
38
stay out of the way where possible. Bugs, OOPSes, downtime and slowness all
39
draw attention to Launchpad and away from the interesting problems that our
40
users are trying to solve.
42
Where it is not possible to stay out of the way, Launchpad should be fun to
43
use. We make next actions obvious and draw attention to users' achievements.
49
One of the grand things about open source software is that it is open to
50
contributions from total strangers.
52
Launchpad makes those contributions possible by removing as many barriers as
53
possible to contribution, and highlights areas where contributions would be
57
Collaboration occurs between people
58
===================================
60
It is sometimes easy to forget that all of the code, bugs, translations,
61
packages and whatever else that's in Launchpad are made by actual human
64
These human beings are deeply interested in themselves and in other human
67
[[XXX - this is wishy washy, what am I actually trying to say? - jml]]
73
The data in Launchpad does not really belong to us, we are merely its
74
stewards. We make sure that users can get their data easily and that they can
75
change it as they see fit.
78
Cross-project consistency
79
=========================
81
If you know how to contribute to one project on Launchpad, you ought to be
82
able to quickly and painlessly contribute to any other project on Launchpad.
83
Or, if you can't, it won't be Launchpad's fault.
89
Any open source project ought to be able to host itself on Launchpad. We do
90
not enforce workflows, rather we allow people to fit their project's existing
91
workflow into Launchpad.
93
However, when we can, we encourage people toward best practices. After all,
94
we want to make open source software better.
100
Something magical happens when a feature or a workflow reaches all the way
101
back to where it began.
103
Being able to attach patches to bugs is great, but it's not good enough until
104
developers can easily *find* those patches. Finding the patches is only good
105
enough when you can merge, comment and reject those patches.
107
Likewise, importing translations from an upstream is great, but it becomes
108
much, much better when those translations can be improved in Launchpad and
109
then sent back to the upstream.