BT

TensorFlow: Providing Support to a Successful Open-Source Project

| by Sergio De Simone Follow 14 Followers on May 17, 2017. Estimated reading time: 1 minute |

Building a community around an open-source project requires a number of practices regarding support, pull requests handling, licensing, and more, writes Pete Warden, TensorFlow Mobile lead at Google.

A great challenge in the early life of a new project, explains Warden, is providing support to those who are using it. At first, the only available experts are the developers themselves, who have to find a way to integrate their day-to-day tasks with other support duties. This is not entirely straightforward, since it may take developers outside of their comfort zone and potentially distract them from their main tasks. The TensorFlow team dealt with this challenge by establishing a rotation among all engineers, so each engineer took responsibility for a particular area for one full week approximately once every couple of months.

Among the practices that helped the most to address community requests, the key ones were the following:

  • Reviewing pull requests, which are usually assigned to the developer on rotation, who validates the PR and makes sure it does not break the tests, then forwards it, if necessary, to another developer with more knowledge in that area.
  • Triaging reported issues: for a project like TensorFlow, which has had a wide adoption, thousands of issues may be reported. This required defining a detailed procedure to manage priorities and keep track of what was being done.
  • Addressing StackOverflow questions, which the TensorFlow team chose as a channel to provide help on the use of the library. This has the advantage that anyone knowing how to answer a question can do it, even if they are not part of the team.
  • Ensuring tests are not failing: this is dealt with by using Jenkins to run a suite of automated tests running on most supported platforms.
  • Doing developer relations, which is also done on a part-time basis and brings the great benefit of letting developers know first-hand what problems their users have.

The long term goal of this effort, explains Warden, is to broaden the number of people both inside and outside of Google that have the expertise required to help the community, improve the documentation, and create “playbooks” that help deal with common tasks such as bug triage.

Make sure you read the original post, since there are many more details that are interesting to read about.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT