Hacker News new | past | comments | ask | show | jobs | submit login
Rube Goldberg machine in HTML forms (sebastianlyserena.dk)
407 points by aethr on April 28, 2016 | hide | past | favorite | 49 comments



I don't understand how this is a Rube Goldberg machine. Everything that happens is triggered by a Javascript setTimeout call, not from the action that happened before.


A Rube Goldberg machine is a contraption, invention, device or apparatus that is deliberately over-engineered to perform a simple task in a complicated fashion, generally including a chain reaction [from wikipedia]. In this example, the simple task is displaying the email button. And most computing operations are Rube Goldberg state machines if you think about it, no?


I think the point was that it's not really a chain reaction as each action has its own timer and will happen regardless of if any other action completes or doesn't complete.

Which is not to say I didn't thoroughly enjoy it :)


It's an asynchronous embarrassingly parallel Rube Goldberg machine ;)


It's meant to look like one, even if it technically isn't implemented as one.


Would be cool if it used a huge callback or promises chain. Still cool/fun concept.


I wonder if it was intentionally implemented this way, would memory have been an issue with the amount of callback chaining required?


> would memory have been an issue with the amount of callback chaining required?

Unlikely; you gotta hit a really deep stack to really kill something with callback chaining.

It could have used a start button that sets focus to the first one and then each focus change makes it go to the next but without the setTimeouts it would go by so far it wouldn't be nearly as fun.


You could still add a delay function with a setTimeout, but you'd only need one.


A bit of a party pooper :).


This is really cool,though I really wish I didn't look at the source code.


CSS and Javascript mixed with HTML, that's a pain to look at.


Yeah, I guess. This is art, not software, IMO.


Neat though its code could have been significantly simplified through the usage of some focus events and using tabindex to iterate over each field (to a degree; some items would require a little bit more fancy-ness but not much).

Also this page has the biggest html table I've seen in years :)


People are already complaining that the code isn't Rube Goldberg enough as it is, and you want to simplify it even further?! :)


This is genius. So simple yet so amazing. Reminds me of the Blue Ball Machine


> Blue Ball Machine

Oh god, that brings be back. What was that... 10 years ago? Gonna lose an hour now looking up these old GIFs...


The only way to experience it, imho

http://blueballfixed.ytmnd.com/


Holy crap!


I wonder how much email this person is receiving from the mailto at the end


I'd say he missed out on an opportunity to use that button to build a viral feedback loop! I honestly thought it was an "email to friends" button.


Considering this was written by a Dane (assuming from the TLD alone), the author might personally have referred to this as a »Storm P.-maskine«.[0] I know I would (being a Dane and all).

[0] https://en.wikipedia.org/wiki/Robert_Storm_Petersen


Or for the Brits, a Heath Robinson contraption: https://en.wikipedia.org/wiki/W._Heath_Robinson


Or for the Spaniards, "Invento del Tebeo" (literally, "a comic invention") https://es.wikipedia.org/wiki/Los_grandes_inventos_del_TBO (link in Spanish)

Edit: Coincidentally, these inventions were attributed to a fictional professor from Copenhagen (since we're talking about Denmark).


Recently had to rube goldberg my HTML form POST's to work with API Gateway because of this issue: https://forums.aws.amazon.com/thread.jspa?threadID=205782. Work around I came up with was a ridiculous redirect chain utilizing JWT. This is much prettier though.

If anyone is interested, it seems like you can probably get away with ~20 temporary redirects before your browser starts complaining about redirect loops.


This is linked in from http://brutalistwebsites.com/ which got discussed here sometime back - https://news.ycombinator.com/item?id=11517491.

Interview with the creator - http://brutalistwebsites.com/sebastianlyserena.dk/.


A while back a friend and I made something in the same spirit for a party invite: http://megazinemagazine.com/winternet/ We released a jquery plugin that renders a pixel font in HTML form elements: https://github.com/1800joe/LoResForm


It's not a chain reaction.


I'm pretty sure most frontend work with Javascript is already a Rube Goldberg machine.


The use of setTimeout makes this an animation, not a chain of events.


Err... how do you start it?

EDIT: Just a network hiccup apparently.

EDIT2: Though I really wish it played Danny Elfman's "Breakfast Machine" like the old days of the ball machine animation...


Do you have Javascript enabled?


jandmor


Really cool and awesome work


1


ñññ


:3


Wat


Fantastic, I really enjoyed it.


fasdfa


oryea


prueba


sdf


you rock.


eqeqeqe


eqeee


JQuery...


Hundreds of lines of handcrafted artisanal JQuery...


very artisanal




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: