<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://blog.torproject.org" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Google Summer of Code</title>
 <link>http://blog.torproject.org/category/tags/google-summer-code</link>
 <description>The taxonomy view with a depth of 0.</description>
 <language>en</language>
<item>
 <title>Polipo changes maintainer</title>
 <link>http://blog.torproject.org/blog/polipo-changes-maintainer</link>
 <description>&lt;p&gt;Congratulations to Chrisd for assuming maintainership of the Polipo codebase from Juliusz.  The full announcement is available at &lt;a href=&quot;http://sourceforge.net/mailarchive/forum.php?thread_name=87d42l7fka.fsf%40trurl.pps.jussieu.fr&amp;amp;forum_name=polipo-users&quot; rel=&quot;nofollow&quot;&gt;the mailing list archives&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Why Chris?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Chrisd was a 2009 Google Summer of Code for Tor/EFF.  His project was &lt;a href=&quot;https://blog.torproject.org/blog/polipo-portability-enhancements-summary&quot; rel=&quot;nofollow&quot;&gt;Polipo Portability Enhancements&lt;/a&gt;.  Chris has proven himself to be a very competent coder and able to design and implement features as needed.  He even wrote a SOCKS layer fix for Firefox bugs, &lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=280661&quot; title=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=280661&quot; rel=&quot;nofollow&quot;&gt;https://bugzilla.mozilla.org/show_bug.cgi?id=280661&lt;/a&gt;.  &lt;/p&gt;
&lt;p&gt;&lt;em&gt;What does this mean to Tor?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;It means we have a fantastic new coder maintaining the polipo codebase.  Bugfixes, features, and more frequent releases should help improve polipo beyond where it is today.  &lt;/p&gt;
&lt;p&gt;&lt;em&gt;Is Tor going to control Polipo?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;We&#039;re not going to influence Chris on the direction of Polipo, but provide him support, volunteers, and an infrastructure to let him do what he needs to do.  Juliusz created polipo and got it off to a great start.  We&#039;re going to support Chris in continuing the progress.  The world still wants an http proxy that&#039;s modern, fast, and flexible.  Privoxy is a fine alternative to polipo, perhaps the two projects can come together.  &lt;/p&gt;
&lt;p&gt;&lt;em&gt;What&#039;s happening to Juliusz?&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Juliusz is a busy person.  His free time has been concentrated on Babel, &lt;a href=&quot;http://www.pps.jussieu.fr/~jch/software/babel/&quot; title=&quot;http://www.pps.jussieu.fr/~jch/software/babel/&quot; rel=&quot;nofollow&quot;&gt;http://www.pps.jussieu.fr/~jch/software/babel/&lt;/a&gt;, over the past year.  Juliusz is still a committer to polipo. We appreciate all of his help during the transition and for the years of maintenance of polipo.&lt;/p&gt;
</description>
 <comments>http://blog.torproject.org/blog/polipo-changes-maintainer#comments</comments>
 <category domain="http://blog.torproject.org/category/tags/google-summer-code">Google Summer of Code</category>
 <category domain="http://blog.torproject.org/category/tags/maintainer">maintainer</category>
 <category domain="http://blog.torproject.org/category/tags/new-features">new features</category>
 <category domain="http://blog.torproject.org/category/tags/performance">performance</category>
 <category domain="http://blog.torproject.org/category/tags/polipo">polipo</category>
 <category domain="http://blog.torproject.org/category/tags/volunteer">volunteer</category>
 <pubDate>Fri, 11 Dec 2009 13:02:36 -0800</pubDate>
 <dc:creator>phobos</dc:creator>
 <guid isPermaLink="false">216 at http://blog.torproject.org</guid>
</item>
<item>
 <title>BitTorrent support for Thandy</title>
 <link>http://blog.torproject.org/blog/bittorrent-support-thandy</link>
 <description>&lt;p&gt;As a returning &lt;a href=&quot;http://socghop.appspot.com/org/home/google/gsoc2009/eff&quot; rel=&quot;nofollow&quot;&gt;Google Summer of Code&lt;/a&gt; student for the second year in a row, I was thrilled to hear that I had been accepted again.&lt;/p&gt;
