Talk:Contributors program archive: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Community driven implementation proposal)
No edit summary
 
(31 intermediate revisions by 13 users not shown)
Line 1: Line 1:
'''Discussions and weekly meetings at [[Contributors program/meetings]]'''.

== Thoughts on providing at-cost hardware to developers ==

The developers program is usually able to send one free XO per developer. We would like to allow individual developers, and larger organizations like software companies and research labs, to purchase additional XOs at cost independently of the G1G1 program.

As a start, game console manufacturers are an example of organizations which must distribute proprietary hardware on a limited basis to developers. Their programs generally look something like this:

: Development studios who would like development hardware (say XBox360 devkits) must first apply to become part of the developers program. This involves providing credentials (a publishing contract for example), and then signing a NDA. They are then given access to a private development area, forums, support group, etc., and are allowed to purchase hardware through the developers program. The hardware is not theirs, they must agree to send it back in 5 years or so when no longer needed, but if it breaks it will be fixed without charge.

This could be adjusted to fit OLPC's open nature as follows:

: Developers who would like an XO must first apply to become part of the developers program. This involves providing credentials (a resume), contact information and a project plan. They are then sent one free XO, and are allowed to purchase a fixed number (3?) of additional XOs at cost after signing and returning an agreement not to resell XOs acquired through the developer program. The XOs are theirs to keep. Development groups (e.g. research labs) may apply using the same system, and will be granted a larger (9?) fixed purchase amount. Larger purchase requests will be handled on an individual basis.

==== Questions ====

* Can we legally hold people to not resell XOs they receive through the developers program? I'm concerned after seeing G1G1 XOs on EBay for $400, some people might try to take advantage of the developer program.

== Please add reference to Development Wiki ==
== Please add reference to Development Wiki ==


Line 24: Line 42:


I would like to start a [[Production Commons]] to begin independent development of this hardware (including modified versions) as soon as possible. Are the design specifications Free as in Freedom so that we may proceed? [[User:Ownut|Ownut]]
I would like to start a [[Production Commons]] to begin independent development of this hardware (including modified versions) as soon as possible. Are the design specifications Free as in Freedom so that we may proceed? [[User:Ownut|Ownut]]


Good question. Open Hardware like Arduino is more in line with the project goals...
Lowering the entry hurdle/ barrier would help not hurt the project... Spinoffs might be merged
back into the next release, hardware development is learning too...

St. Nick says the warranttee doesn't start til you open it up...
Crack the box, or just start the machine?

[[User:Danceswithcars|danceswithcars]] 17:29, 14 July 2009 (UTC) [[User:Danceswithcars|UncleCrazy]]


== BIOS section should be revised for LinuxBIOS ==
== BIOS section should be revised for LinuxBIOS ==
Line 189: Line 217:
== Community driven implementation proposal ==
== Community driven implementation proposal ==


See [[Community approval process]] for an alternative proposal on how to distribute contributor/pilot/other machines. Originated by [[User:Sj|SJ]], posted by [[User:Mchua|Mel]].
''The current infrastructure for the devel program (in terms of getting machines) isn't a long-term sustainable thing, especially given the bottlenecks already occurring and the growth rate we're experiencing. SJ has put forth a proposal for a community-driven implementation of "developer's program" machine distribution; this is my current understanding based on our 1/29/08 discussion. [[User:Mchua|Mchua]] 14:08, 30 January 2008 (EST)''
: We are reaching consensus that this is the right way to proceed. --[[User:Sj|Sj]]&nbsp;[[User talk:Sj|<font style="color:#f70; font-size:70%">talk</font>]] 14:28, 6 May 2008 (EDT)

== Sample form for the full contributor's program ==

=== Project intro and descriptions ===

Please describe yourself and any personal information needed to get in touch with you.
# name [text]
# email address [text]


Please describe the projects you are developing, or planning on developing, in decreasing order of awesome.
# name
## description [textarea]
## project duration [text]

=== Hardware to hack on ===

'''XOs''' : for hardware, software, or content development that would be easier with an XO
# # of XOs
# keyboard desired, if it matters
# power-adapter desired (plug type)
#: How much does this matter? [text]

'''Networking'''
# # of active antennas


=== Hosting for code and content ===


=== Mailing lists, subdomains, &c ===

== Feature requests for projectdb ==

After going through a round of applications in the projectdb as an admin, I've got a few feature requests that would be awfully handy.

