
JSJ 313: Light Functional JavaScript with Kyle Simpson
Panel: AJ ONealAimee KnightJoe Eames Special Guests: Kyle SimpsonIn this episode, the JavaScript Jabber panelists discuss light functional JavaScript with Kyle Simpson. Kyle is most well-known for writing the books You Don’t Know JS and is on the show today for his book Functional-Light JavaScript. They talk about what functional programming is, what side-effects are, and discuss the true heart behind functional programming. They also touch on the main focus of functional programming and much more!In particular, we dive pretty deep on:You Don’t Know JSFunctional-Light JavaScriptFrom the same spirit as first booksJavaScript Documents journey of learningWhat does Functional Programming mean?Functional programming is being re-awokenMany different definitionsHistory of functional programmingProgramming with functionsWhat is a function?“A collection of operations of doing some task” is what people think functions areWhat a function really isMap inputs to outputsWhat is a side-effect?Side-effects should be intentional and explicitThe heart of functional programmingRefactoringCan’t write a functional program from scratchWhat functional programming focuses onMaking more readable and reliable codePulling a time-stampDefining a side-effectAnd much, much more!Links:You Don’t Know JSFunctional-Light JavaScriptJavaScriptKyle’s GitHub@getifyPicks:AimeeWhat Does Code Readability Mean?@FunctionalKnoxHTTP 203 Podcast AJIKEAJoeBarking Up the Wrong Tree by Eric BarkerWorkshops in generalKyleGDPRThe start-up’s guide to the GDPRHatchFluent ConfSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
15 Maj 201811min

JSJ 312: Hygen with Dotan Nahum
Panel: Charles Max WoodAimee KnightAJ ONeal Special Guests: Dotan NahumIn this episode, the JavaScript Jabber panelists discuss Hygen with Dotan Nahum. Dotan has worked within open source community, where he created Hygen. They talk about what Hygen is, how it came to be, and code generators in general. He was inspired by the Rails generator to create his own generator and took his inspiration from 12 years prior to creating Hygen. They also touch on how to share generators in separate packages and much more!In particular, we dive pretty deep on:Dotan introWhat is Hygen?Code generatorsRails in 2006Ruby on Rails 15-minute blog videoPHP and PythonCarried Rails wow moment with him into creating HygenWanted Rails generators everywhereCan you also modify files?Took the good things from Rails generatorThe fact that front-end apps have architecture is newReduxThe solution of generating codeA component is a ray of files and assetsJavaScript gives you great freedomA standardized way of doing componentsGraphQLEverything lives in the “day job” projectHow the Hygen template is formattedCan have a shell actionIs there a way to share generators in a separate package?GoAnd much, much more!Links:HygenRailsRuby on Rails 15-minute blog videoPythonReduxJavaScriptGraphQLGo@jondotDotan’s GitHubDotan’s MediumPicks:CharlesFluent ConfHot JarDevChat.tvEthereumAimeeDeep-copying in JavaScriptAJLet’s EncryptNintendo SwitchBreath of the WildDotanasdfBrew CaskSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
9 Maj 201848min

JSJ 311: Securing Express Apps with Helmet.js with Evan Hahn
Panel: Charles Max Wood Special Guests: Evan HahnIn this episode, the JavaScript Jabber panelists discuss securing Express apps with Helmet.js with Evan Hahn. Evan is a developer at Airtable, which is a company that builds spreadsheet applications that are powerful enough that you can make applications with. He has also worked at Braintree, which does payment processing for companies. They talk about what Helmet.js is, when you would want to use it, and why it can help secure your Express apps. They also touch on when you wouldn’t want to use Helmet and the biggest thing that it saves you from in your code.In particular, we dive pretty deep on:Evan introJavaScript What is Helmet.js?Node and ExpressWhy would you use the approach of Middleware?Helmet is not the only solutionHttp headersCurrent maintainer of Helmet.jsnpmHas added a lot to the project, but is not the original creatorOutbound HTTP response headersHelmet doesn’t fully secure your app but it does help secure itHow does using Helmet work?Are there instances when you wouldn’t want to use Helmet?No cash middlewareWhere do you set the configuration options?Top level Helmet module12 modulesWhat is the biggest thing that Helmet saves you from?Content security policy codeAnd much, much more!Links:AirtableBraintreeJavaScriptHelmet.jsNodeExpressnpmEvan’s Website@EvanHahnEvan’s GitHubPicks:CharlesCameraZoom H6Shure SM58DevChat.tv YoutubeReact Round UpEvanClojureFortuneKantaro: The Sweet Tooth SalarymanSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
1 Maj 201840min

