From Airbnb’s Knowledge Repo to Kyso for Teams

Kyle
Kyle
Apr 16 · 4 min read

Introduction

Knowledge management and the sharing of insights from data analysis is an evolving challenge for research, and data-science teams all over the world.

In 2016, Airbnb open-sourced their Knowledge Repository (KR), built to tackle their own needs of scaling internal knowledge sharing and management, to democratize data-access for all.

The Knowledge Repo acts as a curated knowledge-sharing platform, developed with the following aims:

  • Reproducibility — No code forks. The entirety of the work of each contribution should be contained in one file.
  • Quality — Each contribution should be peer reviewed prior to submission.
  • Consumability — Any analysis should be understandable to all readers, both technical and non-technical.
  • Discoverability — Anyone should be able to find, navigate, and stay up to date on the existing set of work on a topic.
  • Learning — Other members of the team should be able to learn from the tools and techniques used by others.

Airbnb’s Knowledge Repo has been revolutionary for sharing and benefiting from data science at scale. Our team here has used it in the past for internal reporting and it sped up every aspect of our data analytics. However, we felt we could improve the overall user experience, and we wanted some additional features. The KR is what inspired us to create Kyso for Teams, to build upon and improve what Airbnb started.

Kyso for Teams is our next-generation knowledge repo, built to enhance collaboration & reproducibility, where you can create and share your data-science notebooks (Jupyter and R), charts, analysis, datasets, code, and articles.

You can also create and run data science projects in our Jupyterlab workspaces & publish to the web, where Kyso renders everything as beautiful data blogs, perfect for academic and corporate data science teams alike.

Some of the main issues of the KR that Kyso seeks to remedy are:

  • With Kyso, your team can be set up in a matter of minutes. With app-based centralized access control, simply specify admin & editor access, invite unlimited readers and start posting knowledge! Its all fully hosted on Kyso, so no need for self-hosting. And no need for each admin/editor on the team to be familiar with Git and Shell script (we do support Github of course if they want to use git).
Kyso for Teams — Team Settings

On Kyso, there are multiple ways to post Knowledge:

  • Directly on the web app — post charts, images, markdown files or links.
  • Connect your Github repos that auto-update once linked to a sister post on Kyso.
  • Publish directly from Jupyterlab using our custom extension.

Presentation:

  • Kyso renders all notebooks, markdown files, images, and charts as beautiful data blogs.
  • For Jupyter notebooks code can be hidden and shown so that posts are readable by technical and non-technical people alike.
  • Searchable personal profiles of all editors.

Collaboration:

  • Effortless per-post commenting for feedback, suggestions, and discussion.
  • Team members receive email notifications when mentioned.
  • Comprehensive tagging system for organizing and discovering the work of contributors.
Kyso Posting Example

Some of the additional features mentioned above include:

Kyso provides simple functionality to fork existing posts (much the same as on Github), update the analysis or continue working on them as part of new research. In this way, team members can set projects in motion much faster.

The KR supports 3 formats that can be converted into a knowledge post: Markdown, R Markdown, and Jupyter Notebooks.

  • At Kyso we have extended that to include images, datasets, links, and code. For those who don’t use GitHub at all, Kyso’s web-app is easy to use for uploading or creating, and sharing, posts.

To keep content current and structured, we facilitate a Reddit-esque upvoting system, which acts as an auto-indexer for research topics and posts.

  • Feel free to also learn from the ever-growing Kyso Community — discover code, analysis and cool data visualizations that you can then apply to your own private and team projects.
Kyso Home Page

You can Jupyterlab environments running on our data-science Docker image and make use of Kyso’s publishing extension to post directly from Jupyterlab. You can also access and download posts on your team’s dashboard from these environments.

  • To learn the most from your data, you can even create, deploy and share live dashboards and web-apps hosted on Kyso, all in python, using Bokeh and plotly’s Dash. Check out the examples below, all created and hosted on Kyso:

Automatic File Plotting App

Kickstarted Dashboard

Automatic File-Plotting App

Integrate Kyso into your existing workflow

You can auto-import an existing knowledge-repository easily.

It leverages our Github integration, so your team can effortlessly set up your knowledge centre and use Kyso without changing the way you work.

Continue using the Knowledge Repo with Github’s issue and pull request workflows and version control, and use Kyso to present and collaborate on your posts among your team. In this way, you can reap the benefits of having both an awesome presentation and collaboration format with Kyso, built on a central repository of high-quality research trusted by everyone.

Kyle

Written by

Kyle

CMO & Data Science at Kyso. Feel free to contact me directly at kyle@kyso.io with any issues and/or feedback!