Content
PROBLEM: JAVASCRIPT HAS ALMOST NO STANDARD LIBRARY SOLUTION: THOUSANDS OF COMMUNITY -SUPPORTED LIBRARIES OF WILDLY VARYING QUALITY PROBLEM: JAVASCRIPT HAS NO PACKAGING OR A LINKER TO TIE THESE PACKAGES TOGETHER PROBLEM: JAVASCRIPT WON’T RUN OUTSIDE THE BROWSER SOLUTION: V8 PROBLEM: JAVASCRIPT IS SINGLE -THREAD BY DESIGN SOLUTION: ASYNCHRONOUS PROGRAMMING, NODE. JS PROBLEM: CALLBACK HELL PROBLEM: PROTOTYPAL INHERITANCE IS PANTS -ON- HEAD STUPID THAT’S RIGHT, I SAID IT. PROBLEM: WEB RESOURCES NEED TO BE MINIFIED AND ZIPPED FOR PERFORMANCE PROBLEM: THE DOM IS TOO SLOW FOR VIDEO GAMES SOLUTION: CANVAS PROBLEM: JAVASCRIPT IS TOO SLOW FOR VIDEO GAMES SOLUTION: USE AN ASSEMBLY- LIKE SUBSET OF JAVASCRIPT CALLED ASM.JS PROBLEM: ASM.JS IS BASICALLY UNWRITABLE 4 HUMANS. SOLUTION: COMPILE A BETTER LANGUAGE TO JAVASCRIPT (C, EMASCRIPT 2016, COFFEESCRIPT, JSX) SOLUTION: HUNDREDS OF COMMUNITY SUPPORTED BUILD TOOLS OF WILDLY VARYING QUALITY PROBLEM: GRUNT. SOLUTION: GULP PROBLEM: GULP PROBLEM: MACHINE GENERATED OUTPUT IS MORE DIFFICULT TO DEBUG PROBLEM: ASYNC IS STILL A NIGHTMARE, HUH? PROBLEM: BALLOONING PROJECT SIZE AND COMPLEXITY PROBLEM: JAVASCRIPT STILL DOESN’T DO EVERYTHING PROBLEM: OUTPUT RUNS VERY SLOWLY ON MOBILE DEVICES SOLUTION: ELECTRON, PHONEGAP, FIREFOXOS HOW IS DIGGING GOING TO GET US OUT OF THIS HOLE? WHERE I AM FROM, THE POINT OF DIGGING IS NOT FREEDOM FROM DIGGING