Loading…

#159 - Relentless Persistence

·

#159 - Relentless Persistence, the whole comic

#159 - Relentless Persistence, part 1 of 4

#159 - Relentless Persistence, part 2 of 4

#159 - Relentless Persistence, part 3 of 4

#159 - Relentless Persistence, part 4 of 4

diggy diggy hole

This one got popular on HackerNews and Reddit.


Transcript

[Box: PROBLEM: JAVASCRIPT HAS ALMOST NO STANDARD LIBRARY]
[Box: SOLUTION: THOUSANDS OF COMMUNITY-SUPPORTED LIBRARIES OF WILDLY VARYING QUALITY]
[Box: PROBLEM: JAVASCRIPT HAS NO PACKAGING OR A LINKER TO TIE THESE PACKAGES TOGETHER]

[Box: PROBLEM: JAVASCRIPT WON'T RUN OUTSIDE THE BROWSER]
[Box: SOLUTION: V8]
[Box: PROBLEM: JAVASCRIPT IS SINGLE-THREAD BY DESIGN]
[Box: SOLUTION: ASYNCHRONOUS PROGRAMMING, NODE.JS]
[Box: PROBLEM: CALLBACK HELL]

[Box: PROBLEM: THE DOM IS TOO SLOW FOR VIDEO GAMES]
[Box: SOLUTION: CANVAS]
[Box: PROBLEM: JAVASCRIPT IS TOO SLOW FOR VIDEO GAMES]
[Box: SOLUTION: USE AN ASSEMBLY-LIKE SUBSET OF JAVASCRIPT CALLED ASM.JS]
[Box: PROBLEM: ASM.JS IS BASICALLY UNWRITABLE BY HUMANS.]

[Box: PROBLEM: PROTOTYPAL INHERITANCE IS PANTS-ON-HEAD STUPID. (THAT'S RIGHT, I SAID IT.)]
[Box: SOLUTION: COMPILE A BETTER LANGUAGE TO JAVASCRIPT (C, ECMASCRIPT 2016, COFFEESCRIPT, JSX)]
[Box: PROBLEM: WEB RESOURCES NEED TO BE MINIFIED AND ZIPPED FOR PERFORMANCE]
[Box: SOLUTION: HUNDREDS OF COMMUNITY SUPPORTED BUILD TOOLS OF WILDLY VARYING QUALITY]

[Box: PROBLEM: GRUNT.]
[Box: SOLUTION: GULP]
[Box: PROBLEM: GULP]
[Box: PROBLEM: MACHINE GENERATED OUTPUT IS MORE DIFFICULT TO DEBUG]
[Box: PROBLEM: BALLOONING PROJECT SIZE AND COMPLEXITY]
[Box: PROBLEM: OUTPUT RUNS VERY SLOWLY ON MOBILE DEVICES]
[Box: PROBLEM: ASYNC IS STILL A NIGHTMARE, HUH?]
[Box: PROBLEM: JAVASCRIPT STILL DOESN'T DO EVERYTHING]
[Box: SOLUTION: ELECTRON, PHONEGAP, FIREFOXOS]

Cube Drone: HOW IS DIGGING GOING TO GET US OUT OF THIS HOLE?
Miloslav: WHERE I AM FROM, THE POINT OF DIGGING IS NOT FREEDOM FROM DIGGING.

[©2015 curtis lassam @cube-drone.com]

Tagged api-key, comics, cube drone