<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Kfogel on Launchpad Blog</title>
    <link>https://blog.launchpad.net/authors/kfogel/</link>
    <description>News and updates from the Launchpad team</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 03 Mar 2010 23:00:51 +0000</lastBuildDate>
    <atom:link href="https://blog.launchpad.net/feed/authors/kfogel/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>Getting Patches Upstream</title>
      <link>https://blog.launchpad.net/bug-tracking/getting-patches-upstream/</link>
      <pubDate>Wed, 03 Mar 2010 23:00:51 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=1356</guid>
      <description>&lt;center&gt;
&lt;p&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/03/bugs-patches-luv.png&#34; alt=&#34;bugs+patches=luv&#34;&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;We heard from Ubuntu maintainers and upstream developers that it was too easy to lose track of patches in bugs filed on Launchpad — or, put another way, that Launchpad wasn&amp;rsquo;t doing enough to bring patches to developers&amp;rsquo; attention.&lt;/p&gt;
&lt;p&gt;According to the &lt;a href=&#34;https://wiki.ubuntu.com/Specs/LaunchpadUpstreamImprovements&#34;&gt;Launchpad Upstream Improvements Spec&lt;/a&gt; that came out of a recent UDS:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Upstreams frequently complain that it is difficult for them to find Ubuntu patches. &lt;a href=&#34;http://patches.ubuntu.com/&#34;&gt;patches.ubuntu.com&lt;/a&gt; is a diff between Ubuntu and Debian, so it&amp;rsquo;s not really useful to some upstreams. We want an upstream patch report that shows patches in packages and their age, so we can act on them. &amp;hellip;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;To help solve this problem, we&amp;rsquo;ve added two new features to Launchpad.&lt;/p&gt;
&lt;h3 id=&#34;1-the-upstream-report-now-shows-bugs-carrying-patches&#34;&gt;1. The upstream report now shows bugs carrying patches.&lt;/h3&gt;
&lt;p&gt;The &lt;a href=&#34;https://launchpad.net/ubuntu/+upstreamreport&#34;&gt;upstream report&lt;/a&gt; now shows the number of bugs carrying patches — see the rightmost column in this screenshot:&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/upstream-report.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/upstream-report-600.png&#34; alt=&#34;Upstream report, showing number of patches in rightmost column.&#34;&gt;&lt;/a&gt;&lt;br/&gt;&lt;span style=&#34;font-style: italic; font-color: grey;&#34;&gt;(click image to enlarge)&lt;/span&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;If you click on the number in that column, it brings you to a listing of the bugs with patches.&lt;/p&gt;
&lt;h3 id=&#34;2-a-new-patch-report-is-available-wherever-bugs-are-available&#34;&gt;2. A new &amp;ldquo;patch report&amp;rdquo; is available wherever bugs are available.&lt;/h3&gt;
&lt;p&gt;The second feature is a new &lt;em&gt;patch report&lt;/em&gt; available for projects, project groups, source packages, people, teams, distributions, and distroseries.  It lists bugs that have patches attached — for those of you who&amp;rsquo;ve seen &lt;a href=&#34;http://www2.bryceharrington.org:8080/X/Reports/patches.html&#34;&gt;Bryce Harrington&amp;rsquo;s mockup&lt;/a&gt;, this is the same thing implemented directly in Launchpad.&lt;/p&gt;
&lt;p&gt;The goal of the patch report is to make it easier for packagers and upstream developers to find patches that could be upstreamed, and, especially, to enable them to evaluate those patches quickly.&lt;/p&gt;
&lt;p&gt;You can reach the patch report from a new link on any bugs page.  On the project bugs page below, for example, see the link &amp;ldquo;&lt;em&gt;7 bugs with patches&lt;/em&gt;&amp;rdquo; in the portlet on the right (and you can click on any of these screenshots to get a larger version):&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/product-plural-bugs-page.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/product-plural-bugs-page-600.png&#34; alt=&#34;The product bugs page bugfilters portlet shows the number of bugs with patches.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;Clicking on the &amp;ldquo;&lt;em&gt;7 bugs with patches&lt;/em&gt;&amp;rdquo; link appends &amp;ldquo;&lt;tt&gt;+patches&lt;/tt&gt;&amp;rdquo; to the URL (hint, hint) which takes you to the corresponding patch report.  There, patches are listed by bugtask, sorted by the age of the most recent patch in each bug, on the theory that new patches are probably more interesting than old ones:&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-product.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-product-600.png&#34; alt=&#34;The patch report for a project.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;But you can sort by other things as well — say, by bugtask importance:&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/sort-by-importance-prep.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/sort-by-importance-prep-600.png&#34; alt=&#34;Selecting a sort by importance from the dropdown box of sort orders.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;Sorting applies across &lt;em&gt;all&lt;/em&gt; applicable patches, not just the ones that happen to be on the current page of a potentially multi-page list.  Thus changing the sort order might change the set of bugs visible on the current page:&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/sorted-by-importance.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/sorted-by-importance-600.png&#34; alt=&#34;Patch tasks can be sorted by importance.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;When you hover over a patch, a popup shows details about that patch (who uploaded it, the patch&amp;rsquo;s filename, and its attachment message):&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-hover-popup-sorted-by-importance.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-hover-popup-sorted-by-importance-600.png&#34; alt=&#34;Hovering over a patching displays a popup of information about that patch.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;The patch report for entities like distributions and distroseries arranges patches by source package, since the same bug may have a different bugtask for each package, and each bugtask may have its own status, importance, etc:&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-ubuntu.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-ubuntu-600.png&#34; alt=&#34;Patch report for Ubuntu distro.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;You can also view the patch report on a particular source package:&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-package-about-to-click.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-report-package-about-to-click-600.png&#34; alt=&#34;Patch report for a source package, about to click on the single patch.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;Note that &lt;strong&gt;distroseries&lt;/strong&gt;, &lt;strong&gt;persons&lt;/strong&gt;, &lt;strong&gt;teams&lt;/strong&gt;, and &lt;strong&gt;project groups&lt;/strong&gt; all support this feature too.  I didn&amp;rsquo;t include screenshots for them, to save space, but their patch reports can be reached in the expected way.&lt;/p&gt;
&lt;p&gt;Naturally, clicking on a patch takes you straight to the diff:&lt;/p&gt;
&lt;center&gt;
&lt;p&gt;&lt;a href=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-text.png&#34;&gt;&lt;img src=&#34;https://blog.launchpad.net/images/posts/2010/06/patch-text-600.png&#34; alt=&#34;A patch file.&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/center&gt;
&lt;p&gt;We&amp;rsquo;re hoping that these features, combined with the recently-landed &lt;a href=&#34;http://blog.launchpad.net/bug-tracking/improved-bug-patch-notifications&#34;&gt;patch notification&lt;/a&gt; improvements and &lt;a href=&#34;http://blog.launchpad.net/bug-tracking/bug-heat&#34;&gt;bug heat&lt;/a&gt;, will make it easier to find the patches worth immediate attention.&lt;/p&gt;
&lt;p&gt;These patch reports are new in Launchpad 10.02.  About a month after they go live, we&amp;rsquo;re going to look at the stats on how people have been using them, and we&amp;rsquo;re going to survey some upstreams and Ubuntu maintainers to see what they feel can be improved.  Please also file bug reports as you use these new features, of course (if you feel like going the extra mile, tag your bug report with the &lt;tt&gt;patch-tracking&lt;/tt&gt; tag — it&amp;rsquo;ll save us some time).&lt;/p&gt;
&lt;p&gt;Finally, please feel free to help improve the features yourself!  The bug links below will lead you to the branches on which these changes were made, so you can see what the code looks like.  The Launchpad &lt;a href=&#34;https://dev.launchpad.net/&#34;&gt;development wiki&lt;/a&gt; is the place to start for hacking on Launchpad.&lt;/p&gt;
&lt;h3 id=&#34;references&#34;&gt;References:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://wiki.ubuntu.com/Specs/LaunchpadUpstreamImprovements&#34;&gt;Launchpad Upstream Improvements Spec&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;The &lt;a href=&#34;https://dev.launchpad.net/Bugs/PatchTracking&#34;&gt;Bugs/PatchTracking&lt;/a&gt; page in the Launchpad Development Wiki&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bug/283097&#34;&gt;Bug #283097&lt;/a&gt; is about adding a &amp;lsquo;has patch&amp;rsquo; column to the &lt;tt&gt;+packagebugs&lt;/tt&gt; page.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bug/283941&#34;&gt;Bug #283941&lt;/a&gt; is about showing patches in the upstream report (see linked branch for code change).&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bugs?field.searchtext=&amp;amp;orderby=-importance&amp;amp;assignee_option=any&amp;amp;field.assignee=&amp;amp;field.bug_reporter=&amp;amp;field.bug_supervisor=&amp;amp;field.bug_commenter=&amp;amp;field.subscriber=&amp;amp;field.omit_dupes.used=&amp;amp;field.omit_dupes=on&amp;amp;field.has_patch.used=&amp;amp;field.has_cve.used=&amp;amp;field.affects_me.used=&amp;amp;field.tag=story-patch-report&amp;amp;field.tags_combinator=ANY&amp;amp;search=Search&#34;&gt;Bugs tagged with &lt;tt&gt;story-patch-report&lt;/tt&gt;&lt;/a&gt; are about the patch report (again, see linked branches for code changes).&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;things-we-didnt-get-to-this-cycle-but-that-were-thinking-about&#34;&gt;Things we didn&amp;rsquo;t get to this cycle, but that we&amp;rsquo;re thinking about:&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Finding patches in other distributions (but see Daniel Holbach&amp;rsquo;s amazing &lt;a href=&#34;http://daniel.holba.ch/harvest/&#34;&gt;Harvest&lt;/a&gt; tool).&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bug/515674&#34;&gt;Bug #515674&lt;/a&gt; is about showing the patches a distribution is carrying in its packages (i.e., in its &lt;tt&gt;debian/patches&lt;/tt&gt; directories).  Note in particular &lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bug/515674/comments/4&#34;&gt;comment #4&lt;/a&gt; there, about UI complexity.&lt;/li&gt;
&lt;li&gt;Showing patches in upstream trackers.  Such patches might be downstreamable, or they might be the same as patches Launchpad already has; either way, it&amp;rsquo;d be good to know.  See &lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bug/403443&#34;&gt;bug #403443&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Package ↔ Branch equivalence.  Really, a branch attached to a bug is equivalent to a patch attached to a bug (assuming the base source can be easily located, which it often can be).  Ideally, we could represent either one as the other, and treat them as the same in filters and reports.&lt;/li&gt;
&lt;li&gt;Launchpad isn&amp;rsquo;t yet making use of the Debian &lt;a href=&#34;http://dep.debian.net/deps/dep3/&#34;&gt;DEP-3 Patch Tagging Guidelines&lt;/a&gt; metadata, which is also &lt;a href=&#34;https://wiki.ubuntu.com/UbuntuDevelopment/PatchTaggingGuidelines&#34;&gt;the standard in Ubuntu&lt;/a&gt; now.&lt;/li&gt;
&lt;li&gt;In general, see bugs tagged with &lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bugs?field.searchtext=&amp;amp;orderby=-importance&amp;amp;assignee_option=any&amp;amp;field.assignee=&amp;amp;field.bug_reporter=&amp;amp;field.bug_supervisor=&amp;amp;field.bug_commenter=&amp;amp;field.subscriber=&amp;amp;field.omit_dupes.used=&amp;amp;field.omit_dupes=on&amp;amp;field.has_patch.used=&amp;amp;field.has_cve.used=&amp;amp;field.affects_me.used=&amp;amp;field.tag=patch-tracking&amp;amp;field.tags_combinator=ANY&amp;amp;search=Search&#34;&gt;&lt;tt&gt;patch-tracking&lt;/tt&gt;&lt;/a&gt; and &lt;a href=&#34;https://bugs.edge.launchpad.net/malone/+bugs?field.searchtext=&amp;amp;orderby=-importance&amp;amp;assignee_option=any&amp;amp;field.assignee=&amp;amp;field.bug_reporter=&amp;amp;field.bug_supervisor=&amp;amp;field.bug_commenter=&amp;amp;field.subscriber=&amp;amp;field.omit_dupes.used=&amp;amp;field.omit_dupes=on&amp;amp;field.has_patch.used=&amp;amp;field.has_cve.used=&amp;amp;field.affects_me.used=&amp;amp;field.tag=patch-tracking-external&amp;amp;field.tags_combinator=ANY&amp;amp;search=Search&#34;&gt;&lt;tt&gt;patch-tracking-external&lt;/tt&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
</description>
    </item>
    
    <item>
      <title>CORRECTION: Launchpad read-only 23.00 UTC Wed 3rd March - 00.30 UTC Thu 4th March, 2010</title>
      <link>https://blog.launchpad.net/general/launchpad-read-only-23-00-utc-wed-3rd-march-00-30-utc-thu-4th-march-2010/</link>
      <pubDate>Mon, 01 Mar 2010 22:32:29 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=1413</guid>
      <description>&lt;p&gt;&lt;em&gt;(This is a correction to a previous post.)&lt;/em&gt; Launchpad&amp;rsquo;s web interface will be read-only for roughly 90 minutes, from 23.00 UTC Wednesday 3rd March to 00.30 UTC Thursday 4th March, 2010. Other aspects of Launchpad — including code hosting, PPAs, the API and email interface — will be unavailable during that time.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Starts:&lt;/strong&gt; 23.00 UTC, Wednesday 3rd March 2010&lt;br&gt;