JSJ 310: Thwarting Insider Threats with Greg Kushto
Panel: Charles Max WoodCory HouseAJ O’NealAimee Knight Special Guests: Greg KushtoIn this episode, the JavaScript Jabber panelists discuss thwarting insider threats with Greg Kushto. Greg is the vice president of sales engineering for Force 3 and has been focused on computer security for the last 25 years. They discuss what insider threats are, what the term includes, and give examples of what insider threats look like. They also touch on some overarching principles that companies can use to help prevent insider threats from occurring.In particular, we dive pretty deep on:Greg introInsider threats are a passion of hisMost computer attacks come from the inside of the companyInsider threats have changed over timeWhat does the term “insider threats” include?Using data in an irresponsible mannerWho’s fault is it?Blame the company or blame the employee?Need to understand that insider threats don’t always happen on purposeHow to prevent insider threatsVery broad termAre there some general principles to implement?Figure out what exactly you are doing and documenting itDocumentations doesn’t have to be a punishmentKnow what data you have and what you need to do to protect itHow easy it is to get hackedPractical things to keep people from clicking on curious linksThe need to change the gameFighting insider threats isn’t fun, but it is necessaryAnd much, much more!Links:Force 3Greg’s LinkedIn@Greg_KushtoGreg’s BLogPicks:CharlesHaveIBeenPwned.comPlural SightElixir podcast coming soonNG confMicroConfRubyHackMicrosoft BuildCoryPlopVS code sync pluginAimeeAwesome Proposals GitHubAJ O’NealFluffy PancakesThe Mind and the Brain by Jeffrey M. SchwartzGregStormCastSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
24 Apr 201846min

JSJ 309: WebAssembly and JavaScript with Ben Titzer
Panel: Charles Max WoodCory HouseAimee Knight Special Guests: Ben TitzerIn this episode, the JavaScript Jabber panelists discuss WebAssembly and JavaScript with Ben Titzer. Ben is a JavaScript VM engineer and is on the V8 team at Google. He was one of the co-inventors of WebAssembly and he now works on VM engineering as well as other things for WebAssembly. They talk about how WebAssembly came to be and when it would be of most benefit to you in your own code.In particular, we dive pretty deep on:Ben introJavaScriptCo-inventor of WebAssembly (Wasm)Joined V8 in 2014asm.jsBuilt a JIT compiler to make asm.js fasterTurboFanWhat is the role of JavaScript? What is the role of WebAssembly?SIMD.jsJavaScript is not a statically typed languageAdding SIMD to Wasm was easierEasy to add things to WasmWill JavaScript benefit?Using JavaScript with Wasm pros and consPros to compiling with WasmStatically typed languagesThe more statically typed you are, the more you will benefit from WasmTypeScriptIs WebAssembly headed towards being used in daily application?Rust is investing heavily in WasmWebAssembly in gamingAnd much, much more!Links:JavaScriptV8WebAssemblyasm.jsTurboFanTypeScriptRustWebAssembly GitHubBen’s GitHubPicks:CharlesReady Player One MovieDevChat.tv YouTubeAlexa Flash Briefings: Add skill for “JavaScript Rants”Corynpm Semantic Version CalculatorKent Beck TweetAimeeMDN 418 Status codeQuantity Always Trumps Quality blog postBenAmerican PoliticsSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
17 Apr 201852min

JSJ 309: WebAssembly and JavaScript with Ben Titzer
Panel: Charles Max WoodCory HouseAimee Knight Special Guests: Ben TitzerIn this episode, the JavaScript Jabber panelists discuss WebAssembly and JavaScript with Ben Titzer. Ben is a JavaScript VM engineer and is on the V8 team at Google. He was one of the co-inventors of WebAssembly and he now works on VM engineering as well as other things for WebAssembly. They talk about how WebAssembly came to be and when it would be of most benefit to you in your own code.In particular, we dive pretty deep on:Ben introJavaScriptCo-inventor of WebAssembly (Wasm)Joined V8 in 2014asm.jsBuilt a JIT compiler to make asm.js fasterTurboFanWhat is the role of JavaScript? What is the role of WebAssembly?SIMD.jsJavaScript is not a statically typed languageAdding SIMD to Wasm was easierEasy to add things to WasmWill JavaScript benefit?Using JavaScript with Wasm pros and consPros to compiling with WasmStatically typed languagesThe more statically typed you are, the more you will benefit from WasmTypeScriptIs WebAssembly headed towards being used in daily application?Rust is investing heavily in WasmWebAssembly in gamingAnd much, much more!Links:JavaScriptV8WebAssemblyasm.jsTurboFanTypeScriptRustWebAssembly GitHubBen’s GitHubPicks:CharlesReady Player One MovieDevChat.tv YouTubeAlexa Flash Briefings: Add skill for “JavaScript Rants”Corynpm Semantic Version CalculatorKent Beck TweetAimeeMDN 418 Status codeQuantity Always Trumps Quality blog postBenAmerican PoliticsSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
17 Apr 201852min

