stewdio | 5 years ago | on: Show HN: Black Swan, a browser-based music video
stewdio's comments
stewdio | 5 years ago | on: Show HN: Black Swan, a browser-based music video
Here’s the “video”: https://stewartsmith.io/blackswan/
Here’s the source code: https://github.com/stewdio/blackswan/
stewdio | 5 years ago | on: Show HN: Hand gesture recognition in WebXR via Euclidean distance (Handy.js R4)
stewdio | 5 years ago | on: Show HN: Handy.js for hand-tracking interactivity in WebXR
stewdio | 5 years ago | on: Show HN: Quantum JavaScript
1. Doesn’t know anything about this particular subject yet.
2. Is probably very tired from whatever it is they’ve been doing. (Day job, raising kids, just general anxiety keeping them awake all night, etc.)
3. Might be drunk.
So I try to be plain in my language choices, calming when facing something with an aura of complexity (eg. “this thing that you heard is complex is really just a fancy name for these two simple elements combined”), consistent, and to present actual examples instead of everything just being an impenetrable brick of text.
(And then occasionally I break all my rules by throwing in hyperlinks to random tangents / hiding Missy Elliott lyrics in the code / whatevs.)
stewdio | 5 years ago | on: Show HN: Quantum JavaScript
For reference, here’s some of my original reasoning: https://quantumjavascript.app/contributing.html#JavaScript_s...
stewdio | 5 years ago | on: Show HN: Quantum JavaScript
I have an idea of how to solve it while still keeping gate creation simple—I just need to find some downtime to investigate further :)
stewdio | 5 years ago | on: Show HN: Quantum JavaScript
https://medium.com/@stew_rtsmith/quantum-javascript-d1effb84...
stewdio | 5 years ago | on: Show HN: Quantum JavaScript
And yes—not having any dependencies or anything to install was one of my goals to help anyone get up and running with minimal fuss. I have more to say about that here: https://quantumjavascript.app/contributing.html#JavaScript_s...
You’re asking a really good question—I should probably write page on this to make it more clear; it definitely was NOT clear to me at first either! The short answer is “no.” What you’re seeing there is the Q.Circuit.prototype.try$ function which forces a circuit to choose one of its probable outcomes. I mostly added this in so users could write a simple coin-flip demo and get an actual heads or tails result—you know; feel good about making their first superposition and then collapsing it to a conclusion: Q`H`.try$() ? 'tails' : 'heads'
But it’s the management and redistribution of probabilities during the course of a circuit’s operation that is the real quantum magic—not choosing a series of random outcomes. In fact if you search the entire repo for “Math.random” you’ll see that this try$ function is the only “semi-meaningful” use of randomness. (The other calls to Math.random are either part of some included THREE.js bits for the Bloch Sphere visualizer, or for randomly tilting the click-and-draggable gate tiles in circuit palettes, or for choosing random color + animal names. Yes... Random color + animal names!) Q.getRandomName$()
The way we manage probabilities in a simulator is by representing qubits as a pair of numbers. This should give you a better idea of how that works—and what “superposition” means in this context: https://quantumjavascript.app/Q-Qubit.html
But the weirdest part for me to wrap my head around was that there is no answer until you’ve computed the ENTIRE answer. In a regular computer you can ask what the value of a particular bit is at anytime and that doesn’t effect any other piece of the circuit. But with quantum simulation like this you are mixing all of the ingredients together and it is impossible to pull one out, point to it and say “this particular qubit has this particular value!” Instead you can only know the total state of the system.
You’ve given me a lot to think about in terms of adding more content to Q :)
I need another coffee now...
stewdio | 5 years ago | on: Show HN: Quantum JavaScript
There are a few ways to do this in code, so you can pick the style that feels right for you / your particular case: https://quantumjavascript.app/#Quantum_JavaScript
But it’s also easy to make CNOTs in the visual editor. Here’s an animated GIF demonstrating it: https://quantumjavascript.app/tutorials.html#Create_controll...
And for further clarity, here’s a description of the relevant steps in that animated GIF: 1. Drag an Identity gate (the circle) onto your circuit board. 2. Drag a Pauli X gate (the X) onto the same moment (column) of your circuit board. 3. Select both (by tapping on them). 4. Tap on the "C" button to join them into a controlled gate.
stewdio | 5 years ago | on: Show HN: Quantum JavaScript
I’d like to really flesh out that page; I’ve now come across so many folks that are amazing at explaining this stuff... It’s just a time crunch to juggle all this as you might imagine ;)
These two videos in particular helped me get started:
1. What is a physical quantum computer? https://www.youtube.com/watch?v=OWJCfOvochA
2. How might one compute using it? https://www.youtube.com/watch?v=F_Riqjdh2oM
stewdio | 7 years ago | on: Show HN: Space Rocks, a WebXR technical deep dive
Space Rocks demo (Requires a WebXR-capable browser and a 6DoF VR device): https://spacerocks.moar.io
Space Rocks source code repo: https://github.com/moar-tech/spacerocks
stewdio | 9 years ago | on: Show HN: Day and Night (WebVR)
I wrote a little more about Day & Night here, including links to downloads and instructions for getting WebVR for the Vive up and running: https://medium.com/@stew_rtsmith/day-and-night-f5f2a56112ea#...
Some of the ingredients in the kitchen: WebVR, THREE.js, WebGL, binary data in JS, CSS animation, SVG sprites ... And just beginning to sprinkle in some ES6 goodies.
stewdio | 9 years ago | on: Day and Night (WebVR)
stewdio | 10 years ago | on: Is there any point to the 12 times table?
This beautiful number is evenly divisible by 1, 2, 3, 4, 6, and itself—a very high percentage (50%!) of the positive integers leading up to and including itself. (To be sure 60 is also a beautiful number but its ratio of factors to non-factors is of course lesser.) I can see you gearing up to argue that 6 is more beautiful, and I get that. I really do. But the ability to evenly divide into quarters is just so ... pleasant :)
Does the ability to divide evenly in several ways serve as a soapbox from which to argue that it is mathematically important to memorize the first 12 numbers of which 12 is a factor? I suppose not. But could we simply do 12 the honor of learning these two extra columns of the multiplication table because it is beautiful? (And really you’re just learning ONE extra column because 11 is such a simpleton. Silly 11.)
Of course dividing things into 12 units can SOUND pleasant as well. Western music is founded on dividing an octave into 12 units—though the exact method of division can take many forms. Here’s just a sample: https://github.com/stewdio/beep.js/blob/master/beep/Beep.Not...
So I love 12. Join me in loving 12. Together we can praise 12.
Full disclosure, I have been known to previously adore the number 12. On December 12, 2012 I proposed this “Cleaner Grid of Time” beginning with the months in a year: http://stewd.io/b/2012/12/12/twelve
stewdio | 11 years ago | on: JavaScript framework for building browser-based synthesizers
stewdio | 11 years ago | on: Airline flights of the world visualized with WebGL
I left a lot of code commentary for anyone else trying to wrap their heads around this stuff: https://github.com/stewdio/airborne
stewdio | 11 years ago | on: The Internet is Shit (2003)
Also, for fun you ought to WHOIS the domain name. Here’s a sampling:
Registrant Name: alain a-dale
Registrant Organization: iis
Registrant Street: Sherwood
Registrant Street: Forest
Registrant City: Nottingham
Registrant State/Province: State
Registrant Postal Code: 111111
Registrant Country: USstewdio | 12 years ago | on: 808 Cube
stewdio | 12 years ago | on: Chrome Cube Lab
Works best in Chrome / Safari / Opera.