* Do people automatically get notified of their project status/etc. being updated? Can we add this?
* Can we track the history of a project - for instance, this edit was made by this person at this time, this suggestion was made by this person at this time?
* I'd like to be able to merge projects (for instance, multiple partners working together submitted separate applications for exactly the same project).
* Automatic "click a button" spreadsheet generation of all approved projects that have not yet been spreadsheeted.

[[User:Mchua|Mchua]] 16:16, 22 May 2008 (EDT)

== Current distribution process ==

* Review latest round of submissions to the projectdb, approve those that [[Developers program criteria|qualify]]
* Export approved projects into csv files, one per destination country (one line per project per country)
** The csv files should contain the following fields:
CustOrdNbr ShipName ShipAddr1 ShipAddr2 ShipCity ShipState ShipZip ShipPhone
** ''Details'':
**: OrdNbr should be DE90000000 + the project number
**: Addr fields should be no longer than 30 characters
**: State should never be empty but should contain an "x" if there is no state;
**: Phone should contain only digits, no + symbols; and should use "011" before international country codes


== Updating the contributors program ==
''from discussions with [[user:wade|wade]]''


Sugar : designs are progressive and exciting, implementation sparse. Sugar has been often ignored on tech news sites. Our resources are focused on the platform rather than the user experience. The barrier to entry, work required before the first successful commit, must be overcome by outreach and guidance [and] open development process.
=== Similarities and differences from GM ===


Three key pillars are recruiting contributors, marshalling efforts, and channeling recognition
The developers program (DP) is separate from GM. GM laptops are paid for by the recipient; DP XOs are donated to the recipient by OLPC.


=== Recruiting ===
However, both programs have applications that go through some sort of approval process for laptop distribution (in other words, people don't just get handed laptops unless someone thinks they'll do good things for OLPC's core mission with them.)


Thousands of experienced programmers would absolutely love to work on Sugar, activities and content. reach them and help them get a development environment or contribute [once] to a project.
The current system for "application approval" for DP and some proposals are outlined below.


Target communities with high potential. For programmers, gamedev.net and Game Illuminati and The Chaos Engine; Google Summer of Code to reach college students. Universities with tech programs, in developing countries, and Python user groups. Experienced programmers who buy XOs for their children or for themselves [G1G1]. schools and deployments actively using XOs who may have development resources. ensure they are adequately served and fit in with the Sugar community.
=== Misconceptions ===


Recruit to each community. Game developers react well to contests and challenges: "Free XOs and T-shirts to the first team to get Blender to render <this scene> in less than 1 second". University students respond to certificate programs for Python and User Interface development, and to online internships which look good on resumes.
* "Give Many is a way to purchase laptops." In reality, Give Many (GM) is not fully implemented. When it is implemented, GM will not be a conventional "purchase" in the sense that anyone who hands over $X will get Y laptops; there is no SKU number, etc. Although recipients eventually pay for their GM laptops, they must still apply to get them.
===Marshaling===
Community projects [often] start with the best intentions, are 90% complete but lose momentum. the second 90% is left once you finish the first 90%. We must [help] finish projects that are nearly complete, and fix those once stable [that] decay.
Idleness causes contributors to lose interest. engaged with a sense of momentum, they will continue actively. We must champion important tasks and pair recruits with mentors who can keep them busy.
Finally, we must streamline development so contributors do not get stuck. hosting, translation and testing must be available [and reliable], and the means to provide those services available [distributedly]. One way: build Translate, Develop and Bug Report activities into the XO. Then at any time users can a) translate or re-translate a string, b) develop and submit a patch, or c) report a bug and attach data.
===Recognition===
Contributors must know their work is appreciated. Highlight each contribution via weekly email and the wiki, watching Git commits and Trac updates.
The mentors team will also have responsibility to confer status titles on participants and projects. For example, 'Featured' status (quality, value) and place on the Activities page. Or an 'OLPC Fellow' [title], and a special tag on their User page.


=== Possible systems ===
=== Organization ===
This work will fall under the jurisdiction of the contributors program, facilitated by OLPC and overseen by the community. This program will unify distributed community development of Sugar software and content, guidelines for reviewing and creating great material, and identification and assignment of open tasks and potential bounties.


The public face of the program will be the Contributors and Developers pages on the OLPC wiki. This portal will highlight accomplishments and identify high value tasks for people to work on. It will provide organized links to help new contributors find projects and mentors and get started.
This section describes systems that can be used to get projects that have been proposed laptops (in order of their priority and need).
The program will form teams of welcomers, reviewers, and mentors from community and staff. These teams will identify new contributors from first inquiry and/or contribution, and work with them to help them stay active. Mentors will be assigned a list of community members to assist based on specialty, workload and other considerations.


