fe4cab1501af4b74a4980720e5e093f36f63b4bb
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

1) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2) "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3) 
4) <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
5) <head>
6)   <title>Tor GUI Contest</title>
7)   <meta name="Author" content="Roger Dingledine" />
8)   <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
9)   <link rel="stylesheet" type="text/css" href="stylesheet.css" />
10)   <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
11) </head>
12) 
13) <body>
14) 
15) <!-- TITLE BAR & NAVIGATION -->
16) 
17) <table class="banner" border="0" cellpadding="0" cellspacing="0">
18)     <tr>
19)         <td class="banner-left"></td>
20)         <td class="banner-middle">
21)             <a href="index.html">Home</a>
22)           | <a href="howitworks.html">How It Works</a>
23)           | <a href="download.html">Download</a>
24)           | <a href="documentation.html">Docs</a>
25)           | <a href="users.html">Users</a>
26)           | <a href="faq.html">FAQs</a>
Roger Dingledine call it Volunteer in the na...

Roger Dingledine authored 19 years ago

27)           | <a href="volunteer.html">Volunteer</a>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

28)           | <a href="developers.html">Developers</a>
29)           | <a href="research.html">Research</a>
30)           | <a href="people.html">People</a>
31)         </td>
32)         <td class="banner-right"></td>
33)     </tr>
34) </table>
35) 
36) <!-- END TITLE BAR & NAVIGATION -->
37) 
38) <div class="center">
39) 
40) <div class="main-column">
41) 
42) <h2>Tor GUI Contest</h2>
43) <hr />
44) <p>DRAFT IN PROGRESS -- ALL OF THIS STUFF IS IN FLUX AND SHOULD BE
45) CONSIDERED WRONG.</p>
46) <hr />
47) <h3>Overview</h3>
48) 
49) <p>
50) Tor is a decentralized network of computers on the Internet that increases
51) privacy in Web browsing, instant messaging, and other applications. We
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

52) estimate there are some 50,000 Tor users currently, routing their traffic
53) through about 250 volunteer Tor servers on five continents. However, Tor's
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

54) current user interface approach --- running as a daemon in the background
55) --- does a poor job of communicating network status and security levels
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

56) to the user.
57) 
58) The Tor project, affiliated with the
Roger Dingledine if they deserve a link, the...

Roger Dingledine authored 19 years ago

59) <a href="http://www.eff.org/">Electronic Frontier Foundation</a>, is
Thomas Sjögren EFF deserves a link

Thomas Sjögren authored 19 years ago

60) running a UI contest to develop a vision of how Tor can
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

61) work in a user's everyday anonymous browsing experience. Some of the
62) challenges include how to make alerts and error conditions visible on
Roger Dingledine cleanups from chris and seth

Roger Dingledine authored 19 years ago

63) screen; how to let the user configure Tor to use or avoid certain routes
64) or nodes; how to learn about the current state of a Tor connection,
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

65) including which servers it uses; and how to find out whether (and which)
66) applications are using Tor safely.
67) </p>
68) 
69) <hr />
70) <h3>Goals</h3>
71) 
Roger Dingledine cleanups from chris and seth

Roger Dingledine authored 19 years ago

72) <p>Contestants will produce a work of <a
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

73) href="http://www.fsf.org/licensing/essays/free-sw.html">Free Software</a>
Roger Dingledine cleanups from chris and seth

Roger Dingledine authored 19 years ago

74) that will
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

75) provide a user interface to the Tor system by way of the <a
76) href="http://tor.eff.org/cvs/tor/doc/control-spec.txt">Tor Controller
77) Protocol</a>.</p>
78) 
79) <p>We are looking for a vision of how Tor can work in a user's everyday
80) anonymous browsing experience.</p>
81) 
82) <p>Successful entries will:</p>
83) <ul>
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

84) <li>Allow the user to fully configure Tor without directly searching
85) for and opening text files.</li>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

86) <li>Learn about the current state of their Tor connection (including
87) which servers they are connected to, and how many of them), and find
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

88) out whether any of their applications are using it.</li>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

89) <li>Make alerts and error conditions visible on screen.</li>
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

90) <li>Run on at least one of Windows, Linux, and OS X, on a
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

