008 jsAir - JavaScript Debugging with Alex Liu, Todd Gardner, and Yunong Xiao
JavaScript Debugging with Alex Liu, Todd Gardner, and Yunong XiaoDescription:
JavaScript has a pretty interesting debugging story. The developer tools of your browser of choice and the various tools and IDEs for debugging Node or mobile development make for a really interesting topic.
Show sponsors:- Egghead.io - Bite-sized web development video training
- Frontend Masters - Expert front-end training
- {Track:js} - JavaScript Error Monitoring
- Wallaby.js - Realtime code coverage
- Codecov.io - Code coverage done right
- Fluent - Web development training
- Tips: Always think about Errors and error handling as part of the design and spec from day one and Understand the abstractions you use, especially when it comes to Errors
- Picks: VError, bunyan, restify-errors, and Overheard - VS Code debugger is great
- Links: TrackJS for debugging non-chrome platforms, Charles Web Debugging Proxy, and Fiddler Proxy
- Picks: JavaScript Error Monitoring, JavaScript Forensics Talk, Amazing Conference in Oslo, Afterparty conference, Author: Ken Follett. Pillars of the Earth and a World Without End, and Conference Satire
- Links: mdb v8, Node post mortem debugger, Debugging Node.js in Prod, Flamegraphs, Flamegraphs with Node, Restify, Observable Rest Framework, and Debugging Node
- Tips: Use the Scientific Method, Error Types and JSON Parse, Error Handling in Node.js, JSON Logging Lib, and Observable Async lib
- Picks: Bojack Horseman, ReactiveSocket, and Wish You Were Here
- Links: Elm’s debugger and Free Monad graph
- Tips: Algebraic data structures like Either, Task, and Maybe ensure we handle all errors. The errors are pushed to the caller where it’s easy to see., In node, you can overwrite Obj.prototype.inspect to display a custom string when console.log-ing., and Learn to use debugger; in the browser.
- Picks: Bodil Stokke Generators and Profunctor Lenses
- Tips: Chrome CPU Throttling, OSS your code early. Don’t wait until “it’s good enough for others”, because then you’ve waited too long. OSS is about collaboration and improvement, not promotion of already-finished code., and Start with libraries and frameworks as you rapidly develop/evolve/explore a project. But as it matures, try to build time in for refactoring to reduce/remove those pieces. You don’t need them permanently. The best code is the code that’s exactly what’s needed, no more, no less.
- Picks: About the new ‘createImageBitmap(..)’ API and also ‘requestIdleCallback(..)’, Chris & Getify Make A Game (part 1) tutorial on simple game making with me and @chriscoyier, and Cloud Sweeper my first casual web game, OSS code released
- Links: Async checkbox in Chrome DevTools and Managing Memore Garbage Collection in NodeJS - Egghead.io lesson
- Tips: Teach to learn. Force yourself to teach.
- Picks: What’s new in Webpack 2 and Debugging JavaScript (Chrome DevTools)