==== Current system ====
== Feature requests ==
* Easier batching of a set of requests for review, and a label indicating they are explicitly out for that week's review.
*: from Mel.


== cancel Peter Robinson's request ==
# A Proposer - let's call him Peter - wants XOs for his grassroots group / cool project / pilot.
# Peter writes up a description of what he'd like to do, who he'll be working with, his experience, how they'll carry out the plan - basically, a project proposal.
# Peter sends his proposal to a closed mailing list of admins. Peter's proposal is not posted publicly.
# The admins look at Peter's proposal. If they don't think it creates enough value to OLPC to warrant what he's asking, they send him back feedback on the same, or a "sorry, we can't do this" letter.
# If the admins /do/ like Peter's proposal, they tell Shipping (Julia) to mail laptops to Peter straight out of 1cc, and the process closes.
# Alternatively, if the admins become aware that someone needs an XO, they can decide to ask Julia to send her a donated laptop even without a proposal being submitted.


Please *cancel* Peter Robinson's request. It was accepted but has not shipped. He has now obtained an XO through RT#30642.
'''Pros:''' In place and "working" now. Decisions of who gets how many laptops are made by people in-the-know whom we trust.
'''Cons:''' Bottleneck - doesn't scale, and currently has lots of lag time. Things go on behind closed doors; feedback and discussion on project proposals which may potentially improve said proposals doesn't happen.


== How does someone become a community mentor? ==
==== Community system proposal ====


I like that you can "view source" for the process and help with the review, and would love to see the same for mentors - who are they, how are they chosen, how can you become one? [[User:Mchua|Mchua]] 16:52, 3 March 2009 (UTC)
The community system proposal involves the entire global OLPC community collaboratively working on a priority ordering of outstanding projects and suggests how many laptops should be allocated to each program/project. Over time, this community refines the heuristics for evaluating which projects are / will be most successful at improving education through OLPC.


There will be a group at Brightstar or some other distributor (we'll call it "the shipping center" here) that describes what is possible (in terms of parts available, etc), and updates people when laptops actually go out, but does not have administrative control over who gets laptops.


== Combined Feedback ==
There is a group called "the Amenders" with access to this db with veto power who can nix proposals outright regardless of community feedback.


For other things on this page. Apple has a developer program that requires student status...
There is also a group called "the Choosers" who can approve a proposal outright regardless of community feedback (or create a proposal for a third party who needs a laptop on short notice - for instance, VIPs or last-minute demos). (Choosers will, however, be strongly encouraged or even required to find alternative sources for these non-community-approved allocations.)
When I was a university student I used it, didn't require much and got some things like developer tools
CDs, t shirt, new OS X versions in beta or similar. Costs to Apple to send to developers.
My Beige G3 (~$2k invested in 1997), now sits idle, but did finish degree with it... Long story...
Software developed in Java still runs unmodified 10 years later, not impressive, retro, but...


Anyway, other (general) hardware developers offer development boards for some cost, no requirements
This is probably clearest explained in an example.
besides buying it. Learn as one wishes to learn... Others probably have sales version for
projects buying large number of hardware, or free hardware with commitment of project using
nnn ICs, boards, etc...


If XO is to thrive as a platform, given that OLPC USA doesn't really exist (pitched it to
# A Proposer - let's call him Peter - wants XOs for his grassroots group / cool project / pilot.
Feds at FOSE2008/ FOSE2009), and learning is universal (i.e. not defined by country boundaries),
# Peter writes up a description of what he'd like to do, who he'll be working with, his experience, how they'll carry out the plan - basically, a project proposal.
then need to do Something. The contributors program has not been responsive (to me personally),
# Peter submits his proposal via a website that feeds into a "proposals database," in order to keep Peter's contact information private and preserve the original state of his submission, including a summary paragraph.
and trying to just participate in chats, get knocked off, though my questions are probably
# Peter's proposal (with details on background, timeline, relationships to other projects, etc) is automatically posted to a wiki page and linked to from a "Projects review" page that includes summaries of and links to all projects currently under review.
rather basic, my experience, though dated, might help others...
# Discussion ensues on the proposal's talk page about how well the project fits the criteria that the community is looking for (in terms of being conducive to OLPC's mission, etc). and people can offer to help out, comment on ways to improve the program, discuss how many laptops should be allocated, etc.
# When consensus is reached, if this consensus involves sending the project one or more XOs, a revised summary is posted to a section of a "Waiting for laptops" wikipage along with an indication of priority and how many laptops it's getting.
# Discussion continues on this page - no longer about whether a project should get laptops and how many, but on how high on the priority list for sending laptops they should be (this will change as situations change, for instance whether there's a local chapter nearby that can look after XOs, or whether core development is sorely needed in the area of the proposal, etc).
# The Shipping Center keeps an eye on this "Waiting for laptops" page (or possibly a database synced to it), and when laptops are available, they ship them out to projects according to priority listed on the page.
# Local groups and individual owners can also keep their eye on the "Waiting for laptops" page and offer to share/lend/donate their machines to projects, so that the Shipping Center is not the only place where people can get XOs for their projects.
# When Peter gets his laptops through whatever means, his project is moved into a page of "Current projects" with summary, date, laptops sent, and links to project pages with updates and such, and contact information from Peter.
# When Peter has finished using the laptops, or someone else thinks Peter is no longer utilizing them properly, Peter can send the laptops back to be recycled into someone else's project (or the person can start a community determination process that can culminate in Peter being requested to return his computers).
# At any time during the process, the Amenders can nix a proposal and remove it from the database.
# At any time during the process, the Choosers can add a proposal for donation to a third party, and push a proposal to the front of the priority "Waiting for a laptop" queue.


