How I’m making quantum computing accessible to anyone with a web browser.

Image by author.

Q is a quantum circuit simulator, drag-and-drop circuit editor, and powerful JavaScript library that runs right in your Web browser. Try it out now at

I didn’t know a thing about quantum computing but it sounded exotic — something about “yes” and “no” existing at the same time; in multiple universes even. Over the years I’d idly snacked on quantum video lectures but those scraps of pop science were the educational equivalent of Pop-Tarts. Meanwhile the substantive, nutrient-rich lectures of sages like Leonard Susskind, while deeply soothing, were ultimately inapplicable in my daily classical existence. By chance I happened…

I wrote the following article for AIGA’s Design Envy blog where it was first published on Friday, 11 November 2011—originally titled “Reconstructing Visual Experiences from Brain Activity Evoked by Natural Movies: Gallant Lab.” It concluded my week-long stint as Design Envy’s guest poster. In the nearly eight years since, Design Envy has fallen into disrepair and today the website is no longer functional. For that reason I’ve decided to re-post my minimally-updated article here for posterity. [Original post.]

The coming revolution will favor typographers. The Gallant Lab at UC Berkeley recently published a scientific paper and video titled “Reconstructing visual…

Their construction was clumsy — an eighth inch gap between the wooden door and metal jam. My skeleton key of shirt-hanger wire found purchase on the bolt’s angled head; rewarded with a clack, followed by a descending creaking of hinges. Then complementary ascending creaks, crescendoing to the muted thud of wooden door re-meeting metal jam. The trebly tock of the painted light switch. Finally, the low whoosh and clunk of the piano’s keyboard cover rolling backward to reveal an inert, binary-colored axis of pitch. There is peace in solitude.

Who needs expensive holographic goggles when you and your buddy have new smart phones and some old-school Cardboard?

Here we are in the first half of 2018 and Augmented Reality (AR) is still primarily a handheld experience. Load up an AR app on your phone — such as Pokémon Go — and hold it out in front of you, scanning the space around you. What you’ll see on your phone’s screen is the phone’s live camera feed, and layered on top of that live video will be computer-generated, virtual objects that don’t exist in our real, physical world. You can…

Hi, I’m Stewart. Last year I launched Space Rocks, a WebXR demo that re-imagines Atari’s Asteroids as an immersive, Web-based, virtual reality experience. Alongside the site’s launch I also released my source code used to create it. This technical deep dive explains how I built this WebXR game—and how you can make one too.

I wrote Space Rocks to be easy to tinker with right from the browser’s JavaScript console: No closures concealing an entire code base—inspect and inject as you please. I wrote Space Rocks to be read: No pre-processors. No trans-pilers. No minifiers, no uglifiers… The code is…

Escape through space on stolen plasma engines while slinging photon bolts at deadly asteroids. How many can you vaporize? Put on your virtual reality headset and pick up your hand controllers. You’ll need them if you want to survive. Play Space Rocks now at

Space Rocks is a room-scale virtual reality space shooter game. And what VR system is this for? Oculus? Vive? Windows Mixed Reality? The answer is all of them. Space Rocks is a WebVR application and that means it runs right in your browser. There’s no store to sign into. Nothing to pay for. And nothing…

Easily add multiple channels of haptic feedback to your WebVR experience with VRController.

Are you making custom virtual reality experiences for the Web? (You should probably get outside more.) VRController makes it easy to support 3DOF and 6DOF hand controllers for Oculus, Vive, Windows Mixed Reality, Daydream, GearVR, and more. You can download the source code from GitHub here, and if you’re reading this on a system with a VR headset, hand controller(s), and a WebVR-capable browser you can test drive it right now:

VRController’s been available for a while, but here’s what’s brand new: Haptic channels! Some hand…

A quirky proposal for fixing how calendars divide the year into months.

Hey. We need to talk about months. Yeah, months. How many days are in this month? You call yourself an adult and yet just now you had to recite a nursery rhyme in your head to figure out the answer—didn’t you? Or maybe you didn’t even bother because you thought you were just reading this for fun and “figuring” sounded like work. (Fuck work.)

Oh wait, though: It’s going to take a little work to fix months. But it’s totally worth it.

Months are an attempt to divide…

On creating Yahoo Mail’s “Autocompose” and how I did [not] invent Google Smart Reply.

I joined Yahoo’s marketing department as a Director in the autumn of 2013, having just put in a year and change at Google Creative Lab as a Creative Technologist. I’d started feeling out this job opportunity earlier that summer as ex-Googler Marisa Mayer celebrated her first anniversary as Yahoo’s CEO. Yahoo was sporting enormous renaissance potential and after joining I often encountered other former Google folks eager and excited to help restore the big Y to its prior glory. There were also “boomerangs”—former Yahoo employees drawn…

TL;DR: Chromium’s Gamepad API can be a quirky thing. But if you’re building interactive WebVR experiences with Three.js then VRController.js is here to help.

UPDATE: Some time has passed since I first wrote this. If you’re looking for deeper insight into using VR hand controllers in WebXR check out the Space Rocks technical deep dive where you’ll find that and more:

I’ve been building virtual reality experiences with the WebVR API for some time now—primarily for the HTC Vive, but the beauty of making virtual reality for the Web is that it will also run on the Oculus Rift, Google…

Stewart Smith

Creative polymath building quantum simulations and virtual reality in Brooklyn NY.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store