Re: [IAEP] Announce: OLPC software strategy.

2010-07-13 Thread Daniel Drake
On 12 July 2010 19:27, James Cameron qu...@laptop.org wrote:
 I'm still unconvinced that this is worth changing, given the additional
 work that it will cause.

 I'd like to hear from the heavy users of trac, in particular Chris (cjb),
 Daniel (dsd), and Paul (pgf).

I think our current system made sense temporarily at the time it was
introduced, but now we should switch to what Martin is suggesting,
which in my experience is how the rest of the universe works. It is
also the approach used previously by OLPC when there was a larger
engineering team, and worked well (though trac in general was the
subject of continuous refinement, of course).

Daniel
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-13 Thread Mikus Grinbergs
 why would you want to know what tickets were closed
 as part of work toward a particular release?

Let me give an answer from the user's perspective (I'm seconding what
Martin's response said):

Consider build 800 versus build 802.  Suppose I as an user had a problem
on build 767 which prevented me from accomplishing a task.  If that task
was important to me, I would have liked to know if build 800 would
already let me perform that task, or if I had to wait for build 802.
Release notes list significant bugs fixed - but not all the bugs fixed.
 If build 800 had a different version number from build 802 (I forget if
that was actually the case), I should be able to look up the ticket and
see in which version that fix got released to users.

In this regard, sometimes a developer marks a ticket as fixed as soon
as he delivers a commit.  But that ticket status does not help the user
- not until that fix gets incorporated into a build which gets into the
user's hands.  I think that a problem ticket closed as 'fixed' should
identify the particular release where the fix was made available.

mikus

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-13 Thread Daniel Drake
On 13 July 2010 06:17, Daniel Drake d...@laptop.org wrote:
 On 12 July 2010 19:27, James Cameron qu...@laptop.org wrote:
 I'm still unconvinced that this is worth changing, given the additional
 work that it will cause.

 I'd like to hear from the heavy users of trac, in particular Chris (cjb),
 Daniel (dsd), and Paul (pgf).

 I think our current system made sense temporarily at the time it was
 introduced, but now we should switch to what Martin is suggesting,
 which in my experience is how the rest of the universe works. It is
 also the approach used previously by OLPC when there was a larger
 engineering team, and worked well (though trac in general was the
 subject of continuous refinement, of course).

Thinking more, I think the changes are simple:

Rename 1.5-software-final to 10.1.0
Rename 1.5-software-update to 10.1.1
Rename 1.0-software-update to 10.1.2

(a handful of tickets will need reshuffling, but not many)

In my opinion, our process is already somewhat similar to what Martin
is describing. Our trac milestones don't fully describe the changes of
each release but they at least do a very good job of describing our
intentions and the important things we're working on, and improving
the accuracy is something we can step towards improving.

Daniel
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-12 Thread Martin Langhoff
On Sun, Jul 11, 2010 at 10:08 PM, James Cameron qu...@laptop.org wrote:
 You're asking me to rejustify decisions made in November 2009 when the
 environment was somewhat different.

I understand the situation was weird in Nov 2009. But that's behind
us, and I'd say we got to make good use of the tools we have...

 We had informal unpublished plans to release but we had no release name
 chosen.

That's fine, we can always use a tentative milestone name.

 The change I made months ago was to facilitate testers and bug reporters
 ... to increase the data quality by removing the version numbers from a
 popup list, and encouraging use of the keywords field.
...
 The naming scheme was chosen because people had been logging tickets
 using the milestone as a version field.

Hmm, I understood the *other* reasons, but I don't buy that one. Of
course, users should use the 'version' field for that. But they cannot
possibly use the milestone field (if milestones are well managed)
because they cannot be running something that has not been released
yet :-)

 Trac allows any use of the milestone field;

And guns can be aimed in various directions. Sure.

 in software project
 management one does not always map a milestone to a release name.
 Conflating the two was causing confusion.

Of course. But reusing the same milestone name is recipe for confusion.

 I wanted to be rid of the old milestone values too, but the argument
 against that was that the old data was harmless and occasionally useful.

NO. Please, not kidding, I really mean this: It is a key usage of trac
(and any other useful bugtracker) to query for the 'changelog' as
tasks/bugs closed in release X'.

Yes, the written release notes are nicer, but they gloss over a ton of things.

Key question: How do we query 'tickets closed in 10.1.0'? How about in 10.1.1?

cheers,



m
-- 
 martin.langh...@gmail.com
 mar...@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-12 Thread James Cameron
On Mon, Jul 12, 2010 at 09:59:58AM -0400, Martin Langhoff wrote:
 Key question: How do we query 'tickets closed in 10.1.0'? How about in
 10.1.1?

