Marco Canini — May 1st 2019

Scaling Distributed Machine Learning with In-Network Aggregation Training complex machine learning models in parallel is an increasingly important workload. We accelerate distributed parallel training by...

Frank Pfenning — April 25 2019

A rehabilitation of message-passing concurrency Recently, there has been a lot of research on shared-memory concurrency. Nevertheless, programmers are discouraged from using it because of...

Ed Wilson — April 19 2019

Complex Event Processing at Southwest Airlines Complex Event Processing (CEP) is an approach that derives value from correlating, aggregating, and transforming multiple event streams. At...

Chen Ding — April 16 2019

Locality Wall: Hardware Limitations and Software Opportunities After decades of rapid improvement, the customary advance in hardware technology symbolized by Moore's law is clearly decelerating....

Jürgen Cito — April 15 2015

Learning-based Program Analysis for Software Configurations (Jurgen Cito, MIT CSAIL) Configuration errors have become an increasing root cause of software failures as modern software systems grow...

Byron Cook — April 12 2019

Formal Reasoning and Amazon Web Services This talk will discuss the development and use of formal automated reasoning tools within Amazon Web Services (AWS) to...

Hillel Wayne — April 5 2019

What happens when we try to use formal methods in industries that don't 'need' it? Hillel is someone who helps 'atypical' companies - those...

Robert Soulé – Feb 25 2019

The Network is the Computer: Running Distributed Services on Programmable Switches Abstract: Historically, the conventional wisdom has been that networks should offer fixed functionality for forwarding...

Ben Titzer – Feb 15 2019

What Spectre Means for Language Implementors Until now, CPU designers and computer scientists have assumed Vegas rules at the hardware level: what happens in...

Brad Myers – Dec 7 2018

Software Engineers are People Too: Applying Human Centered Approaches to Improve Software Development Software engineers might think that human-computer interaction (HCI) is all about improving the...

Fabio Kon – Nov 30 2018

Abstract: Recent studies suggest that, contrary to what we used to believe, the urban population worldwide is over 80%, reaching up to 90% in developing...

Eran Toch – Nov 29 2018

Understanding and Optimizing Choice architectures for Privacy and Security Choice architectures, the design of interfaces in which choices are presented to users, have a tremendous...

Behnaz Arzani – Nov 19 2018

Towards networks that manage themselves The goal of data center operators is to provide high availability to their customers. Data center networks operate at massive...

Xin Jin – Nov 9 2018

Title: Co-designing networks and distributed systems with programmable switches Abstract: In this talk, we will present a new paradigm that co-designs networks and distributed systems with...

Andrew Head – Nov 7 2018

Interactive Tools for Creating and Explaining Code Examples Producing great code examples is a time-intensive, iterative, and fundamentally creative process. In this talk I describe...

Bernd Fischer – Nov 2 2018

Seeing Things in the Clouds: Browsing Semi-Structured Data with Tag Clouds over Concept Lattices Search is one of the most common operations on the internet,...

Junchen Jiang – Oct 26th 2018

Enabling Data-Driven Optimization of Quality of Experience for Internet Applications CIT 477 Abstract: Today’s Internet has become an “eyeball economy” dominated by applications such as video...

Michael Greenberg – Oct 19 2018

Rehabilitating the POSIX shell We build intricate systems with complex algorithms and invariants, aiming for guarantees of correctness and performance... and then we maintain and deploy these...

Steve Reiss – Oct 12 2018

The Paradox of Software Visualization Retrospective Software visualization seems like such a logical and helpful concept with obvious benefits and advantages. But after decades of research and...

Yaron Minsky – Oct 1 2018

State machine replication and the modern exchange Electronic exchanges play an important role in the world's financial system, acting as focal points where actors from across...

Jennifer Rexford – Sep 26 2018

Networks Capable of Change The early designers of the Internet fostered tremendous innovation by leaving much of the network’s functionality to the programmable computers at...

Keith Winstein – May 4th

Title: Tiny functions for codecs, protocols, compilation, and (maybe) soon everything Abstract: Networks, applications, and media codecs frequently treat one another as strangers. By expressing large systems as compositions...

Fahad Dogar – April 27th

Title: Re-architecting Network Services for Modern Networked Applications Abstract: Modern networked applications often have stringent performance requirements, which stress the simple TCP/IP service model of today’s...

Molham Aref – April 20th

Title: Solver-Aided Declarative Programming Abstract: I will summarize our work on a declarative programming language that offers native language support for model (or instance) finding. This...

Tim Wood – March 9th

Title: From Pipes to Processors: Building High Performance Network Middleware Abstract: Communication networks are no longer just pipes that move data from place to place....

Ennan Zhai – March 2nd

Title: Heading off correlated failures in cloud-scale systems Abstract: Today's cloud systems heavily rely on redundancy for reliability. Nevertheless, as cloud systems become ever more structurally complex, independent...