OLPC: Open Organized Transparent

Garrett Goebel garrett.goebel at gmail.com
Wed Jun 4 14:50:30 EDT 2008

"What we've got here is a failure to communicate"

On Tue, May 27, 2008 at 7:38 PM, C. Scott Ananian <cscott at cscott.net> wrote:
> I'm sure I haven't said all the things you'd have liked me to say, but
> I've done my best to be open and honest here.  Thank you for starting
> this discussion.

Thank you for continuing it despite your priorities and time constraints.

While much of what follows are direct responses to your email, please
don't take it as directed personally. The original post was focused on
what the OLPC could do to be more open, organized and transparent.
I.e. to create a healthy community. As such the short comings I'm
belaboring are with infrastructure, communication, and organization.
Though in the end, it all comes down to individuals working
together... or not.

I'd much more interested in hearing a response to the issues I raised
rather than potshots at the messenger... I hope you agree.

o how to address in the insider/outsider decisions made behind closed
doors issue?
o unbundling: hardware, os, drivers, and desktop metaphor
o how to seed and grow the community
o offer a reference solution embrace all solutions

> Well, since I'm apparently the one fingered as "smart", "holier than
> thou", and "derisive", let me publicly apologize for being
> short-tempered at times.  I do get frustrated when I see the same
> issues pop up over and over again: remember there are many many more
> of you out there than there are here at 1cc, and in order to be
> successful we at OLPC *must* allocate our time wisely.  Sometimes that
> means I'm rather short and/or terse.

I didn't intend to single you out. Your comments happened to be the
easiest to find from an @laptop.org address. In catching up this
morning, I noted at least 2 threads where someone was either calling
for more professional behavior or a code of conduct.

That said, you _are_ an OLPC employee. When I or someone outside the
project is unprofessional... we're just lone volunteer assholes. Not
to lecture... well yes, I am lecturing. But when you are "short/terse"
it reflects badly on the project and the community atmosphere.

Issues popping up again and again are a sign that issues, decisions,
and their rational aren't documented well enough. Wiser time
management would be to:

o  respond with a url to documentation (or write it then respond with a url)
o  ask if there is anything in the referenced documentation that needs
to be clarified
o  ask where the person raising the question looked for their answers
o  update where the questioner looked first to reference the documentation

You aren't bad on #1, but the others...

> A related issue is when people loudly insist that "OLPC" solve their
> personal problem *right now*.  Again, we have tens of thousands of
> machines in the field now, and thousands more every day.  You
> personally may care about, say, Java in your browser, but it is not a
> priority for "OLPC", by which I mean the 3 people I sit next to.

No, tell me how you really feel... Which is the OLPC you care about?
You and the 3 people sitting next to you? Or the tens of thousands of
machines in the field? Where do the children fit in? How about the 8
XO's I purchased. Do you care about them? Or the children who can't
use them to run their web-based self-paced mathematics instruction?

It reminds me about the parable of the tens of thousands of starfish
washed up on the shore. One man stoops, picks one up and throws it in
the water. The man next to him says, "There are too many. It won't
make a difference." The first replies, "It made a difference to that

Don't try to imply that #6454 is a personal problem or that I'm the
only one out banging my head up against it. I didn't open it, though I
did report my findings in it. FYI #6454 was opened 4 months ago, last
updated by me 3 months ago, and never assigned or commented upon by a
OLPC or 1cc employee. So please drop the dramatic characterization by
implying that I was demanding it be fixed *right now*. Did you bother
to read #6454? You certainly didn't update it. Good thing I've spent
the last hour trawling through OLPC developer list emails to find out
that I am not a priority.

> It is not part of the software included in our large scale deployments.

Ah, but the OLPC has told the public java can be added on after the
fact. And what you've told people isn't entirely true. Furthermore, it
isn't clear that it ever was true.  Your documentation on how to do it
is wrong. And the trac ticket is being ignored. I'd like to make it

> By all means work on the problem, and we will certainly help you
> publicize the solution you come up with as much as we are able, but
> there are not resources to devote to every feature request.  We have
> to prioritize.


Where is your list of priorities?

How does that map to the list of open Trac tickets?

Are the milestones dates or features? Will it be the same next week?

What is the order of milestones?

Where do you track the severity/impact of a ticket? I.e. scope of who
is effected

Where do you track the difficulty? I.e., general estimate of time
require to address a ticket

How to you track defects back to the changes (ticket) which introduced them?

How many Full Time Equivalent hours does a given developer represent?
Is that a guesstimate or based on historic data?

What components are the given developers capable of working on?

How long does the assigned developer think the specific ticket will
take to complete? How long did it take?

