Google Season of Docs 2020

Get paid to contribute to the Webots docs!

Google is running a program called Season of Docs with the goal of fostering collaboration between technical writers and open source projects. The initiative is very similar to Google Summer of Code, except it is focused on documentation and technical writing contributions instead. Technical writers can check the proposed project and submit their application to Cyberbotics. The accepted participant will then work on the documentation from May 17 to October 17th, 2021, bonding with the Webots open source community and collaborating with Cyberbotics mentors. Participants will receive a stipend of $2,000 USD per month from Cyberbotics, totalling $10,000.

About Cyberbotics Ltd.

Cyberbotics is the company developing the Webots open source robot simulator. This software has been continuously developed since 1996 by the EPFL and Cyberbotics as a proprietary software. On December 18th, 2018, Webots became fully open source, released under the terms of the Apache 2.0 license. This open source switch immediately drew a huge interest from the robotics community. The 1GB+ open source Webots packages were downloaded more than 370'000 times since December 18th, 2018. Meanwhile, the Webots github repo was forked by more than 700 developers and has more than 1300 GitHub stargazers.
The project will be mentored by Darko Lukić (2 years of full-time expertise with Webots) and Olivier Michel (founder and 24 years of full-time expertise with Webots).

How To Apply?

Read the official instructions here. Then, send your CV to support@cyberbotics.com along with a cover letter. The deadline for submission is April 30th, 2021. You will be notified on May 8th, 2021 by Cyberbotics if your application is successful.

  Project Proposal: 8 Advanced How-to Guides for Webots

Rationale

Webots is a complex piece of software that can be used standalone for teaching and research purposes in robotics. However, combining Webots with other technologies can drastically leverage its power and usefulness. These technologies includes also many open source components, such as open-source 3D models, ROS 2, deep-learning libraries, Linux systems, git, web servers, etc. Unfortunately the combination of Webots with third party technologies is not trivial and currently not sufficiently documented. We know, from the questions we receive every day, that it prevents many users from deploying advanced simulation systems. The goal of this project is to tackle down this problem.

The Webots community will thus benefit from a faster learning curve for advanced applications of Webots, with a strong documentation structure that will replace some scattered and possibly outdated documentation.

Objectives

We want to provide power users with clear, step-by-step instructions to achieve advanced simulation setups.

The 8 guides should take the form of a text document, illustrated with pictures, videos and/or 3D models/animations. They should be integrated into the official existing documentation system (Webots user guide) and cover all of the following advanced use cases:

  1. Import a 3D object model from a third party software (Blender, SolidWorks) to Webots and set its Webots specific properties.
  2. Run Webots from a hardware accelerated Docker container.
  3. Migrate a robot simulation from Gazebo to Webots, including the conversion of the URDF robot model.
  4. Interface Webots with ROS 2, including ROS Control 2, MoveIt2 and RViz2.
  5. Develop a deep-learning system with Webots based on state-of-the-art deep-learning libraries, involving running several instances in parallel.
  6. Deploy a Webots simulation in GitHub CI and retrieve simulation results as success/failure status, text files and/or 3D animations.
  7. Deploy a Webots simulation on a dedicated CPU + GPU server.
  8. Deploy a robot programming competition in the cloud, including the setup of the competition website with a leaders board.

Note: Our goal is to favor quality over quantity, e.g., we won't sacrifice the quality of a guide to be able to publish all 8 guides. If it turns out that writing the first guides with high quality content takes too much time, we will decide to drop a number of guides from this plan to ensure a high quality of the published materials.

Evaluation Metrics

For each of the How-to Guide, users will be encouraged to advertise here their projects which benefited from this documentation:

  1. Links to pull requests contributing new objects for Webots.
  2. Links to user contributed Webots Docker container.
  3. Links to repository containing robot simulations migrated from Gazebo to Webots.
  4. Links to repositories using Webots with ROS 2.
  5. Links to deep-learning project repositories or websites using Webots.
  6. Links to GitHub repositories running Webots in the CI.
  7. Links to webservices using Webots running on a dedicated server.
  8. Links to Webots-based robot programming competition websites.

For each guide, the number of links will be counted before the start of the project. During and after the project, the number of new links will be counted monthly, so that we can measure the impact of each guide on the number of projects created by users. For example, in the first guide, we will show that in June, 2 new objects were contributed, then 4 in July, 7 in August, etc. Hopefully, we should see increasing numbers that will assess the usefulness of each guide.

In addition to these specific metrics, we will also log the growth of our standard metrics monthly (GitHub download count, forks, stargazers, Discord chat volume and telemetry) to measure the impact of these guides on the overall growth of the Webots community.

  Project Budget

Budget itemAmountRunning TotalNotes/justifications
Technical writer audit, update, test, and publish new documentation10000.0010000.00Paid monthly: 6 x 2000.00
Volunteer stipends500.0011000.002 Volunteer stipends x 500 each
TOTAL11000.00