91) not-unusually-configured consumer-level machine.</li>
92) </ul>
93) 
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

94) <p>In addition, it may:</p>
95) <ul>
96) <li>Provide detailed information about which
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

97) applications, ports, or packets are (or are not!) passing through Tor,
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

98) including accounting for both Tor- and non-Tor traffic</li>
99) <li>Provide
100) additional statistics about the Tor connection.</li>
101) </ul>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

102) 
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

103) <p>including:</p>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

104) <ul>
105) <li>How much bandwidth am I using?</li>
106) <li>What servers do I know about on the network? Where are they? How
107) available are they?</li>
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

108) <li>Provide an interface for controlling Tor paths: "show me
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

109) the network from Africa by way of Asia". Think of the global satellite
110) map from the movie <i>Sneakers</i>.</li>
111) <li>Configure other running applications to use Tor (for example,
112) by modifying or working through the network stack, and/or by altering
113) application configurations).</li>
Roger Dingledine cleanups from chris and seth

Roger Dingledine authored 19 years ago

114) <li>Provide an elegant installer for Tor, the GUI application, and
115) other supporting applications.</li>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

116) <li>Provide meaningful defaults for a good Tor experience.</li>
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

117) <li>Provide application-level anonymity -- that is, not just paying
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

118) attention to transport anonymity on the level of Tor, but also paying
119) attention to the anonymity of the http headers, cookies, etc.</li>
120) </ul>
121) 
122) <hr />
123) <h3>Contest categories</h3>
124) 
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

125) <p>
126) The design contest will proceed in two stages: first sketches and
127) then code. For each stage, our panel of judges will recognize the best
128) submissions. All qualifying entries will receive an EFF Tor t-shirt,
129) subject to availability. The best functional implementations will be
130) published on the Tor website.
131) </p>
132) 
133) <p><b>Sketches:</b>
134) the goal of this stage is to produce a mock-up of a functioning interface,
135) with graphical elements that can be used by programmers and design
136) documents describing how the interface should function.</p>
137) 
138) <p>
139) A qualifying sketch will present an informal specification for a
140) design. That is, it will present with some degree of thoroughness all
141) of the major interfaces that we might expect to encounter, all of the
142) major functionality for the interface, and a reasonable story about
143) how it would be integrated into currently-existing tools (if, indeed,
144) it would be). An example, with more detail than we would require, is
145) <a href="http://ui.netbeans.org/docs/ui/junits/promo_f.html">the NetBeans
146) UI for JUnit</a>. Note that it walks through multiple interfaces,
147) highlighting the features and functions of the various buttons.
148) </p>
149) 
150) <ul>
151) <li><b>Most featureful interface</b> will be awarded to the graphic design
152) that would provide usable, clear access to the most aspects of the Tor
153) system, covering many or most of the categories on the "additional"
154) list.</li>
155) <li><b>Most usable experience</b> will be awarded to the graphic
156) design that would provide the most unobtrusive Tor experience while still
157) covering all criteria (working, perhaps, on the "no news is good news"
158) theory).</li>
159) <li><b>Clearest implementation guidance</b> will be awarded to the
160) graphic design that provides the cleanest package of graphic elements
161) and design documentation to aid would-be implementers.</li>
162) </ul>
163) 
164) <p><b>Code:</b> the goal of this stage is to produce a working
165) implementation. You may use any of the sketches, graphics, or ideas from
166) the first stage.</p>
167) 
168) <p>
169) An acceptable entry will be a package of free software that builds and
170) runs. It can be a standalone application, or it can act as an extension
171) or plugin to other broadly-available free software. The entry will
172) demonstrate the points in the judging section: that is, it will be able
173) to control, display, and maintain awareness as discussed above.
174) </p>
175) 
176) <ul>
177) <li><b>Most featureful interface</b> will be awarded to the application
178) that provides usable, clear access to the most aspects of the Tor system,
179) covering many or most of the categories on the "additional" list.</li>
180) <li><b>Most usable experience</b> will be awarded to the
181) application that provides the most unobtrusive Tor experience while
182) still covering all criteria (working, perhaps, on the "no news is good
183) news" theory).</li>
184) <li><b>Most flexible</b> will be awarded to the best system that runs
185) smoothly on all three of Windows, Linux, and OS X; extra points will be
186) awarded for additional systems.</li>
187) </ul>
188) 
189) <p>We reserve the right to award other awards as the entries deserve.</p>
190) 
191) <hr />
192) <h3>How to Submit</h3>
193) 
194) <p>Submissions for phase one (sketches) should come as:</p>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

