aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/MANIFESTO.txt
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--MANIFESTO.txt178
1 files changed, 178 insertions, 0 deletions
diff --git a/MANIFESTO.txt b/MANIFESTO.txt
new file mode 100644
index 0000000..2a6fdb4
--- /dev/null
+++ b/MANIFESTO.txt
@@ -0,0 +1,178 @@
1
2
3 THE IMPRUDENCE MANIFESTO
4
5
6 THE PROBLEM
7
8 The Second Life Viewer suffers from a stifling atmosphere of
9 non-change. This atmosphere emanates from Linden Lab, whose
10 attitudes and policies discourage all but the smallest and most
11 superficial improvements. This is the result of the nature of
12 Linden Lab as a corporation; in particular:
13
14
15 * A lack of resources to invest in making significant
16 improvements to the Viewer. Linden Lab is stuck treading water;
17 they don't have the manpower to spend on making major
18 improvements to the Viewer.
19
20 * A burdensome Quality Assurance procedure that punishes any sort
21 of change. The larger the change, the more it's punished. The
22 simple fact that all changes have to pass through such an
23 arduous process discourages anyone from attempting any major
24 endeavor.
25
26 * A vast throng of paying customers who want the Viewer to remain
27 constant and familiar. If the Viewer changes, they are forced
28 to spend effort relearning it. The most vocal and abusive users
29 even meet change with sneers and insults.
30
31
32 Combined, these render Linden Lab ineffectual at dealing with the
33 fundamental usability problems that plague the Viewer:
34
35
36 * A cluttered interface that frustrates and confuses both new and
37 long-time users. It is difficult to learn, frustrating to use,
38 and obscures the thing that users actually care about: the
39 world.
40
41 * Crude tools that force users into awkward and inefficient
42 workflows. The tools bear little relation to the way today's
43 users want to use them. Whether because these tools are
44 outdated relics of the past, or just half-baked non-solutions,
45 very few rise above even the "somewhat usable" mark.
46
47 * Stability and performance problems that make the Viewer
48 unreliable for any real use. Viewer crashes are an everyday
49 occurance for many users, disrupting their activities,
50 destroying their unsaved work, and afflicting their lives with
51 undue stress and frustration.
52
53
54 We don't deny that Linden Lab has made some progress in these areas
55 over time. But such progress is slow and often superficial, because
56 Linden Lab cannot afford to make significant improvement.
57 Encumbered by their own nature, they are forced onto an untenable
58 road of caution, hesitation, and prudence. This is a path that can
59 lead only to stagnation.
60
61 These fundamental usability problems will not be solved by Linden
62 Lab; their atmosphere precludes it. Even the contribution of source
63 code patches by open sourcers can only address one factor, Linden
64 Lab's lack of resources. Patch contributors are still affected by
65 the burdensome QA process and the community's anti-change attitude
66 just as much as Linden Lab developers are. Any endeavor which
67 relies on Linden Lab to approve and integrate changes will face the
68 same bottlenecks.
69
70
71 SOLUTION
72
73 As I have described, Linden Lab's approach is characterized by
74 three factors that put a damper on significant improvement or
75 innovation:
76
77 * Cautious, gradual changes over a long period of time.
78
79 * Dependence on an overloaded central QA department.
80
81 * Yielding to pressure from large numbers of users to reject
82 change.
83
84 It stands to reason that a project which removed or reduced these
85 factors would be more free to make radical, fundamental changes to
86 the Viewer. Such a project would exhibit the opposite
87 characteristics:
88
89 * More significant changes over a shorter period of time.
90
91 * A scalable, hierarchical QA process to screen and approve
92 changes.
93
94 * Less need to satisfy users who demand non-change.
95
96 This is precisely the sort of project we propose to undertake.
97 Because our approach is incautious, and perhaps even reckless, we
98 have dubbed the project Imprudence. Goals
99
100 The primary goal of Imprudence is simple: to greatly improve the
101 usability of the Viewer. In particular, there are 3 aspects of
102 usability that we intend to address:
103
104 * Approachability. Improving comfort and ease of use, especially
105 for new or non-technical users.
106
107 * Efficiency. Improving speed and ease of common tasks and
108 workflows.
109
110 * Satisfaction. Improving the emotional effect of the software on
111 the user.
112
113 This is not to minimize other aspects of usability, such as
114 reliability, accessibility, or internationalization/localization.
115 We recognize their importance, but lack the expertise to properly
116 address them. We welcome people with such expertise to join the
117 project and help.
118
119
120 METHOD
121
122 In order to achieve these goals, we propose to combine the open and
123 distributed nature of open source development with the dedication
124 to quality design usually associated with commercial products. The
125 main highlights of our approach are:
126
127 * Open, public project management. Our plans, goals, and roadmaps
128 are laid out on the table. Our code is published in plain view
129 as it's written. There won't be any sudden bombshells to
130 disrupt your plans.
131
132 * A pro-change atmosphere. Change is natural and healthy, and it
133 is the only way to make improvement. We encourage experimental
134 change, coupled with evaluation to filter out the negative.
135 Users wanting a static, unchanging viewer should look
136 elsewhere.
137
138 * Designers, programmers, and users working with each other. Good
139 software requires more than just a team of programmers. It
140 needs designers listening to users, programmers working with
141 designers, and users testing and providing feedback. Every role
142 is necessary and appreciated.
143
144 * Commmunity involvement. There are many ways to be involved,
145 whatever your interests, skill set, or level of commitment.
146 Contributions are welcomed, not looked upon as burdens.
147
148 * A modern, distributed development model. The Git version
149 control system makes it easy for programmers to work freely
150 without stepping on each others' toes. Easy and powerful
151 branching and merging tools mean that releases will never be
152 littered with untested, half-baked code.
153
154 * A scalable, hierarchical QA model. New contributions work their
155 way up a hierarchy of approval, which will start small and grow
156 naturally as load increases. By the time a contribution reaches
157 the top of the hierarchy, it has been tested, polished, and
158 approved by multiple people, and is ready to be integrated.
159
160
161 A CALL FOR VOLUNTEERS
162
163 Imprudence is an open-source, volunteer effort; it depends on
164 people like you getting involved! There are many ways to
165 contribute, and most of them don't require any programming skills
166 or special knowledge -- just some free time and the will to be part
167 of something great.
168
169 If you'd like to contribute in any way, have a look at
170 CONTRIBUTE.txt.
171
172 You have nothing to lose, and a better SL experience to gain!
173
174
175 SIGNATORIES
176
177 Jacek Antonelli (August 27, 2008)
178 McCabe Maxsted (August 27, 2008)