JSJ 308: D3.js with Ben Clinkinbeard
Panel: Joe EamesCory HouseAimee Knight Special Guests: Ben ClinkinbeardIn this episode, the JavaScript Jabber panelists talk about D3.js with Ben Clinkinbeard. D3.js is a JavaScript library that has you use declarative code to tell it what you want and then it figures out all of the browser inconsistencies and creates the notes for you. He talks about the two main concepts behind D3, scales and selections, which once you understand make D3 a lot more user friendly. He then touches on SPGs and discusses his Learn D3 in 5 Days course.In particular, we dive pretty deep on:What is D3.js?Stands for Data Driven DocumentsJavaScriptHow much of the learning curve is attributed to learning D3?SPG2 main concepts behind D3: scales and selectionsIs learning about SPGs a prerequisite to leaning D3?How serious are you talking when saying idiosyncrasies?SPG tagUnderstanding positioning in SPGPositions with CSS transformsAre you required to use SPG?Not required to use SPG with D3CanvasSPG is vector basedSPG utility functionResponseivefyLearn D3 in 5 Days courseIs there and overlap with D3 and React?And much, much more!Links:D3.jsJavaScriptResponsivefyLearn D3 in 5 Days courseReact @bclinkinbeardBen’s GitHubPicks:CoryReact cheat sheet“Why software engineers disagree about everything” by Haseeb QureshiJoe Eames“JavaScript vs. TypeScript vs. ReasonML” by Dr. Axel RauschmayerAimee“How To Use Technical Debt In Your Favor”Neuroscience News TwitterBenComLinkSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
10 Apr 201845min

JSJ 307: Apollo with Peggy Rayzis
Panel: Charles Max WoodAimee KnightAJ ONeal Special Guests: Peggy RayzisIn this episode, the JavaScript Jabber panelists talk about Apollo with Peggy Rayzis. Peggy is an open source engineer on the Apollo team where she primarily focuses on client stuff, working on Apollo Client, and also other libraries. Previously, she was a UI engineer at Major League Soccer where she worked primarily with React and React Native. She discusses what GraphQL is and how it is used, as well as how they use it in the Apollo team to make their lives as developers easier. They also touch on when it would work best to use GraphQL and when it is not ideal to use it.In particular, we dive pretty deep on:AiA 127 EpisodePeggy introWhat is GraphQL?What is a Typed Query Language?What is a schema?Where do schemas get defined?GraphQL SDLApollo Stack and Apollo ServerTracing and cash controlApollo EngineHow GraphQL Replaces ReduxGraphQL cuts down on front-end managementApollo Link StateThe best code is no codeApollo Client allows for greater developer productivityDoes the conversation change if you’re not using Redux or in a different ecosystem?When is the right time to use this?Data doesn’t have to be graph shaped to get the most out of GraphQLAnalyze schema with Apollo EngineIs there a way to specify depth?Max Stoiber blog postHow would people start using this?HowtoGraphQL.comAnd much, much more!Links:React Dev SummitJS Dev SummitApolloAiA 127 EpisodeApollo ClientMajor League SoccerReactReact NativeGraphQLGraphQL SDLApollo ServerApollo EngineHow GraphQL Replaces ReduxApollo Link StateReduxMax Stoiber blog postHowtoGraphQL.com@PeggyRayzisPeggy’s GitHubPeggy’s MediumPicks:CharlesGraphQL RubyWordPress GraphQLHogwarts Battles Board GamePandemic LegacyRisk LegacyAimeeHow GraphQL Replaces ReduxJavaScript Meetup in LAAJSimple.comBroccoliWallet.comThe Four by Scott GallowayPeggyWorkshop.meThanks for the Feedback by Douglas StoneSupport this podcast at — https://redcircle.com/javascript-jabber/donationsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.
3 Apr 201840min