Happy Birthday, Telepresence!

One year ago, on Pi Day 2017, we shipped the first release of Telepresence. Since then, Telepresence has grown from a proof of concept into a full fledged open source project:

  • 600+ GitHub stars
  • Hundreds of downloads a month
  • 75 releases
  • Users such as Verloop, Sight Machine, and many others

Over the past year, we’ve added tons of new features and fixed bugs in response to an amazing community (thank you!). We’ve learned a lot about how folks use Telepresence, and have introduced features such as:

  • The container proxying approach (with a tutorial which uses Docker networking
  • A VPN-based approach that supplanted the original inject-tcp method that required us to hack LD_PRELOAD
  • Native OS packages for a much broader spectrum of platforms
  • Plus dozens of minor UX improvements and fixes for different use cases

We also have more ambitious plans to support many hotly requested use cases.

  • Improving the UX. We’ve added switches and features to the command line organically, and it’s now pretty complicated. A config file is a popular question, and we’re trying to figure out how to improve the UX in general. If you have thoughts, please share on this GitHub issue.
  • Decomposing Telepresence into smaller, fine-grained operations.
  • Improving robustness and cleanup in various situations.
  • Improving startup performance.
  • Reorganizing the documentation and do a better job of explaining how people use Telepresence

These changes require some more substantial reworkings of the Telepresence code. In preparation for this work, we’ve refactored the code, improved our test infrastructure (tests run in half the time now!), and switched to CircleCI to improve the reliability of our Mac OS builds. We had to take a step back to invest in some of this technical debt because even small releases were taking a significant amount of time and effort. We’re looking forward to transitioning from infrastructure work to adding more features in the coming weeks. And if your preferred feature isn’t in our issue tracker, please open an issue! We’d welcome the help.

If you have the skills and interest to work on Telepresence, but don’t have time? We’re hiring another engineer to work on Telepresence. Don’t know Kubernetes, but love helping customers and want to learn? We’re looking for a customer support engineer, too!