&lt;p&gt;My task was to add &lt;a href=&quot;http://www.bittorrent.com/&quot; rel=&quot;nofollow&quot;&gt;BitTorrent&lt;/a&gt; support to &lt;a href=&quot;https://git.torproject.org/checkout/thandy/master/&quot; rel=&quot;nofollow&quot;&gt;Thandy&lt;/a&gt;, the secure automated updater &lt;a href=&quot;http://google-opensource.blogspot.com/2009/03/thandy-secure-update-for-tor.html&quot; rel=&quot;nofollow&quot;&gt;developed&lt;/a&gt; by the Tor project, along with setting up and testing the necessary infrastructure. The goal is to better mitigate load spikes following the release of new software versions and allowing volunteers to easily help users to fetch Tor.&lt;/p&gt;
&lt;p&gt;Of course, working wasn&#039;t without its own challenges. My mentor and I live in different parts of the world, and real-time communication was often difficult to achieve due to timezone differences. Another big challenge was staying motivated during the first month, where university demanded a lot of attention. The situation improved substantially after the mid-term evaluation, when school-related work became less time consuming and I could focus on SoC entirely. During the whole time, I communicated with some of Tor&#039;s other SoC students, helping, encouraging and sharing some great laughs with each other. I feel that the community aspect of GSoC worked out much better this year.&lt;/p&gt;
&lt;p&gt;During the summer, it became apparent that following through with the original plan of using the &lt;a href=&quot;http://www.rasterbar.com/products/libtorrent/index.html&quot; rel=&quot;nofollow&quot;&gt;C++ libtorrent implementation by rasterbar&lt;/a&gt; would be difficult, due to various platform-independence issues and a huge resulting binary. Especially the last point made it clear that we wouldn&#039;t be able to use that for our netinstaller, one of the most important reasons to develop Thandy. Eventually, I settled on the original BitTorrent implementation, patched by Debian to work around some issues with newer versions of Python.&lt;/p&gt;
&lt;p&gt;It was great to see that this year, all my code has been merged into the Thandy source. I think my experience from last year saved me from making the same mistakes again, by focusing on small parts that work instead of re-designing major aspects of the software.&lt;/p&gt;
&lt;p&gt;Overall, I&#039;m very happy with how my Summer of Code turned out to be, and I hope to participate again (either as student or even mentor)!&lt;/p&gt;
</description>
 <comments>http://blog.torproject.org/blog/bittorrent-support-thandy#comments</comments>
 <category domain="http://blog.torproject.org/category/tags/bittorrent">BitTorrent</category>
 <category domain="http://blog.torproject.org/category/tags/google">google</category>
 <category domain="http://blog.torproject.org/category/tags/google-summer-code">Google Summer of Code</category>
 <category domain="http://blog.torproject.org/category/tags/gsoc">gsoc</category>
 <category domain="http://blog.torproject.org/category/tags/thandy">thandy</category>
 <pubDate>Thu, 10 Sep 2009 12:16:03 -0700</pubDate>
 <dc:creator>Sebastian</dc:creator>
 <guid isPermaLink="false">180 at http://blog.torproject.org</guid>
</item>
<item>
 <title>EFF and Tor in Google Summer of Code 2009</title>
 <link>http://blog.torproject.org/blog/eff-and-tor-google-summer-code-2009</link>
 <description>&lt;p&gt;Great news! We have been accepted as a mentoring organization for &lt;a href=&quot;http://socghop.appspot.com/program/home/google/gsoc2009&quot; rel=&quot;nofollow&quot;&gt;Google Summer of Code 2009&lt;/a&gt; together with &lt;a href=&quot;https://www.eff.org/&quot; rel=&quot;nofollow&quot;&gt;The Electronic Frontier Foundation&lt;/a&gt;. Yay!&lt;/p&gt;