Fat XO (1.5) will be a more general purpose machine and don't see why having more out in the
'''PROS:'''
world would not be a good thing... Debian social contract is not fixed on how one gives
* Openness and community involvement,
back. Showing the machine (just about every time I open it in the US/ DC) I get questions,
* removes much of the current bottleneck while still allowing a few trusted people to <s>admin the process</s> veto anything that is obviously not helpful or gaming the system, if problems come up.
and end up doing a mini demo. How many times have I used it in the last 1.5 ~2 years?


And can't get parts to fix my now over travelled little machine (XOExplosion ignoring me).
'''CONS:'''
Lending machines are not really appropriate for hardware hacking, camera not working, other issues,
* Trust issues - is it possible to abuse this system?
so would need something and no sense in getting older hardware...
*: In a way that noone else in the community notices and makes a fuss about? Less likely than the possibility of abusing a system with a small number of overworked reviewers.
* Learning/adoption curve - how to get people to use and understand it?
*: If this is just filling out a form, similar to getting people to use and understand the current process (fill out a form and send it to a given email address). A common first resopnse to a request can now be "please work through steps 3 and 4, to give more info to the community about your work" rather than hanging out in limbo b/c an app was vague
* Not clear on how the timeline of community reviewing will work - is there a cutoff date, will apps go stale?
*: The same question applies to the status quo. There are many apps never acted upon that are now 8 months old. They are also lost in a stack of papers and not visible anywhere.
* What is the determinant of whether and when consensus is reached?
*: Edge cases are always tricky. Rules of thumb are helpful; a class of contributors (moderators?) trusted to assess consensus could be used one day. As a first pass, see how this is handled for [http://en.wikipedia.org/wiki/WP:FAC featured articles on wp]. Contentious project proposals could be considered not there yet, any serious complaint that is not addressed being enough reason not to add a project to the list.


Also, want touchpad development capable hardware... Kids of <5 yo (+ adults)
=== Criteria for choosing projects ===
want to touch the screen, XO-2 is going to be smaller, faster, touchscreen like,
and why not get started? All the apps/activities are going to automagically
now be touch instead of mouse/ trackpad capable? System call changes?


And keeps up with the intel ;-/
# Is it generative? Can more people use the result to do future new things?
We have no choice but to buy the successor netbooks if can't get parts,
# How many people are interested in helping out?
or original hardware...
# Is it naturally multilingual/alingual?
# Is it suitable for children of all ages?
# Is there a working prototype?


[[User:Danceswithcars|danceswithcars]] 17:16, 14 July 2009 (UTC)
=== Current work being done ===


== Team up in filling out grant forms for an OLPC XO labo/demo and road tour in your region ==
* Crazy-chris and aaron kaplan have been working on a db that can take in all needed info for project applications, and will soon be able to interface with the Brightstar database.
Every region needs some 10 XO's and some XServer in a place with 3 rooms and a meeting room where 3 employed ICT people experiment and collaborate in the OLPC initiative and where people / teachers / students / parents / ... can come and experience, see and feel the XO's and the OLPC educational initiative and community. Team up with us: --[[User:SvenAERTS|SvenAERTS]] 13:38, 26 April 2013 (UTC)

Latest revision as of 13:38, 26 April 2013

Discussions and weekly meetings at Contributors program/meetings.

Thoughts on providing at-cost hardware to developers

The developers program is usually able to send one free XO per developer. We would like to allow individual developers, and larger organizations like software companies and research labs, to purchase additional XOs at cost independently of the G1G1 program.

As a start, game console manufacturers are an example of organizations which must distribute proprietary hardware on a limited basis to developers. Their programs generally look something like this:

Development studios who would like development hardware (say XBox360 devkits) must first apply to become part of the developers program. This involves providing credentials (a publishing contract for example), and then signing a NDA. They are then given access to a private development area, forums, support group, etc., and are allowed to purchase hardware through the developers program. The hardware is not theirs, they must agree to send it back in 5 years or so when no longer needed, but if it breaks it will be fixed without charge.

This could be adjusted to fit OLPC's open nature as follows:

Developers who would like an XO must first apply to become part of the developers program. This involves providing credentials (a resume), contact information and a project plan. They are then sent one free XO, and are allowed to purchase a fixed number (3?) of additional XOs at cost after signing and returning an agreement not to resell XOs acquired through the developer program. The XOs are theirs to keep. Development groups (e.g. research labs) may apply using the same system, and will be granted a larger (9?) fixed purchase amount. Larger purchase requests will be handled on an individual basis.

Questions

  • Can we legally hold people to not resell XOs they receive through the developers program? I'm concerned after seeing G1G1 XOs on EBay for $400, some people might try to take advantage of the developer program.

Please add reference to Development Wiki

Perhaps you could say something like this:

If your interest is primarily on doing some systems level or applications level coding, then join one of the projects on our Hosting Wiki.

photos

You might want to add a link to this photo gallery. It shows how one developer set it up inside an old 286 case. There appear to be two boards in the photos but one is a photo explaining all the interface connectors.

http://daemons.gr/gallery/v/100laptop/

Hosting Wiki moved - please fix

The hosting wiki has moved to another machine. Please fix the link on the main page. I fixed it above. sakai

LAPTOP.ORG PEOPLE, please fix hosting link!!!

done Walter 14:16, 7 July 2006 (EDT)


Hardware Developers' Program

Are there any intellectual property restrictions to a private firm beginning production of these machines? Are the details of the Hardware specification available in machine-readable format?

I would like to start a Production Commons to begin independent development of this hardware (including modified versions) as soon as possible. Are the design specifications Free as in Freedom so that we may proceed? Ownut


Good question. Open Hardware like Arduino is more in line with the project goals... Lowering the entry hurdle/ barrier would help not hurt the project... Spinoffs might be merged back into the next release, hardware development is learning too...

St. Nick says the warranttee doesn't start til you open it up... Crack the box, or just start the machine?

danceswithcars 17:29, 14 July 2009 (UTC) UncleCrazy

BIOS section should be revised for LinuxBIOS

This page should contain a link to Upgrading_to_LinuxBIOS rather than saying that people shouldn't mess with their BIOSes.

SELinux

SELinux vs 0-day attacks is uninteresting. Attacks which would normally succeed will still succeed under SELinux control, with limited privileges; some possibilities:

  • Burn CPU until power goes out (but it dies as well)
  • Kill other user processes (i.e. the Web browser being used to take a test)
  • Infect the user's account (i.e. if we break in through Firefox or something) and start on every log-in
  • Destroy user data
  • Constantly write to flash, until it starts to suffer infant mortality (several weeks/months of this maybe, but still bad; plus we're killing power)

Deploying other enhancements like stronger address randomization and stack smash protection will help this in general. Ptmalloc (in glibc) is hardened against heap corruption and double-free() already.

What you can use SELinux for is execmem,execmod,execheap,execstack protections to control memory execution; but this won't work entirely without an NX bit. Port the emulation from Exec Shield (weak, stack only--usually, sometimes no protection) or PaX (Strong, fine-grained per-page, but more CPU intensive and likely to be a pain due to the very few TLB entries); or run full PaX and possibly GrSecurity.

Background

s/Machine are also being allocated/Machines are also being allocated/

Goals

s/and most easily done/and is most easily done/

More Talk

Please link to the USB ethernet adaptors page in the paragraph where USB ethernet adaptors are mentioned. -- probono


Regarding the serial cable, please do `s/DB9/DE9/`, and also state whether the connector is Male or Female. A DB9 (D-shell, size B, 9 pins) would be the size of a Parellel port... as opposed to DE9 (D-shell, size E, 9 pins) which is the size of a VGA connector (aka DE15). Sladen 09:33, 31 May 2006 (EDT)

done Walter 17:10, 13 June 2006 (EDT)

I wondered what FOSS means and went to http://www.yahoo.com and looked it up.

It means Free and Open Source Software.

http://en.wikipedia.org/wiki/FOSS


I found the reference to OOM killer obscure. It seems to refer to "Out of Memory Killer," but I don't know what will make it less naive, more sophisticated for OLPC needs.

Details at:

http://linux-mm.org/OOM_Killer http://kerneltrap.org/node/142

Fbkintanar 00:20, 13 June 2006 (EDT)

Right now, the heuristic used by the kernel to choose what to shoot has no information provided by user space: it makes some guesses. Something much better is clearly possible. - jg

I'd say the better thing is to set vm.overcommit_memory=0 and be done with it. - Slamb 12:17, 5 August 2006 (EDT)

"IPv6 support, and service discovery, which are very important to us." I am interested in helping with IPv6, even if just testing for now. Any suggestions where to get started? Specifically, is there any ongoing effort to address service discovery? Is there any interest in instrumenting the stack for systems management? Please point me to an appropriate place, if this is off topic.

Fbkintanar 00:20, 13 June 2006 (EDT)

I think both Marcelo and our SOC student have interest in the stack area.

We're using the Avahi library to do mdns/zeroconf stuff. You can test it on IPv6, and there are missing pieces to connect it with dns for higher scaling. Get in touch with blizzard. -jg


The distribution of the boards with serial numbers on them resonated with an art project which is on the internet.

http://www.autonomousorange.com/EN/index.html


In the Background section is the following.

..., which is aimed at individual FOSS developers or research organizations.

Yet in the How to apply section is the following.

3. Employer

Could you please consider rewording this to say

3. Employer (if any)

or to

3. Employer (if this application is related to any employment you may have)

as at present it does provide the possible interpretation that an applicant must have an employer and that the employer is involved in the application.

I feel that this is important as otherwise the project could come by custom and practice to have a "not representing an organization" discrimination ambience.

fixed. Thanks.


Ideas to Extend Developers Program

Some of these ideas pertain more to a grassroots organization than the OLPC NGO.

Engineers in developing nations need more financial incentives to participate in Open Source projects than engineers in the developing world require (often none), typically due to the financial pressures placed on them by their families. We need to convince both student developers and their teachers that they should switch their academic focus from J2EE to Python.

Benefits for Core Developers:

  • Certificate from an internationally recognized technical university -- ideally MIT.
    • Other possibilities are the MIT Media Lab or Open Source Lab at Oregon State. Certificates are a big deal in the developing world.
    • Certificates could be based on amount of code contributed to dev.laptop.org, participation in code reviews, hardware development etc.
  • Discounted internet access and possibly provide extra UPS -- this benefit would vary country by country and a grassroots organization would have to coordinate it.
  • Discounted or free examinations for related IT certifications for accomplished developers
    • Red Hat Certified Engineer (RHCE)
    • A Python programming certification -- I know this doesn't exist but OLPC is a good enough reason to start one
  • Internships -- We intend to offer internships at OLPC Nepal but this may not be feasible in a country without an active OLPC organization.

Events to Stimulate Interest in OLPC


  • Regional and international events to stimulate interest in development, should emphasize commercial value of skills learned from working on OLPC, for example: "learn Python and you could eventually work for Google, Red Hat, etc."
    • Regional and national programming contests with significant prize money, for example in Nepal $2000 USD would be a substantial prize and huge incentive
      • Separate contests for Activity Development, hardware development, and power systems development, could be organized similar to CSIDC
      • Pie-in-the-sky idea -- regional Google Summer of Code style summer camps focused exclusivelyon OLPC
    • Regional or national programming hackfests and sprints

-- User:Berrybw

poor firmware/filesystem update info

It's not really clear what version I should be using for what purpose. I'm guessing that some revisions are best for app development, others best for sugar development, and a few will brick the machine. The wiki doesn't even have a changelog. According to the tinderbox data, which looks too awful to really believe (broken script?), all the recent versions are very bad.

I got build 239 with the B2. I was about to update to that when I noticed I already had it. Is that about the best for app development?

A version of gcc with -mcpu=geode would be good. (kids should have it too BTW)

AlbertCahalan 01:08, 9 March 2007 (EST)

Article is now linked from sidebar. Cleanup needed.

The article is now liked from the sidebar, dramatically increasing its visibility. Thus it needs cleanup. Until a moment ago, it didn't have an intro paragraph. It was written before sugar-jhbuild existed, and so only talks about emulation. The hardware release notes linked to are for BT-2. Etc. Basically, this seems an "old and moldy" page which has now gone high profile, and so needs work. MitchellNCharity 00:25, 17 August 2007 (EDT)

Fold into the Developer's Handbook, focus this page on its topic

This page is rapidly molding away to obsolescence.

My intention is to make the sidebar link to the Developer's handbook. This page, then will be solely about the actual "Developer's Program", the program that gives access to hardware and project support services.

A fine plan. We're also revisiting the developers program process, to make that more transparent and share the vetting process and the project ideas it generates with the community.

The hardware build discussion stuff will likely move to a separate page (e.g. Hardware or Hardware/Prototypes). The general introduction stuff should be using the general introduction to the machine, figure out where that is...

Perhaps a page of OLPC:getting started?

I'll likely be working on this on Wednesday, so if you have an objection, make it soon and loud. I'm guessing I'll need an admin to do the actual side-bar changes.

True enough. We need more wiki admins... feel free to nominate the good editors you know. adminship is no big deal; it's just a way to help everyone edit effectively. --Sj talk to me 19:39, 24 December 2007 (EST)

Community driven implementation proposal

See Community approval process for an alternative proposal on how to distribute contributor/pilot/other machines. Originated by SJ, posted by Mel.

We are reaching consensus that this is the right way to proceed. --Sj talk 14:28, 6 May 2008 (EDT)

Sample form for the full contributor's program

Project intro and descriptions

Please describe yourself and any personal information needed to get in touch with you.

  1. name [text]
  2. email address [text]


Please describe the projects you are developing, or planning on developing, in decreasing order of awesome.

  1. name
    1. description [textarea]
    2. project duration [text]

Hardware to hack on

XOs : for hardware, software, or content development that would be easier with an XO

  1. # of XOs
  2. keyboard desired, if it matters
  3. power-adapter desired (plug type)
    How much does this matter? [text]

Networking

  1. # of active antennas


Hosting for code and content

Mailing lists, subdomains, &c

Feature requests for projectdb

After going through a round of applications in the projectdb as an admin, I've got a few feature requests that would be awfully handy.

  • Do people automatically get notified of their project status/etc. being updated? Can we add this?
  • Can we track the history of a project - for instance, this edit was made by this person at this time, this suggestion was made by this person at this time?
  • I'd like to be able to merge projects (for instance, multiple partners working together submitted separate applications for exactly the same project).
  • Automatic "click a button" spreadsheet generation of all approved projects that have not yet been spreadsheeted.

Mchua 16:16, 22 May 2008 (EDT)

Current distribution process

  • Review latest round of submissions to the projectdb, approve those that qualify
  • Export approved projects into csv files, one per destination country (one line per project per country)
    • The csv files should contain the following fields:
CustOrdNbr	 ShipName	 ShipAddr1	 ShipAddr2	 ShipCity	 ShipState	 ShipZip	 ShipPhone
    • Details:
      OrdNbr should be DE90000000 + the project number
      Addr fields should be no longer than 30 characters
      State should never be empty but should contain an "x" if there is no state;
      Phone should contain only digits, no + symbols; and should use "011" before international country codes


Updating the contributors program

from discussions with wade

Sugar : designs are progressive and exciting, implementation sparse. Sugar has been often ignored on tech news sites. Our resources are focused on the platform rather than the user experience. The barrier to entry, work required before the first successful commit, must be overcome by outreach and guidance [and] open development process.

Three key pillars are recruiting contributors, marshalling efforts, and channeling recognition

Recruiting

Thousands of experienced programmers would absolutely love to work on Sugar, activities and content. reach them and help them get a development environment or contribute [once] to a project.

Target communities with high potential. For programmers, gamedev.net and Game Illuminati and The Chaos Engine; Google Summer of Code to reach college students. Universities with tech programs, in developing countries, and Python user groups. Experienced programmers who buy XOs for their children or for themselves [G1G1]. schools and deployments actively using XOs who may have development resources. ensure they are adequately served and fit in with the Sugar community.

Recruit to each community. Game developers react well to contests and challenges: "Free XOs and T-shirts to the first team to get Blender to render <this scene> in less than 1 second". University students respond to certificate programs for Python and User Interface development, and to online internships which look good on resumes.

Marshaling

Community projects [often] start with the best intentions, are 90% complete but lose momentum. the second 90% is left once you finish the first 90%. We must [help] finish projects that are nearly complete, and fix those once stable [that] decay.

Idleness causes contributors to lose interest. engaged with a sense of momentum, they will continue actively. We must champion important tasks and pair recruits with mentors who can keep them busy.

Finally, we must streamline development so contributors do not get stuck. hosting, translation and testing must be available [and reliable], and the means to provide those services available [distributedly]. One way: build Translate, Develop and Bug Report activities into the XO. Then at any time users can a) translate or re-translate a string, b) develop and submit a patch, or c) report a bug and attach data.

