Difference between revisions of "BeagleBoard/GSoC/Application"

From eLinux.org
Jump to: navigation, search
(Describe your organization.)
(If you answered “yes” to the question above please summarize your involvement and the successes and challenges of your participation. Please also list your pass/fail rate for each year.)
 
(118 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
[[Category: Linux]]
 
[[Category: Linux]]
 
[[Category: OMAP]]
 
[[Category: OMAP]]
''Applying to Google Summer of Code''
+
[[Category:Development Boards]]
 +
[[Category: BeagleBoard]]
 +
[[Category: GSoC]]
  
Borrowed from http://sugarlabs.org/go/Summer_of_Code/SL_application.  See http://code.google.com/p/google-summer-of-code/wiki/AdviceforMentors for more advice.  Actual application page is http://socghop.appspot.com/org_app/apply/google/gsoc2009.
+
==How does a mentoring organization apply?==
  
==How does a mentoring organization apply?==
+
The organization should choose a single administrator to submit its application via the Google Summer of Code 2019 by February 6, 2016.
 +
 
 +
:Jason Kridner will be the administrator, but is looking for volunteers to help edit the application contents and to update the ideas.
  
The organization should choose a single administrator to submit its application via the GSoC web app between March 9-13, 2009.
+
==Profile==
 +
* Website URL
 +
* Tagline
 +
* Logo
 +
* Primary Open Source License
 +
* Organization Category
 +
* Technology Tags
 +
* Topic Tags
 +
* Ideas List
 +
* Short Description
 +
* Long Description
 +
* Application Instructions
 +
* Proposal Tags
 +
* Chat, Mailing List, or Email
  
:Philip Balister has agreed to be the administrator. Jason Kridner and Cathy Wicks will help prepare the application.
+
==Application==
 +
* Why does your org want to participate in Google Summer of Code?
 +
* How many potential mentors have agreed to mentor this year?
 +
* How will you keep mentors engaged with their students?
 +
* How will you help your students stay on schedule to complete their projects?
 +
* How will you get your students involved in your community during GSoC?
 +
* How will you keep students involved with your community after GSoC?
 +
* Has your org been accepted as a mentor org in Google Summer of Code before?
 +
* What year was your project started?
 +
* Where does your source code live?
  
 
==What should a mentoring organization application look like?==
 
==What should a mentoring organization application look like?==
  
===Link ID===
+
===Organization Name===
 +
BeagleBoard.org
 +
 
 +
===Description===
 +
BeagleBoard.org is an open source community of experienced hackers, hobbyists and engineers who are enthusiastic about building powerful, open ARM-based systems completely programmable through your web browser. BeagleBoard.org’s vision is to improve access to small, low-power computing platforms that can be embedded into new creations using easy to use development tools, such as its self-hosted, web-based IDE. The hardware designs of all Beagle boards are open source with all schematics, bills-of-materials, layouts, etc. shared for building other devices. The software is also open source and is generated by the community. Compiler tools are free and the board is available at a low cost. Boards will be provided for free to any student participating in a BeagleBoard.org-related GSoC project.
 +
 
 +
The BeagleBoard.org community continues to grow with over 20,000 members on the forum, over 3,000,000 boards in circulation, and over 150 developers who actively participate on the live chat (IRC channel) at any given time. Existing projects are often for the purpose of building robots, autonomous flying drones, automotive entertainment and navigation systems, home media centers, digital signs, wearable computers, gaming consoles, 3d printers, laser cutters and even hamburger robots! (over 1,000 projects registered at http://beagleboard.org/project/) Existing software compatibility includes various versions of Android, Ubuntu, Angstrom, Gentoo, FFmpeg, XBMC, ROS, OpenCV and much more.
 +
 
 +
===Home page===
 +
http://beagleboard.org/
 +
 
 +
===Main Organization License===
 +
GPLv2
 +
 
 +
===Why is your organization applying to participate in Google Summer of Code? What do you hope to gain by participating?===
 +
We hope to inspire open source developers to take an interest in physical computing, especially when it involves high-level operating systems and heterogeneous processor environments capable of real-world data processing.
 +
 
 +
We hope to increase general interest in computers and electronics through improved access, simplified interfaces and example projects.
 +
 
 +
Because the Beagles are open source hardware and built on open source software stacks like Linux, any software designed on it can be taken and put into entirely new products, enabling a world where the next generation has more control over those digital products.
 +
 
 +
We want to make sure computers are demystified for the next generation and that means they need to see the "cloud" as something physical, not abstract.
 +
 
 +
===What would your org consider to be a successful summer?===
 +
We are looking for long-term contributors helping to set the direction of open source development solutions for embedded systems. We've had great success in retaining contributions from previous GSoC students and want to make that grow. We want students to find they can achieve even more than they sought by engaging and becoming part of the developer community. If students feel successful and help pave the way for future users and contributors, it will be a success.
 +
 
 +
===Has your organization participated in past Google Summer of Codes?===
 +
Yes.
 +
 
 +
===How many potential mentors do you have for this year's program? What criteria did you use to select them?===
 +
We currently have 20 potential mentors for this year's program of which only 4 haven't previously mentored in GSoC. We've removed mentors from previous years who were under motivated to help students succeed and brought on mentors who have contributed significantly to our projects or related projects either through documentation or implementation. Most of our potential mentors are also in frequent contact with each other through IRC, Google+ and our primary developer mailing list to have confidence they can work together well.
  
BeagleBoard
+
===If you answered “yes” to the question above please summarize your involvement and the successes and challenges of your participation. Please also list your pass/fail rate for each year.===
 +
BeagleBoard.org GSoC students have
 +
improved the Linux kernel support for analog-to-digital converters, software-based pulse width modulators and USB bus analysis,
 +
implemented network protocols for booting a remote processor from Android, Linux or Windows hosts,
 +
implemented Arduino-compatible software on top of Linux (code used by other hardware platforms, eg. Intel Galileo),
 +
improved the functionality of Minix for operating system education,
 +
improved the integration and performance on ARM or DSP processors of ROS, XBMC, FFTW and OpenCV,
 +
and delivered a framework for compilation and invocation of heterogeneous processor functions.
  
===Group Name===
+
We had an excellent set of mentors with 3 mentors for every student to ensure high availability of mentor time via the IRC channel. Our mentors had deep knowledge relevant to the projects and were able to assist the students in each of their technical challenges. We monitored student progress with weekly blog posts and IRC meetings to keep them on track and resolve any blocking issues. We collected short video presentations introducing each project, giving observers a good idea of the students' goals. We screened out projects that wouldn't provide sufficiently reusable software for the rest of the community.
  
BeagleBoard.org
+
Including a hardware component adds some challenges when shipping around the world. We've solved this by engaging local businesses and additional distributors.
 +
 
 +
Getting more face-to-face interaction continues to be a challenge, but our IRC interactions are strong and we've started to incorporate Google Hangouts in our collaboration.
 +
 
 +
We've greatly improved our success rate in getting code adopted by the upstream projects and made available across the BeagleBoard community by making integration into a distribution will be a requirement, giving greater emphasis on following up with upstream developers and focusing on projects directly impacting the BeagleBoard community, rather than relying on upstream projects that might not be fundamentally motivated to adopt the patches. This year, we've added continuous integration via http://builds.beagleboard.org.
 +
 
 +
Pass/fail rate for 2010: 6 pass 0 fail
  
===Home Page URL===
+
Pass/fail rate for 2013: 6 pass 0 fail (1 dropout for personal reasons)
  
http://beagleboard.org/
+
Pass/fail rate for 2014: 6 pass 1 fail
  
===Public Email===
+
Pass/fail rate for 2015: 7 pass 1 fail
  
beagleboard@googlegroups.com
+
Pass/fail rate for 2016: 6 pass 1 fail
  
===Describe your organization.===
+
Pass/fail rate for 2017: 6 pass 0 fail
  
[http://beagleboard.org BeagleBoard.org] is a volunteer community behind building powerful, open, and embedded devices based on the OMAP3530.  The vision is to enable much lower-power and lower-cost computing platforms that can be embedded into designs with confined spaces, limited batteries, and innovative user interfaces (web browsers available in every situation).  The design is "open source hardware" with all of the schematic, bill-of-materials, layout, etc. shared for building other devices.  The software is open source software generated by the community, such as the Angstrom Distribution, Ubuntu, Android and other Linux distributions.  Compiler tools are free and the board is available at a low cost.
+
Pass/fail rate for 2018: 4 pass 1 fail
  
Texas Instruments sponsors some BeagleBoard.org related activities and the first members of the community were TI employees, but the collaboration base is now over 1,400 members on the mailing list and almost 3,000 individual developers having purchased development hardware around the world.  Existing projects include 3 different Android builds, Ubuntu, Angstrom, FFmpeg, MythTV, and much more (about 40 projects registered at http://beagleboard.org/project).
+
Pass/fail rate for 2019: 3 pass 1 fail
  
===Why is your organization applying to participate in GSoC 2009? What do you hope to gain by participating?===
+
Pass/fail rate for 2020: 4 pass 0 fail
  
We hope to grow our developer base, allowing for and stimulate interest in embedded and heterogeneous multi-core software development environments that provide long-term power and performance advantages over the limited use cases of desktop and mobile computers.
+
Pass/fail rate for 2021: 6 pass 0 fail
  
Beyond the basic technology issues, we hope to create better versions of popular open source applications for the OMAP3 platform.
+
===If your organization has not previously participated in Google Summer of Code, have you applied in the past? If so, for what year(s)?===
 +
N/A – BeagleBoard.org has applied and participated in the past.
  
Since BeagleBoard.org was created around a specific piece of hardware, multiple Linux distributions run on the Beagle Board. We are applying to the Google Summer of Code to support software projects that support all Beagle Board users, regardless of the underlying distribution.
+
===What Open Source Initiative approved license(s) does your project use?===
 +
GPLv2 - http://opensource.org/licenses/GPL-2.0
  
===What is the main development mailing list or forum for your organization?===
+
===What is the URL for your ideas page?===
 +
http://elinux.org/BeagleBoard/GSoC/Ideas
  
http://groups.google.com/group/beagleboard
+
===What is the main development mailing list for your organization?===
 +
: http://groups.google.com/group/beagleboard: All things BeagleBoard
 +
: http://groups.google.com/group/beagleboard-gsoc: GSoC-specific things for BeagleBoard.org
  
 
===What is the main IRC channel for your organization?===
 
===What is the main IRC channel for your organization?===
 +
irc.freeenode.net #beagle
 +
 +
===Who will be your backup organization administrator?===
 +
Vladimir Pantelic
 +
 +
===What criteria did you use to select the mentors? Please be as specific as possible.===
 +
Mentors were chosen based on personal knowledge of their contributions over IRC helping community members, the mailing list, and specific projects of interest. With the BeagleBoard.org community existing now for 5 years, many of the same members are still very active and well-known to our GSoC administrators. We typically meet up at Embedded Linux Conference, Design West, Linaro meetings and several other small events. Given frequent support over IRC, it is clear which proposed mentors are the best candidates.
 +
 +
===How will you keep students on schedule?===
 +
We've set a strict requirement for weekly milestones and demanded realistic schedules be a part of the student's application.
 +
 +
We will set the expectation that students should not be out of communication for more than 60 hours (i.e., the length of a weekend) without prior notification to their mentor. We'll also hold mandatory weekly meetings in IRC for all the students to report on progress made, problems encountered, and proposed next steps.
 +
 +
The project administrators will monitor all the projects and try to identify issues that might lead to disappearing contributors before the problem becomes unsolvable. In particular, when a mentor is too unsympathetic to a student, we'll bring in an alternate mentor to help "translate". If personal issues come up, we'll encourage students to stay engaged with the process by making specific plans to make up for lost time. We'll try to screen out anyone who doesn't seem willing to make the necessary time commitments.
 +
 +
===How will you keep mentors engaged?===
 +
We will choose mentors with a history of being involved in BeagleBoard.org projects and who are consistently responsive via Slack/IRC and e-mail. We establish secondary mentors who can step in when it is difficult for a primary mentor to engage. We've found the secondary mentors also help greatly with improving student/mentor communication. Mentors are expected to attend the weekly check-in meetings on Slack. We will have a named contact in the same region and/or company as any mentor to assist in "pinging" any AWOL mentor. We make sure mentors are self-motivated to participate and are vested in the outcome of the student projects.
 +
 +
===What steps will you take to encourage students to interact with your project's community before and during the program?===
 +
We encourage candidates to interact with community members on the IRC channel and mailing list ahead of the program to gather information required for their application. We will work with the students to produce YouTube videos to introduce their projects to the community, including the newsletter with a circulation of roughly 35,000 subscribers. Weekly status reports are sent out to the community. Students are encouraged to hang out on #beagle, which is active 24/7, during the program. We've had good success with keeping students involved with the community as most still hang out on the IRC channels and have sought new projects or mentorship (if graduated) in subsequent years.
 +
 +
===What will you do to encourage your accepted students to stick with the project after Google Summer of Code concludes?===
 +
Many of our students are currently active in editing our ideas page and recruiting new Google Summer of Code students. We will give them hardware and “swag” following the program to keep them interested, but mostly we value their contributions and try to make sure that others in the community are exposed to those contributions. The greatest reward of producing quality code is having people use it and the world knowing you created it! Almost all projects from last year are now included in images that ship to 100,000s of people. Some students have gone on to work at Google and some have even started up businesses based on their contributions. They continue to stay engaged for the community support and to give back to the community that supports them.
 +
 +
===Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here.===
 +
BeagleBoard.org is not a new organization to Google Summer of Code.
 +
 +
===Are you an established or larger organization who would like to vouch for a new organization applying this year? If so, please list their name(s) here.===
 +
BeagleBoard.org has not been approached by other organizations to vouch for them at this time.
 +
 +
===What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes?===
 +
Although we will start by using GSoC-specific communication paths, all students will be expected to monitor the primary email list and IRC channel. Over the course of the summer students will be encouraged to start using the primary communication channels to work on their project. By transitioning students to the primary communication channels, we hope to integrate students into the larger community before the end of summer of code so that they can continue to work on their projects via our IRC channel after GSoC concludes.
 +
 +
Each student is asked to create a public blog for updating the community and logging their progress on the project. Blogs receive hits from around the world and people ask questions via the comments sections. This keeps the students engaged with the community and their previous work.
 +
 +
===How will you get your GSoC contributors involved in your community during GSoC?===
 +
Each student is asked to create a public blog on github.io for updating the community and logging their progress on the project.
  
irc.freeenode.net #beagle
+
The students are also required to create YouTube videos introducing and summarizing their projects. This is typically just a slide show and a voice-over.
 +
 
 +
===Anything else we should know?===
 +
Our focus is physical computing and we participate in GSoC as a *software* project. While we send students hardware to provide physical interfaces, much of the code developed goes on to be used in other Linux single-board computers, such as the Linux Foundation Dronecode project which started as a GSoC project under BeagleBoard.org mentorship contributing to the ArduPilot codebase. We get the code upstream and we support the students broader ambitions to make a difference.
  
===What criteria do you use to select the members of your group? Please be as specific as possible.===
+
=Application template=
 +
==About you==
 +
What is your name, e-mail address and usernames on Freenode IRC, eLinux wiki and Github? (required)
  
Membership in the BeagleBoard.org community is open to all interested parties. Since this community is based on a common interest in a particular piece of hardware, there are no specific requirements for memebership. Many community members are also members of specific open source projects, such as OpenEmbedded and GNU Radio. Other community members use and enhance existing open source software to develop innovative mobile applications using the Beagle Board.
 
  
===Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.===
+
What is the name of your school and in what country? (required)
  
No, beagleboard.org did not participate in past GSoCs.
 
  
===If your organization has not previously participated in GSoC, have you applied in the past? If so, for what year(s)?===
+
What is your primary language and work hours? (We have mentors who speak multiple languages and in various time zones and can match you partially based on that.)
  
No, beagleboard.org did not apply for past GSoCs.
 
  
===What license(s) does your project use?===
+
Have you participated in an open-source project before? If so, please send us URLs. If not, why do you want to?
  
For code written for this project, we will use new and simplified BSD. When the project is based on an existing open source package, the license of that package will be used.
 
  
Existing code is primarily GPLv2 and all kernel code should be so.  Some developers use other FOSS licenses, such as MIT, LGPL, etc.  There are some TI codecs available for use on the platform that are provided under publicly-available binary-only licenses as well as other binary firmware builds distributed as part of the Linux kernel, but these are discouraged from being used as part of any student project.
+
==About your project==
 +
What is the name of your proposed project?
  
===What is the URL for your ideas page?===
 
  
http://elinux.org/BeagleBoard/Ideas-2009
+
In 10-20 sentences, what are you making, for whom, why and with what technologies (programming languages, etc.)? (We are looking for open source SOFTWARE submissions.)
  
===Does your organization have an application template you would like to see students use? If so, please provide it now.===
 
  
'''About you'''
+
Provide a development timeline with a milestone each of the 11 weeks. (A realistic timeline is critical to our selection process.)
  
# What is your name?
 
# What is your email address?
 
# What is your eLinux wiki username?
 
# What is your IRC nickname?
 
# What is the name of your School?
 
# What is your primary language? (We have mentors who speak multiple languages and can match you with one of them if you'd prefer.)
 
# Where are you located, and what hours do you tend to work? (We also try to match mentors by general time zone if possible.)
 
# Have you participated in an open-source project before? If so, please send us URLs to your profile pages for those projects, or some other demonstration of the work that you have done in open-source. If not, why do you want to work on an open-source project this summer?
 
  
'''About your project'''
+
In 5-15 sentences, convince us you will be able to successfully complete your project in the timeline you have described.
  
# What is the name of your project?
 
# Describe your project in 10-20 sentences. What are you making? Who are you making it for, and why do they need it? What technologies (programming languages, etc.) will you be using?
 
# What is the timeline for development of your project? The Summer of Code work period is about 11 weeks long, May 23 - August 10; tell us what you will be working on each week. The mid-term evaluation must be submitted by July 13, plan to have some results by then. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.)
 
# Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.
 
  
'''You and the community'''
+
If successfully completed, what will its impact be on the BeagleBoard.org community? Include quotes from BeagleBoard.org community members who can be found on http://beagleboard.org/discuss and http://bbb.io/gsocchat.
  
# If your project is successfully completed, what will its impact be on the BeagleBoard.org community? Give 3 answers, each 1-3 paragraphs in length. The first one should be yours. The other two should be answers from members of the BeagleBoard.org community, at least one of whom should be a BeagleBoard.org GSoC mentor. Provide email contact information for non-GSoC mentors.
 
# What will you do if you get stuck on your project and your mentor isn't around?
 
  
'''Miscellaneous'''
+
What will you do if you get stuck on your project and your mentor isn’t around?
  
# We want to make sure that you can set up a development environment before the summer starts. Please post an image of your running BeagleBoard on Flickr to the BeagleBoard group and provide a link. If you need a board, please send indicate so in your application and, if approved, we'll loan you a board to complete this portion. Please feel free to visit our IRC channel, #beagle on irc.freenode.net, and ask for help.
+
==Misc==
# Is there anything else we should have asked you?
+
Please complete the requirements listed on the ideas page. (http://bbb.io/gsocideas)
  
===What is your plan for dealing with disappearing contributors?===
+
Is there anything else we should have asked you?
  
We will set the expectation that students will not be out of communications for more than 60 hours (ie, the length of a weekend) without prior notification to their mentor. We'll also hold mandatory weekly meetings in IRC for all the students to report on progress made, problems encountered, and proposed next steps.
+
=Org profile=
 +
Public Profile
  
All mentors are expected to review the SoC wiki and review the best practice sections. The project administrators will monitor all the projects and try to identify issues that might lead to disappearing contributors before the problem becomes unsolvable. (This applies to the next few answers also)
+
Name
 +
BeagleBoard.org
 +
Website URL
 +
https://beagleboard.org
 +
http://www.yourproject.org/
 +
Tagline
 +
Open hardware community driven single board computers - Linux at the edge
 +
73 / 80
 +
A very short description of your organization.
 +
Your organization logo. Must be a 24-bit PNG, minimum height 256 pixels.
 +
Primary Open Source License
 +
GNU General Public License version 2.0 (GPL-2.0)
 +
The open source license that your organization uses.
 +
Organization Category
 +
Programming Languages and Development Tools
 +
Select which category fits your organization best. Some organizations may fit into multiple categories, you must choose one. Used to help students filter the organization list.
 +
Technology Tags
 +
linux
 +
tensorflow
 +
python
 +
javascript
 +
opencv
 +
Enter a technology tag
 +
5/5
 +
Enter keywords for the primary specific technologies your organization uses. Examples: Python, Javascript, MySQL, Hadoop, OpenGL, Arduino
 +
Topic Tags
 +
robotics
 +
iot
 +
teaching
 +
real-time
 +
embedded
 +
Enter a topic tag
 +
5/5
 +
Enter keywords for general topics that describe your organization. Examples: Vision, Robotics, Cloud, Graphics, Web, Real time
 +
Ideas List
 +
https://beagleboard.org/gsocideas
 +
Enter the URL of your Ideas List page. This will be linked from your organization page.
 +
Descriptions
 +
These descriptions will be displayed on the organization list page (Short Description) and on your organization's page (Long Description). More details.
  
===What is your plan for dealing with disappearing members?===
+
The Long Description may include limited Markdown.
  
TI-based mentors will have work-oriented commitments.  We will choose non-TI-based mentors with a history of being involved in BeagleBoard.org projects and who are consistently responsive via IRC and e-mail. We plan to have secondary (paired mentors) and tertiary (general IRC channel) support for each project, and mentors will also be expected to attend the weekly check-in meetings on IRC.
+
Short Description
 +
Open hardware single board computers for IoT, artificial intelligence, home/business automation, robotics and education. Learn to create appliances, not just applications!
 +
171 / 180
 +
Long Description
 +
The BeagleBoard.org Foundation is a USA-based 501(c)(3) non-profit corporation existing to provide education in and collaboration around the design and use of open-source software and hardware in embedded computing. BeagleBoard.org provides a forum for the owners and developers of open-source software and hardware to exchange ideas, knowledge and experience. The BeagleBoard.org community collaborates on the development of open source physical computing solutions including robotics, personal manufacturing tools like 3D printers and laser cutters, and other types of industrial and machine controls.
  
===What steps will you take to encourage contributors to interact with your project's community before, during and after the program?===
+
Support for BeagleBoard.org boards comes from the very active development community through this website, the mailing list, and the IRC channel. On-going funding for board prototypes has been provided by manufacturing partners. Texas Instruments generously allows Jason Kridner, community manager and software cat herder, to spend time to provide support and development of the BeagleBoard.org project as part of their duties at TI.
  
We understand that it is difficult for new people to start using the existing project mailing lists and irc channel, so we will create a specific Summer of Code email list and irc channel. Potential mentors will use these paths to work with students to develop ideas and project proposals. In at least one case, potential mentors have an existing relationship with some students, they will work directly with this group to prepare proposals. We understand that the preferred communication channels are the BeagleBoard.org lists and irc channel, during the Community Bonding Period we will introduce students to the these communication channels.
+
All the designs are fully open source and components are available for anyone to manufacture compatible hardware. We do request contact and permission before considering the use of the BeagleBoard.org name on any products.
  
During the Community Bonding Period we will supply students with Beagle Boards and help them setup development environments.
+
There are a variety of CPUs used on BeagleBoard.org boards optimized for various types of computing tasks. [PRUs](https://beagleboard.org/pru) are ideal for ultra-low latency and exact timing for control and software generated interfaces. DSPs are ideal for digital filters, convolution and audio/video processing. There are also EVEs, GPUs, IVAs, MCUs and more.
 +
1592/2000
 +
Proposals
 +
Guidance for students on how to apply to your organization. Should include any prerequisites or requirements. You may wish to include a template or tips for their proposals. May include limited Markdown.
  
Once we have accepted proposals, we will continue to use these resources, and develop additional communication paths as required.
+
Enter tags that students can select (one) from and apply to their own proposals to help organize them. Examples: New Feature, Optimization. You can also use these to designate "sub-organizations" if you are an umbrella organization.
  
After the project, we plan to support students with successful projects in any wrap up work needed, such as submitting code to the upstream project.
+
Application Instructions
 +
All applications must follow the basic requirements at https://elinux.org/BeagleBoard/GSoC/Ideas#General_requirements.
  
===What will you do to ensure that your accepted contributors stick with the project after GSoC concludes?===
+
Drafts should be created using https://elinux.org/BeagleBoard/GSoC/2020ProposalTemplate. We have a pretty good idea when students copy your proposal and try to take credit for it, so don't worry too much about that. Getting a proposal up on the wiki will start a history of edits we can credit to you, so best to create a proposal entry early and solicit feedback.
  
Although we will start by using SoC specific communication paths, all students will be expectted to monitor the primary email list and irc channel. Over the course of the summer students will be encouraged to start using the primary communication channels to work on their project. By transitioning students to the primary communication channels, we hope to integrate students into teh larger community prior to the end of the summer of code.
+
Use https://bbb.io/gsocchat and https://bbb.io/gsocml to get feedback.
  
===Who will be your backup organization administrator? Please include Google Account information.===
+
Be sure to meet the requirement to print out a PDF and submit it to the Google site on time to meet for proposal selection.
 +
678/1500
 +
Proposal Tags
 +
iot
 +
machine learning
 +
robotics
 +
open hardware
 +
linux
 +
python
 +
education
 +
music
 +
games
 +
ecology
 +
+ Add tag
 +
10/10
 +
Contact Methods
 +
You must complete at least one of the following three contact options.
  
: Cathy Wicks <wicks.cathy  @no spam gmail.com>
+
Chat
 +
https://beagleboard.org/chat
 +
Link to a web page that describes how to get on your IRC channel or other realtime communication system.
 +
Mailing List
 +
https://beagleboard.org/discuss
 +
Link to a page describing how to join your organization's mailing list.
 +
General Email
 +
gsoc@beagleboard.org
 +
A general purpose contact email for your organization.
 +
Links
 +
Twitter URL (optional)
 +
https://twitter.com/beagleboardorg
 +
Blog URL (optional)
 +
https://beagleboard.org/blog

Latest revision as of 08:11, 20 February 2022


Contents

How does a mentoring organization apply?

The organization should choose a single administrator to submit its application via the Google Summer of Code 2019 by February 6, 2016.

Jason Kridner will be the administrator, but is looking for volunteers to help edit the application contents and to update the ideas.

Profile

  • Website URL
  • Tagline
  • Logo
  • Primary Open Source License
  • Organization Category
  • Technology Tags
  • Topic Tags
  • Ideas List
  • Short Description
  • Long Description
  • Application Instructions
  • Proposal Tags
  • Chat, Mailing List, or Email

Application

  • Why does your org want to participate in Google Summer of Code?
  • How many potential mentors have agreed to mentor this year?
  • How will you keep mentors engaged with their students?
  • How will you help your students stay on schedule to complete their projects?
  • How will you get your students involved in your community during GSoC?
  • How will you keep students involved with your community after GSoC?
  • Has your org been accepted as a mentor org in Google Summer of Code before?
  • What year was your project started?
  • Where does your source code live?

What should a mentoring organization application look like?

Organization Name

BeagleBoard.org

Description

BeagleBoard.org is an open source community of experienced hackers, hobbyists and engineers who are enthusiastic about building powerful, open ARM-based systems completely programmable through your web browser. BeagleBoard.org’s vision is to improve access to small, low-power computing platforms that can be embedded into new creations using easy to use development tools, such as its self-hosted, web-based IDE. The hardware designs of all Beagle boards are open source with all schematics, bills-of-materials, layouts, etc. shared for building other devices. The software is also open source and is generated by the community. Compiler tools are free and the board is available at a low cost. Boards will be provided for free to any student participating in a BeagleBoard.org-related GSoC project.

The BeagleBoard.org community continues to grow with over 20,000 members on the forum, over 3,000,000 boards in circulation, and over 150 developers who actively participate on the live chat (IRC channel) at any given time. Existing projects are often for the purpose of building robots, autonomous flying drones, automotive entertainment and navigation systems, home media centers, digital signs, wearable computers, gaming consoles, 3d printers, laser cutters and even hamburger robots! (over 1,000 projects registered at http://beagleboard.org/project/) Existing software compatibility includes various versions of Android, Ubuntu, Angstrom, Gentoo, FFmpeg, XBMC, ROS, OpenCV and much more.

Home page

http://beagleboard.org/

Main Organization License

GPLv2

Why is your organization applying to participate in Google Summer of Code? What do you hope to gain by participating?

We hope to inspire open source developers to take an interest in physical computing, especially when it involves high-level operating systems and heterogeneous processor environments capable of real-world data processing.

We hope to increase general interest in computers and electronics through improved access, simplified interfaces and example projects.

Because the Beagles are open source hardware and built on open source software stacks like Linux, any software designed on it can be taken and put into entirely new products, enabling a world where the next generation has more control over those digital products.

We want to make sure computers are demystified for the next generation and that means they need to see the "cloud" as something physical, not abstract.

What would your org consider to be a successful summer?

We are looking for long-term contributors helping to set the direction of open source development solutions for embedded systems. We've had great success in retaining contributions from previous GSoC students and want to make that grow. We want students to find they can achieve even more than they sought by engaging and becoming part of the developer community. If students feel successful and help pave the way for future users and contributors, it will be a success.

Has your organization participated in past Google Summer of Codes?

Yes.

How many potential mentors do you have for this year's program? What criteria did you use to select them?

We currently have 20 potential mentors for this year's program of which only 4 haven't previously mentored in GSoC. We've removed mentors from previous years who were under motivated to help students succeed and brought on mentors who have contributed significantly to our projects or related projects either through documentation or implementation. Most of our potential mentors are also in frequent contact with each other through IRC, Google+ and our primary developer mailing list to have confidence they can work together well.

If you answered “yes” to the question above please summarize your involvement and the successes and challenges of your participation. Please also list your pass/fail rate for each year.

BeagleBoard.org GSoC students have improved the Linux kernel support for analog-to-digital converters, software-based pulse width modulators and USB bus analysis, implemented network protocols for booting a remote processor from Android, Linux or Windows hosts, implemented Arduino-compatible software on top of Linux (code used by other hardware platforms, eg. Intel Galileo), improved the functionality of Minix for operating system education, improved the integration and performance on ARM or DSP processors of ROS, XBMC, FFTW and OpenCV, and delivered a framework for compilation and invocation of heterogeneous processor functions.

We had an excellent set of mentors with 3 mentors for every student to ensure high availability of mentor time via the IRC channel. Our mentors had deep knowledge relevant to the projects and were able to assist the students in each of their technical challenges. We monitored student progress with weekly blog posts and IRC meetings to keep them on track and resolve any blocking issues. We collected short video presentations introducing each project, giving observers a good idea of the students' goals. We screened out projects that wouldn't provide sufficiently reusable software for the rest of the community.

Including a hardware component adds some challenges when shipping around the world. We've solved this by engaging local businesses and additional distributors.

Getting more face-to-face interaction continues to be a challenge, but our IRC interactions are strong and we've started to incorporate Google Hangouts in our collaboration.

We've greatly improved our success rate in getting code adopted by the upstream projects and made available across the BeagleBoard community by making integration into a distribution will be a requirement, giving greater emphasis on following up with upstream developers and focusing on projects directly impacting the BeagleBoard community, rather than relying on upstream projects that might not be fundamentally motivated to adopt the patches. This year, we've added continuous integration via http://builds.beagleboard.org.

Pass/fail rate for 2010: 6 pass 0 fail

Pass/fail rate for 2013: 6 pass 0 fail (1 dropout for personal reasons)

Pass/fail rate for 2014: 6 pass 1 fail

Pass/fail rate for 2015: 7 pass 1 fail

Pass/fail rate for 2016: 6 pass 1 fail

Pass/fail rate for 2017: 6 pass 0 fail

Pass/fail rate for 2018: 4 pass 1 fail

Pass/fail rate for 2019: 3 pass 1 fail

Pass/fail rate for 2020: 4 pass 0 fail

Pass/fail rate for 2021: 6 pass 0 fail

If your organization has not previously participated in Google Summer of Code, have you applied in the past? If so, for what year(s)?

N/A – BeagleBoard.org has applied and participated in the past.

What Open Source Initiative approved license(s) does your project use?

GPLv2 - http://opensource.org/licenses/GPL-2.0

What is the URL for your ideas page?

http://elinux.org/BeagleBoard/GSoC/Ideas

What is the main development mailing list for your organization?

http://groups.google.com/group/beagleboard: All things BeagleBoard
http://groups.google.com/group/beagleboard-gsoc: GSoC-specific things for BeagleBoard.org

What is the main IRC channel for your organization?

irc.freeenode.net #beagle

Who will be your backup organization administrator?

Vladimir Pantelic

What criteria did you use to select the mentors? Please be as specific as possible.

Mentors were chosen based on personal knowledge of their contributions over IRC helping community members, the mailing list, and specific projects of interest. With the BeagleBoard.org community existing now for 5 years, many of the same members are still very active and well-known to our GSoC administrators. We typically meet up at Embedded Linux Conference, Design West, Linaro meetings and several other small events. Given frequent support over IRC, it is clear which proposed mentors are the best candidates.

How will you keep students on schedule?

We've set a strict requirement for weekly milestones and demanded realistic schedules be a part of the student's application.

We will set the expectation that students should not be out of communication for more than 60 hours (i.e., the length of a weekend) without prior notification to their mentor. We'll also hold mandatory weekly meetings in IRC for all the students to report on progress made, problems encountered, and proposed next steps.

The project administrators will monitor all the projects and try to identify issues that might lead to disappearing contributors before the problem becomes unsolvable. In particular, when a mentor is too unsympathetic to a student, we'll bring in an alternate mentor to help "translate". If personal issues come up, we'll encourage students to stay engaged with the process by making specific plans to make up for lost time. We'll try to screen out anyone who doesn't seem willing to make the necessary time commitments.

How will you keep mentors engaged?

We will choose mentors with a history of being involved in BeagleBoard.org projects and who are consistently responsive via Slack/IRC and e-mail. We establish secondary mentors who can step in when it is difficult for a primary mentor to engage. We've found the secondary mentors also help greatly with improving student/mentor communication. Mentors are expected to attend the weekly check-in meetings on Slack. We will have a named contact in the same region and/or company as any mentor to assist in "pinging" any AWOL mentor. We make sure mentors are self-motivated to participate and are vested in the outcome of the student projects.

What steps will you take to encourage students to interact with your project's community before and during the program?

We encourage candidates to interact with community members on the IRC channel and mailing list ahead of the program to gather information required for their application. We will work with the students to produce YouTube videos to introduce their projects to the community, including the newsletter with a circulation of roughly 35,000 subscribers. Weekly status reports are sent out to the community. Students are encouraged to hang out on #beagle, which is active 24/7, during the program. We've had good success with keeping students involved with the community as most still hang out on the IRC channels and have sought new projects or mentorship (if graduated) in subsequent years.

What will you do to encourage your accepted students to stick with the project after Google Summer of Code concludes?

Many of our students are currently active in editing our ideas page and recruiting new Google Summer of Code students. We will give them hardware and “swag” following the program to keep them interested, but mostly we value their contributions and try to make sure that others in the community are exposed to those contributions. The greatest reward of producing quality code is having people use it and the world knowing you created it! Almost all projects from last year are now included in images that ship to 100,000s of people. Some students have gone on to work at Google and some have even started up businesses based on their contributions. They continue to stay engaged for the community support and to give back to the community that supports them.

Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here.

BeagleBoard.org is not a new organization to Google Summer of Code.

Are you an established or larger organization who would like to vouch for a new organization applying this year? If so, please list their name(s) here.

BeagleBoard.org has not been approached by other organizations to vouch for them at this time.

What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes?

Although we will start by using GSoC-specific communication paths, all students will be expected to monitor the primary email list and IRC channel. Over the course of the summer students will be encouraged to start using the primary communication channels to work on their project. By transitioning students to the primary communication channels, we hope to integrate students into the larger community before the end of summer of code so that they can continue to work on their projects via our IRC channel after GSoC concludes.

Each student is asked to create a public blog for updating the community and logging their progress on the project. Blogs receive hits from around the world and people ask questions via the comments sections. This keeps the students engaged with the community and their previous work.

How will you get your GSoC contributors involved in your community during GSoC?

Each student is asked to create a public blog on github.io for updating the community and logging their progress on the project.

The students are also required to create YouTube videos introducing and summarizing their projects. This is typically just a slide show and a voice-over.

Anything else we should know?

Our focus is physical computing and we participate in GSoC as a *software* project. While we send students hardware to provide physical interfaces, much of the code developed goes on to be used in other Linux single-board computers, such as the Linux Foundation Dronecode project which started as a GSoC project under BeagleBoard.org mentorship contributing to the ArduPilot codebase. We get the code upstream and we support the students broader ambitions to make a difference.

Application template

About you

What is your name, e-mail address and usernames on Freenode IRC, eLinux wiki and Github? (required)


What is the name of your school and in what country? (required)


What is your primary language and work hours? (We have mentors who speak multiple languages and in various time zones and can match you partially based on that.)


Have you participated in an open-source project before? If so, please send us URLs. If not, why do you want to?


About your project

What is the name of your proposed project?


In 10-20 sentences, what are you making, for whom, why and with what technologies (programming languages, etc.)? (We are looking for open source SOFTWARE submissions.)


Provide a development timeline with a milestone each of the 11 weeks. (A realistic timeline is critical to our selection process.)


In 5-15 sentences, convince us you will be able to successfully complete your project in the timeline you have described.


If successfully completed, what will its impact be on the BeagleBoard.org community? Include quotes from BeagleBoard.org community members who can be found on http://beagleboard.org/discuss and http://bbb.io/gsocchat.


What will you do if you get stuck on your project and your mentor isn’t around?

Misc

Please complete the requirements listed on the ideas page. (http://bbb.io/gsocideas)

Is there anything else we should have asked you?

Org profile

Public Profile

Name BeagleBoard.org Website URL https://beagleboard.org http://www.yourproject.org/ Tagline Open hardware community driven single board computers - Linux at the edge 73 / 80 A very short description of your organization. Your organization logo. Must be a 24-bit PNG, minimum height 256 pixels. Primary Open Source License GNU General Public License version 2.0 (GPL-2.0) The open source license that your organization uses. Organization Category Programming Languages and Development Tools Select which category fits your organization best. Some organizations may fit into multiple categories, you must choose one. Used to help students filter the organization list. Technology Tags linux tensorflow python javascript opencv Enter a technology tag 5/5 Enter keywords for the primary specific technologies your organization uses. Examples: Python, Javascript, MySQL, Hadoop, OpenGL, Arduino Topic Tags robotics iot teaching real-time embedded Enter a topic tag 5/5 Enter keywords for general topics that describe your organization. Examples: Vision, Robotics, Cloud, Graphics, Web, Real time Ideas List https://beagleboard.org/gsocideas Enter the URL of your Ideas List page. This will be linked from your organization page. Descriptions These descriptions will be displayed on the organization list page (Short Description) and on your organization's page (Long Description). More details.

The Long Description may include limited Markdown.

Short Description Open hardware single board computers for IoT, artificial intelligence, home/business automation, robotics and education. Learn to create appliances, not just applications! 171 / 180 Long Description The BeagleBoard.org Foundation is a USA-based 501(c)(3) non-profit corporation existing to provide education in and collaboration around the design and use of open-source software and hardware in embedded computing. BeagleBoard.org provides a forum for the owners and developers of open-source software and hardware to exchange ideas, knowledge and experience. The BeagleBoard.org community collaborates on the development of open source physical computing solutions including robotics, personal manufacturing tools like 3D printers and laser cutters, and other types of industrial and machine controls.

Support for BeagleBoard.org boards comes from the very active development community through this website, the mailing list, and the IRC channel. On-going funding for board prototypes has been provided by manufacturing partners. Texas Instruments generously allows Jason Kridner, community manager and software cat herder, to spend time to provide support and development of the BeagleBoard.org project as part of their duties at TI.

All the designs are fully open source and components are available for anyone to manufacture compatible hardware. We do request contact and permission before considering the use of the BeagleBoard.org name on any products.

There are a variety of CPUs used on BeagleBoard.org boards optimized for various types of computing tasks. [PRUs](https://beagleboard.org/pru) are ideal for ultra-low latency and exact timing for control and software generated interfaces. DSPs are ideal for digital filters, convolution and audio/video processing. There are also EVEs, GPUs, IVAs, MCUs and more. 1592/2000 Proposals Guidance for students on how to apply to your organization. Should include any prerequisites or requirements. You may wish to include a template or tips for their proposals. May include limited Markdown.

Enter tags that students can select (one) from and apply to their own proposals to help organize them. Examples: New Feature, Optimization. You can also use these to designate "sub-organizations" if you are an umbrella organization.

Application Instructions All applications must follow the basic requirements at https://elinux.org/BeagleBoard/GSoC/Ideas#General_requirements.

Drafts should be created using https://elinux.org/BeagleBoard/GSoC/2020ProposalTemplate. We have a pretty good idea when students copy your proposal and try to take credit for it, so don't worry too much about that. Getting a proposal up on the wiki will start a history of edits we can credit to you, so best to create a proposal entry early and solicit feedback.

Use https://bbb.io/gsocchat and https://bbb.io/gsocml to get feedback.

Be sure to meet the requirement to print out a PDF and submit it to the Google site on time to meet for proposal selection. 678/1500 Proposal Tags iot machine learning robotics open hardware linux python education music games ecology + Add tag 10/10 Contact Methods You must complete at least one of the following three contact options.

Chat https://beagleboard.org/chat Link to a web page that describes how to get on your IRC channel or other realtime communication system. Mailing List https://beagleboard.org/discuss Link to a page describing how to join your organization's mailing list. General Email gsoc@beagleboard.org A general purpose contact email for your organization. Links Twitter URL (optional) https://twitter.com/beagleboardorg Blog URL (optional) https://beagleboard.org/blog