&lt;p&gt;This will be our third Google Summer of Code after 2007 and &lt;a href=&quot;https://blog.torproject.org/blog/tor-project-google-summer-code-2008%21&quot; rel=&quot;nofollow&quot;&gt;2008&lt;/a&gt;. In our &lt;a href=&quot;http://code.google.com/soc/2007/eff/about.html&quot; rel=&quot;nofollow&quot;&gt;first year&lt;/a&gt; we had four students working on making relays work better (and not crash) on Windows, on a library and tool to try alternative path selection algorithms, on a fuzzing library to look for parsing problems, and on scalability and privacy for hidden services. In our &lt;a href=&quot;http://code.google.com/soc/2008/eff/about.html&quot; rel=&quot;nofollow&quot;&gt;second year&lt;/a&gt; we had seven students. One of our successful students of the 2008 program wrote a nice &lt;a href=&quot;https://blog.torproject.org/blog/google-summer-code-2008-review&quot; rel=&quot;nofollow&quot;&gt;blog post&lt;/a&gt; reviewing how GSoC went for him, for the other students, and for the project in general.&lt;/p&gt;
&lt;p&gt;We have made resolutions for our third GSoC participation to make it even more successful than in the past years. We have set ourselves the limit of accepting no more than 4 students (plus up to 2 students mentored by EFF). Rather than being persuaded by all those great applications, we want to focus on the most promising projects and students. We plan to assign up to 3 mentors to each student to provide optimal support. We will try harder to encourage students to interact with the community and become a part of it. It may be challenging to discuss project ideas on a mailing list or in a chat room with dozens or hundreds of unknown people listening. But communication is an important part of the GSoC experience (if not the most important).&lt;/p&gt;
&lt;p&gt;It might seem that we have high expectations about our students (actually we do!), but we also have a lot to offer. Our students will work on one of the largest deployed anonymity systems with a few hundred thousand users. We encourage GSoC students to stick to The Tor Project after summer and become part of the team; did you know that two of our &lt;a href=&quot;https://www.torproject.org/people#Core&quot; rel=&quot;nofollow&quot;&gt;Core people&lt;/a&gt; are former GSoC students? Our mentors are cryptographers, researchers, and/or software developers who have published numerous papers on distinguished security and privacy conferences all over the world. We have an awesome community with a lot of people who will be interested in the students&#039; projects and their progress. Ah, and finally Google gratefully pays $4.5K to each successful GSoC student. Isn&#039;t that a fine alternative to $your_last_summer_job?&lt;/p&gt;
&lt;p&gt;Did we get you interested? These are your next steps: Look at Google&#039;s FAQ whether you are &lt;a href=&quot;http://socghop.appspot.com/document/show/program/google/gsoc2009/faqs#eligibility&quot; rel=&quot;nofollow&quot;&gt;eligible&lt;/a&gt; to participate. Have a look at our &lt;a href=&quot;https://www.torproject.org/gsoc#Ideas&quot; rel=&quot;nofollow&quot;&gt;ideas lists&lt;/a&gt; (one for &lt;a href=&quot;https://www.torproject.org/volunteer.html.en#Projects&quot; rel=&quot;nofollow&quot;&gt;The Tor Project&lt;/a&gt;, one for the &lt;a href=&quot;http://switzerland.wiki.sourceforge.net/Projects&quot; rel=&quot;nofollow&quot;&gt;EFF&#039;s Switzerland tool&lt;/a&gt;). Put some thoughts on the listed ideas, or make up your own. Talk to us. No, really, this step is important: Talk to us! Come to &lt;a href=&quot;irc://irc.oftc.net/tor/&quot; rel=&quot;nofollow&quot;&gt;&amp;#35;tor on irc.oftc.net&lt;/a&gt; or send us an &lt;a href=&quot;mailto:tor-assistants@freehaven.net&quot; rel=&quot;nofollow&quot;&gt;email&lt;/a&gt; and let us know about your project idea. Write down your application using our &lt;a href=&quot;https://www.torproject.org/gsoc#Template&quot; rel=&quot;nofollow&quot;&gt;template&lt;/a&gt; and send it in until &lt;a href=&quot;http://socghop.appspot.com/document/show/program/google/gsoc2009/faqs#timeline&quot; rel=&quot;nofollow&quot;&gt;April 3, 2009, 19:00 UTC&lt;/a&gt;. Stick around for any questions we might have to you. We are looking forward to reading your application, erm, to talking to you and discussing your project idea!&lt;/p&gt;
</description>
 <comments>http://blog.torproject.org/blog/eff-and-tor-google-summer-code-2009#comments</comments>
 <category domain="http://blog.torproject.org/category/tags/google-summer-code">Google Summer of Code</category>
 <category domain="http://blog.torproject.org/category/tags/gsoc">gsoc</category>
 <category domain="http://blog.torproject.org/category/tags/gsoc-2009">gsoc 2009</category>
 <pubDate>Fri, 20 Mar 2009 19:30:25 -0700</pubDate>
 <dc:creator>karsten</dc:creator>
 <guid isPermaLink="false">117 at http://blog.torproject.org</guid>
</item>
<item>
 <title>Google Summer of Code 2008 review</title>
 <link>http://blog.torproject.org/blog/google-summer-code-2008-review</link>
 <description>&lt;p&gt;As we started preparing to apply for the Google Summer of Code 2009, we realized that we haven&#039;t reported how last year&#039;s Summer of Code went for us.&lt;/p&gt;
&lt;p&gt;Tor&#039;s 2008 Google Summer of Code was a victim of Tor&#039;s increasing growth! We&#039;ve got a lot more people involved now, and we have a lot more projects we want to tackle. But that also means we need to work harder at coordinating everything, and that&#039;s not as smooth as we&#039;d hoped.&lt;/p&gt;
&lt;p&gt;Tor had the luxury to receive seven slots for students. GSoC 2008 overall, was a success; as the students and projects contributed a lot to the Tor project. Also, here I am, a former GSoC student writing a blog post for the project.&lt;/p&gt;
&lt;p&gt;Below is an overview over the GSoC 2008 projects and a summary of their results.&lt;br /&gt;
&lt;!--break--&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Domenik Bork: Configuration of Hidden Services with User Authorization in Vidalia&lt;/em&gt;&lt;br /&gt;
Support for creating hidden services using a GUI was lacking from &lt;a href=&quot;http://vidalia-project.net&quot;&gt;Vidalia&lt;/a&gt;, making it very hard for Vidalia users to correctly set up their own. It was necessary to change Tor&#039;s configuration file manually, and many users are overwhelmed by the task of even locating that file. Domenik created a new tab in the Vidalia settings to allow the creation and configuration of hidden services, and worked on the necessary UI changes to allow the creation of the new hidden services with user authorization (currently available only in alpha versions of Tor). As soon as the next stable Tor version lands, users will be able to set up their hidden services with user authorization with more convenience.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Fallon Chen: Improving Tor Path Selection&lt;/em&gt;&lt;br /&gt;
When Tor decides on a path for a new circuit, many factors come into play. Currently, latency does not factor into the equation a whole lot, but it is really important for the user experience. On the other hand, always choosing the fastest connection will harm anonymity. Fallon tried to find a model to reduce circuit establishment times, without affecting anonymity too much. During her project, she gathered a lot of data that helps shaping the current development of Tor. She discovered that a Pareto distribution is a good model for Tor circuit establishing times. Unfortunately, she had to quit working before much actual code could be produced; nevertheless, her research is the basis for the current development of Tor&#039;s path selection. She was also involved in the writing of &lt;a href=&quot;https://svn.torproject.org/svn/tor/trunk/doc/spec/proposals/151-path-selection-improvements.txt&quot;&gt;proposal 151&lt;/a&gt;, which Mike Perry is currently implementing. The goal of the proposal is to allow Tor clients to automatically detect useful values for configuration options depending on the user&#039;s environment (mobile satellite connection vs. broadband, or changing conditions).&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Aleksei Gorny: Tor Exit Scanner Improvements&lt;/em&gt;&lt;br /&gt;
To prevent exit nodes from maliciously (or unintentionally) interfering with traffic passed through them, we have &lt;a href=&quot;https://svn.torproject.org/svn/torflow/trunk/NetworkScanners/README.ExitScanning&quot;&gt;SoaT (Snakes on a Tor)&lt;/a&gt; to automatically detect nodes that misbehave. It was Aleksei&#039;s task to extend SoaT to make it more useful, especially to make it execute tests automatically, so that eventually directory authorities can use its input to flag bad nodes appropriately. The result of the project is the foundation of our ongoing work there, and a functional version exists to be evaluated now.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Sebastian Hahn: Extending PuppeTor&lt;/em&gt;&lt;br /&gt;
During my project, I worked on extending &lt;a href=&quot;https://git.torproject.org/checkout/puppetor/master/&quot;&gt;PuppeTor&lt;/a&gt; to allow forming virtual networks that can run centrally coordinated tests (similar to buildbot, except with a test suite). I produced a version that allows basic tests to be run, but the API became incompatible with the pre-existing PuppeTor. Also, in its state immediately after the summer of code, writing tests was rather more difficult than with the original version. After the summer, we decided that there should be no two different versions of PuppeTor, and I continue to do work on top of the version produced during the summer. It will eventually be deployed as the new PuppeTor and used for regression testing as well as performance/anonymity evaluations. One of the specific challenges that both student and mentor learned from here was a lack of communication about what the result should look like.  I ended up developing something that wasn&#039;t what some of the developers had originally envisioned, which caused quite a bit of extra work.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Simon Johansson: A Translation wiki for our website&lt;/em&gt;&lt;br /&gt;
The Tor Project has been working over the past year to set up web-based tools to help volunteers translate our applications into other languages. We finally hit upon &lt;a href=&quot;http://translate.sourceforge.net/wiki/pootle/index&quot;&gt;Pootle&lt;/a&gt;, and we have a fine &lt;a href=&quot;https://translation.torproject.org/&quot;&gt;web-based translation engine&lt;/a&gt; in place for Vidalia, Torbutton, and Torcheck. However, Pootle only translates strings that are in the &quot;po&quot; format, and our website uses &lt;a href=&quot;https://www.torproject.org/translation&quot;&gt;wml files&lt;/a&gt;. Simon&#039;s project was to come up with a way to convert our wml files into po strings and back, so they could be handled by Pootle. Unfortunately, communication between Simon and his mentor didn&#039;t happen often enough, and in the end we got very little useful work out of this project. Nevertheless, many components of the Tor project can now be &lt;a href=&quot;https://www.torproject.org/translation-overview&quot;&gt;translated by using Pootle&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Camilo Viecco: Providing Blossom functionality to Vidalia&lt;/em&gt;&lt;br /&gt;
&lt;a href=&quot;https://svn.torproject.org/svn/blossom/trunk/&quot;&gt;Blossom&lt;/a&gt; allows to choose that the user prefers to exit from a specific country. The same can be achieved by manually changing Tor&#039;s configuration file, but Vidalia, our Tor configuration tool, did not have a way to easily let users select a country to exit from.  Camilo&#039;s task was to integrate this functionality into Vidalia, so that mainstream users can benefit without needing to figure out how to use Blossom. During his work, a completely functional branch was created that can be used to achieve the goals. Due to some changes in the Vidalia UI, his work couldn&#039;t be merged into mainline Vidalia completely. Instead, his back-end changes will be cherry-picked into mainline as soon as the UI work is finished.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Christian Wilms: Performance Enhancing Measures for Tor Hidden Services&lt;/em&gt;&lt;br /&gt;
Hidden services are a very useful feature in Tor that allows anyone to host a location-hidden service. Unfortunately, accessing them is often a rather slow process. Based on a &lt;a href=&quot;http://freehaven.net/anonbib/#loesing2008performance&quot;&gt;paper&lt;/a&gt; that he and Karsten Loesing had written, Christian started out by measuring connection times to hidden services under various conditions. He found and fixed quite a few bugs in the process. During the remainder of the summer, Christian worked on a larger-scale change to reduce connection times, and his work could be used as a basis for a later patch to fix the remaining issues.&lt;/p&gt;
&lt;p&gt;The summary is that Tor took too many students last summer; as overall we were about 50% successful with project completion. Better mentoring, including being stricter with students and weekly progress reports, could have been very helpful for our students. I experienced it myself: towards the end of the summer I still had a lot of stuff on my plate that I needed to rush through. By having fewer students and better communication between mentors and students, and involving students more with the Tor project as a whole, we should be able to get even more out of the next summer, if Google invites us to participate again. Maybe the next GSoC blog post will be written by a GSoC 2009 student?&lt;/p&gt;
&lt;p&gt;As a last note, next time around we plan to work more closely with the &lt;a href=&quot;https://www.eff.org&quot;&gt;EFF&lt;/a&gt; (our sponsor organization for GSoC). In particular, we&#039;d like to accept a few students to work with Peter Eckersley on Switzerland and other projects organized by EFF&#039;s engineers.&lt;/p&gt;
</description>
 <comments>http://blog.torproject.org/blog/google-summer-code-2008-review#comments</comments>
 <category domain="http://blog.torproject.org/category/tags/google-summer-code">Google Summer of Code</category>
 <category domain="http://blog.torproject.org/category/tags/gsoc">gsoc</category>
 <category domain="http://blog.torproject.org/category/tags/gsoc-2008">gsoc 2008</category>
 <pubDate>Mon, 09 Mar 2009 04:48:11 -0700</pubDate>
 <dc:creator>Sebastian</dc:creator>
 <guid isPermaLink="false">112 at http://blog.torproject.org</guid>
</item>
</channel>
</rss>