Recognition

Contributors must know their work is appreciated. Highlight each contribution via weekly email and the wiki, watching Git commits and Trac updates.

The mentors team will also have responsibility to confer status titles on participants and projects. For example, 'Featured' status (quality, value) and place on the Activities page. Or an 'OLPC Fellow' [title], and a special tag on their User page.


Organization

This work will fall under the jurisdiction of the contributors program, facilitated by OLPC and overseen by the community. This program will unify distributed community development of Sugar software and content, guidelines for reviewing and creating great material, and identification and assignment of open tasks and potential bounties.

The public face of the program will be the Contributors and Developers pages on the OLPC wiki. This portal will highlight accomplishments and identify high value tasks for people to work on. It will provide organized links to help new contributors find projects and mentors and get started.

The program will form teams of welcomers, reviewers, and mentors from community and staff. These teams will identify new contributors from first inquiry and/or contribution, and work with them to help them stay active. Mentors will be assigned a list of community members to assist based on specialty, workload and other considerations.

Feature requests

  • Easier batching of a set of requests for review, and a label indicating they are explicitly out for that week's review.
    from Mel.

cancel Peter Robinson's request

Please *cancel* Peter Robinson's request. It was accepted but has not shipped. He has now obtained an XO through RT#30642.

How does someone become a community mentor?

I like that you can "view source" for the process and help with the review, and would love to see the same for mentors - who are they, how are they chosen, how can you become one? Mchua 16:52, 3 March 2009 (UTC)


Combined Feedback

For other things on this page. Apple has a developer program that requires student status... When I was a university student I used it, didn't require much and got some things like developer tools CDs, t shirt, new OS X versions in beta or similar. Costs to Apple to send to developers. My Beige G3 (~$2k invested in 1997), now sits idle, but did finish degree with it... Long story... Software developed in Java still runs unmodified 10 years later, not impressive, retro, but...

Anyway, other (general) hardware developers offer development boards for some cost, no requirements besides buying it. Learn as one wishes to learn... Others probably have sales version for projects buying large number of hardware, or free hardware with commitment of project using nnn ICs, boards, etc...

If XO is to thrive as a platform, given that OLPC USA doesn't really exist (pitched it to Feds at FOSE2008/ FOSE2009), and learning is universal (i.e. not defined by country boundaries), then need to do Something. The contributors program has not been responsive (to me personally), and trying to just participate in chats, get knocked off, though my questions are probably rather basic, my experience, though dated, might help others...

Fat XO (1.5) will be a more general purpose machine and don't see why having more out in the world would not be a good thing... Debian social contract is not fixed on how one gives back. Showing the machine (just about every time I open it in the US/ DC) I get questions, and end up doing a mini demo. How many times have I used it in the last 1.5 ~2 years?

And can't get parts to fix my now over travelled little machine (XOExplosion ignoring me). Lending machines are not really appropriate for hardware hacking, camera not working, other issues, so would need something and no sense in getting older hardware...

Also, want touchpad development capable hardware... Kids of <5 yo (+ adults) want to touch the screen, XO-2 is going to be smaller, faster, touchscreen like, and why not get started? All the apps/activities are going to automagically now be touch instead of mouse/ trackpad capable? System call changes?

And keeps up with the intel ;-/ We have no choice but to buy the successor netbooks if can't get parts, or original hardware...

danceswithcars 17:16, 14 July 2009 (UTC)

Team up in filling out grant forms for an OLPC XO labo/demo and road tour in your region

Every region needs some 10 XO's and some XServer in a place with 3 rooms and a meeting room where 3 employed ICT people experiment and collaborate in the OLPC initiative and where people / teachers / students / parents / ... can come and experience, see and feel the XO's and the OLPC educational initiative and community. Team up with us: --SvenAERTS 13:38, 26 April 2013 (UTC)