66 comments

[ 3.1 ms ] story [ 55.2 ms ] thread
Too delightful. Like a reverse jenga tower you like to topple over.

Of course, glad to see it was another @isohedral project.

If only it wouldn't collapse by itself after clicking anywhere (clicking seems to activate physics) this would be 10/10
Register the mousemove event handler on window, then you will still get the events when the mouse moves out of the window/frame while dragging and it won't be that buggy.
Come on, HN, you can't let this information stay under the front page for 13 hours and everyone's like "ah yes of course". Please don't register the mousemove event handler on window, that old school hack never really worked and was obsoleted 10 years ago when the pointer API became standard.

Things are much nicer now and the problem is entirely avoided by using pointer events: https://developer.mozilla.org/en-US/docs/Web/API/Element/set...

oh look at that. removing IBM enterprise apps really doesn’t break anything and the whole stack got lighter. science.
this is the best thing internet since the last best thing in the internet
It looks like the stroke/border is not taken into account in the physics simulation.
This can be fixed by:

       for (let re of rects) {
         push();
         translate(re.body.position.x, re.body.position.y);
         rotate(re.body.angle);
    -    rect(0, 0, re.w, re.h, 2);
    +    rect(0, 0, re.w - 1, re.h - 1, 2);
         pop();
       }
I'd like a medal for clearing the screen of all debris. What's that you say, some of it is still useful? oh
(comment deleted)
Now we just need a generated version of this based on a package.json!
Really cool! To be honest, when I clicked on this I had a hope that it would be possible to add things to the stack like the ongoing memes of just putting different things in there (maybe live with other people as a collaborative editor).
the weird physics are mildly infuriating. still funny though
We absolutely need a "whatever Microsoft is doing" object in that.
I love that the initial state itself isn't stable.

The world keeps moving around us. Can't choose staying still.

Who are the big blocks that survive the collapse though?
This is oddly fun to play with. Has that angry birds vibe
I was expecting it to open the FFmpeg website at the end.
THIS IS THE BEST THING EVAR!
Is this website intended to break HN on Android? I've never had a website lock up the HN app like this. I couldn't back out, and I was stuck in a loop when the app restarted on the same page.
It'd be really cool (and probably useful) if someone could figure out a way to generate diagrams like this for any software project.

You'd first need to figure out a way to generate a complete dependency tree. For each box, I interpret its height as a measure of its complexity and its width as a measure of the support it receives. The hardest part would probably be figuring out a way to quantitatively measure those values.