195) <ul>
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

196) <li>foo<li>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

197) </ul>
198) 
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

199) <p>Submissions for phase two (code) should come as:</p>
200) 
201) <ul>
202) <li>Source code, with appropriate makefiles or documentation explaining
203) how to build it. Must be licensed under a free/open source license, as
204) defined by <a href="http://www.opensource.org/licenses/">OSI</a> or <a
205) href="http://www.debian.org/social_contract#guidelines">DFSG</a>.  See <a
206) href="http://wiki.noreply.org/noreply/TheOnionRouter/ContestFAQ#DefineFree">this
207) FAQ entry</a> for clarification.</li>
208) <li>Compiled binaries or bytecodes for at least one platform of choice.</li>
209) <li>A design document providing an overview of what major functions
210) to look for and what functions were implemented.</li>
211) </ul>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

212) 
213) <hr />
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

214) <h3>Criteria</h3>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

215) 
216) <p>Awards will be granted on the basis of (in rough preference order):</p>
217) 
218) <ul>
219) <li>Usability (<a
220) href="http://wiki.noreply.org/noreply/TheOnionRouter/ContestFAQ#DefineUsable">what
221) does this mean?</a>)</li>
Roger Dingledine tweaks suggested by adam sh...

Roger Dingledine authored 19 years ago

222) <li>Informativeness: can the user learn what they need to know, both in terms
223) of using the network and also in terms of security decisions?</li>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

224) <li>Total user experience</li>
225) <li>Aesthetics</li>
226) <li>Responsiveness</li>
227) <li>Stability and robustness</li>
Roger Dingledine tweaks suggested by adam sh...

Roger Dingledine authored 19 years ago

228) <li>Internationalization (multiple language support)</li>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

229) <li>Installation experience</li>
230) </ul>
231) 
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

232) <hr />
233) <h3>Judges</h3>
234) 
235) <p>Judging will be led by a panel of N prominent specialists in usability
236) and security (to be announced).</p>
237) 
238) <hr />
239) <h3>Timeline</h3>
240) 
241) <ul>
242) <li>Stage 1 deadline (sketches): October 31.</li>
243) <li>Stage 1 judging: November 31.</li>
244) <li>Stage 2 deadline (code): January 31, 2006.</li>
245) 
246) <p>Winners will be announced at the SOUPS 2006 conference.</p>
247) 
248) <hr />
249) <h3>Questions and clarifications</h3>
250) 
251) <p>We will have a public website and wiki up shortly for FAQ entries,
252) clarifications, etc.</p>
253) 
254) 
255) 
256) 
257) 
258) <hr />
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

259) <hr />
260) <h3>Testing criteria</h3>
261) 
262) <p>To check for basic acceptability, the contest will be judged
263) with several major tests. For example, the system designer should expect:</p>
264) 
265) <ul>
266) <li>A minimal test: does it work?</li>
267) <li>Several parameters, both obscure and obvious, will be configured. Is
268) it possible and easy to do so?</li>
269) <li>A network will be connected once the system is running. Can the
270) user tell that the network is now live?</li>
271) <li>The network will be disconnected or interrupted. Can the user tell
272) that the network has an error?</li>
273) </ul>
274) 
275) <hr />
276) <h3>Submissions</h3>
277) 
278) <hr />
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

279) <h3>Technical Notes</h3>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

280) 
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

281) <p>Shortly before phase two begins, the Tor developers will release
282) a canonical code version. This is the version that will be used for
283) judging the contest; please ensure that you use this version. Bugfixes
284) to this version will be announced to the contest web site.</p>
Roger Dingledine first draft cut of the gui...

Roger Dingledine authored 19 years ago

285) 
Roger Dingledine work in some of the gui con...

Roger Dingledine authored 19 years ago

286) <p>The Tor developers will also release test rigs (libraries) in both Java
287) and Python that demonstrate Tor's controller protocol. Code submissions
288) may be able to save a lot of time by using this code as a skeleton.</p>