Seven years ago I would frequent an IRC channel setup for users of the Django web framework. Like an old-fashioned Stack Overflow, it was a mix of people asking questions and others answering. At some point, someone asked how to log exceptions to the database. While not understanding, it seemed not overly difficult and I helped come up with an example. Shortly afterwards I took that example, threw it into a repository, and committed the first lines of code to what would eventually become Sentry.
commit 3c2e87573d3bd16f61cf08fece0638cc47a4fc22 Author: David Cramer <firstname.lastname@example.org> Date: Mon May 12 16:26:19 2008 +0000 initial working code djangodblog/__init__.py | 35 +++++++++++++++++++++++++++++++++++ djangodblog/models.py | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+)
A few years later Chris Jennings (Sentry’s co-founder) joined Disqus. He then convinced me to come out to San Francisco and help build the fast growing community platform. Just a couple months after joining the team, around May of 2010, I saw Disqus was using the example code I had pushed to GitHub years before. To my surprise the very basic functionality that existed had proven to be extremely useful to them. It was then that we decided to double down on the idea and really make something out of the tool. This was the day Sentry was truly born.
Discovering Our Roots
During my tenure at Disqus, myself and many others grew to deeply value and contribute to open source. Coincidentally enough, GitHub also happened to be right upstairs from that first office, and we quickly found ourselves routinely at their drinkups. For us, open source became much more than the simple idea of free software, it became part of our lifestyle and began to encompass everything around us. We released hundreds of small Python and Django libraries during that time, in addition to driving continued improvement on Sentry and other products.
Today, Sentry remains just as committed to open source. Our world runs on open technology. From the tools that we run to monitor our servers (and applications), to the entire operating system underneath. Sentry couldn’t exist without open source, and it’s our belief that the way forward for this kind of technology is in that same spirit. We will remain just as committed, if not more, to improving Sentry, and doing it through open source.
Through early iterations of Sentry we eventually built a standalone platform. This would allow anyone to report exceptions upstream via a standard API, in any language, on any platform. Quickly it led to an ever increasing amount of interest from our open source community. A lot of our colleagues within the Django world were early to adopt it, but what was even more surprising was the adoption in other ecosystems which we had no part in.
Strength in Community
Fairly early on it became clear that the community wouldn’t contribute a lot to the Sentry server. It was large, complex, and required an understanding of a lot of things. This actually worked out well for us. It meant we were able to clearly drive the direction of the project without having the fumble around with too much contributed code. We took a strong focus on building extensible entry points into Sentry, and once again friends and colleagues stepped up. Soon the ecosystem expanded to include various integrations from issue trackers to notification systems.
During that time we also saw the realm of people running Sentry internally grow. Huge companies had chosen to adopt open source technology instead of inventing their own. It was amazing to see that small little project blossom and help thousands of engineers by making their job just a little bit easier. Most of it all, it was amazing to see people continue to run and expand open source.
Today those contributions still ring true. The Sentry team is primarily the company itself, and we actively improve on the server and continue to open up things for the ecosystem. The ecosystem itself continues to help us maintain our current SDKs as well as drive adoption of new ones. It feels like I discover something new that the community has come up with on a weekly basis.
In Good Company
Over the course of time a recurring theme had come up: people loved Sentry, but sometimes they’d simply rather not host the server themselves. While we didn’t know this yet, eventually we’d be convinced to build out the premium service, and what is now getsentry.com.
Before leaving Disqus, I spent the Christmas of 2012 engulfed in building the minimal set of features needed to support customer billing on top of Sentry. Two months in, on February 28th of 2013, we had our first paying customer. That customer was Matt Robenolt, whom has contributed heavily to many parts of Sentry and is now actively involved in the company. Over the next three years we built out the business (in our spare time) and we started seeing a real opportunity. What once was a a few dozen lines of code had turned into a valuable, sustainable business with thousands of paying customers. Most importantly of all, it was, and is still open source.
Today Sentry has become the standard. Thousands of customers trust us with their data on our hosted platform, with tens of thousands of developers using our open source software on-premise. None of this would have ever been possible without open source, and we want to pay special thanks to everyone who has written, contributed, or helped maintain the various Sentry projects throughout the years. At the end of the day, we’re able to continue building open source software primarily because our contributors, and our customers have put their trust in us.
With that said, we’re proud to be able to say that we’re looking to expand the team. If you love open source and want to help us build the future of application monitoring, we’d be thrilled to talk to you. Exciting things are coming, and we can’t wait to share it with you all.
From everyone at Sentry (myself, Chris, Armin, and Matt),