Strange Loop 2015
2015-09-24..2015-09-26
St. Louis, United States
[Strange Loop 2013, Strange Loop 2014, Strange Loop 2015, Strange Loop 2016, Strange Loop 2017, Strange Loop 2018, Strange Loop 2019, Strange Loop 2021, Strange Loop 2022, Strange Loop 2023]
| title | author | length |
|---|---|---|
| I See What You Mean | Peter Alvaro | 52m |
Argues that a time-aware query language called Dedalus makes distributed programs mean what they produce by treating facts as timestamped ephemeral knowledge… | ||
| Managing Containers at Scale with CoreOS and Kubernetes | Kelsey Hightower | 37m |
CoreOS plus Kubernetes deploy a tiny statically linked hello world app with Redis as a helper, build a Docker image ~2–7 MB, push to a registry, and run it on… | ||
| Unconventional Programming with Chemical Computing | Carin Meier | 36m |
Computing is recast as molecules and reactions: concrete demos use Clojure and core.async (ClojureScript visuals) and implement gamma chemical programming… | ||
| Teaching Kids Programming at the IOT Farm | Jessica Ellis, Jesse Phelps | 41m |
Teen User Group runs pair and mob programming so teens hit 75% girls and sustain 100% retention while doing hands-on projects. Initial Intel Edison… | ||
| How to Have your Causality and Wall Clocks, Too | Jon Moore | 42m |
Claim: Distributed Monotonic Clocks produce timestamps that preserve causality while keeping a physical-time component humans understand. Implementation is a… | ||
| Propositions as Types | Philip Wadler | 43m |
Claims that Propositions as Types means propositions are types, proofs are programs and proof normalization equals program evaluation, demonstrated by mapping… | ||
| Safe and fast parsers with Nom and Rust | Geoffroy Couprie | 43m |
Nom is a Rust parser‑combinator library that produces zero copy streaming parsers with Rust’s ownership and zero cost abstractions, interoperates with C, and… | ||
| LaunchCode CoderGirls | Crystal Martin | 10m |
LaunchCode CoderGirls runs weekly meetups in St Louis with 35–40 attendees weekly and 15–20 mentors, organized into learning tracks: CS50 continuation, a Udemy… | ||
| How machine learning helps cancer research | Evelina Gabasova | 32m |
Machine learning identifies concrete results: clustering of gene-expression to find cancer subtypes that correlate with treatment response and survival; matrix… | ||
| Building Isomorphic Web Applications with React | Elyse Kolker Gordon | 38m |
Claims that server + client code reuse improves SEO, perceived load and maintainability and that React can run on Node; demos an isomorphic board‑game app… | ||
| When "Worst" is Best (in Distributed Systems) | Peter Bailis | 39m |
Designing systems to tolerate worst-case network behavior yields concrete wins: coordination-free execution removes locks and waiting, enabling near-linear… | ||
| From Protesting to Programming: Becoming a Tech Activist | Idalin "Abby" Bobé | 50m |
Argues that tech both empowers and is weaponized, citing phones confiscated, livestreams used against protesters, account suspensions and surveillance… | ||
| Building Scalable Stateful Services | Caitie McCaffrey | 35m |
Argues that moving state into services yields data locality and lower latency, and that sticky routing enables stronger, available consistency; describes… | ||
| Immutable Data Science with Datomic, Spark and Kafka | Konrad Scorciapino, Mauro Lopes | 36m |
Architecture claims a working pipeline that avoids ETL by combining Datomic, Spark and Kafka so production reads never get copied and models are reproducible… | ||
| Typed Clojure: From Optional to Gradual Typing | Ambrose Bonnaire-Sergeant | 33m |
Extensions claim to promote Typed Clojure from optional to gradual typing by adding runtime checks and a type ripple that auto-checks requires and feeds… | ||
| Apache Kafka and the Next 700 Stream Processing Systems | Jay Kreps | 29m |
Apache Kafka provides a partitioned commit log, log compaction, consumer groups and replayable offsets to make stateful, fault tolerant stream processing… | ||
| Aurelia - the next generation JavaScript framework you will love | Jakub Jedryszek | 45m |
Aurelia claims minimal framework code and shows a working single‑page CRUD: 28 lines of JavaScript implement two-way binding (value.bind), event handlers… | ||
| Faster Objects and Arrays | Gil Tene | 44m |
Library code called org.ObjectLayout and StructuredArray presents a structured-array API that is vanilla Java (works on JDK 7+) with JMH tests and a GitHub… | ||
| Visualising program execution | Jan Paul Posma | 34m |
Claim: instrumenting JavaScript by transforming its AST makes a full execution trace cheaply available and dramatically speeds debugging; the uploader cites… | ||
| Strange Loops: Capturing Knots With Powerful Notations | Katherine Ye | 38m |
Conway claims a compact notation lets him enumerate 54 six‑crossing knots in an afternoon versus six years previously; this talk actually compares Conway… | ||
| Hopelessness and Confidence in Distributed Systems Design | Camille Fournier | 41m |
Built a synchronous distributed cache for risk analysis that shards data, runs on an Aul appliance with 216 cores for parallel reduction, and ships to… | ||
| Streams: The data structure we need | Pam Selle | 35m |
Claim: streams let code handle possibly infinite data, keep memory low, and model state without mutation. Concrete tools shown: Node streams, ES6 generators… | ||
| Transactions: myths, surprises and opportunities | Martin Kleppmann | 41m |
Asserts that transactions are resurging with practical, scalable implementations: MVCC snapshot isolation (Postgres, MySQL) and optimistic conflict checks… | ||
| All In With Determinism for Performance and Testing in Distributed Systems | John Hugg | 40m |
Claims that replication uses a deterministic logical log so every replica applies the same operations in the same order, yielding strong consistency with… | ||
| Probabilistic Programs Which Make (Common) Sense | Zenna Tavares | 36m |
Claims that Sigma lets programs be written as functional probabilistic models that run forward (render a 3D scene) and in reverse (infer the most probable 3D… | ||
| Beating Threads - live coding with real time | Sam Aaron | 42m |
Sonic Pi implements a virtual time model and a custom sleep that keeps per-thread logical clocks in sync with real time, uses named threads plus live_loop to… | ||
| Literate interactive coding: Devcards | Bruce Hauman | 39m |
A ClojureScript library called Devcards wires into Figwheel hot code reloading to surface live, documentable code examples as cards via a single defcard macro… | ||
| Sweaters as a Service | Amy Wibowo | 24m |
An Airbnb team hacks an 1980s knitting machine with 200 needles to turn images into knitwear: they emulate a floppy drive, build a USB-to-serial custom cable… | ||
| The art of service discovery at scale | Nitesh Kant | 36m |
Describes Netflix’s Eureka service discovery: a heartbeat + registration protocol that favours availability over consistency, replicates ephemeral instance… | ||
| Distributed, Eventually Consistent Computations | Christopher S. Meiklejohn | 40m |
Claims a coordination-free programming model called Lasp that composes CRDTs with a distributed dataflow to get Strong Eventual Consistency. Implements the… | ||
| A History of Programming Languages for 2 Voices | David Nolen, Michael S. Bernstein | 40m |
A rapid itinerary that pairs concrete milestones with audio clips and primary sources: a detailed timeline overlays original manuals and papers (lambda… | ||
| big-bang: the world, universe, and network in the programming language | Matthias Felleisen | 43m |
Big-bang is a language construct that turns pure functions into event handlers; Racket’s Universe library powers middle-school animations and text editors with… | ||
| GC Tuning Confessions Of A Performance Engineer | Monica Beckwith | 43m |
Claims concrete fixes: use GC logs plus VisualVM and simple parsing scripts to plot occupancy and scaling, and expect to find worst‑case pauses (one case shows… | ||
| HTTP/2 in Erlang | Joe DeVivo | 40m |
A working HTTP/2 server called Chatterbox is implemented in Erlang using supervisors, gen_fsm for per-connection state machines, and Erlang’s binary pattern… | ||
| Gamma: A simple model for WebGL | Kovas Boguta | 37m |
Gamma claims a tiny, data-driven layer over WebGL that recovers composition by representing GLSL and GL plumbing as immutable Clojure/script data, compiling to… | ||
| rustc in userland | Richo Healey | 32m |
Claim: a rustc install exposes rustc internals in userland so user code can parse, transform and emit objects. Practicals: using nightly feature gates, the… | ||
| Look ma, no OS! Unikernels and their applications | Matt Bajor | 34m |
Claim: Unikernels shrink runtime to kilobytes or megabytes (a static site in about 4 MB vs ~1 GB on Linux), remove whole OS layers, and cut the attack surface… | ||
| Cache à la carte: a framework for in-memory caching | Yao Yue | 49m |
A modular cache framework called Pelican replaces forks of memcached and Redis with three protocol-compatible binaries, aims for predictable tail latencies… | ||
| Architectural Patterns of Resilient Distributed Systems | Inés Sombra | 44m |
Argues that resilience is a design and operational claim not a buzzword: favoring harvest and yield changes tradeoffs; Netflix reduces API outages with client… | ||
| Security for Humans: Privacy and Coercion Resistant Design | Morgan Marquis-Boire | 01h 02m |
Citizen Lab and First Look Media research lists concrete compromises: commercial spyware FinFisher and Hacking Team implants including a mobile spy call… | ||
| Everything Old is New Again: Quoted Domain Specific Languages | Philip Wadler | 42m |
Claims that Quoted DSLs pair quotation with normalization to enforce the subformula property, so higher‑order host code compiles to first‑order targets… | ||
| The Programming Language Called Classical Chinese | David Branner | 43m |
Claim: Classical Chinese’s core syntax is compact enough to be captured by a context-free grammar and a simple type calculus. Method: maps all lexical items to… | ||
| No, Really... Robots and JavaScript?! | Raquel Vélez | 36m |
Claim: JavaScript and Node.js make robotics accessible by matching evented IO to sensor/actuator flows and by leveraging npm packages so developers skip low… | ||
| Pixie - A Lightweight Lisp with 'Magical' Powers | Timothy Baldridge | 33m |
Pixie is a small Lisp that ships as a ~2.5 MB gzip, starts a REPL in ~175 ms and uses ~10 MB RAM. It pairs a tracing JIT (via RPython) with lightweight… | ||
| Make the Back-End Team Jealous: Elm in Production | Richard Feldman | 31m |
A production web app originally built with React.js and legacy jQuery gets Elm introduced incrementally by replaced one Flux store via ports, preserving… | ||
| PTero: Architecture and Development | Michael Kiwala, David Morton | 43m |
Describes a working workflow system PTero that encodes DAGs and runtime choices as petri nets, claims an amortized constant‑time step decision algorithm, and… | ||
| Performance Engineering At MasterCard | Ted Boehm | 38m |
Claim: MasterCard builds a Safety Net real-time fraud detection pipeline that handles tens of thousands of transactions per second with responses in tens of… | ||
| How to run Neural Nets on GPUs' | Melanie Warrick | 38m |
Shows actual code launching a neural net on a GPU and reports concrete tradeoffs: uses CUDA and cuDNN (and mentions cuBLAS/OpenCL), runs a Java DL4J MNIST Java… | ||
| Cursors Illustrated: Collaborative sketching | Ryan Dy, Marlena Compton | 25m |
Claims that cursors from OM make immutable state practical in JavaScript and that pairing immutability with React.js cuts wasted renders, with a concrete… | ||
| When the OS gets in the way | Mark Price | 42m |
Shows concrete wins: using isolcpus and cpusets to carve CPU domains, pinning hot JVM threads with sched_setaffinity, and measuring with perf and ftrace to… | ||
| Cleaning the Tar: Using React within the Firefox Developer Tools | James Long | 43m |
Claim: migrating Firefox Developer Tools to a pure functional UI using React and Redux produces concrete wins: a single-atom app state that enables… | ||
| Evidence-Oriented Programming | Andreas Stefik | 42m |
Introduces a concrete evidence regime: a new language Quorum built with NSF funding, audited by randomized designs and surveys, plus prototyped tools like… | ||
| Specter: overcome your fear of nested Clojure data | Nathan Marz | 42m |
Specter is a Clojure library that actually navigates, queries, and mutates deeply nested structures and ships a pre-compilation step plus… | ||
| Side Effects are a Public API | Christopher Armstrong | 38m |
Argues that side effects should be explicit values and shows a working Python library that implements that: Effect library for Python uses a do-style generator… | ||
| CRDTs Illustrated | Arnout Engelen | 36m |
Explains concrete rules and limits: operation-based vs state-based CRDTs with three operation-based requirements (concurrent ops must commute, idempotent… | ||
| Non-Imperative Network Programming | Mindy Preston | 33m |
Claims that full network stacks work in OCaml via MirageOS and unikernels, replacing sockets with explicit module types that expose concrete APIs (flow, TCP… | ||
| Aggregator: MapReduce in the type system | Dan Frank | 36m |
Claim: expressing the MapReduce reduction as a typed Aggregator separates what is computed (input A, accumulation B, output C) from how it runs. The talk… | ||
| Kolmogorov music | Chris Ford | 42m |
Claim: understanding equals the length of the shortest program that generates a piece of music using Kolmogorov complexity. Tools: Clojure, macros… | ||
| How the web is democratizing science (join in!) | Abigail Cabunoc Mayes | 31m |
Claims that the web makes research accessible get backed by specifics: demos of browser visualizations built for WormBase using Cytoscape visualizations that… | ||
| Using Race Conditions in Correct Concurrent Software | Devon O'Dell | 39m |
Claims that intentionally exploited races plus atomic primitives yield faster, more predictable concurrency instead of only bugs. Implements a micro slab… | ||
| Cognitive Bias: A reflection and path forward | Bryan Liles | 38m |
Argues that cognitive bias drives concrete engineering choices — Linux beat FreeBSD due to late‑90s biases, driver availability and social signaling — and that… | ||
| Relevance of ClojureScript | Jearvon Dharrie | 36m |
Demonstrates core.async channels and go blocks that turn callbacks into parked state machines, and an undo implemented by immutable app-state history that… | ||
| Feet in Both Worlds: From Objective-C to Swift | Andy Matuschak | 40m |
Claims that Swift’s Objective‑C bridge imposes real semantic and engineering weight: a ~200‑page interop surface, keywords like dynamic and @NSManaged, and… | ||
| How NOT to Measure Latency | Gil Tene | 43m |
Time is Money. Understanding application responsiveness and latency is critical but good characterization of bad data is useless. Gil Tene discusses some… | ||
| BayesDB: Query the Probable Implications of Data | Richard Tibbetts | 42m |
BayesDB claims a usable layer for probabilistic inference over tables and shows an executable system: BQL averages over an implicit space of probabilistic… | ||
| An Overview of Probabilistic Programming | Vikash K. Mansinghka | 01h 03m |
Three concrete systems are demonstrated with results: BayesDB exposes BQL and MML to let nonstatisticians run infer, estimate, and simulate queries over… | ||
| The Gamma: Programming Tools for Data Journalism | Tomas Petricek | 38m |
Claims that data-driven articles become treat article as an executable program so readers can reproduce charts and see data provenance, and demonstrates a… | ||
| Constraint Logic Propagation Conflict Spreadsheets | William Taysom | 34m |
A prototype live coding system combines constraint logic (Prolog‑style relations and aggregators) with spreadsheet‑like views so tables become propagation… | ||
| Eve | Chris Granger | 46m |
Eve experiments through twenty plus rewrites and lands on concrete results: a datalog-like core that treats everything as tables, a browser IDE bootstrapped in… | ||
| Apparatus: A Hybrid Graphics Editor / Programming Environment | Toby Schachman | 38m |
A hybrid editor combines vector direct manipulation with a spreadsheet-like dataflow and claims it reduces creation time from hours to minutes. Shapes expose… | ||
| A Live Programming Experience | Sean McDirmid | 35m |
A working environment called APX combines a custom language, a typeless type system with client‑side inference, and the DLR to give native code performance; a… | ||
| Ceptre: A Language for Modeling Generative Interactive Systems | Chris Martens | 38m |
Ceptre is an executable game‑sketching language built atop linear logic programming and multiset rewriting and extended with stages and quiessence to control… | ||
| nothing matches | ||