Home

Awesome

I am a researcher and computer scientist. I used to work in San Francisco, then I traveled a bit, and I'm now in NYC starting Materialize.io.

The following posts are in reverse chronological order: newest posts are first. The content of the oldest posts may no longer be correct (mostly those about pieces of software I've worked on, and their state at some time in the past), but they have been retained for posterity (and some humility).


topicsdatetitle
Materialize2024-05-19Demonstrating Operational Data with SQL
Materialize2024-03-18Computing and Maintaining Weird (Outer) Joins
Materialize2024-01-02Materialize and Advent of Code (50/50)
Materialize2023-12-20Materialize and Memory
Materialize2023-12-19Doing Business with Recursive SQL
Materialize2023-10-10Responsiveness and Operational Agility
Materialize2023-09-29Freshness and Operational Autonomy
Materialize2023-09-19Consistency and Operational Confidence
Materialize2023-09-17A Guided Tour of Materialize's Product Principles
Materialize2023-07-21Capturing Change Data Capture (CDC) Data
Materialize2023-01-04Advent of Code 2022: In SQL
Materialize2022-12-28Reasons for Recursion
Materialize2022-12-25Recursion in Materialize
Materialize2022-07-06Minesweeping in Materialize
Materialize2021-05-14Maintaining Joins using Few Resources
Differential2021-04-26Generalizing Linear Operators
Materialize2021-02-11Windows enough, and Time
Materialize2020-12-29Slicing up Temporal Aggregates in Materialize
Materialize2020-11-18Joins in Materialize
Materialize2020-09-24Materialize Under the Hood
Materialize2020-08-13Lateral Joins and Demand-Driven Queries
Differential2020-08-01Change Data Capture (part 1)
Materialize2020-04-01Robust Reductions in Materialize
Materialize2020-06-19Eventual Consistency isn't for Streaming
Timely,Differential2020-06-09Rust for Data-Intensive Computation
Differential2020-06-06Sudoku in Differential Dataflow
Differential2020-05-01Managing Memory in Differential Dataflow
Differential2020-03-26Upserts in Differential Dataflow
Materialize2020-03-16Materialize on NYC taxi data
Differential2020-02-15Differential Dataflow and Calculus
Datalog, Differential2019-09-06Datalog at SIGMOD and VLDB
Timely2019-08-17Tracking progress in timely dataflow
Materialize2019-08-03Debugging dataflows with materialized
Differential2019-06-13LDBC BI Query 25, developed
Differential2019-05-20Programming with time
Privacy2019-04-12Differential privacy and Demographics
Differential2019-02-09Monoids and Graph Processing
Differential2018-12-30Tensorflow in Differential Dataflow
Differential2018-11-20Strings (and beyond) in differential dataflow
Timely2018-09-26Timely Dataflow Architecture
Timely2018-08-18Synchronization via Timely Dataflow
Datalog, Rust2018-05-19A Datalog engine in Rust
Differential2018-05-06A differential dataflow query processor
Privacy2018-03-11Things that count
Privacy2018-02-25Uber's differential privacy .. probably isn't
Differential2018-02-19World enough, and timely dataflow
Differential2018-02-11Yahoo's Steaming Benchmark
Differential2017-12-10Advent of Code
Timely2017-11-08Timely on Kafka
Privacy2017-10-27Deep learnings about differential privacy
COST, Differential2017-10-23COST in the land of differential dataflow
Privacy2017-09-28The Moral Character of Privacy Technology
COST2017-09-23COST in the land of databases
Differential2017-09-05Big Data Stream Managers (BDSM)
Differential2017-08-21Live PageRanking
Timely2017-07-27Memory management for big data
Differential2017-07-24Throughput and latency in differential dataflow
Differential2017-05-06Specialization in differential dataflow
Differential2017-05-01Arrangement in differential dataflow
Differential2017-04-24A TPC-H-like evaluation of differential dataflow
Differential2017-03-28Differential dataflow 2017 roadmap
Differential2017-03-22What I'm stuck on
Differential2017-03-01High-resolution timestamps
Differential2017-02-21Modular data organization
Differential2017-02-11Differential dataflow status report
Privacy2017-02-08Two flavors of differential privacy
Privacy2017-01-26Differential privacy as a mutual information constraint
Timely2016-09-17Tracking motifs in evolving graphs
Privacy2016-08-29Differential privacy and correlated data
Privacy2016-08-16Lunchtime for data privacy
Differential2016-08-03Differential Dataflow internals
Differential2016-07-26Differential Dataflow Roadmap
Differential2016-07-17Dataflow as Database
Datalog, Differential2016-06-21Differential Dataflog
Privacy2016-06-14Statistical inference considered harmful
Privacy2016-05-19Differential privacy for dummies, redux
Differential2016-03-27Explaining outputs in modern computations
Privacy2016-02-06Differential privacy: an illustrated primer
Privacy2016-02-03Differential privacy for dummies
COST2015-12-24Graph processing in 2016
Timely2015-12-19Progress tracking in Timely Dataflow
Differential2015-11-27An introduction to Differential Dataflow, part 2
Differential2015-09-29An introduction to Differential Dataflow, part 1
Timely2015-09-21An introduction to Timely Dataflow in Rust, part 3
Timely2015-09-18An introduction to Timely Dataflow in Rust, part 2
Timely2015-09-14An introduction to Timely Dataflow in Rust, part 1
COST2015-08-20Epic Graph Battle of History: Chaos vs Order
COST2015-08-15Sorting out graph processing
COST, Timely2015-07-31The impact of fast networks on graph analytics, part 2.
COST, Timely2015-07-08The impact of fast networks on graph analytics, part 1.
Differential2015-05-12Differential graph computation
Timely2015-05-04Abomonation: terrifying serialization
Timely2015-04-19Data-parallelism in timely dataflow
Timely2015-04-11Worst-case optimal joins, in dataflow
Differential2015-04-07Differential dataflow
COST2015-02-04Bigger data; same laptop
COST2015-01-15Scalability! But at what COST?
Timely2014-12-29Timely dataflow: core concepts
Timely2014-12-27Timely dataflow: reboot
Rust2014-12-16Columnarization in Rust, part 2
Rust2014-12-15Columnarization in Rust