soh.am  does c.s. research, builds robots, codes, does stand-up, has a podcast & writes.

I'm Soham Sankaran, a CS PhD Student at Cornell.

I work at the intersection of distributed systems and robotics, as well as on other random problems that catch my fancy.

I'm a member of the Robotic Personal Assistants Lab (RPAL), where I get to work with wonderful people like Wil Thomason, Claire Liang, Niko Grupen, and Elizabeth Ricci.

I also work with Jacob Derechin and Nicholas Christakis on projects related to human preference and agreement at the Human Nature Lab within the Yale Institue for Network Science, where I was previously a post-graduate researcher.

Before all of that, I was an undergraduate at Yale, where I worked with Mahesh Balakrishnan and Josh Lockerman on the FuzzyLog project.


Academic publications:

Usability Squared: Principles for doing good systems research in robotics (Workshop on Cloud and Fog Robotics at RSS 2019)

Soham Sankaran (Cornell University) and Ross A. Knepper (Cornell University)

Despite recent major advances in robotics research, massive injections of capital into robotics startups, and significant market appetite for robotic solutions, large-scale real-world deployments of robotic systems remain relatively scarce outside of heavy industry and (recently) warehouse logistics. In this paper, we posit that this scarcity comes from the difficulty of building even merely functional, first-pass robotic applications without a dizzying breadth and depth of expertise, in contrast to the relative ease with which non-experts in cloud computing can build complex distributed applications that function reasonably well. We trace this difficulty in application building to the paucity of good systems research in robotics, and lay out a path toward enabling application building by centering usability in systems research in two different ways: privileging the usability of the abstractions defined in systems research, and ensuring that the research itself is usable by application developers in the context of evaluating it for its applicability to their target domain by following principles of realism, empiricism, and exhaustive explication. In addition, we make some suggestions for community-level changes, incentives, and initiatives to create a better environment for systems work in robotics.

The FuzzyLog: A Partially Ordered Shared Log (OSDI 2018)

Joshua Lockerman, Jose Faleiro, Juno Kim, and Soham Sankaran (Yale University); Daniel J Abadi (University of Maryland); James Aspnes (Yale University); Siddhartha Sen (Microsoft Research); Mahesh Balakrishnan (Yale University / Facebook).

The FuzzyLog is a partially ordered shared log abstraction. Distributed applications can concurrently append to the partial order and play it back. FuzzyLog applications obtain the benefits of an underlying shared log – extracting strong consistency, durability, and failure atomicity in simple ways – without suffering from its drawbacks. By exposing a partial order, the FuzzyLog enables three key capabilities for applications: linear scaling for throughput and capacity (without sacrificing atomicity), weaker consistency guarantees, and tolerance to network partitions.