I picked up a Sony Vaio P — the ridiculous 2009 pocket laptop with the lipstick-tube hinge — and decided to actually use it again, not just put it on a shelf. That meant three stubborn goals: Restore the machine carefully (keep the stock Windows image so I can always go back) Run a modern 32-bit Linux that still boots on Intel’s ancient Poulsbo / GMA 500 graphics Run a real AI coding CLI on that…
A ¥13,200 Time Crisis console turned out to ship a hardcoded AES key , no secure boot of any kind , and a licensed Namco arcade emulator . The gun turned out to be a second Linux computer with a deliberately unmarked SoC, an NPU, and a root shell on an unpopulated header.
I bought a cartridge reader in Akihabara so I could dump and play SNES games from physical carts. The hardware is excellent — the open-source OSCR / Open Source Cartridge Reader community project — but the stock workflow is: Dump ROM to the reader’s SD card Pull the SD card Copy files on a computer Launch an emulator No native UI for macOS or Android . So I fixed that.
kanwisher.com is becoming hyperworks.nu . Same person (@kanwisher / Matthew Campbell). New focus: Blog — long-form technical posts, including reverse engineering hardware projects and write-ups that feed a future YouTube channel Talks — conference archive, videos, and booking Work — TensorFleet and earlier chapters Stack Simple on purpose:
Toastmasters Thailand · ice breaker Personal ice-breaker talk — the “how to fail at retirement” framing and working-with-kids/tech anecdotes from the notes deck.
Toastmasters Bangkok · 2023 Public speaking set on AI and jobs : what computers and programmers are, demos with DALL·E / ChatGPT-era tools, and a call to action rather than doom.
Bangkok meetup · ~2020 Soft-shell crab farming × computer vision : edge ML on Jetson Nano , Fast.AI / PyTorch, YOLO, GStreamer pipelines, and why labeling is the real nightmare. Takeaways from the deck Automating physical infrastructure in Thailand ML is mature enough for production edge boxes Python is fine for serious IoT/CV work OctoVision project context
Chorus One interview · 2019 Conversation with Brendan Dillon about Loom Network’s approach to scalable DApps, sidechains, and the ecosystem at the time.
Upbit Developers Conference 2018 · Korea Same Practical Plasma: Gaming material as Devcon 4 for a Korea developer audience — Plasma Cash, Loom SDK, and blockchain game architecture. Same deck as Practical Plasma: Gaming — Devcon 4 (video there).
Ethereum Devcon 4 · Prague Practical Plasma for gaming : real asset ownership, forkability, open data, and scaling NFT-heavy games beyond L1 limits. From the deck Why games need more than ERC-721 on mainnet Plasma variants (Cash, Debit, MVP) — Cash as the practical path Loom SDK placement in the stack Sparse Merkle trees, liquidity providers CryptoZombies as onboarding; hiring/community at the…
GopherCon UK 2018 · London Blockchains as specialized databases, smart contracts, and Go’s role (Ethereum clients, Loom, consensus libraries). Topics Use cases: money, ledgers, game assets, tokenized equity Smart contracts: deterministic, events, no external state Why pure Go apps struggle with determinism (map order, time, goroutines) Solidity / EVM vs Go infrastructure Consensus (Raft vs BFT),…
GopherCon Singapore 2018 A from-scratch mental model for distributed databases in Go . Deck outline Layers: file → KV → SQLite → relational When MySQL/Postgres are not enough (custom indexes, domain query languages) Use cases: blockchains, trading, logs, metrics Go examples: Influx, Prometheus, Vulcan, Ethereum, etcd, Consul Architecture: consensus (Raft/Paxos/BFT), storage (LevelDB/Rocks/Bolt),…
GopherCon Singapore 2018 (sponsor lightning) Short Loom Network pitch for Go developers: sidechains / DApp tooling and how Loom fit the 2018 blockchain stack.
Bangkok Python Meetup Hands-on intro for Python developers: blockchain basics, smart contracts, Solidity/EVM, TestRPC, a voting-app walkthrough, and common pitfalls — then where Python fits in the toolchain.
GopherCon Singapore 2017 Go-flavored edition of Distributed Scheduler Hell : why Go fits container platforms (single binary, small deps), and how we ran a large timeseries pipeline on Mesos then Kubernetes. Agenda from the deck What distributed schedulers do Why Go for container ecosystems Best practices and anti-patterns Walkthrough of Vulcan’s requirements and Mesos → Nomad → Kubernetes path…
SREcon17 Asia (USENIX) Same scheduler war stories framed for an SRE audience: reliability under partition, operational complexity of Mesos/Marathon/Kafka/Cassandra, and the migration toward Kubernetes. Program entry — public video not confirmed; see the microXchg / GopherCon SG recordings for the closest full captures.
GopherCon India 2017 Deep dive into Vulcan , DigitalOcean’s Prometheus-compatible distributed timeseries database written in Go. Outline (from the deck) Why Go for NoSQL/NewSQL (Prometheus, Cockroach, Influx, etcd…) Timeseries properties: write-heavy, compressible, lossy-friendly From hash-sharded Prometheus to a pipelined microservice architecture Kafka ingestion, Cassandra/chunk storage, schema…
microXchg 2017 · Berlin A practical tour of distributed container schedulers drawn from running DigitalOcean’s monitoring stack at scale. What the talk covers What a distributed scheduler actually provides vs the Linux kernel (deploy, quotas, networking, scaling) Vulcan — DigitalOcean’s Prometheus-compatible timeseries system — as a real workload: ~3 Gbit/s network, 100k writes/s, sub-100ms reads,…
Bangkok Python Meetup Same microservices curriculum as the Go talks, for a Python audience: monolith vs services, RPC vs bus, Docker, and when the complexity is worth it.
Golang UK Conference 2016 · London How DigitalOcean uses Go to build cloud infrastructure — control plane microservices, scale, and operational reality. Slides on SlideShare .
HashiConf DigitalOcean-era conference talk adjacent to Nomad, Consul, and container scheduling — the same problem space as Distributed Scheduler Hell .
Velocity NYC 2016 O’Reilly Velocity conference — reliability and operations topics from the DigitalOcean era (related themes to Chaos Monkey on my Laptop ).
PromCon 2016 · Berlin How DigitalOcean ran a public-facing monitoring platform on Prometheus toward multi-datacenter, high-cardinality load. Themes Prometheus as the customer-facing metrics plane Sharding, storage pressure, and operational reality past a few thousand machines Lessons that fed later work on Vulcan (compatible timeseries pipeline) Links YouTube Slides in promcon/slides-2016
Rocket Internet Conf 2016 · Berlin DigitalOcean microservices practices for a product/engineering audience — how cloud control planes are factored and operated. SlideShare: DigitalOcean Microservices Talk Rocket Internet Conf ‘16 . Slides on SlideShare .
O’Reilly Software Architecture Conference · New York 2016 Conference session from the DigitalOcean period on microservices and cloud architecture.
GopherCon India 2016 Go-centric cut of Cloud in your Cloud — building DigitalOcean’s platform with Go microservices, multi-DC operations, and production war stories. Slides on SlideShare .
microXchg 2016 · Berlin How DigitalOcean builds the cloud: Go microservices across many datacenters, tens of thousands of customers, and the day-to-day of writing, monitoring, and shipping control-plane services. Themes Microservices that are the cloud product Observability and deploy culture Scaling org + codebase past a single monolith (DO’s early Perl stack → dozens of services) Same core talk…
JSConf.Asia 2015 · Singapore Using game programming for education — including Thai typing / serious games work — and what works when teaching through play in the browser. Related deck: Serious Gaming, Thai Typing Game (Speaker Deck).
GothamGo 2015 · New York Chaos engineering for apps that cannot tolerate silent netsplits — from Thomson Reuters Eikon Messenger experience. Story Netflix Chaos Monkey randomly kills production processes; we needed the same before production Spin up multi-VM / Docker topologies on a developer laptop Script NIC failures, host churn, latency between replicas (MySQL/Redis) Push the same suite into…
GopherCon India 2015 Reliability and scale for financial instant messaging (Thomson Reuters Eikon Messenger territory): hundreds of thousands of demanding users, multi-datacenter messaging, and why Go fit the problem. Companion slides historically on SlideShare: Making Wallstreet talk with GO .
Bangkok Launchpad 2014 Early Intro to Go for the Bangkok community. Slides historically on SlideShare ( Intro to GO — Bangkok Launchpad 2014 ). Slides on SlideShare .
Originally published on kanwisher.com, July 19, 2012. Restored from the Wayback Machine . One of the most frustrating things when you start with Go is that fact that IO is blocking . So for example today I needed to spawn a process and read the stdout — easy right?
I’m Matthew Campbell (@kanwisher), an American engineer based in Bangkok. I build things at the intersection of distributed systems , Go , and increasingly hardware reverse engineering and open robotics . I’m founder of TensorFleet , working on open software for drone fleets. Background TensorFleet (current) — open software for robotics and drone fleets: making proprietary hardware…
Matthew Campbell (@kanwisher) — 20+ international conferences including GopherCon, PromCon, microXchg, GothamGo, JSConf.Asia, and Devcon. This page is a short speaker reel : talks with video first. Click any thumbnail to watch. Full abstracts, slides, and notes live on each talk page.