&lt;strong&gt;Expected back:&lt;/strong&gt; 00.30 UTC, Thursday 4th March 2010&lt;/p&gt;
&lt;p&gt;During this time, we&amp;rsquo;ll be releasing the code for Launchpad 10.02.&lt;/p&gt;
&lt;p&gt;The next planned down-time for Launchpad will be for our 10.03 release on the 31st of March.  We&amp;rsquo;ll publish the exact time, nearer to the release date, on our &lt;a href=&#34;http://identi.ca/launchpadstatus&#34;&gt;status page&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;You can also see the &lt;a href=&#34;https://dev.launchpad.net/Releases/2010Calendar/&#34;&gt;Launchpad release calendar&lt;/a&gt; to check for future release down-time.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Launchpad read-only (corrected; see new post)</title>
      <link>https://blog.launchpad.net/notifications/launchpad-read-only-22-00-utc-3rd-march-2010/</link>
      <pubDate>Mon, 01 Mar 2010 13:22:15 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=1396</guid>
      <description>&lt;p&gt;&lt;em&gt;This post has been corrected; please see the &lt;a href=&#34;https://blog.launchpad.net/general/launchpad-read-only-23-00-utc-wed-3rd-march-00-30-utc-thu-4th-march-2010&#34;&gt;new post&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Connecting Ubuntu, Upstreams and Users.</title>
      <link>https://blog.launchpad.net/general/connecting-ubuntu-upstreams-users/</link>
      <pubDate>Tue, 15 Dec 2009 07:38:51 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=1199</guid>
      <description>&lt;p&gt;Since we started focusing on &lt;a href=&#34;http://blog.launchpad.net/general/launchpad-the-next-six-months&#34;&gt;bridging the gap&lt;/a&gt; between upstream projects, users, and distribution packagers, we&amp;rsquo;ve been talking to a lot of people, to help us better understand the size and nature of those gaps.&lt;/p&gt;
&lt;p&gt;(Those conversations are continuing, too — if you&amp;rsquo;d like to be a source, &lt;em&gt;especially&lt;/em&gt; if you&amp;rsquo;re an upstream developer whose software is packaged in Ubuntu or Debian and you&amp;rsquo;ve seen bug reports, translations, or other data come to your project via Launchpad, then please see Matthew Revell&amp;rsquo;s &lt;a href=&#34;http://blog.launchpad.net/general/phone-interviews-about-your-launchpad-usage&#34;&gt;invitation&lt;/a&gt;.)&lt;/p&gt;
&lt;p&gt;Meanwhile, we&amp;rsquo;ve started to synthesize what we&amp;rsquo;re hearing so far. Recently I went through the &lt;a href=&#34;https://dev.launchpad.net/Strategy/RawData&#34;&gt;raw data&lt;/a&gt; to distill it into key points.  I filtered out some stuff that had nothing to do with bridging the gap, or that was only mentioned by one or two people.  (Conversely, I kept some stuff that I know we&amp;rsquo;ve heard mentioned by multiple people, even though I may only be able to offer one or two citations here.)&lt;/p&gt;
&lt;p&gt;Filtering notwithstanding, what&amp;rsquo;s interesting is how consistent a lot of the feedback is.  The same points kept showing up over and over:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Speed: Launchpad needs to be faster.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sandy Armstrong&lt;/li&gt;
&lt;li&gt;Jussi Schultink&lt;/li&gt;
&lt;li&gt;Ted Gould&lt;/li&gt;
&lt;li&gt;Marjo Mercado&lt;/li&gt;
&lt;li&gt;Jorge Castro&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;There is universal agreement on this.  We&amp;rsquo;re working on it everywhere, as there isn&amp;rsquo;t one magic fix that will solve it for all of Launchpad.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;PPA-of-the-day is highly desirable!&lt;/strong&gt; The easier it is for users to test, the more testing they will do. Therefore, instant packaging of latest upstream code would be awesomelicious.&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Scott Ritchie&lt;/li&gt;
&lt;li&gt;Sandy Armstrong (more or less)&lt;/li&gt;
&lt;li&gt;Carl Richell&lt;/li&gt;
&lt;li&gt;Ted Gould (see &amp;ldquo;continuous integration&amp;rdquo; in his page)&lt;/li&gt;
&lt;li&gt;Jorge Castro&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Yup.  We&amp;rsquo;re working on this right now.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Forward bugs more easily, more quickly, and link upstream back to original reporter.&lt;/strong&gt; (Bryce Harrington, for example, scripts Launchpad very heavily to get what he wants; he points out that the original reporter of a bug should not have to create an account in the upstream tracker to be contacted by upstream — simply having filed in Launchpad should be enough.)&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sandy Armstrong (as an upstream, wants timely forwarding)&lt;/li&gt;
&lt;li&gt;Bryce Harrington (as a reporter, wants ease-of-forwarding)&lt;/li&gt;
&lt;li&gt;Jorge Castro&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;We&amp;rsquo;re trying to nail &lt;a href=&#34;https://dev.launchpad.net/Bugs/BugHeat&#34;&gt;bug heat&lt;/a&gt; and &lt;a href=&#34;https://dev.launchpad.net/Bugs/BugQ%26A&#34;&gt;bug Q&amp;amp;A&lt;/a&gt; first, but we&amp;rsquo;re keen to do this too.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Branch/patch equivalence:&lt;/strong&gt; Transform one into the other in one click, and push changes easily to upstream in the form upstream prefers.&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Jorge Castro&lt;/li&gt;
&lt;li&gt;Cody Russell (sort of)&lt;/li&gt;
&lt;li&gt;Sidnei da Silva&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;This is a high priority; we&amp;rsquo;re working on it!&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Be able to instantly see attributes of comments or commenters in a bug.&lt;/strong&gt; E.g., tag the comment as &amp;ldquo;workaround&amp;rdquo;, have the commenter be displayed differently because of their role, their credibility, or some other quality.  Seeing that kind of information in the UI would save a lot of time.&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sandy Armstrong (sort of)&lt;/li&gt;
&lt;li&gt;Jussi Schultink&lt;/li&gt;
&lt;li&gt;Ted Gould&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;This would be great.  It&amp;rsquo;s not on Canonical&amp;rsquo;s roadmap right now, but we&amp;rsquo;d certainly be interested in helping any community developer who wanted to &lt;a href=&#34;https://dev.launchpad.net/&#34;&gt;have a go&lt;/a&gt; at it.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Get more, better information from users in bug reports&lt;/strong&gt; (e.g., many don&amp;rsquo;t say the version number of the software). Jussi Schultink mentioned some kind of LP-integrated screen capture would be great; I&amp;rsquo;m not sure how that would work, but it&amp;rsquo;s a neat idea.&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sandy Armstrong&lt;/li&gt;
&lt;li&gt;Jussi Schultink&lt;/li&gt;
&lt;li&gt;Bryce Harrington&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;This is more a set of related ideas than a fleshed-out requirement, but &lt;a href=&#34;https://dev.launchpad.net/Bugs/BugQ%26A&#34;&gt;bug Q&amp;amp;A&lt;/a&gt; is probably a step in the right direction.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Launchpad&amp;rsquo;s search is ill-placed in the UI and/or ineffective&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Jussi Schultink&lt;/li&gt;
&lt;li&gt;Ted Gould&lt;/li&gt;
&lt;li&gt;Ryan Paul&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Insofar as placement goes, that should be a relatively easy fix.  As for functionality, we should identify exactly what is going wrong (the &lt;a href=&#34;https://dev.launchpad.net/Strategy/RawData&#34;&gt;raw data&lt;/a&gt; has more details).  On a semi-related note: probably a lot of the searching people do in Launchpad is with the expectation of finding a match somewhere in the vast bugs database, in which case the new &lt;a href=&#34;http://blog.launchpad.net/cool-new-stuff/inline-dupe-finding&#34;&gt;inline dupe-finding&lt;/a&gt; may help improve that experience, or at least reduce the necessity of having it.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Make it easier to find patches that distro should integrate.&lt;/strong&gt; This could be a tool that would help everyone: not just Ubuntu, but other distros and upstreams too.  Part of the trick is to look at other distros&amp;rsquo; trackers for patches, not just at upstream.&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Jorge Castro&lt;/li&gt;
&lt;li&gt;(Others say this too, just happens not to be in the notes I trawled this time&amp;hellip; but I know it&amp;rsquo;s out there.)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;This is ultimately the &lt;a href=&#34;https://dev.launchpad.net/Bugs/PatchTracking&#34;&gt;&amp;ldquo;patch report&amp;rdquo;&lt;/a&gt; functionality that was discussed at UDS.  While the full story is quite extensive and probably will not be in Launchpad 4.0, some of the sub-stories will be, in particular the parts that make it much easier to quickly see patches attached to Launchpad bugs, and to generate reports about patches.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Better bug dup searching, better UI for handling bug dup scenarios&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ted Gould&lt;/li&gt;
&lt;li&gt;Marjo Mercado (esp bugs in other trackers)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Access to older PPAs would be great.&lt;/strong&gt; (Then users could figure out when a bug was introduced, for example.)&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Scott Ritchie&lt;/li&gt;
&lt;li&gt;Ted Gould&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cross-distro bug forwarding.&lt;/strong&gt; E.g., LP copies a bug from Fedora&amp;rsquo;s tracker and then forwards it to the proper upstream.&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sandy Armstrong&lt;/li&gt;
&lt;li&gt;Jorge Castro (in private conversation)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;More ways to view bugs.&lt;/strong&gt; E.g., omit &amp;ldquo;fix committed&amp;rdquo; bugs from list.&lt;/p&gt;
&lt;p&gt;Cited by:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sandy Armstrong&lt;/li&gt;
&lt;li&gt;Jorge Castro (IIRC, not sure it&amp;rsquo;s actually in his page)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;Interesting that three of those last five related to searching &amp;amp; reporting.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I know much of the above just confirms the direction we&amp;rsquo;re already going, but I wanted to share it anyway.  The emphasis on speed over features was a bit of a surprise to me; good to know.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;re really feeling squirrelly, go look over the raw data itself.  I left a &lt;em&gt;lot&lt;/em&gt;. out above; users have lots of ideas about how to improve Launchpad (as well as much praise for it), and it&amp;rsquo;s kind of fascinating reading: &lt;a href=&#34;https://dev.launchpad.net/Strategy/RawData&#34;&gt;https://dev.launchpad.net/Strategy/RawData&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The interviewees were:&lt;/p&gt;
&lt;table border=&#34;0&#34;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/BryceHarrington&#34;&gt;Bryce Harrington&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Canonical - X.org stack&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/CarlRichell&#34;&gt;Carl Richell&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;System 76.  Linux computers, yay!&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/CodyRussell&#34;&gt;Cody Russell&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Canonical - Desktop Experience&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/JorgeCastro&#34;&gt;Jorge Castro&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Canonical - Ubuntu Community&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/JussiSchultink&#34;&gt;Jussi Schultink&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;IRC Council, Kubuntu / Ubuntu Studio&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/MarjoMercado&#34;&gt;Marjo Mercado&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Canonical - Ubuntu QA&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/RyanPaul&#34;&gt;Ryan Paul&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Gwibber upstream&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/SandyArmstrong&#34;&gt;Sandy Armstrong&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Tomboy upstream&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/ScottRitchie&#34;&gt;Scott Ritchie&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Packager, mostly for universe, esp WINE&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/SidneiDaSilva&#34;&gt;Sidnei da Silva&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Canonical - Landscape&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href=&#34;http://dev.launchpad.net/Strategy/RawData/TedGould&#34;&gt;Ted Gould&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;Canonical - indicators / sys status&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;The sources include a fair number of Canonical employees.  That&amp;rsquo;s just because we had easy access to them right away, while we were still tracking down upstream developers to interview.  We will continue to talk to both, but our emphasis is now on upstream developers and on the people who bridge the gap between upstreams and distribution.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Code Hosting offline from 10:00-10:30 UTC, Thursday 1 Oct</title>
      <link>https://blog.launchpad.net/general/code-hosting-offline-2009-10-01/</link>
      <pubDate>Tue, 29 Sep 2009 12:38:25 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=1070</guid>
      <description>&lt;p&gt;Launchpad&amp;rsquo;s Code Hosting service (&lt;tt&gt;code.launchpad.net&lt;/tt&gt; and all Bazaar access) will be offline from 10:00am-10:30am UTC, Thursday, 1 October 2009.  Sorry for the short notice; we need to do some unexpected hardware maintenance.&lt;/p&gt;
&lt;pre&gt;
     &lt;strong&gt;Going offline: 10am UTC, 1 Oct 2009&lt;/strong&gt;
     &lt;strong&gt;Expected back: 10:30am UTC, 1 Oct 2009&lt;/strong&gt;
&lt;/pre&gt;
&lt;p&gt;That&amp;rsquo;s 11am London (BST), 12 noon Western Europe, 2pm Moscow, 6pm Beijing, 8pm Sydney, 3am California, 6am New York.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Removing Launchpad&#39;s &#34;Mentoring&#34; Feature.</title>
      <link>https://blog.launchpad.net/general/removing-mentoring/</link>
      <pubDate>Tue, 15 Sep 2009 21:01:06 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=989</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://blog.launchpad.net/images/external/help.launchpad.net/BlogImages/mentoring-button.png&#34; alt=&#34;Partial screen capture of a page showing mentoring&#34;&gt;&lt;/p&gt;
&lt;p&gt;This is a last call for user experience data with Launchpad&amp;rsquo;s &amp;ldquo;Mentoring&amp;rdquo; feature for bugs and blueprints.&lt;/p&gt;
&lt;p&gt;We&amp;rsquo;ve seen only limited usage of this feature, and haven&amp;rsquo;t gotten much positive feedback on it.  Right now, it&amp;rsquo;s dropped from our 3.0 redesign; but before 3.0 is finalized, we&amp;rsquo;re interested in hearing people&amp;rsquo;s experiences with mentoring.&lt;/p&gt;
&lt;p&gt;If you&amp;rsquo;ve used the Mentoring feature, either as a mentor or a mentee, please leave your feedback as a comment here.  We&amp;rsquo;re particularly interested in answers to these questions:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Would you say that Mentoring caused any difference in the rate of resolution between mentored and non-mentored bugs?  (It could be a positive or a negative difference; both are interesting to us.)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;For people who offered mentoring: in your experience, did you have responses on your mentoring offers?  Were you successful in integrating the mentee&amp;rsquo;s changes?&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Do you have any thoughts on how to improve the feature?&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Please note: this is about Launchpad&amp;rsquo;s specific implementation of Mentoring, &lt;em&gt;not&lt;/em&gt; about mentoring features in the abstract.  We&amp;rsquo;re interested in your experiences with what&amp;rsquo;s actually been available in Launchpad.  If a few people found the Mentoring feature useful, but most who tried it did not, then we will probably leave it out of Launchpad 3.0.  On the other hand, if we hear something very unexpected from the feedback, that could affect our decision of course.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Launchpad is now open source.</title>
      <link>https://blog.launchpad.net/general/launchpad-is-now-open-source/</link>
      <pubDate>Tue, 21 Jul 2009 06:01:32 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=876</guid>
      <description>&lt;p&gt;This is a post I&amp;rsquo;ve been looking forward to for a long time:&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://launchpad.net&#34;&gt;Launchpad&lt;/a&gt; is now open source!&lt;/p&gt;
&lt;p&gt;We released it today under the &lt;a href=&#34;https://dev.launchpad.net/LaunchpadLicense&#34;&gt;GNU Affero General Public license, version 3&lt;/a&gt;.  Note that although we had previously announced that we&amp;rsquo;d be holding back two components (codehosting and soyuz), we changed our minds: they are included — all the code is open.&lt;/p&gt;
&lt;p&gt;Big congratulations (and thanks) to the Canonical Launchpad team, who worked overtime to make this happen sooner rather than later, and to Mark Shuttleworth, whose decision it was to open source Launchpad in the first place.&lt;/p&gt;
&lt;p&gt;Rather than repeat the various release announcements, I&amp;rsquo;ll just point to them:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://lists.launchpad.net/launchpad-users/msg05118.html&#34;&gt;launchpad-users mailing list&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://blog.canonical.com/?p=192&#34;&gt;Blog post at Canonical.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;http://www.ubuntu.com/news/canonical-open-sources-launchpad/&#34;&gt;Press release&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://dev.launchpad.net/&#34;&gt;The development wiki&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://dev.launchpad.net/Getting&#34;&gt;Instructions for getting the code.&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The Canonical Launchpad developers will be on IRC in channel &lt;a href=&#34;irc://irc.freenode.net/#launchpad-dev&#34;&gt;#launchpad-dev&lt;/a&gt; on irc.freenode.net.  That&amp;rsquo;s the place to go for real time development discussion and questions.  For usage issues, &lt;a href=&#34;irc://irc.freenode.net/#launchpad&#34;&gt;#launchpad&lt;/a&gt; is still the place, as before.&lt;/p&gt;
&lt;p&gt;The mailing list is &lt;tt&gt;launchpad-dev {AT} lists.launchpad.net&lt;/tt&gt;, which you can subscribe to by &lt;a href=&#34;https://launchpad.net/~launchpad-dev&#34;&gt;joining the ~launchpad-dev team&lt;/a&gt;.  Again, that&amp;rsquo;s the development mailing list; user questions should still go to &lt;tt&gt;launchpad-users {AT} lists.launchpad.net&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;Please bear with us as we learn how to be an open source team.  Many of the Launchpad developers have open source experience already, of course, but as a team we&amp;rsquo;ve been working on Launchpad in-house for some years.  This is a big change.  We&amp;rsquo;ve been looking forward to it, though, and are ready and eager.&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s all.  Happy hacking :-).&lt;/p&gt;
&lt;p&gt;-Karl Fogel&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>Who&#39;s using the Launchpad API?</title>
      <link>https://blog.launchpad.net/api/whos-using-the-launchpad-api/</link>
      <pubDate>Tue, 31 Mar 2009 17:41:21 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=635</guid>
      <description>&lt;p&gt;People are starting to integrate Launchpad into applications, talking to it directly through its &lt;a href=&#34;http://help.launchpad.net/API&#34;&gt;API&lt;/a&gt; — either by using the &lt;a href=&#34;&#34;&gt;launchpadlib&lt;/a&gt; Python library or by doing &lt;a href=&#34;http://help.launchpad.net/API/Hacking&#34;&gt;RESTful&lt;/a&gt; HTTP requests.&lt;/p&gt;
&lt;p&gt;Below are some of the uses we&amp;rsquo;ve found — if you know of some not on this list, please tell us (in the comments here is fine).  This is partly to help us see what areas of the API are getting the most mileage, and partly because this collection might be a good resource for people who want example code for using the Launchpad API themselves.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;(Note: we&amp;rsquo;ve now collected this information into a &lt;a href=&#34;http://help.launchpad.net/API/Uses&#34;&gt;Launchpad API Usage&lt;/a&gt; directory, and will maintain the list there from now on.)&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;http://blog.launchpad.net/api/launchpad-plugin-for-eclipse-using-the-launchpad-api&#34;&gt;bzr-eclipse&lt;/a&gt;, a Bazaar plugin for Eclipse, that talks to the Launchpad/Bazaar integration using launchpadlib.  The developer says: &amp;ldquo;The API is straightforward to learn, also if you can use launchpadlib it&amp;rsquo;s far easier, just start the python interactive interpreter, import launchpadlib and start prototyping your app :)&amp;rdquo;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;http://launchpad.net/tarmac&#34;&gt;Tarmac&lt;/a&gt;, &amp;ldquo;The Launchpad Landing Strip&amp;rdquo;: an automatic branch lander for the Bazaar branches hosted on Launchpad.  Tarmac uses the Launchpad API to manage a development focus branch&amp;rsquo;s proposed merges.  It will automatically merge approved branch merge proposals and push them back up to Launchpad.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;http://launchpad.net/apport&#34;&gt;apport&lt;/a&gt;, a crash detection system that automatically generates reports with debugging information from crashed programs and provides UI frontends for handling these reports.  Apport uses launchpadlib in a script (apport-collect) that &lt;a href=&#34;http://blog.grossmeier.net/2009/03/02/apport-collect-just-what-you-wanted/&#34;&gt;adds apport data to existing bug reports&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;http://wiki.ubuntu.com/UbuntuDevTools&#34;&gt;ubuntu-dev-tools&lt;/a&gt;, a collection of useful tools that Ubuntu developers use to make their packaging work a lot easier (bug filing, packaging preparation, package analysis, etc).  Ubuntu Dev Tools uses launchpadlib in the &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-dev/ubuntu-dev-tools/trunk/annotate/head%3A/manage-credentials&#34;&gt;manage-credentials&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-dev/ubuntu-dev-tools/trunk/annotate/head%3A/requestsync&#34;&gt;requestsync&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-dev/ubuntu-dev-tools/trunk/annotate/head%3A/massfile&#34;&gt;massfile&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-dev/ubuntu-dev-tools/trunk/annotate/head%3A/lp-set-dup&#34;&gt;lp-set-dup&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-dev/ubuntu-dev-tools/trunk/annotate/head%3A/grab-attachments&#34;&gt;grab-attachments&lt;/a&gt;, and &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-dev/ubuntu-dev-tools/trunk/annotate/head%3A/hugdaylist&#34;&gt;hugdaylist&lt;/a&gt; scripts.  They&amp;rsquo;re all sharing the &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-dev/ubuntu-dev-tools/trunk/annotate/head%3A/ubuntutools/lp/libsupport.py&#34;&gt;ubuntutools/lp/libsupport.py&lt;/a&gt; library, which might be a good place to start.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;https://edge.launchpad.net/ubuntu-qa-tools&#34;&gt;ubuntu-qa-tools&lt;/a&gt;, a collection of tools used by the Ubuntu QA Team (sort of parallel to ubuntu-dev-tools, but for QA).  See the &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-bugcontrol/ubuntu-qa-tools/master/files/head%3A/bugs-mailinglist/ml-fixes-report.py&#34;&gt;ml-fixes-report.py&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-bugcontrol/ubuntu-qa-tools/master/files/head%3A/bugs-mailinglist/ml-team-fixes-report.py&#34;&gt;ml-team-fixes-report.py&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-bugcontrol/ubuntu-qa-tools/master/files/head%3A/mutt-scripts/b-tool&#34;&gt;b-tool&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-bugcontrol/ubuntu-qa-tools/master/files/head%3A/bug-report-framework/package-bugs-gravity.py&#34;&gt;package-bugs-gravity.py&lt;/a&gt;, &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-bugcontrol/ubuntu-qa-tools/master/files/head%3A/bug-report-framework/team-reported-bug-tasks.py&#34;&gt;team-reported-bug-tasks.py&lt;/a&gt;, and &lt;a href=&#34;http://bazaar.launchpad.net/%7Eubuntu-bugcontrol/ubuntu-qa-tools/master/files/head%3A/bug-report-framework/team-assigned-bug-tasks.py&#34;&gt;team-assigned-bug-tasks.py&lt;/a&gt; scripts.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a href=&#34;http://launchpad.net/ilaunchpad-shell&#34;&gt;ilaunchpad-shell&lt;/a&gt;, an interactive shell to Launchpad.net.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See also the &lt;a href=&#34;http://blog.launchpad.net/categories/api/&#34;&gt;API category on the Launchpad Blog&lt;/a&gt;, which has posts with code examples, news, etc.  And &lt;a href=&#34;https://lists.launchpad.net/launchpad-users/msg04880.html&#34;&gt;this thread&lt;/a&gt; on the Launchpad Users mailing list may accumulate more examples, even after this blog post goes up.&lt;/p&gt;
</description>
    </item>
    
    <item>
      <title>How we&#39;re open sourcing Launchpad.</title>
      <link>https://blog.launchpad.net/general/how-we-are-open-sourcing-launchpad/</link>
      <pubDate>Fri, 16 Jan 2009 06:28:17 +0000</pubDate>
      <dc:creator>Karl Fogel</dc:creator>
      <guid isPermaLink="false">https://blog.launchpad.net/?p=429</guid>
      <description>&lt;p&gt;Recently we announced that we&amp;rsquo;re &lt;a href=&#34;https://dev.launchpad.net/OpenSourcing&#34;&gt;open sourcing Launchpad&lt;/a&gt;, with a self-imposed deadline of &lt;a href=&#34;https://dev.launchpad.net/OpenSourcing#schedule&#34;&gt;21 July 2009&lt;/a&gt;.  &lt;em&gt;(22 June 2009 ed. note: we may push the date a bit, for testing purposes; it could be in August instead.)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Behind that announcement is a lot of activity.  Obviously we&amp;rsquo;re not going to just throw the code over the wall and wish everyone good luck.  The point of doing this is to bring the community that uses Launchpad.net into the development of Launchpad.net.  There&amp;rsquo;s a philosophical reason for this: for a site whose primary purpose is to enable free software projects to collaborate, it&amp;rsquo;s natural that the users should be involved in improving the site itself.&lt;/p&gt;
&lt;p&gt;But there&amp;rsquo;s a more practical reason, too.&lt;/p&gt;
&lt;p&gt;One of my favorite metrics for judging a project&amp;rsquo;s success is to watch its bug tracker: the more bugs filed, and the faster the rate of new filings, the &lt;em&gt;more&lt;/em&gt; successful the project is.&lt;/p&gt;
&lt;p&gt;Those who don&amp;rsquo;t work in software sometimes express puzzlement at that metric: &amp;ldquo;What?  How can more bugs be better?&amp;rdquo;  But software developers know exactly what I mean: &lt;em&gt;the rate of bug filing is proportional to the number of users, not to the number of actual bugs&lt;/em&gt;.  (More precisely, it&amp;rsquo;s proportional to some combination of the number of users and their level of technical sophistication, since certain kinds of users are much more likely to file bugs than others.)&lt;/p&gt;
&lt;p&gt;Well, I&amp;rsquo;ve been watching the Launchpad.net bug tracker for several weeks now, and judging by the bug-filing metric, Launchpad.net is very successful.  Great.  But what that means in practice is that we can&amp;rsquo;t resolve the majority of incoming bug reports and feature requests. The Launchpad development team at Canonical simply does not have enough surface area to handle it all.  If we doubled — indeed, if we quadrupled — the size of the team, it still wouldn&amp;rsquo;t be enough.  With a site like this, whose user base is large, and growing rapidly, there are really only two options:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;triage mercilessly, and leave most things undone&lt;/li&gt;
&lt;li&gt;open it up and let the users help&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Clearly, answer 2 is better.&lt;/p&gt;
&lt;p&gt;It implies some preparatory work on our part, however.  We&amp;rsquo;re seeding the ground with developer documentation: this has &lt;a href=&#34;http://dev.launchpad.net&#34;&gt;already begun&lt;/a&gt;, though we&amp;rsquo;re still transferring over much of our internal documentation (remember, we have to go through everything and make sure we don&amp;rsquo;t accidentally open up any confidential business-related things — all this stuff was written by people who thought it was internal to the company at the time).&lt;/p&gt;
&lt;p&gt;We also need to go through our dependencies and make sure we don&amp;rsquo;t have any license compatibility issues.  The license on Launchpad will be the &lt;a href=&#34;http://dev.launchpad.net/OpenSourcing#license&#34;&gt;AGPLv3&lt;/a&gt;, but we still have to vet dependencies and work out any problems.  By definition, this must happen before we release, so it&amp;rsquo;s work that Canonical must do internally.&lt;/p&gt;
&lt;p&gt;Most importantly, we need to move our development discussion forums out into the open.  Fortunately, most of Canonical&amp;rsquo;s Launchpad developers already have plenty of experence working in open source communities: they&amp;rsquo;re ready for this move, and we&amp;rsquo;re planning to do it before the code itself is opened (see the &lt;a href=&#34;http://dev.launchpad.net/OpenSourcing#schedule&#34;&gt;schedule&lt;/a&gt;), to minimize the number of simultaneous changes.  We&amp;rsquo;ll also be publishing policies on how we&amp;rsquo;d like the community to work, and on how changes will be accepted back into the mainline and deployed on Launchpad.net.  (The short answer is that Canonical decides, of course: we host the site, therefore we are responsible for the software that runs on it.  The longer answer is that we want to make it easy for good changes to make it onto the site, and have some &lt;a href=&#34;https://dev.launchpad.net/OpenSourcing#quick-feedback&#34;&gt;concrete plans&lt;/a&gt; for how to do that.)&lt;/p&gt;
&lt;p&gt;In the near term, the next things you&amp;rsquo;ll see are more independent modules being opened up: code extracted from Launchpad and made into independent libraries for anyone to use (for example, &lt;a href=&#34;https://storm.canonical.com/&#34;&gt;Storm&lt;/a&gt;, &lt;a href=&#34;http://pypi.python.org/pypi/lazr.config&#34;&gt;LAZR.config&lt;/a&gt;, and &lt;a href=&#34;http://pypi.python.org/pypi/lazr.delegates&#34;&gt;LAZR.delegates&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;And that&amp;rsquo;s all for now.  Watch this space for more.&lt;/p&gt;
</description>
    </item>
    
  </channel>
</rss>
