Track: Modern CS in the Real World

Location: Broadway Ballroom South, 6th fl.

Day of week: Monday

Thoughts pushing software forward, including consensus, CRDTs, formal methods, & probabilistic programming.

Track Host: Cindy Sridharan

Distributed Systems Engineer & runs the Prometheus user group in SF

Cindy Sridharan is a distributed systems engineer. She's the author of a book on Distributed Systems Observability with O'Reilly and the co-author of an upcoming book on distributed systems engineering in the cloud. She runs the Prometheus user group in San Francisco, has been a reviewer of several technical books and on the program committee of leading industry conferences on systems engineering. She lives in San Francisco and in her spare time enjoys hiking the gorgeous outdoors of the Bay Area, reading way too many papers and occasionally blogging about building resilient and maintainable systems.

10:35am - 11:25am

Let's talk locks!

Locks have a bad rap for “being slow” and yet, they’re used extensively in applications and under-the-hood. So, what gives? This talk resolves the dichotomy. We’ll explore when and why locks affect performance, delve into Go’s lock implementation as a case study, and discuss strategies we can use when locks are actually a problem.

Kavya Joshi, Software Engineer @Samsara

11:50am - 12:40pm

EBtree - Design for a Scheduler and Use (Almost) Everywhere

As the demand on Internet infrastructures grows, so do the requirements on its components, like load balancers, to process ever more data. EBtree is a different take on the ubiquitous tree data structure, and is helping HAProxy, a high performance Open-Source software load balancer, to keep up with demands for over a decade. In this talk we explore the goals, design and the choices behind the implementations of EBtree, and how they combine to produce a very fast and versatile data storage for many of HAProxys advanced features.

Andjelko Iharos, Director of Engineering at HAProxy Technologies

1:40pm - 2:30pm

PID Loops and the Art of Keeping Systems Stable

Building ultra-reliable large-scale services is an incredible challenge. Systems often exhibit emergent properties and network effects that can be beyond the practical limits of testing, how do we keep things stable even when the unpredictable happens? Control theory, a branch of engineering that has existed for over a hundred years has a lot to offer us. Systems of all sizes can be analyzed and stabilized with PID control loops - often simple algorithms that contain Propotional, Integral, and Derivative components. But how? This session will show what PID loops look like in the context of modern systems, and to see how expoential backoff, flow-control, and other techniques can be wielded to build self-healing systems.

Colm MacCárthaigh, Senior Principal Engineer @awscloud

2:55pm - 3:45pm

Leaving the Ivory Tower: Research in the Real World

Academic research often has a reputation of being insular and seldom being used in the real world. At HashiCorp, we've had a long tradition of basing our tools and products on academic research. We look at research for the initial design of products, and for ongoing development of new features. Our industrial research group, HashiCorp Research, has even published novel work. In this talk we cover why we care, how we incorporate research, and what has been particularly useful for us.

Armon Dadgar, Co-Founder and CTO of HashiCorp

4:10pm - 5:00pm

Panel: The Promises and Perils of Eschewing Distributed Coordination

The discussion will be about the promises and perils of eschewing coordination in distributed systems. The panelists will cover a diverse range of opinions and use-cases (control planes, streaming engines, SQL databases, service discovery systems etc).

Moderator: Cindy Sridharan

Cindy Sridharan, Distributed Systems Engineer & runs the Prometheus user group in SF
Colm MacCárthaigh, Senior Principal Engineer @awscloud
Chenggang Wu, CS PhD student at RISELab, UC Berkeley
Armon Dadgar, Co-Founder and CTO of HashiCorp
Peter Mattis, CockroachDB maintainer, Co-founder & CTO @CockroachDB
Sean T. Allen, VP of Engineering @WallarooLabs

5:25pm - 6:15pm

The State of Serverless Computing

Serverless computing has become increasingly popular since Amazon released AWS Lambda in 2014. Its appeal lies in the ability to write arbitrary code and deploy it at scale with the “click of a button”, in some sense realizing the original promise of cloud computing. While existing serverless infrastructure works well for a certain class of applications, it also has a number of significant limitations that cripple its generality. For example, stateful applications are forced into well-known anti-patterns like data shipping. In this talk, we briefly discuss both the benefits and shortcomings of existing serverless offerings. We then project forward to the future and highlight challenges that must be overcome to realize truly general-purpose serverless computing, as well as our efforts to get there.

Chenggang Wu, CS PhD student at RISELab, UC Berkeley


Monday, 24 June

Tuesday, 25 June

Wednesday, 26 June