How long must a ticket sit dormant before it gets bumped and someone
takes notice?

What is your rate of defects per change? How does that break down by
severity and difficulty?

Are tickets tested? Tested by someone other than the implementer?

Are tickets reviewed before being closed?  By someone other than the
implementer. Who?

You _talk_ about priorities and wise time management but certainly
haven't done a good job communicating how you plan to go about doing

Besides, how can you hope to prioritize if you don't enumerate your
resources, constraints, and interdependencies? How can you balance
work queues if you can't quantify them? How can we as outsiders expect
our interactions with the OLPC to be addressed in a timely manner?
Even if addressed only means being notified that the given issue won't
be addressed.

Please don't point me at: http://dev.laptop.org/report/6
> {6} All Tickets By Milestone (Including closed)
> Report execution failed: column "modified" does not exist LINE 16: (CASE status WHEN 'closed'
> THEN modified ELSE (-1)*p... ^

...There, opened a ticket on it.

How do I create a report? http://dev.laptop.org/wiki/TracReports tells
you about reports, but not how to create one...

How do I view the query underlying a report?

How is it that #6454 is assigned, but doesn't show up under the
owner's active tickets report?

Your hardware may be amazing, your software distribution getting
there, but sorry... your communication and organization skills are

You folks are always asking people to open tickets. But how many of
those tickets result in n-way communication? How many open tickets are
out there that go unanswered? 610 have "Never Assigned" for their
Milestone. Does the OLPC have anyone out there tasked to track down
abandoned tickets? Why should I invest my time?

You talk about wise time management. The golden rule applies. Don't
expect outsiders to invest their time if you aren't going to manage it

> Opinions don't really matter for much.  There are less
> than ten full-time OLPC developers, it's not like we're some big
> company.  We're working flat out to make our Peru and Uruguay
> deployments work at the moment; we don't really have time to chew the
> fat.  Your opinions matter much more if they are backed up with
> working code, or with a community of volunteers to attack some task,
> or a well-written report.

You ought to make time. You certainly aren't encouraging me to help
take the load off your back. Its supposed to be fun, not torturous.

What's the use of writing a report if it gets filed and dropped
through the cracks? That has been my personal experience.

You remind me of many of the working poor... whose stereotypical
answer to a cash short flow problem is to work more hours, instead of
making the hours worked more profitable. Here's another opinion for
you. Your number one long-term priority ought to be developing your
community. That means being a friendly responsive place where it is
easy to get involved, doesn't require a huge time investment, and is
moreover fun. That is the long-term solution. If you survive long
enough running flat-out on your short term goals to get there. I.e.
Herding cats and managing volunteers in the end will be more important
than any individual code jockey.

The put up or shut up "show me the code" attitude works fine for the
initiated developer sitting in the middle of his web. But it belittles
the value added by those on the periphery. And it doesn't encourage us
to delve in deeper.

I've been putting my toe in the proverbial waters here. Writing wiki
pages, adding to Trac tickets, trying to solve my problems myself.
Currently on #6454 I'm blocked at finding the time to setup a XO
environment with >512MB RAM because IcedTea (the fully open sauce Java
bootstrap) won't compile with less. As time permits, I'll continue to
work on it. I'll show you the code, when I've got it.

>  We get a lot of opinions.  Many of them
> are, frankly, misdirected.   For example:
>    "I think the OLPC's decision to sell XO's only in large quantities
> and only top down to educational institutions is wrong."
> I have zero control over that.  Generally speaking, such discussions
> are out-of-scope for devel at laptop.org, which is a developer's list,
> not a business-models-and-strategy list.  You should be making these
> types of arguments to OLPC's board

Where exactly is this board at laptop.org mailing list? Oh... that's
right. There isn't one.

IMHO: A blue sky mailing list is synonymous with posting > /dev/null

> here is a list of development tasks that OLPC doesn't have resources
> for, but that we'd love help with:

Sounds like a great start for a new contributors or janitors list. Is
this referenced on a Wiki page? Do they all have Trac tickets? Is that
what a Milestone of "Opportunity" is? How do you expect potential new
contributors to know this or find it?

How do you intend to help with them if you don't have resources? Would
mentoring be on the table? Who would the mentor contacts be for each
item? The owner of the Trac ticket?

> * Java in the browser.  Sure, trac #6465 and similar.  We also have
> people who would like a more convenient way to install Adobe flash and
> other plugins.  This can be done by making a slightly modified version
> of the Browse activity, but no one has done it yet.

Will anyone volunteer to mentor me (hold my hand) on this? Should I
contact the ticket's owner directly? How do you figure out the email
address by owner name?



More information about the Devel mailing list