Can't.  Not even if milestones were release version names.  When tickets
are closed we do not capture a meaningful closed as part of work toward
release x.  You appear to be hoping for a query without any process to
create the data to query on.

Question back at you; why would you want to know what tickets were closed
as part of work toward a particular release?

-- 
James Cameron
http://quozl.linux.org.au/
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-12 Thread Martin Langhoff
On Mon, Jul 12, 2010 at 5:37 PM, James Cameron qu...@laptop.org wrote:
 Question back at you; why would you want to know what tickets were closed
 as part of work toward a particular release?

I regularly 'datamine' the SCM repos and bug/task-trackers of the
components I use. This is enormously important when making decisions
downstream.

[ As a result of this, and some other factors, I was one of the
earliest adopters and hackers of git. ]

This kind of datamining is key when you are downstream, and your cost
of updating to the new release is high -- because you have
customisations, you want to perform your own QA, or because you have a
large number of machines in the field (say, 360K) -- and you know each
update will break (in real and/or subjective ways) for some users.

Imagine you are a downstream on 10.1.x wondering whether 10.1.z is
worth the (high) cost. If/when we release something like a 10.2.x /
11.1.0 (say, based on F-13, a big delta with more potential for
grief); when you are downstream your questions are:

 - Does it fix problems / add enhancements I care about? [ This breaks
down into are we monitoring any of those tasks? and can I spot
anything there that I am interested in?.

 - What areas are affected / have been worked on? (Where should I focus my QA?)

 - What patches will I have to rebase / features to rework?

It is a very hard, multi-dimensional cost-benefit analysis.

Yes, you can diff the rpm changelogs, but that is shipping lots of
trees to someone who wants a postcard of a forest.

This is an important use of trac. Of course the data in trac is not
perfect, but it can give us (with current practices -- plus the change
I suggest) a very-close-to-correct picture of what's been worked on,
and considered 'done' for a given release.

And I don't see any downside to the change I suggest. Maybe I am a bit
shortsighted here, but I've seen similar practice in various projects
with no ill effects.

Some projects do have a fuzzy future release milestone, as well as
the next one, and initially tag all tasks (except urgent bugfixes) for
the FR milestone. Then when it's clear that a particular task will get
done in the next release (because it is a blocker/high pri, or is
close to completion), they change the milestone to the actual
release/milestone it will land on. So they get the benefit of both our
'fuzzy future, no specific promise' and the 'task/bug accounting'.

It would be a mix of explicitly using 'Future release', most of the
time, and explicit release names (10.1.2) as we are nearing the
release and stuff lands.

Would something like that work?

cheers,


m
-- 
 martin.langh...@gmail.com
 mar...@laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-12 Thread James Cameron
I'm still unconvinced that this is worth changing, given the additional
work that it will cause.

I'd like to hear from the heavy users of trac, in particular Chris (cjb),
Daniel (dsd), and Paul (pgf).

-- 
James Cameron
http://quozl.linux.org.au/
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-12 Thread C. Scott Ananian
It may be worth looking at http://trac.edgewall.org/roadmap for how
the trac team itself uses it.
In particular, if you check the Show completed milestones box, and
then on some old milestone (like, say,
http://trac.edgewall.org/milestone/0.11.3 ) you can drill down into
any component and see what bug fixes it contained.

FWIW, at litl we use two fixed milestones for Future (stuff we're
likely to do in the next release or two) and Far Future (stuff we'd
really like to do, but admit isn't going to happen any time soon).  At
the beginning of each release cycle, we mine the Future and Far Future
milestones for stuff we expect to include in our next release, and
then close/move those bugs as the release approaches.  (We don't use
trac, but the methodology is similar.)
   --scott

-- 
                         ( http://cscott.net/ )
___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-08 Thread Tomeu Vizoso
On Thu, Jul 8, 2010 at 00:01, Chris Ball c...@laptop.org wrote:
 Hi,

 Now that the 10.1.1 release for XO-1.5 is out, it's a good time to
 talk about OLPC's software strategy for the future.  We've got a few
 announcements to make:

 XO-1:
 =

 OLPC wasn't planning to make a Fedora 11 release of the XO-1 OS, but
 a group of volunteers including Steven Parrish, Bernie Innocenti,
 Paraguay Educa and Daniel Drake stepped up and produced Fedora 11 XO-1
 builds that follow the OLPC 10.1.1 work.  I'm happy to announce that
 we're planning on releasing an OLPC-signed version of that work, and
 that this release will happen alongside the next XO-1.5 point release
 in the coming weeks.  So, OLPC release 10.1.2 will be available for
 both XO-1 and XO-1.5 at the same time, and will contain Sugar 0.84,
 GNOME 2.26 and Fedora 11.  We think that offering this fully
 interoperable software stack between XO-1 and XO-1.5 laptops will
 greatly aid deployments, and we're very thankful to everyone who has
 enabled us to be able to turn this XO-1 work into a supported release!

 To prepare for this XO-1 release, we've started working on fixing
 some of the remaining bugs in the community F11/XO-1 builds.  Paul Fox
 recently solved a problem with suspend/resume and wifi in the F11/XO-1
 kernel, which was the largest blocker for a supported release.  We'll
 continue to work on the remaining bugs, particularly the ones that
 OLPC is uniquely positioned to help with.

 The first development builds for this release will be published later
 this week.

 XO-1.5:
 ===

 We'll be continuing to work on XO-1.5 improvements, incorporating
 fixes to the Known Problems section of the 10.1.1 release notes¹
 into the 10.1.2 release.

 XO-1.75 and beyond:
 ===

 XO-1.75 software development is underway.  Today we're announcing
 that we're planning on using Fedora as the base distribution for the
 XO-1.75.  This wasn't an obvious decision -- ARM is not a release
 architecture in Fedora, and so we're committing to help out with that
 port.  Our reasons for choosing Fedora even though ARM work is needed
 were that we don't want to force our deployments to learn a new
 distribution and re-write any customizations they've written, we want
 to reuse the packaging work that's already been done in Fedora for
 OLPC and Sugar packages, and we want to continue our collaboration
 with the Fedora community who we're getting to know and work with
 well.

 We've started to help with Fedora ARM by adding five new build
 machines (lent to OLPC by Marvell; thanks!) to the Fedora ARM koji
 build farm, and we have Fedora 12 and Sugar 0.86 running on early 1.75
 development boards.  We'd prefer to use Fedora 13 for the XO-1.75, but
 it hasn't been built for ARM yet -- if anyone's interested in helping
 out with this or other Fedora ARM work, please check out the Fedora
 ARM page on the Fedora Wiki².  We're also interested in hiring ARM and
 Fedora developers to help with this; if you're interested in learning
 more, please send an e-mail to jobs-engineer...@laptop.org.

 We'll also be continuing to use Open Firmware on the XO-1.75, and
 Mitch Bradley has an ARM port of OFW running on our development boards
 already.

 EC-1.75 open source EC code:
 

 OLPC is proud to announce that the XO-1.75 embedded controller will
 have an open codebase (with a small exception, see below).  After much
 behind-the-scenes effort, EnE has agreed to provide us with a public
 version of the KB3930 datasheet and is allowing our new code to be
 made public.

 The code is not available yet due to a few chunks of proprietary code
 that need to be purged and some other reformatting.  A much more
 detailed announcement will be provided once the new code is pushed to
 a public repository.  The code will be licensed under the GPL with a
 special exception for OLPC use.

 The exception is because EnE has not released the low-level details on
 the PS/2 interface in the KB3930, so there will be some code that is
 not available -- relative to the codebase this is a very small amount
 of code.  The GPL licensing exception will allow for linking against
 this closed code.  We're going to investigate ways to move away from
 this code in the future.  (As far as we're aware, this will make the
 XO-1.75 the first laptop with open embedded controller code!)

 Multi-touch Sugar:
 ==

 We've begun working on modifications to Sugar to enable touchscreen
 and multitouch use (the XO-1.75 will have a touchscreen, as will
 future OLPC tablets based on its design), and we'll continue to do so.
 The first outcome from this work is Sayamindu Dasgupta's port of the
 Meego Virtual Keyboard³ to Sugar -- you can see a screencast of it in
 action here⁴.

 It's an exciting time for software development at OLPC.  Many thanks
 for all of your support and efforts!

Congratulations on the excellent work done to date by you all and on
the sound (and well 

Re: [IAEP] Announce: OLPC software strategy.

2010-07-08 Thread Bernie Innocenti
On Thu, 2010-07-08 at 11:02 +0200, Tomeu Vizoso wrote:

 Congratulations on the excellent work done to date by you all and on
 the sound (and well communicated) plan.

I couldn't agree more.

On top of this, interaction between OLPC, the Fedora community and the
Sugar Labs community has been fantastically smooth and productive.

(this is just my own perception, of course. As always, suggestions to
improve our collaboration processes are very welcome).

-- 
   // Bernie Innocenti - http://codewiz.org/
 \X/  Sugar Labs   - http://sugarlabs.org/

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: [IAEP] Announce: OLPC software strategy.

2010-07-07 Thread Sameer Verma
On Wed, Jul 7, 2010 at 3:01 PM, Chris Ball c...@laptop.org wrote:
 Hi,

 Now that the 10.1.1 release for XO-1.5 is out, it's a good time to
 talk about OLPC's software strategy for the future.  We've got a few
 announcements to make:

 XO-1:
 =

 OLPC wasn't planning to make a Fedora 11 release of the XO-1 OS, but
 a group of volunteers including Steven Parrish, Bernie Innocenti,
 Paraguay Educa and Daniel Drake stepped up and produced Fedora 11 XO-1
 builds that follow the OLPC 10.1.1 work.  I'm happy to announce that
 we're planning on releasing an OLPC-signed version of that work, and
 that this release will happen alongside the next XO-1.5 point release
 in the coming weeks.  So, OLPC release 10.1.2 will be available for
 both XO-1 and XO-1.5 at the same time, and will contain Sugar 0.84,
 GNOME 2.26 and Fedora 11.  We think that offering this fully
 interoperable software stack between XO-1 and XO-1.5 laptops will
 greatly aid deployments, and we're very thankful to everyone who has
 enabled us to be able to turn this XO-1 work into a supported release!

 To prepare for this XO-1 release, we've started working on fixing
 some of the remaining bugs in the community F11/XO-1 builds.  Paul Fox
 recently solved a problem with suspend/resume and wifi in the F11/XO-1
 kernel, which was the largest blocker for a supported release.  We'll
 continue to work on the remaining bugs, particularly the ones that
 OLPC is uniquely positioned to help with.

 The first development builds for this release will be published later
 this week.

 XO-1.5:
 ===

 We'll be continuing to work on XO-1.5 improvements, incorporating
 fixes to the Known Problems section of the 10.1.1 release notes¹
 into the 10.1.2 release.

 XO-1.75 and beyond:
 ===

 XO-1.75 software development is underway.  Today we're announcing
 that we're planning on using Fedora as the base distribution for the
 XO-1.75.  This wasn't an obvious decision -- ARM is not a release
 architecture in Fedora, and so we're committing to help out with that
 port.  Our reasons for choosing Fedora even though ARM work is needed
 were that we don't want to force our deployments to learn a new
 distribution and re-write any customizations they've written, we want
 to reuse the packaging work that's already been done in Fedora for
 OLPC and Sugar packages, and we want to continue our collaboration
 with the Fedora community who we're getting to know and work with
 well.

 We've started to help with Fedora ARM by adding five new build
 machines (lent to OLPC by Marvell; thanks!) to the Fedora ARM koji
 build farm, and we have Fedora 12 and Sugar 0.86 running on early 1.75
 development boards.  We'd prefer to use Fedora 13 for the XO-1.75, but
 it hasn't been built for ARM yet -- if anyone's interested in helping
 out with this or other Fedora ARM work, please check out the Fedora
 ARM page on the Fedora Wiki².  We're also interested in hiring ARM and
 Fedora developers to help with this; if you're interested in learning
 more, please send an e-mail to jobs-engineer...@laptop.org.

 We'll also be continuing to use Open Firmware on the XO-1.75, and
 Mitch Bradley has an ARM port of OFW running on our development boards
 already.

 EC-1.75 open source EC code:
 

 OLPC is proud to announce that the XO-1.75 embedded controller will
 have an open codebase (with a small exception, see below).  After much
 behind-the-scenes effort, EnE has agreed to provide us with a public
 version of the KB3930 datasheet and is allowing our new code to be
 made public.

 The code is not available yet due to a few chunks of proprietary code
 that need to be purged and some other reformatting.  A much more
 detailed announcement will be provided once the new code is pushed to
 a public repository.  The code will be licensed under the GPL with a
 special exception for OLPC use.

 The exception is because EnE has not released the low-level details on
 the PS/2 interface in the KB3930, so there will be some code that is
 not available -- relative to the codebase this is a very small amount
 of code.  The GPL licensing exception will allow for linking against
 this closed code.  We're going to investigate ways to move away from
 this code in the future.  (As far as we're aware, this will make the
 XO-1.75 the first laptop with open embedded controller code!)

 Multi-touch Sugar:
 ==

 We've begun working on modifications to Sugar to enable touchscreen
 and multitouch use (the XO-1.75 will have a touchscreen, as will
 future OLPC tablets based on its design), and we'll continue to do so.
 The first outcome from this work is Sayamindu Dasgupta's port of the
 Meego Virtual Keyboard³ to Sugar -- you can see a screencast of it in
 action here⁴.

 It's an exciting time for software development at OLPC.  Many thanks
 for all of your support and efforts!

 - Chris, on behalf of the OLPC Engineering team.

 Footnotes:
  ¹: