Request For Candidates: Application Review Board
Allison Randal
allison at canonical.com
Thu Aug 19 03:59:59 BST 2010
On 08/18/2010 02:40 PM, Scott Kitterman wrote:
> Quickly, when it was developed was described as being aimed at the
> opportunistic developer who needed something relatively simple to solve a
> local need. The distribute side of the equation for these kinds of developers
> is a local problem and not one for Ubuntu.
Yep, the team who started Quickly focused on simple, local apps, and it
was the right place to start. But, the sharing component was embedded in
the idea from the beginning. Scratch wouldn't be a success without both
pillars: easy to create, easy to share. To really do that well, creation
and sharing need to be tightly integrated. In Scratch, there's a "Share"
button right in the IDE. Click the button, enter a title and
description, and hey-presto your app is distributed. We're a long way
off from that, but it's an inspiration for future potential.
It could be anyone's problem, but the Ubuntu project is in a unique
position to make it happen, and one of the core principles at the heart
of Ubuntu is taking disruptive, visionary, game-changing steps that pave
the way to the future.
> I think that targeting these kinds
> of developers was and is important, but that is orthogonal to the post release
> apps process, so I think post release apps process is a logical next step only
> after you've redefined the problem, but in the end, I don't think it actually
> gets us there at all.
I'll flip that around and say that this new apps process is a result of
redefining the original problem (lightweight app sharing), in the
context of an already working solution to a different problem
(Debian-esque package distribution). With refinement over time we'll be
truer to the original idea.
> No one (that I recall) has argued against the idea of making it easier to get
> new apps to users. The argument (at least mine) has been that inventing an
> entire new infrastructure and set of processes rather than building on what we
> have right now is not the best way to go about it if we are delivering Debian
> packages. If we want to radically simplify the process to achieve this goal,
> then we need to change in infrastructure to support applications. The thing
> IOS and Android have that we don't is a sandbox structure to limit the risks
> of installing untrusted/lightly reviewed applications.
Completely agreed, "if we are delivering Debian packages". That is, if
the whole purpose of this new process was to improve the Debian
packaging process, we should do that by improving the Debian packaging
process. Okay, that's a tautology. :)
But, while it made sense to use (very simple, often automatically
generated) Debian packages for this phase to take advantage of existing
infrastructure, there are also many ways in which Debian packaging is a
less-than-ideal fit for lightweight app sharing. This is really
something new and different, a fork in the road. Not an "either/or"
fork, but a "both/and" fork. That is, we continue with improvements to
backports, etc. for the Debian packaging system which is (and will
continue to be) the core of the Ubuntu family of distributions AND we
explore the possibilities for lightweight app sharing.
> I'd like to see the foundation work for providing a similarly safe environment
> (sandbox) precede this new process it rather than follow. I also think that
> labeling this the Ubuntu process for getting applications to users post
> release is very confusing for people who are interested in more traditional
> packages that can already be delivered to users via backports. We need a
> different term for these sandboxed applications that can be quickly delivered
> in a lightweight process. Users will still want traditional packages and so
> we need to clearly distinguish between the old and the new in technical
> structure, language, and process. Doing the process first puts the cart before
> the horse. It is confusing at best.
The naming is confusing, we'll need to do some work on that as a community.
And it would be wonderful to have the sandbox in place from the start.
But, at UDS-M the discussion all centered on whether there was any way
at all a lightweight app sharing process could be crafted that would fit
with community policy, satisfy the requirements for security and quality
control, and be approved by the technical leadership. We were still in
the early "feasibility" stage, a long way from writing specifications
for advanced features that require substantial development.
And there's a bit of a chicken-and-egg problem getting volunteers (or
paid developers or the managers who allocate their time) to invest in a
new idea. You need to show it's possible, and then get enough working to
show that it's usable and desirable. It's a whole lot easier to get
people involved in fixing a seedling, than in bootstrapping something
completely new.
> I'm still not clear that absent a true sandbox where it is 'safe' to install
> applications that are not fully trusted, there's any point to this at all. I
> think there are active risks associated with this process of dilution of
> talent and end user confusion. I would prefer it if people would take this
> feedback and defer deployment of anything until there is something that will
> usefully distinguish these new [whatever we are going to call them]
> applications from applications delivered as Debian packages.
I expect that at UDS-N we'll have at least one blueprint on sandboxing.
But I also wouldn't want to hold back the whole idea for one feature
(even an incredibly important feature) when we can phase it in gradually
as it's developed. As we offer stronger sandboxing, we can lighten the
process for sandboxed applications, lower the demands on the application
reviewers, and even broaden the pool of people who can participate in
application review. (A modestly sandboxed application could be reviewed
by any reasonably skilled Python developer, while reviewing heavily
sandboxed applications could be a task for new developers. More on that
in reply to Robert.)
> There is definitely a problem that needs solving, so I'm interested to help
> work on it.
Excellent, thanks! And thanks for your thoughtful comments!
Allison
More information about the ubuntu-devel
mailing list