se 042 JSJ CSS and CSS Superset Languages By devchat.tv Published On :: Fri, 11 Jan 2013 03:00:00 -0500 Panel Brian Turley (twitter blog) Joe Eames (twitter github blog) Merrick Christensen (twitter github) AJ O’Neal (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 02:11 - CSS Gripes Sass Scalable and Modular Architecture for CSS (SMACSS) CSS3 16:32 - Preprocessors/Compilers LESS Sass Stylus Compass Chris Eppstein 20:34 - Basic Features of CSS Preprocessors nib mix-ins 23:02 - Usefulness 27:15 - Mathematics w/ Variables Susy 28:54 - Animation Using CSS animations 31:12 - Nesting 35:40 - Build Processes grunt.js 42:20 - Distinction Prefixing 47:35 - Tightly Coupled Picks Old Man’s War by John Scalzi (Joe) X-Wing Miniatures Game (Joe) Dave Crowe (Merrick) Utah Software Craftsmanship Group (AJ) Effective JavaScript by David Herman (AJ) SD Card (Chuck) New Media Expo (Chuck) Consumer Electronics Show (Chuck) iOS Development Podcast (Chuck) Grid Systems in Graphic Design by Josef Muller-Brockmann (Brian) IFTTT (Brian) Book Club Effective JavaScript by David Herman Transcript MERRICK: You have more technical problems than any other nerd I know. [Hosting and bandwidth provided by the Blue Box Group. Check them out at bluebox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] CHUCK: Hey everybody and welcome to Episode 42 of the JavaScript Jabber show. This week on our panel, we have Joe Eames. MERRICK: He’s out to a phone call, terrible timing. CHUCK: We also have Merrick Christensen. MERRICK: That’s me. CHUCK: AJ O’Neal. AJ: Yo! Yo! Yo! Coming at you live from the snow sphere of Provo, Utah. CHUCK: And we have a guest, that’s Brian Turley. BRIAN: That’s right. I’m a designer friend of AJ’s. CHUCK: We’re talking about CSS today so we brought in a designer to set us all straight. And I’m Charles Max Wood from devchat.tv. And like I said, we’re talking about CSS today. One of the things I think that’s interesting about CSS is that it converges with JavaScript. Well, there are a couple of things but one is systems like LESS, that kind of compile, they give you some sane options for dealing with some of the dumb stuff that CSS doesn’t include. Then the other one is, I’ve also wound up fighting designers for selectors in the HTML. And so, I thought we could talk through that a little bit as well. BRIAN: Hey, Chuck? CHUCK: Yes? BRIAN: I think those are two like really good points but I think there’s even more areas we can discuss in terms of how JavaScript and CSS are coupled. Like computed styles from JavaScript and also all the CSS methods from JavaScript. And the fact that your JavaScript sometimes doesn’t work, your UI doesn’t work unless the CSS is set up. I think the two tend to be a lot more coupled than people like to think. CHUCK: I agree. That’s fair. So, which avenue or which aspect do you want to tackle first? Should we talk about just CSS and where it kind of doesn’t give us what we want? BRIAN: I would love to complain about CSS. I got some bitterness in that sphere. CHUCK: I know some people consider it programming but it doesn’t have any of the things that classic programming has like variables and functions or methods or anything like that. And I think that’s where a lot of us get frustrated is that we’re used to being able to reuse things, we’re used to being able to set things up that will define the behavior that we want. And in CSS, you really don’t have that. It’s really just simple markup. JOE: So, do we consider the CSS languages, like Sass and LESS and all those to be part of CSS because then we talk about actually having those things. CHUCK: Yes. I don’t know if you can call them CSS. Full Article
se 071 JSJ JavaScript Strategies at Microsoft with Scott Hanselman By devchat.tv Published On :: Fri, 16 Aug 2013 07:00:00 -0400 Panel Scott Hanselman (twitter github blog) Joe Eames (twitter github blog) Aaron Frost (twitter github blog) Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up) Discussion 01:14 - Scott Hanselman Introduction Community Program Manager for Web Tools at Microsoft Azure and Web Tools ASP.NET Runtime 03:17 - Microsoft and JavaScript Microsoft Build Developer Conference Scott Hanselman: Angle Brackets, Curly Braces, One ASP.NET and the Cloud Json.NET 13:40 - The Cost of Web Development Tooling Sublime Text Visual Studio 18:17 - Libraries and Frameworks Knockout 24:14 - Innovation in Software Befunge 29:48 - Apps Supporting JavaScript Create your first Windows Store app using JavaScript (Windows) Visual Studio Express 34:14 - Windows and Internet Explorer Chakra 40:42 - Microsoft’s Attitude Towards JavaScript Scott Hanselman: Azure for the non-Microsoft Person - How and Why? 45:58 - Open Source 49:12 - asm.js 52:05 - Angle Brackets Conference Picks The Wolverine (Joe) ng-conf (Joe) Cancún (Aaron) @ngconf (Aaron) Wistia (Chuck) Mumford And Sons 'Hopeless Wanderer' Music Video (Scott) Beyoncé Joins the Short Hair Club (Scott) Next Week Screencasting: Sharing What You Know Through Video Transcript [Hosting and bandwidth provided by the Blue Box Group. Check them out at BlueBox.net.] [This episode is sponsored by Component One, makers of Wijmo. If you need stunning UI elements or awesome graphs and charts, then go to Wijmo.com and check them out.] [This podcast is sponsored by JetBrains, makers of WebStorm. Whether you’re working with Node.js or building the front end of your web application, WebStorm is the tool for you. It has great code quality and code exploration tools and works with HTML5, Node, TypeScript, CoffeeScript, Harmony, LESS, Sass, Jade, JSLint, JSHint, and the Google Closure Compiler. Check it out at JetBrains.com/WebStorm.] CHUCK: Hey everybody and welcome to Episode 71 the JavaScript Jabber show. This week on our panel, we have Joe Eames. JOE: Hey. CHUCK: Aaron Frost. AARON: Hello. CHUCK: I’m Charles Max Wood from DevChat.TV. And we have a special guest that is Scott Hanselman. SCOTT: Hello. CHUCK: Since you’re new to the show, do you want to introduce yourself really quickly? SCOTT: My name is Scott Hanselman. You can learn more about me on the internet by googling for Scott. I’m in an epic battle right now with the Scott toilet paper people. You’ll find me just below Scott toilet tissue. I’ve been blogging for ten years. More than ten years, 13 years. I work at Microsoft right now. Before that I worked in finance at a company called Corillian that is now Fiserv. I’ve been building big systems on the web for as long as the web’s been around. CHUCK: Wow. What do you do at Microsoft? SCOTT: I work in Azure and Web Tools. I’m a program manager. I’m in charge of the experience from file new project until deployment. I call myself the PM of miscellaneous. I spend time going through that experience making sure that it doesn’t suck. My focus is on web tools but also ASP.NET Runtime and what the experience is when you deploy something into Azure. That might be everything from what’s it like editing JavaScript in Visual Studio and I’ll find some issue and go and work with the guys that own that, or it might be someone’s trying to do something in Node on Azure and that experience is not good. I’m like an ombudsman or a customer liaison. But the simplest way would be to say I’m the community PM, community program manager, for web tools at Microsoft. CHUCK: Okay. AARON: Cool. CHUCK: So, is JavaScript your primary focus? SCOTT: I would say that my primary focus is just anything that makes the web better and moves the web forward. While I work for ASP.NET and most of my work is in C#, Full Article
se 081 JSJ Promises for Testing Async JavaScript with Pete Hodgson By devchat.tv Published On :: Fri, 25 Oct 2013 11:00:00 -0400 Pete Hodgson crosses over from the iPhreaks podcasts to talk with the Jabber gang about testing asynchronous Javascript with promises. Full Article
se 086 JSJ Ember.js & Discourse with Robin Ward By devchat.tv Published On :: Thu, 28 Nov 2013 08:00:00 -0500 The panelists discuss Ember.js and Discourse with Robin Ward Full Article
se 087 JSJ TC39 with Alex Russell By devchat.tv Published On :: Fri, 13 Dec 2013 08:00:00 -0500 The panelists discuss TC39 with Alex Russell. Full Article
se 089 JSJ The Node Security Project with Adam Baldwin By devchat.tv Published On :: Fri, 27 Dec 2013 08:00:00 -0500 The panelists talk to The Node Security Project founder and organizer, Adam Baldwin. Full Article
se 090 JSJ Users Groups By devchat.tv Published On :: Fri, 03 Jan 2014 08:00:00 -0500 The panelists talk about how to create and maintain Users Groups. Full Article
se 098 JSJ Assemble.io with Brian Woodward and Jon Schlinkert By devchat.tv Published On :: Wed, 26 Feb 2014 08:00:00 -0500 The panelists speak with Brian Woodward and Job Schlinkert about Assemble.io. Full Article
se 125 JSJ WebGL with Sean Griffin By devchat.tv Published On :: Wed, 10 Sep 2014 09:00:00 -0400 The panelists discuss WebGL with Sean Griffin. Full Article
se 130 JSJ Browser Tools and Extensions By devchat.tv Published On :: Wed, 22 Oct 2014 10:00:00 -0400 The panelists talk about browser tools and extensions. Full Article
se 142 JSJ Share.js with Joseph Gentle By devchat.tv Published On :: Wed, 14 Jan 2015 09:00:00 -0500 The panel discusses Share.js with Joseph Gentle Full Article
se 149 JSJ Passenger Enterprise with Node.js with Hongli Lai and Tinco Andringa By devchat.tv Published On :: Wed, 04 Mar 2015 08:00:00 -0500 Check out RailsClips on Kickstarter!! 02:39 - Hongli Lai Introduction Twitter GitHub Blog Phusion 03:08 - Tinco Andringa Introduction GitHub 03:23 - Phusion Passenger [GitHub] passenger 06:13 - Automation nginx 08:37 - Parsing HTTP Headers Hooking 12:44 - Meteor Support 15:37 - Future Added Features? 17:12 - Passenger Enterprise Ruby Rogues Episode #143: Passenger Enterprise with Tinco Andringa and Hongli Lai About Phusion Passenger Documentation & Support 20:03 - Concurrency and Multithreading Multiprocessing The Cluster Module WebSockets passenger_sticky_sessions 23:33 - Setting Up on a Server for a Node.js Application Debian Packages 25:06 - Union Station Monitoring Tool (Union Station Teaser) Introducing Union Station: our web app performance monitoring and behavior analysis service; now in open beta Using Google Polymer JavaScript Jabber Episode #120: Google Polymer with Rob Dodson and Eric Bidelman Polymer vs Facebook React Picks Emily Claire Reese: Playing Catch-Up (Jamison) Jason Punyon: Providence: Failure Is Always an Option (Jamison) Active Child: You Are All I See (Jamison) FFmpeg (Chuck) YouTube (Chuck) Developers' Box Club (Chuck) Ruby Remote Conf (Chuck) DevChat.tv Kickstarter (Chuck) Dash (Hongli) In the Balance: An Alternate History of the Second World War by Harry Turtledove (Hongli) phusion-mvc (Tinco) Union Station Teaser (Tinco) Radio 1's Live Lounge (Tinco) Full Article
se 156 JSJ Soft Skills and Marketing Yourself as a Software Developer with John Sonmez By devchat.tv Published On :: Wed, 22 Apr 2015 09:00:00 -0400 Check out ReactRally: A community React conference in Salt Lake City, UT from August 24th-25th! 03:36 - John Sonmez Introduction Twitter GitHub Simple Programmer The Entreprogrammers Podcast Soft Skills: The Software Developer's Life Manual by John Sonmez How to Market Yourself as a Software Developer Course 04:29 - Mastermind Groups Think and Grow Rich: The Landmark Bestseller - Now Revised and Updated for the 21st Century by Napoleon Hill 05:53 - “Soft Skills” Why Care About Soft Skills? People Skills Finances Fitness 11:53 - Learned vs Innate Lifting Limited Beliefs Practice 14:14 - Promotion (Managerial) Paths The Peter Principle 17:52 - “Marketing” Value: Give Away 90% / Charge For 10% Seeming “Spammy” (Resistance to Sell) Neil Patel's Blog Documentation for Yourself AJ O'Neal: How to Tweet from NodeJS 29:53 - Get Up and CODE! #086: Figure Skating and Software Development with Aimee Knight #067: Weight Loss Plan for Charles (Max Wood) 33:47 - Burnout Do the Work by Steven Pressfield The War of Art: Break Through the Blocks and Win Your Inner Creative Battles by Steven Pressfield Systems and Habits (Routines) Methods of Execution Get John’s How to Market Yourself as a Software Developer Course for $100 off using the code JSJABBER Comment on this episode for your chance to win one of two autographed copies of Soft Skills: The Software Developer's Life Manual by John Sonmez Picks The Recurse Center (Jamison) Code Words Blog (Jamison) DayZ Player Sings (And Plays Guitar) For His Life (Jamison) Demon (Jamison) Mastodon: Leviathan (Jamison) Jan Van Haasteren Puzzles (Joe) Hobbit Tales from the Green Dragon Inn (Joe) AngularJS-Resources (Aimee) Superfeet Insoles (Aimee) Good Mythical Morning (AJ) The Magic of Thinking Big by David J. Schwartz (Chuck) Streak (John) The E-Myth Revisited: Why Most Small Businesses Don't Work and What to Do About It by Michael E. Gerber (John) Influence: The Psychology of Persuasion, Revised Edition by Robert B. Cialdini (John) Do the Work by Steven Pressfield (John) The War of Art: Break Through the Blocks and Win Your Inner Creative Battles by Steven Pressfield (John) Full Article
se 160 JSJ Stormpath with Robert Damphousse By devchat.tv Published On :: Wed, 20 May 2015 09:00:00 -0400 02:24 - Robert Damphousse Introduction 02:40 - OAuth OpenID JWT 07:15 - Stormpath @gostormpath [GitHub] Stormpath Blog 08:38 - Authorization Information Storage 11:29 - Stormpath Authentication vs OAuth Authentication Resource Owner Password Credentials Grant 14:43 - Caching 15:41 - Building Backends as a Service? 18:21 - Security 19:12 - Using Cassandra Stormpath in Planet Cassandra: 50k Accounts Imported in Under 200ms 20:27 - Use Cases 22:27 - Authentication as a Service 23:40 - 2FA (Two Factor Authentication)? 24:07 - REST APIs Launch a SaaS – and Battle Your Robot – With Stormpath 25:39 - Making Complete Apps FullContact Firebase 26:33 - Security (Cont’d) 27:34 - In-Between Layer (Authentication API) 28:40 - Browser-Based vs Mobile Application Use 29:44 - Angular, React, Flux, 32:02 - React Native? 33:05 - Stormpath Life Expectancy 35:09 - Customers 36:12 - Active Directory, LDAP (Lightweight Directory Access Protocol) 37:05 - Support and Pricing Picks Putting the "fun" back in "funeral"! Celebrating the death of old IE browsers on January 12! (Dave) Giant Star Wars LEGO Super Star Destroyer Shattered at 1000 fps | Battle Damage (Dave) GitLab (Dave) Allen Pike: JavaScript Framework Fatigue (Aimee) The Cult of Work You Never Meant to Join (Aimee) Serial (AJ) HotPlate (AJ) Design Patterns in C (AJ) OAuth3 (AJ) JS Remote Conf Videos (Chuck) Ruby Remote Conf (Chuck) Traction: Get a Grip on Your Business by Gino Wickman (Chuck) Startups For the Rest of Us (Chuck) The Guest House: A Poem (Robert) The Hiring Post (Robert) Front-end Job Interview Questions (Robert) Full Article
se 169 JSJ Property-based Testing (QuickCheck) with Zach Kessin By devchat.tv Published On :: Wed, 22 Jul 2015 11:00:00 -0400 02:20 - Zach Kessin Introduction Twitter GitHub Zach's Books Parrot JavaScript Jabber: Episode #057: Functional Programming with Zach Kessin Testing Erlang With Quickcheck Book 04:00 - Mostly Erlang Podcast 05:27 - Property-based Testing (QuickCheck) 07:22 - Property-based Testing and Functional Programming jsverify 09:48 - Pure Functions Shrinking 18:09 - Boundary Cases 20:00 - Generating the Data 23:23 - Trending Concepts in JavaScript 32:33 - How Property-based Testing Fits in with Other Kind of Testing 35:57 - Test Failures Panel Nolan Lawson: Taming the asynchronous beast with ES7 (Aimee) Nodevember (Aimee) Hipster Sound (Jamison) Om Next by David Nolen (Jamison) Gallant - Weight In Gold (Jamison) React Rally (Jamison) Better Off Ted (Joe) Armada: A Novel by Ernest Cline (Joe) Testing Erlang With Quickcheck Book (Zach) Parrot Universal Notification Interface (Zach) The Famine of Men by Richard H. Kessin (Zach) Full Article
se 171 JSJ Babel with Sebastian McKenzie By devchat.tv Published On :: Wed, 05 Aug 2015 11:00:00 -0400 02:28 - Sebastian McKenzie Introduction Twitter GitHub Blog 02:53 - Babel (Pronunciation Clarification) 05:56 - History Learn ES2015 - Babel 09:14 - The State of Babel 09:59 - Babel and the TC39 Process 11:54 - Features That Can’t Be Transpiled Weak Maps and Proxies 13:45 - Readability and Performance Output Traceur 18:12 - Plugin Architecture 19:58 - ES6/2015 Feature Implementation Blockscoping Labels Exceptions Destructuring 25:49 - The Birth of Babel 26:45 - Babel vs Traceur 28:08 - Future Babel Features Code Optimization Minification Linting 30:15 - The Status of ES2015 and ES2016 31:01 - Browser Support 35:03 - Marketing 35:59 - TypeScript 37:24 - Babel Development and Labor Picks Primitive.io (Joe) Armada: The Novel by Ernest Cline (Joe) How to Win Friends & Influence People by Dale Carnegie (AJ) Web Security Warriors Podcast (AJ) Nodevember (Aimee) The Hitchhiker's Guide to the Galaxy by Douglas Adams (Dave) Yellowstone National Park (Dave) React Rally (Dave) Iterativ: AngularJS Kurs (Chuck) Hire Thom Parkin! (Chuck) The Martian by Andy Weir (Sebastian) Five Guys Burgers and Fries (Sebastian) Full Article
se 195 JSJ Rollup.js with Rich Harris and Oskar Segersvärd By devchat.tv Published On :: Wed, 20 Jan 2016 11:00:00 -0500 02:17 - Rich Harris Introduction Twitter GitHub Blog The Guardian 02:34 - Oskar Segersvärd Introduction Twitter GitHub Widespace 02:50 - rollup.js rollup - npm 04:47 - Caveats and Fundamental Differences Between CommonJS and AMD Modules and ES6 Modules lodash Static Analysis 11:26 - Where rollup.js Fits in the Ecosystem Bundler vs Loader systemjs jspm webpack 17:40 - Input Modules 18:35 - Why Focus on Bundling Tools vs HTTP/2 20:13 - Tree-shaking versus dead code elimination 25:53 - ES6/ES2016 Support 27:36 - Other Important Optimizations 32:11 - Small modules: it’s not quite that simple three.js 41:54 - jsnext:main – should we use it, and what for? Picks Better Off Ted (Joe) Elementary (Joe) Ruby Rogues Episode #137: Book Club - Functional Programming for the Object-Oriented Programmer with Brian Marick (Aimee) Ruby Rogues Episode #115: Functional and Object Oriented Programming with Jessica Kerr (Aimee) Ruby Rogues Episode #65: Functional vs Object Oriented Programming with Michael Feathers (Aimee) Operation Code (Aimee) Google Define Function (Dave) Scott Hanselman: Dark Matter Developers: The Unseen 99% (Dave) MyFitnessPal (Chuck) Nike+ Running (Chuck) Couch to 10k (Chuck) Aftershokz Bluez 2 Headphones (Chuck) Pebble Time Steel (Chuck) Climbing (Rich) The Codeless Code (Rich) Star Wars (Rich) The Website Obesity Crisis (Oskar) Full Article
se 196 JSJ Tabris.js with Jochen Krause and Ian Bull By devchat.tv Published On :: Wed, 27 Jan 2016 09:00:00 -0500 Check out Freelance Remote Conf and React Remote Conf! 02:31 - Jochen Krause Introduction Twitter EclipseSource 03:21 - Ian Bull Introduction Twitter GitHub Blog 04:01 - Tabris.js tabris-js (GitHub) 04:48 - Tabris vs React, Cordova, and React Native Exposing Bluetooth Functionality 08:25 - Benefits/Advantages of Using Tabris j2v8 12:45 - Creating Panels and Flows 14:26 - Getting Started Experience 16:40 - Handling Updates; Live Updating The Tabris.js Developer App Will Apple eventually ever have to give in? 25:15 - Views (Declarative and Imperative UI) Ext JS 29:09 - "Write once, run anywhere." vs "Learn once write anywhere." 35:21 - Why have other projects failed or not failed? Xamarin 39:41 - What does it mean to be statically compiled? 40:44 - Styling: Creating a Middle Group that Looks and Feels Good (iOS vs Android) Cross-platform Logic and Ecosystems 47:51 - ES6 Implications 49:29 - Plugins CocoaPods and Widgets' Picks Star Wars Essentials (AJ) Star Wars: The Force Awakens (AJ) Thing Explainer: Complicated Stuff in Simple Words by Randall Munroe (AJ) James Edwards: Making a Mini-Lisp: Introduction to Transpilers (Aimee) Nick Saban (Aimee) Lloyd Borrett: Bill Gates and Petals Around the Rose (Jamison) Dan Luu: Normalization of Deviance in Software: How Completely Broken Practices Become Normal (Jamison) Craig Stuntz: Programs that Write Programs: How Compilers Work (Jamison) Microsoft (Dave) Tina Fey (Dave) thoughtram Blog (Dave) Pascal Precht (Dave) CES (Chuck) The Modern Team (Ian) Eric Elliott (Ian) Thinking, Fast and Slow by Daniel Kahneman (Jochen) Full Article
se 201 JSJ Security with Troy Hunt By devchat.tv Published On :: Wed, 02 Mar 2016 09:00:00 -0500 02:32 - Troy Hunt Introduction Twitter GitHub Blog Troy Hunt's Pluralsight Courses 04:12 - Why should people care about security? 06:19 - When People/Businesses Get Hacked 09:47 - “Hacking” Social Engineering BeEF 11:42 - Inventive “Hacks” SQL Injection sqlmap Stuxnet 13:24 - Motivation for Hacking/Can hacking be valuable? 17:08 - Consequences and Retribution 19:10 - How to Build Secure Applications 20:47 - Weighing in UX 22:50 - Common Misconceptions Password Storage hashcat Encoding Cookies 31:27 - Passwords (Cont’d) 33:16 - Justifying the Importance of Security 35:24 - Client-side Security Cross-side Scripting DOM Based Cross-side Scripting Content Security Policy (CSP) 44:10 - Resources AngularJS Security Fundamentals Hack Yourself First 45:27 - Routing 47:21 - Timeouts 51:36 - Cached Data Picks awesome-react (Aimee) Edsger W. Dijkstra Quotes (Jamison) Sam Newman: Telstra, Human Error and Blame Culture (Jamison) Infinite Jest by David Foster Wallace (Jamison) T.I.M.E Stories (Joe) We Are Anonymous: Inside the Hacker World of LulzSec, Anonymous, and the Global Cyber Insurgency Paperback by Parmy Olson (Troy) The Have I been pwned Project (Troy) Full Article
se 203 JSJ Aurelia with Rob Eisenberg By devchat.tv Published On :: Wed, 16 Mar 2016 11:00:00 -0400 Check out React Remote Conf! 02:31 - Rob Eisenberg Introduction Twitter GitHub Blog 02:55 - Aurelia Blog 03:43 - Selling People on Aurelia vs Other Frameworks 11:09 - Using Aurelia Without Directly Engaging with the API Web Components 15:10 - Production Usage 18:46 - Specific Uses 23:03 - Durandal 25:26 - Aurelia and Angular 2 30:32 - Convention Over Configuration 34:56 - Web Components Content Projection (Transclusion) Polymer 41:13 - One-directional Data Flow; Data Binding Using a Binding System as Messaging System 46:55 - Routing 49:47 - Animation 52:56 - Code Size 55:06 - Version Support 56:27 - Performance Tools 01:00:20 - Aurelia in ES5 01:01:29 - Data Management Breeze.js Picks Crispy Bacon (Joe) A Gentleman’s Guide to Love and Murder (Joe) Jamison Dance: Rethinking All Practices: Building Applications in Elm @ React.js Conf 2016 (Joe) Vessel | Lorn (Jamison) The Moon Rang Like a Bell | Hundred Waters (Jamison) The Top 10 Episodes of JavaScript Jabber (Chuck) Amazon Prime (Chuck) WiiU (Chuck) Sketch (Rob) Zeplin (Rob) servo (Rob) Full Article
se 215 JSJ ChakraCode with Guarav Seth Live from Microsoft Build 2016 By devchat.tv Published On :: Wed, 08 Jun 2016 09:00:00 -0400 This episode was recorded live from The Microsoft Build Conference 2016. In this episode we chatted with Gaurav Seth of Microsoft about ChakraCore. You can follow him on Twitter, or check out what he’s done over on GitHub. Picks TypeScript (Gaurav) Richard Campbell and Carl Franklin from .NETRocks Full Article
se 226 JSJ Test Doubles with Justin Searls By devchat.tv Published On :: Wed, 24 Aug 2016 09:00:00 -0400 React Remote Conf and Angular Remote Conf 03:15 - Justin Searls Introduction Twitter GitHub Blog Test Double JavaScript Jabber Episode #038: Jasmine with Justin Searls 04:13 - Testing testdouble.js teenytest Sinon.JS 08:44 - Mocking Growing Object-Oriented Software, Guided by Tests by Steve Freeman and Nat Pryce Jim Weirich 14:45 - Starting These Concepts as a Junior Developer Test-driven Development 17:55 - testdouble.js vs. sinon.js NIH = Not Invented Here 26:39 - Duck Typing, Monkey Patching, Duck Punching 32:22 - Node.js Negativity Design, Resources Martin Fowler’s Refactoring and Patterns Books Domain-Driven Design: Tackling Complexity in the Heart of Software by Eric Evans 42:52 - Community 45:08 - The AAA Rule: Arrange, Act, Assert 51:19 - Error Messages Picks Unemployment (Jamison) React Rally (Jamison) Julia Evans' Tweet: how to be a wizard programmer (Jamison) See the good in people (Aimee) Sinon.JS (Joe) How to Stay Motivated: Developing the Qualities of Success by Zig Ziglar (Chuck) The Harry Potter Series (Chuck) RetroPie (Justin) How Elm can Make you a Better JavaScript Programer (Justin) NEJS Conf (Justin) Full Article
se 232 JSJ GunDB and Databases with Mark Nadal By devchat.tv Published On :: Wed, 05 Oct 2016 08:00:00 -0400 03:45 What makes the Gun database engine special 07:00 Defining a database 12:58 The CAP Theorem 22:56 What Graphs are and how they function (circular references) 30:32 Gun and rotational disk systems 32:08 Gun’s optimizations for performance in ensuing versions 39:55 The prevalence of open source companies 42:45 Further discussing the CAP Theorem and its nuances 50:33 Gun’s purpose and design 52:13 What a Firebase is 54:22 How to get started with Gun - Visit Gun Tutorial, Gun's Github Page, and Gun Node Module QUOTES: “I think the database should bend to your application’s demands, rather than you having to bend to the database’s demands.” –Mark Nadal “…The protocol that GUN defines is something that can be implemented in any language. Because GUN is in the language, you don’t have the context which latency of having to make an HTTP call or socket request…” –AJ O’Neill “Let’s demystify the black magic of CAP.” –Mark Nadal PICKS: Dan North’s Deliberate Learning Video 8Tracks Internet Radio Pokemon Indigo League on Netflix Daplie Personal Cloud Young Frankenstein Movie Mystic Vale Card Game JS Remote Conference React Remote Conference Farm Heroes Super Saga Game App Full Article
se 234 JSJ JAMStack with Brian Douglas and Matt Christensen By devchat.tv Published On :: Wed, 19 Oct 2016 08:00:00 -0400 1:00 Intro to guests Brian Douglas and Matt Christensen 2:20 Definition of JAMStack 8:12 JAMStack and confusion over nomenclature 12:56 JAMStack and security, reliability and performance 17:05 Example of traffic spike for company Sphero 18:26 Meaning of hyperdynamic 20:35 Future and limits of JAMStack technology 26:01 Controlling data and APIs versus using third parties 28:10 Netlify.com and JAMStack 31:16 APIs, JavaScript framework and libraries recommended to start building on JAMStack 35:13 Resources and examples of JAMStack: netlify.com, Netlify blog, JAMStack radio, JAMStack SF Meetup QUOTES: “I think in the next couple of years we’re going to see the limits being pushed a lot for what you can do with this.” - Matt “Today we’re starting to see really interesting, really large projects getting built with this approach.” - Matt “If you can farm 100% of your backend off to third parties, I feel like that really limits a lot of the interesting things you can do as a developer.” - Brian PICKS: Early History of Smalltalk (Jamison) React Rally 2016 videos (Jamison) FiveStack.computer (Jamison) Falsehoods programmers believe about time (Aimee) Nodevember conference (Aimee) 48 Days Podcast (Charles) Fall of Hades by Richard Paul Evans (Charles) Jon Benjamin Jazz (Brian) RailsConf 2016 (Brian) React Native (Brian) Book of Ye Podcast (Brian) Aurora by Kim Stanley Robinson (Matt) Sequoia Capital website Sphero website Isomorphic rendering on the Jam Stack by Phil Hawksworth SPONSORS: Front End Masters Hired.com Full Article
se 235 JSJ JavaScript Devops and Tools with Donovan Brown and Jordan Matthiesen By devchat.tv Published On :: Wed, 26 Oct 2016 08:00:00 -0400 00:50 Intro to guests Donovan Brown and Jordan Matthiesen 1:14 Javascript and Devops 3:49 Node JS and integrating with extensions 11:16 Learning Javascript coming from another language 15:21 Visual Studio Team Services at Microsoft, integration and unit testing Visualstudio.com Donovanbrown.com 25:10 Visual Studio Code and mobile development Apache Cordova open source project 31:45 TypeScript and tooling 33:03 Unit test tools and methods 38:39 ARM devices and integration QUOTES: “It’s not impossible, it’s just a different set of challenges.” - Donovan Brown “Devops is the union of people, process and products to enable continuous delivery of value to your end users” - Donovan Brown “Apps start to feel more native. They can actually get form.” - Jordan Matthiesen PICKS: Veridian Dynamics (AJ) Jabberwocky Video (AJ) Hard Rock Cafe - Atlanta (Charles) CES (Charles) 3D printers (Donovan) High-Yield Vegetable Gardening (Jordan) taco.visualstudio.com Jordan on Twitter @jmatthiesen Visualstudio.com Donovanbrown.com Donovan on Twitter @donovanbrown SPONSORS: Front End Masters Hired.com Full Article
se 236 JSJ Interview with Mads Kristensen from Microsoft Ignite By devchat.tv Published On :: Wed, 02 Nov 2016 08:00:00 -0400 TOPICS: 4:00 Things that make web development more difficult 7:40 The developer experience with Angular 10:40 How cognitive cost affects the user experience 16:52 The variety of users for whom Mads’ software is built 22:14 Creating accessible javascript tools that aren’t immediately outdated 28:20 Why people shouldn’t be using dependency installers 34:00 Node updates QUOTES: “The massive introduction of new tools all the time is a big part of what makes web development harder.” -Mads Kristensen “I’m not a pretty pixels person, I’m a code and algorithms person.” -AJ O’Neill “I’m not hearing hype about people using HTTP2 to get those benefits, I’m only hearing hype around tools that Static built.” -AJ O’Neill PICKS: Death Note Anime Show JS Remote Conference The Alloy of Law Book by Brandon Sanderson Zig Zigler Books on Audible Mr. Robot TV Show RESOURCES & CONTACT INFO: Mads on Twitter Mads’ Website Full Article
se JSJ 247 Building a Development Environment with Cory House By devchat.tv Published On :: Tue, 31 Jan 2017 06:00:00 -0500 On today's episode, Charles Max Wood, AJ O'neal, Joe Eames, and Aimee Knight discuss Building a Development Environment with Cory House. Pluralsight recently added a course on this. Tune in to know more! Full Article
se JSJ 251 InfoSec for Web Developers with Kim Carter By devchat.tv Published On :: Tue, 21 Feb 2017 05:00:00 -0500 On today's episode, Charles Max Wood and Aimee Knight discuss InfoSec for Web Developers with Kim Carter. Kim is a senior software engineer/architect, an information security professional, and the founder of binarymist.io. He is currently working on his book called Holistic InfoSec for Web Developers. Tune in to learn more on what his book is all about. Full Article
se MJS #015: Justin Searls By devchat.tv Published On :: Thu, 27 Apr 2017 06:00:00 -0400 On this week's episode of My JS Story, Charles Max Wood interviews Justin Searls. Justin was on the show on episode 38 and 226 in the show. He co-founded Test Double, a software agency which helps developers improve the quality of the software they write. Want to know how he got into this career path? Stay tuned! Full Article
se MJS #020: Alex Russell By devchat.tv Published On :: Wed, 24 May 2017 06:00:00 -0400 On this week's episode of My JS Story, Charles Max Wood interviews Alex Russell. Alex is a software engineer on the Chrome team. He focuses on designing new features and running their standards work. He appeared as a guest on episode 87, where he talked about TC39. Tune in to his story! Full Article
se MJS #022 Cory House By devchat.tv Published On :: Wed, 21 Jun 2017 06:00:00 -0400 My JS Story Cory House On this Episode we have another JS Story, and this time it’s with Cory House, a Pluralsight author, software architect for Cox Automotive, and a consultant with a focus on React. Listen to Charles Max Wood and Cory discuss a bit about how Cory got into programming, how learning how to learn is vital to being a talented developer, as well as using documentation as your development environment to ensure your code’s documentation doesn’t fall behind. This and more right here. Stay tuned. How did you get into programming? Cory starts his story as a business major in college but had interest in computers. He spent time around various computers and machines, giving him experience in various operating systems and platforms. On any given day he would be using any of three different operating systems. His interest in computers inspired him to double major. He started learning Cobalt and Visual Basic and C++. He talks about being interested in web development, including Flash. He specialized in Flash throughout college, as well as early on in his software development career. He also talks a bit about that the open web seems to innovate in a way that keeps it relevant. He talks about using Flash to make websites with entering screens and animations and now that is obsolete. Charles mentions that it’s interesting that his main interest was business and computers became something he was interested in later on and that you don’t have to be someone who started young to be proficient. Cory talks about being driven to catch up, being around people who knew things off the top of their head while he was still asking questions and looking things up. Learning How to Learn Out of college Cory found that he had a degree, but what he had really learned was how to learn. He never used Cobalt, C ++, or visual basic after school. Learning how to learn combined with being able to create a focus on a specific technology are vital. Charles adds that he would hear often that it took being a natural in programming to get it, and that maybe being a natural was really just being someone who has learned how to learn and to focus. Getting Good With Your Craft Cory mentions that working with someone who head and shoulders ahead of everyone else. They were working in Unix and seemed to know every single Unix command and flag. He found it inspiring to see someone take the craft so seriously and to learn a specific technologies tool with so much dedication. Some technologies will be so important that they will be key technologies that will still be useful many years later. Cory suggests that one of those tools seem to be JavaScript. JavaScript is almost mandatory in frontend web development. Additionally, JavaScript is reaching into other new technology types including IoT and VR and other places, constantly expanding. How did you get into JavaScript? Cory talks about how it really all got started when Steve Jobs killed Flash. He opened his mind to other technologies and started working with JavaScript. Remembering learning jQuery, he found himself really enjoying it. He started building online business applications. Browser inconsistencies were a huge issue, making it so that you’d have to check your work on each browser to make sure it worked cross platform. Things are moving so quickly that being a full stack developer is becoming less and less prevalent, to the point where he considers himself primarily a JavaScript developer. Being an expert in a single technology can make you really valuable. Companies are running into issues with not finding enough people that are experts in a single tech. Cory suggests that employers should find employees that seem interested and help allow them to focus and learn whatever that tech is. Charles talks about the split between developers that tend to lean full stack and plug in technologies when they need it versus developers that work exclusively in front end. He suggests it may be a case by case situation. Service Oriented Architecture Cory suggests that service oriented architecture movement has moved us that way. Once you have a set of services set up, it becomes more realistic to turn on the front end. If there were a good set of services there, Cory adds that he doesn’t think he would be able to build services faster using a server side framework like Rails, Django, or ASP.Net MVC than he could in React today using something like create React app. The front end has become much more mature. Cory mentions that he has had good experiences with ASP.Net NPC and Visual Basic being a Microsoft stack developer. He adds that he doesn’t feel like he has given up anything working with JavaScript. He adds that with the nesting of different models together, he gets to reuse a lot of code in server side development. NPM makes it easy to stand up a new package. If you are planning to create an API, it becomes much harder to use a server side rendering stack, with so many APIs available, it’s a logical move to go client side. Possible Future for Front-end and Back-end Roles Charles brings up that the development of things like VR are making changes in the roles that front end and back end development play. The front end will more to taking care of the overall application development of apps, while the back end will become supporting roles as services and APIs. New technology like VR and artificial intelligence will need a high amount of computing power on the backend. The front end will focus more on the overall experience, display, and the way we react with things. Charles talks about how the web may move away from being just an HTML platform. He says that it will be interesting to find where JavaScript and frameworks like React will fall into this shift into this next generation. We already are seeing some of this with the capabilities with canvases, WebVR, and SVG and how they are changing how we experience the web. Reasonable Component Story Cory brings up being interested in the Reasonable component story. Sharing code from a traditional web app, to a native app, and to potentially a VR app as well is exciting and he hopes to see it flesh out more in the coming years. He talks about going to conferences and how much we have built and how much we don’t have easily sharable innovation. He hopes to see it solved in the next few years. What contributions have you made to the JavaScript community? Cory mentions working on the open source project Slingshot. He was trying to solve issues that many found in React. React isn’t very opinionated. React is for writing reasonable components for the web, but it doesn’t have opinions on how you structure your files, how you minify, bundle, deploy, or make API calls, etc. He realized that telling people to use React and to deal with those issues wasn’t reasonable. He created React Slingshot as a development boilerplate. He put it to use in many applications and it became popular. It’s easy because it did things like allow you to run NPM to pull independencies and pull a file, it would fire up a web browser, watch your files, run tests, hot reloading on save, and had a running Redux application build it. It allowed people to get started very quickly. He talks about how he wasn’t the only person trying to solve this issue. He says that if you look now there are well over one hundred boiler plates for React that do similar things. Most popular being Create React App. Contributions outside of this, he talks about editing documentation on open source projects being part of his biggest contribution, writing it in markdown and then making pull requests. What are you working on now? Cory adds that he just finished his 7th or 8th Pluralsight course on creating usable React components. At work they create their own reusable React component library. He says that he realizes that it’s a complicated process, where all decisions you make, in order to have a reusable component story, you have to make a lot of decisions. Things like how granular to make the components, reusable styles and how they are packaged, how they are hosted, will it be open or source, etc. Publicly Closed - Internally Open Source Projects Cory talks about the idea of having it as a closed source project, but treating it like an internal open source project for the company, having many people feel invested into the project. He found creating the documentation story was the toughest part. Having solid documentation story that helps with showing how to use the components and it’s features and behaviors. He spends much of his type looking at other documents to help him come up with ways to create his own. He talks about generating the documents automatically with the updates so that they are always in sync. Charles adds that documentation syncing often happens right in the comments, which are also acceptable to being outdated. Pull-request-Template.md Cory adds that a useful way to allow for well documented and safe pull requests is to make a pull request template in GitHub by creating a file called pull-request-template.md so that any time someone makes a pull request, that .md template will populate the pull request. Cory has a checklist for a pull request like making sure there are tests for any new components, the file name should have an uppercase character, is there a ticket open, etc. All of the basic things that should happen in a pull will be in the pull-request-template.md. Charles adds that documentation is one of the things that gets ignored. Having a standard process is very important, more so than getting the job done faster. Also having an outlined expectation for how it’s delivered is important as well. Documentation as Development Environment A useful trick that Cory uses, is using the documentation as the development environment. Anytime they are working on a new component, they start with a documentation site, making changes within the documentation and then it hot loading your changes live. This way your documentation is front of mind and keeps the documentation fall behind. Why React instead of the other frameworks? Cory says that he can sum up React in a single sentence. He says that your HTML sits right in the JavaScript. Which usually sounds bad to a large group of developers. He expects people to react negatively when he talks about it. What he has run into as a common problem, is people separating concerns by filetype and technology, but with React he seems the common problems in terms of components. Cory says that components are the future. Industries that have matured utilize components. For example car manufacturers or even electronic manufactures build things in modules and components. Things that are reusable should be encapsulated into a component instead of trying to hold it in our heads. This makes it so things look the same and reduces many mistakes. You can create components in different frameworks, but React co-mingles markup and javascript with something like JSX. You’re not writing HTML, you’re writing JSX that boils down to HTML. That one element is fundamentally what makes React easier to Cory. For the most part, React can be learned by JavaScript developers in less than a day because many of the things you need to do in React, is just basic JavaScript. Charles adds that components are a concept coming up in various frameworks and is becoming more popular. Picks Cory’s Cory’s React Courses on Pluralsight Essentialism the book Charles’ Get a Better Job Course Angular Remote Conf (now Ruby Dev Summit) React Podcast Kickstarter Links Cory’s Twitter Full Article
se JSJ 267 Node 8 with Mikeal Rogers, Arunesh Chandra, and Anna Henningsen By devchat.tv Published On :: Tue, 27 Jun 2017 06:00:00 -0400 JSJ 267 Node 8 with Mikeal Rogers, Arunesh Chandra, and Anna Henningsen On today’s episode of JavaScript Jabber we have panelists Joe Eames, AJ O’Neil, Amiee Knight and Charles Max Wood and we are talking about Node 8. To help us we have special guests Mikeal Rodgers, Arunesh Chandra, and Anna Henningsen. It’s going to be a great show. Tune in. [1:56] Is Node 8 just an update or is there more? More than just an update Two main points: Improved Prana support Native API Native APIs are helpful for Native Add-ons. For both the consumer and the developer side. Prior to update these Node Native modules ran in C++ and bound to specific to Node 8 APIs. Causes these modules to be updated or reconciled every time these modules are rereleased. Creates burden for module maintainers. Creates friction in upgrading Node versions in production departments. If you have a deployment depending on a certain Native module, some of the modules may not get updated in time when updating your Node versions. Keeping people from updating Node. Creates compatibility issues with Node users not using Node 8 Experimental support for a Native layer in Node 8 to eliminate these issues as much as possible. Important milestone for the module ecosystem. You can write extensions for Node in C++ and it decouples V8 so you can use something else on the front. Modules takes dependency on V8 API specific to a particular version. So if V8 changes your module will be extracted from that. As a side benefit, you can have another VM to take advantage of that. Major version upgrades mean updating Native modules and usually some of those modules haven’t updated to the newest version of Node and be complicated. Deep dependency wise, about 30% depends on a Native module somewhere In the future, with the Native API, you’ll be able to update Node without breaking modules. [5:51] What kind of work went into this? Most of the work was in C++ First thing that was done was, they looked at the top dependent Native modules in the ecosystem. Looked for what kind of V8 exposure they had and cataloged it Looked at how these APIs and what their purposes were Looked for a way to extract them so that they are part of Node Core Created neutral APIs, now part of the Node core. All C APIs Also has a C++ wrapper to improves usability of the API. [7:17] What’s an example of what you can do with these APIs? Native modules allows for tighter integration and better module performance Specific APIs that you can use in V8 that isn’t available through JavaScript If you have a C++ variable code and you want to expose a variable into JavaScript, that is V8 API note a Node 8 API Having it bound directly to the VM was something they wanted for a long time Google controls V8 and they bind to V8 Created a better relationship with Google starting in IOJS Also worked with Microsoft with their Node Shocker work. Same with SpiderMonkey SpiderNode is in the works [9:23] Have you guys done any testing for performance? Some. There is a performance working group. There is a need to stay on top of V8 V8 team has focused on new language features Many features have been added over the years Many didn’t come in optimized The performance profile has changed with these features If you’re using new language features, you will see a performance boost In core, still tracking down code that was specific to the old optimizer and rewriting i to work the new optimizer Turbo C compiler hasn’t landed yet, but is to come. Will have a completely different performance profile In most real world applications it will be faster Waiting on the release to take a version of V8 to make it easier to upgrade features in the future [11:28] Are the new features picked up from V8 or implemented in Node? It’s all in V8 Better longterm support Promises are made better in Node as a platform Added new method called util.promisify() Implementation comes from V8 Allows for more optimization for promises in Node core Promise support for the one-deprecated domains module. [13:02] Is there anything more than NMP 5? First off, delete your NMP cache. It’s in your home directory usually with a .npm extension [14:09] What are the new features in V8? Unlimited heap sizes, previously had a 4gb limit. No fixed limit. [14:09] Will you see things like chakra come out tuned for servers? Profiles of a server for application process are getting smaller Getting cut into containers and VMs and micro services Vms that have cold boot time and run quickly in a strained environment is looking more like what we will see in the future Yes, especially if you’re using cloud functions V8 is optimized for phones, but Chakra is even more so Looking for opportunities for VMs can be solely optimized for a device target Node take advantage of that VM VM neutrality is an interesting concept VM Vendors trying to optimize it based on workloads of a server Opens opportunities for Node Node Chakra has been proved to iOS. You can cut off jitting off which was a requirement to be able to be in the Apple App Store Node is not just for servers anymore Node doesn’t take a long time configuring it When a developer runs code on an IoT or a mobile app they don’t control the VM that is bundled, they run it on top of Node and it just works. VM neutrality gives a new vector, so you can swam a whole different VM [18:44] When running different engines like iOS vs Android, does the profile change? What it comes down to is if it’s eventive programming The browser is an eventive environment, is very efficient waiting for things to happen before it does something The way that we program servers and nodes are the same as well the basics are the same generally environmental differences exist but the programming model is usually the same What does impact it is memory and processor and hardware and things like that That is where tuning the VM comes into play [20:29] What is the new Async Hooks API used for? Node has been lacking for automated inspection of Async Hook No way for Node to tell you when scheduling and beginning of an Async operation. Hook helps with that it’s a way for developers to write debugging features Node tells the application that it’s working with Asynchronous way. The embedded inspector has been embedded since Node 6 Now has a JavaScript API to use it You can use things like Chrome debugger inside the running node process Old debugging protocol has been removed VM.run is still there but in the process of being deprecated [22:34] How like is the experimental Node API will change? Marked as experimental because it’s the first time in the open Hopefully out of experimental soon Soon can port API to the existing LTS Looking for more people to participate with the new API and give feedback Fix any concerns before it goes to LTS Some other experimental things are in the works like ASync Hooks and how it interacts with promises Renaming some features Another new feature - serializer and deserializer that comes with V8 experimental but will most likely stay [25:31] what is your standard for going to LTS? Major releases every 6 months Next Oct Node 9 will come out and then Node 8 will be LTS Documentation, updates, additions etc will be ready then Plan to do it for 2.5 years Every even releases come out to LTS as the odd release comes out Helps keeps a current line while having something new in the release line Node 6 is the current LTS version [27:26] What are you taking out or deprecating in Node 8? Use the word deprecate sparingly If many people use features, it’s hard to get rid of Security issue with Buffer, constructor argument was ambiguous Had added APIs that were more explicit over time and pushed those Now it will be deprecated [28:43] 21% - 33% Performance increase with some Node updates Someone online updated their React app to Node 8 and found an 21% - 33% increase Benchmarking group tests to make sure things are getting faster V8 is always getting faster as well Code changes fast and so there is a chance performance slows down so they have people to check Benchmark test are all automated by a team [30:47] Is it safe to just switch to Node 8? For front-end, yes clear your NPM cache Back use cases will usually wait until LTS [31:28] Where any of the features hard to implement? The API work took about a year It was a collaboration which made it interesting IBM, Intel, Google were involved The collaboration took a while Also Async hooks took at least a year. Async hooks used to be called async wraps and has been in the work for almost 3 years many of the changes were the accumulation of small chances [33:07] It’s the little things Letting people get small changes in accumulate into a big difference the product gets much better that way [33:57] What versions of Node are you actively updating? Current releases of Node 8 for a half of year Node 6 is LTS Additional year of maintenance of previous LTSs. Schedule is at http://github.com/node8js/lts in a chart Support for Node 4 with only critical updates, Node 6 minor updates, and Node 8 Node 7 doesn’t get much support unless it’s vital security supports. If you’re running 0.10 or 0.12 stop. Those do not get security fixes anymore [35:42] Where do you see things going from here? Mostly still working out Async hooks Maybe add some web worker or worker support for Node JS ES module support Working to make promises better Working on the performance profile and internal systems [20:29] What is the adoption like of Node 8? Node team gets better at getting people to adopt quickly but about 5% - 6% will not upgrade community doubles each year at 8 million users right now Here is a graph on Twitter posted by NPM Limiting breaks and softly deprecating things makes it’s easier to upgrade [40:11] How can people contribute and get involved? NodeToDo.org shows how to make contribution Occasionally major conferences have information on how to contribute Test it out and help make it stronger [42:08] If people install Node 8 and have issues what can they do? If it’s an NPM problem check with them clear cache! install newest version with: npm install -g npm@latest Report problems to either NPM or Node If you’re not sure where the problem is, check github.com/nodejs/help Links Node8 Node’s Twitter Node’s Medium Node Evangelism Group Mikael on Twitter and GitHub Arunesh on Twitter Anna on Twitter Picks AJ Overclocked Remix Super Mario RPG Window to The Stars Amiee Blogpost RisingStack on Node 8 2 Frugal Dudes Charles Homeland House of Cards Joe Shimmer Lake Mikael Blake2b-wasm Aremesh Current Nightly News Full Article
se JSJ 268 Building Microsoft Office Extensions with JavaScript with Tristan Davis and Sean Laberee By Published On :: Tue, 04 Jul 2017 06:00:00 -0400 JSJ 268 Building Microsoft Office Extensions with Javascript with Tristan Davis and Sean Laberee This episode is live at the Microsoft Build 2017 with Charles Max Wood and AJ O’Neal. We have Tristan Davis and Sean Laberee from the Office Team at Microsoft. Tune in and learn more about what’s new with Microsoft Office Extensions! [00:01:25] – Introduction to Tristan Davis and Sean Laberee Tristan Davis and Sean Laberee are Program Managers on the Microsoft Office team, focused on Extensibility. Questions for Tristan and Sean [00:01:45] – Extending Office functionality with Javascript Office isn’t just an application on Windows that runs on your PC. It is running on iPhone, iPad, Android tablet, and apps on the browser with Office Online. The team needs a new platform, add-ins, which allow you to build apps that run across all places. It’s HTML and Javascript. HTML for all the UI and a series of Javascript module calls for the document properties. Sometimes we call it OfficeJS. [00:03:20] – This works on any version of Office? It works on Office on Windows, Mac, Online and iPad. [00:03:55] – HTML and CSS suck on mobile? There are things that you’re going to want to do when you know you’re running on a mobile device. If you look at an add-in running on Outlook for iPhone, the developer does a lot of things to make that feel like part of the iPhone UI. Tristan believes that you could build a great add-in for Office using HTML and JavaScript. [00:05:20] – Are these apps written with JavaScript or you have a Native with WebView? Office itself is Native. All of it is Native code but the platform is very much web. The main piece of it is pointing at the URL. Just go load that URL. And then, you can also call functions in your JavaScript. [00:06:35] – Why would you do this? How does it work? The add-in platform is a way to help developers turn Word, Excel and PowerPoint into the apps that actually solve user’s business problems. The team will give you the tools with HTML and JavaScript to go and pop into the Word UI and the API’s that let you go manipulate the paragraph and texts inside of Word. Or in Excel, you might want to create custom formulas or visualizations. The team also let people use D3 to generate their own Excel charts. And developers want to extend Office because it’s where a lot of business workers spend their days 0 in Outlook, Teams, Word, Excel. [00:10:00] – How did this get delivered to them? There are 2 ways to get this delivered. One, there’s an Office Store. Second, if you go into Word, Excel, and PowerPoint, there’s a store button and you can see tons of integrations with partners. For enterprises, IT can deploy add-ins to the users’ desktops without having stress about deploying MSI’s and other software deployments that the web completely rids off. The add-ins make a whole lot of pain the past completely go away. [00:11:00] – Everybody in the company can use a particular plug-in by distributing it with Office? That’s right. You can go to Office 365 add-in experience. Here’s the add-in and you can to specific people or everyone who’s part of a group. For the developer’s perspective, if you have the add-in deployed to your client, you could actually push updates to the web service and your users get the updates instantly. It’s a lot faster turn-around model. [00:14:20] – What about conversations or bot integrations? There’s the idea of connectors at Teams. You can subscribe to this web book and it’ll publish JSON. When the JSON is received, a new conversation inside of Teams or Outlook will be created. For example, every time someone posts on Stack Overflow with one of the tags that team cares about, it posts on Outlook. It’s a great way to bring all the stuff. Rather than have 20 different apps that are shooting 20 different sets of notifications, it’s just all conversations in email, making do all the standard email things. And in the connector case, it’s a push model. The user could choose what notifications they want. You’d also learn things like bots. You can have bots in Teams and Skype. The users can interact with them with their natural language. [00:18:40] – How about authentication? As long as you’re signed into Office, you can call JavaScript API to give you an identity token for the sign in user and it will hand you a JWT back. That’s coming from Azure Active Directory or from whatever customer directory service. That’s standard. If you want to do more, you can take that identity token and you can exchange that for a token that can call Microsoft graph. This app wants to get access to phone, are you okay with that? Assuming the user says yes, the user gets a token that can go and grab whatever data he wants from the back-end. [00:20:00] – Where does it store the token? That’s up to the developer to decide how they want to handle that but there are facilities that make sure you can pop up a dialog box and you can go to the LO-flow. You could theoretically cache it in the browser or a cookie. Or whatever people think is more appropriate for the scenario. [00:20:55] – What does the API actually look like from JavaScript? If you’re familiar with Excel UI, you can look at Excel API. It’s workbook.worksheets.getItem() and you can pass the name of the worksheet. It can also pass the index of the worksheet. [00:22:30] – What’s the process of getting setup? There’s a variety of options. You can download Office, write XML manifest, and take a sample, and then, side loads it into Office. You can also do that through web apps. There’s no install required because you can go work against Office Online. In the Insert menu, there’s a way to configure your add-ins. There’s upload a manifest there and you can just upload the XML. That’s going to work against whatever web server you have set up. So it’s either on your local machine or up in the cloud. It’s as much as like regular web development. Just bring your own tools. [00:24:15] – How do you protect me as a plug-in developer? There’s an access add-in that will ask your permission to access, say, a document. Assume, they say yes, pipes are opened and they can just go talk to those things. But the team also tries to sandbox it by iframes. It’s not one page that has everybody’s plug-ins intermingle that people can pole at other people’s stuff. [00:27:20] – How do you support backward compatibility? There are cases where we change the behavior of the API. Every API is gated by requirement set. So if a developer needs access to a requirement set, he gets an aggregate instead of API’s that he can work with but it isn’t fixed forever. But it’s not at that point yet where we end up to remove things completely. In Office JS, we’ve talked about API’s as one JavaScript library but really, it’s a bootstrap that brings in a bunch of other pieces that you need. [00:30:00] – How does that work on mobile? Do they have to approve download for all components? You can download components by using the browser that the operating system gives. It’s another one of the virtues of being based on the web. Every platform that has a web browser can have JavaScript execution run-time. It allows for the way that their app guidelines are written. [00:33:15] – How about testing? It’s a place where there’s still have work to do. There’s a bunch of open-source projects that partners have started to do that. What they’ve done is they’ve built a testing library. Whatever the mock is, it's just a thing on Github. It is open-source friendly. So the team could be able to contribute to it. “Here’s an interesting test case for this API. I want to make sure that it behaves like this. [00:35:50] – Could you write it with any version for JavaScript e.g. TypeScript? A Huge chunk of the team is big TypeScript fans. They’ve done a lot of work to make sure that TypeScript experience is excellence. Type is basically a collection of typing files for TypeScript. There’s a runtime process that parses your TypeScript, gives you feedback on your code, and checks for errors. You can also run it in the background. There’s an add-in called Script Lab. Script Lab is literally, you hit the code button and you get a web IDE right there. You can go start typing JavaScript code, play with API’s, and uses TypeScript by default. It’ll just actually load your code in the browser, executes, and you can start watching. [00:39:25] – Are there any limitations on which JavaScript libraries you can pull in? There a no limitations in place right now. There are partners that use Angular. There are partners that are big React fans. If you’re a web dev, you can bring whatever preferences around frameworks, around tools, around TypeScript versus JavaScript. [00:45:20] – What’s the craziest thing you’ve seen done with this API? Battleship was pretty cool. There’s also Star Wars entering credits theme for PowerPoint. [00:46:40] – If a developer is building a plug-in and get paid for it, does Microsoft take credit for that? There are 2 ways that folks can do it. You can do paid add-ins to the store. Either you do the standard perpetual 99 cents or you can do subscriptions, where it’s $2.99/month. Tristan encourages that model because integrations are just a piece of some larger piece of software. But Microsoft is not in the business of trying to get you to pay me a little bit of 10 cents a dollar. It’s really in the business of making sure that you can integrate with Office as quickly as possibly can. When the users go to the store, they can use the same Microsoft account that you use to buy Xbox games or movies in the Xbox, Windows apps in the Windows store. [00:52:00] – The App Model If folks are interested in the app model, they should go to dev.office.com to learn more about it because that’s where all the documentation is. Check out our Github. Right there in the open, there’s the spec. Literally, the engineers who are coding the product are reading the same marked-down files in the same repo that you, as a developer, can come and look at. And you can comment. You can add issues like you could have a dialogue with that PM. Under the OfficeDev, you’ll find a tunnel repository that contains samples. Our docs are there. Picks AJ O'Neal Lithium Charles Max Wood Miracle Morning by Hal Erod Clean Code by Uncle Bob Martin Ketogenic diet Tristan Davis Amazon Echo Microbiome Sean Laberee Running Garmin watch Full Article
se JSJ 269 Reusable React and JavaScript Components with Cory House By devchat.tv Published On :: Tue, 11 Jul 2017 06:00:00 -0400 JSJ 269 Reusable React and JavaScript Components with Cory House On today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in! [00:01:35] – Overview We can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done. Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. [00:04:50] – Browser support issue The story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load different components. Whether you’re in Angular or React, you have this model of putting your data in your curly braces. That setup is non-existent in standardized web components. You have to play the game of putting and pulling data into and out the DOM using DOM selectors. You actually take a step backward in developer ergonomics when you choose to leverage the platform instead. [00:07:50] – Polymer The reason that Polymer is useful is it adds some goodness on top of web components. One of those things is that it makes it easier to bind in data and not having to do things like writing a DOM query to be able to get your hands on this div and put this text inside of it. With Polymer, you can do something that feels more like Angular, where you can put in your curly braces and just bind in some data into that place. Polymer ends up adding some nice syntactic sugar on top of the web components standard just to make it easier to create web components. Polymer is also used to bundle in Polyfill for the features across browser. [00:14:20] – Standards are dead No. The standard itself has been embraced at different levels by different libraries. What you can see for the near future is popular libraries leveraging pieces of the web components platform to do things in a standard-spaced way. Effectively, Angular, Vue, Aurelia, are going to be abstractions over the web components standard. Arguably the most popular way to do components today is React. But React completely ignores the web components standard. When you look at React, you can’t see what piece of the web components standard would fundamentally make React a better component library. Cory can’t seem to run to anybody that is actually using the standard in production to build real applications. People continue to reach for the popular JavaScript libraries that we so often hear about. [00:17:05] – Libraries making reusable components There is a risk that it would have been a waste for people writing components on Angular, for React, for Vue. But it’s not necessarily safer writing on the web component standard when you have so few people leveraging that standard. There’s always the risk that that standard may shift as well. As an example, Cory’s team created approximately 100 reusable components in React. If they end up moving to a hot new library, the components are really just functions that take parameters and contain HTML. There is little there [00:21:20] – Why opt for reusable components Reusable components are inherently useful in a situation where you’re going to be doing something more than once. If you think about any work that you do as a software developer, we’d like to think that we’re coming in and creating new things but often it is groundhogs day. There are all sorts of opportunities for reuse. As a company, we want to encapsulate our forms in reusable components so it’s literally impossible for our software developers to do something that goes against our standard. That’s the power of reusable components. [00:31:20] – Rigid component vs. flexible component As component developers, if we try to create a reusable component in a vacuum, bad things happen. If you’re going to do a reusable component, start by solving a specific problem on a given application. If we think that a component’s going to be useful in multiple places, we put it in a folder called reusable right there in our application source folder. We try to follow that rule of three as well. If we’ve taken that component and used it in 3 places, that’s a good sign that we should extract it out, put it in our NPM package, that way, everybody has this centralized component to utilize. At that point, it has been tested. It’s been through the fire. People have used it in the real world in a few places so we can be confident that the API is truly flexible enough. Be as rigid as you can upfront. Once you add features, it’s really hard to take features away. But it’s quite easy to add features later. If you start with something rigid, it’s easier to understand. It’s easier to maintain and you can always add a few more switches later. [00:36:00] – Reusable components The reason that we can’t reuse code is every time a new project comes up, people are spending up their own ideas rather than leveraging standards that should have been put in place previously. We’ve had the technical ability to do this for a long time. We just haven’t been around long enough for consolidation to happen, for standardization to happen. You look at how quickly things are changing in our industry. For instance, a couple of years ago, everybody had pretty much decided that two-way binding was the way to build web applications. And then, React came along and shook that up. So today, you have different ways of thinking about that issue. [00:42:45] – Component development on teams Aimee’s team has component development and they’re using Angular 1.6. All of our base components are sitting in a seed application. We just go in when we want to create a new property and we just extend all of those components with specific functionalities that we need. [00:47:45] – Mobile to web crossover Cory’s team is creating React components but it’s not leveraged on a mobile application. But people use React Native components on the web. And in fact, if you use create-react-app today, you can do that right now. It’s wired up to work in React Native components. In that way, you can literally have these same components running on your Native mobile apps as you do on your web application. [00:50:00] – Challenge Cory’s challenge for everybody listening is sit down with your team and have a quick conversation about whether you think components make sense. Look back at the last few months of development and say, "if we have a reusable component library, what would be in it? How often have we found ourselves copying and pasting code between different projects? How much benefit would we get out of this story?" Once you’ve realized the benefits of the component model, both in the way that makes you think about your application, in a way that it helps you move faster and faster over time, I really think you won’t go back to the old model. I’d encourage people to investigate reusable components, whether that’d be React, Angular, Vue or Ember. Picks Cory House Creating Reusable React Components on Pluralsight Ted Talk: Why You Should Define your Fears Instead of Your Goals by Tim Ferriss Joe Eames UI-Router Persistence Aimee Knight Ask HN: People who completed a boot camp 3+ years ago, what are you doing now? NgAtlanta Charles Max Wood Upwork.com JSJ 269 Reusable React and JavaScript Components with Cory House On today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in! [00:01:35] – Overview We can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done. Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. [00:04:50] – Browser support issue The story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load different components. Whether you’re in Angular or React, you have this model of putting your data in your curly braces. That setup is non-existent in standardized web components. You have to play the game of putting and pulling data into and out the DOM using DOM selectors. You actually take a step backward in developer ergonomics when you choose to leverage the platform instead. [00:07:50] – Polymer The reason that Polymer is useful is it adds some goodness on top of web components. One of those things is that it makes it easier to bind in data and not having to do things like writing a DOM query to be able to get your hands on this div and put this text inside of it. With Polymer, you can do something that feels more like Angular, where you can put in your curly braces and just bind in some data into that place. Polymer ends up adding some nice syntactic sugar on top of the web components standard just to make it easier to create web components. Polymer is also used to bundle in Polyfill for the features across browser. [00:14:20] – Standards are dead No. The standard itself has been embraced at different levels by different libraries. What you can see for the near future is popular libraries leveraging pieces of the web components platform to do things in a standard-spaced way. Effectively, Angular, Vue, Aurelia, are going to be abstractions over the web components standard. Arguably the most popular way to do components today is React. But React completely ignores the web components standard. When you look at React, you can’t see what piece of the web components standard would fundamentally make React a better component library. Cory can’t seem to run to anybody that is actually using the standard in production to build real applications. People continue to reach for the popular JavaScript libraries that we so often hear about. [00:17:05] – Libraries making reusable components There is a risk that it would have been a waste for people writing components on Angular, for React, for Vue. But it’s not necessarily safer writing on the web component standard when you have so few people leveraging that standard. There’s always the risk that that standard may shift as well. As an example, Cory’s team created approximately 100 reusable components in React. If they end up moving to a hot new library, the components are really just functions that take parameters and contain HTML. There is little there [00:21:20] – Why opt for reusable components Reusable components are inherently useful in a situation where you’re going to be doing something more than once. If you think about any work that you do as a software developer, we’d like to think that we’re coming in and creating new things but often it is groundhogs day. There are all sorts of opportunities for reuse. As a company, we want to encapsulate our forms in reusable components so it’s literally impossible for our software developers to do something that goes against our standard. That’s the power of reusable components. [00:31:20] – Rigid component vs. flexible component As component developers, if we try to create a reusable component in a vacuum, bad things happen. If you’re going to do a reusable component, start by solving a specific problem on a given application. If we think that a component’s going to be useful in multiple places, we put it in a folder called reusable right there in our application source folder. We try to follow that rule of three as well. If we’ve taken that component and used it in 3 places, that’s a good sign that we should extract it out, put it in our NPM package, that way, everybody has this centralized component to utilize. At that point, it has been tested. It’s been through the fire. People have used it in the real world in a few places so we can be confident that the API is truly flexible enough. Be as rigid as you can upfront. Once you add features, it’s really hard to take features away. But it’s quite easy to add features later. If you start with something rigid, it’s easier to understand. It’s easier to maintain and you can always add a few more switches later. [00:36:00] – Reusable components The reason that we can’t reuse code is every time a new project comes up, people are spending up their own ideas rather than leveraging standards that should have been put in place previously. We’ve had the technical ability to do this for a long time. We just haven’t been around long enough for consolidation to happen, for standardization to happen. You look at how quickly things are changing in our industry. For instance, a couple of years ago, everybody had pretty much decided that two-way binding was the way to build web applications. And then, React came along and shook that up. So today, you have different ways of thinking about that issue. [00:42:45] – Component development on teams Aimee’s team has component development and they’re using Angular 1.6. All of our base components are sitting in a seed application. We just go in when we want to create a new property and we just extend all of those components with specific functionalities that we need. [00:47:45] – Mobile to web crossover Cory’s team is creating React components but it’s not leveraged on a mobile application. But people use React Native components on the web. And in fact, if you use create-react-app today, you can do that right now. It’s wired up to work in React Native components. In that way, you can literally have these same components running on your Native mobile apps as you do on your web application. [00:50:00] – Challenge Cory’s challenge for everybody listening is sit down with your team and have a quick conversation about whether you think components make sense. Look back at the last few months of development and say, "if we have a reusable component library, what would be in it? How often have we found ourselves copying and pasting code between different projects? How much benefit would we get out of this story?" Once you’ve realized the benefits of the component model, both in the way that makes you think about your application, in a way that it helps you move faster and faster over time, I really think you won’t go back to the old model. I’d encourage people to investigate reusable components, whether that’d be React, Angular, Vue or Ember. Picks Cory House Creating Reusable React Components on Pluralsight Ted Talk: Why You Should Define your Fears Instead of Your Goals by Tim Ferriss Joe Eames UI-Router Persistence Aimee Knight Ask HN: People who completed a boot camp 3+ years ago, what are you doing now? NgAtlanta Charles Max Wood Upwork.com Full Article
se JSJ 273: Live to Code, Don't Code to Live with 2 Frugal Dudes Sean Merron and Kevin Griffin By devchat.tv Published On :: Tue, 08 Aug 2017 06:00:00 -0400 JSJ 273: Live to Code, Don't Code to Live with 2 Frugal Dudes Sean Merron and Kevin Griffin This episode of JavaScript Jabber features panelists Aimee Knight, Cory House, and Charles Max Wood. Special guests Sean Merron and Kevin Griffin discuss how to live frugally. Tune in to hear their advice! [00:02:14] Introduction to Sean and Kevin Sean and Kevin are the hosts of the 2 Frugal Dudes Podcast. They are middle class software engineers. Sean works a 9 to 5 job, while Kevin owns a small business called Swift Kick. Swift Kick is a company that focuses on independent consulting, software development, and training companies for software development. [00:05:50] Different Types of Financial Advisors There is no legal reason that financial advisors have to work in your best interest. On the 2 Frugal Dudes Podcast, Sean and Kevin advise people to use fiduciary advisors. These types of advisors are not legally allowed to accept kickbacks from different funds. This means that they are more likely to help you to the best of their ability. They get paid for their services. Laws are currently changing so that everyone has to be a fiduciary advisor unless clients sign a specific form. [00:10:00] What do I do with money left over at the end of the month that I can’t put into a 401K and Roth IRA? They suggest that you put only the amount of money in your 401K that your company will match. Then, put the rest into a Roth IRA and max that out. Before you decide to do what next, you need to decide why you are saving money. When will you need the money? What will you need it for? Once you know the answer to these questions, you will be able to assess what your money will best be placed. For example, if you are saving to buy a house you need to put your money in a safe investment. A Roth IRA can be used as a savings vehicle or as an emergency fund. Sean believes that a Bank CD is the safest return you can get. [00:14:30] Best Way to Save For those who are self-employed, it is a good idea to have two emergency funds – a personal and a business fund. Business emergency funds should have five months of personal salary. Kevin built his up over two or three years and uses it as self-insurance. Sean says that the employee world is different. For him, he only keeps the minimum amount in his emergency fund. He knows that he is in a field where his job is in high demand, so feels comfortable with being able to get a job quickly. For others, this may not be the case. Have to evaluate how much to save based on how long you think you may need the money. [00:18:50] What is the first thing people should be doing for their own financial well being? Kevin follows Dave Ramsey’s advice. Basic emergency fund. He uses $1,000. Most emergencies fall under that amount of money. Get rid of all consumer debt. This includes car payments, credit cards, and student loans. Mortgage is not consumer debt. Grow an emergency fund to three or six months of expenses. Investments. Setting up retirement funds, paying for college, or mortgages. Sean values early retirement so he focuses on that. What does retirement mean to me? What does rich mean? You should always track your money through a budget. Then you can funnel money towards emergency funds and tackling debt. Self-insurance means that you don’t have to worry about funds. It helps lower your stress knowing that you have your finances in order. It is a peaceful place to be and opens up opportunities for you. If someone has stressors in their life – for example, their car breaks down – and they have no money to fix it, they now have car and money problems. This stress can then potentially lead to other problems such as marriage problems. If the money to fix the broken car would have been there, it would alleviate stress. [00:28:23] Difference between 401k, IRA, and Roth IRAs A 401k is an employer provided, long-term retirement savings account. This is where you put in money before it is taxed. With this plan you are limited with the funds you can choose from to invest in. IRAs are long-term retirement plans as well. The first type of IRA is a Traditional IRA, which is similar to a 401k. You get tax reduction for the money you put in the account. You pay taxes once you withdraw money. A Roth IRA is where you already pay taxes on money that you are putting in, but don’t have to pay taxes when withdrawing money. You can withdraw contributions at anytime without being penalized, you just can’t take out any earnings. Another thing that is potentially good for early retirement is a Roth IRA conversion ladder. This is where you take money from a 401k and convert it into a Roth IRA and use it before 60 years old to fund early retirement. Traditional IRAs are good for business owners looking for tax deductions now. An HSA (Health Savings Account) can also be used as a retirement device. It goes towards medical expenses if needed. [00:34:20] Are there tools or algorithms I can use to figure this stuff out? There are some. Portfolio Visualizer allows you to choose different portfolio mixes and put different amounts of money in each one. Portfolio Charts is similar to Portfolio Visualizer but gives nice graphics. Sean created a JavaScript website to help people use to figure out early retirement. The hardest part is calculating return because you have to estimate what your return will be each year. [00:39:00] Put Your Money Somewhere The only bad investment is not making an investment. Even making a bad investment is better than not having any at all. Inflation eats away at money that is just sitting. [00:42:05] If you get one of these advisors what advice should you be looking for? Need someone that tries to understand your particular situation. “It depends” is very true and your advisor should know that. No two people will have the same financial goals. They should want to help reach your goals in the least costly way possible. Other things they should be able to do is be honest and help you control your emotions during upswings and downswings. [00:47:08] Why index funds? As an investor, you can buy an index fund cheaper than buying the whole index. A mutual fund will try to buy and sell the stocks in that index in order to follow the index's performance. As an investor, you have the opportunity to buy into a mutual fund that handles it for you. You don’t have to independently invest in companies either. You can invest in an index instead that will look at, for example, top performing technology companies. It is usually a better value. [00:53:33] How much do I invest in my business verses putting money into a Roth IRA or 401k? Sean thinks it comes down to retirement goals. At some point you will want money to come in passively and retire in the future. If you can passively put X amount of dollars into your company then it can be looked at as a form of investment. Kevin evaluates his business goals every quarter. He creates a business budget based off of those goals. Picks Cory Random Walk Down Wall Street by Burton Malkiel Rich Dad, Poor Dad by Robert Kiyosaki Ego is the Enemy by Ryan Holiday Aimee Hacker News Thread – How to Not Bring Emotions Home With You Phantogram Charles Money Master the Game by Tony Robbins ELPs (Endorsed Local Providers) Dave Ramsey Sean The Little Book of Common Sense Investing by John Bogle Mr. Money Mustache Blog www.mint.com Kevin Unshakable by Tony Robbins YNABS The Millionaire Next Door by Thomas Stanley Links 2 Frugal Dudes Twitter Sean's Twitter Kevin's Twitter www.swiftkick.in www.kevgriffin.com http://earlyretirementroadmap.com/ 2 Frugal Dudes Podcast Full Article
se JSJ 274: Amazon Voice Services and Echo Skills with Terrance Smith By devchat.tv Published On :: Tue, 15 Aug 2017 06:00:00 -0400 JSJ 274 Amazon Voice Services and Echo Skills with Terrance Smith On today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and we have special guest Terrance Smith. He’s here today to talk about the Amazon Alexa platform. So tune in and learn more about Amazon Voice Services! [01:00] – Introduction to Terrance Smith Terrance is from Hacker Ferrer Software. They hack love into software. [01:30] – Amazon Voice Service What I’m working on is called My CareTaker named probably pending change. What it will do and what it is doing will be to help you be there as a caretaker’s aid for the person in your life. If you have to take care an older parent, My CareTaker will be there in your place if you have to work that day. It will be your liaison to that person. Your mom and dad can talk to My CareTaker and My CareTaker could signal you via SMS or email message or tweet, anything on your usage dashboard, and you would be able to respond. It’s there when you’re not. [04:35] – Capabilities Getting started with it, there are different layers. The first layer is the Skills Kit for generally getting into the Amazon IoT. It has a limited subset of the functionality. You can give commands. The device parses them, sends them to Amazon’s endpoint, Amazon sends a call back to your API endpoint, and you can do whatever you want. That is the first level. You can make it do things like turn on your light switch, start your car, change your thermostat, or make an API call to some website somewhere to do anything. [05:50] – Skills Kit Skills Kit is different with AVS. Skills Kit, you can install it on any device. You’re spinning up a web service and register it on Amazon’s website. As long as you have an endpoint, you can register, say, the Amazon Web Services Lambda. Start that up and do something. The Skills Kit is literally the web endpoint response. Amazon Voice Services is a bit more in-depth. [07:00] – Steps for programming With the Skills Kit, you register what would be your utterance, your skill name, and you would give it a couple of sets of phrases to accept. Say, you have a skill that can start a car, your skill is “Car Starter.” “Alexa tell Car Starter to start the car.” At which point, your web service will be notified that that is the utterance. It literally has a case statement. You can have any number of individual conditional branches outside of that. The limitation for the Skills Kit is you have to have the “tell” or “ask” and the name of the skill to do whatever. It’s also going to be publicly accessible. For the most part, it’s literally a web service. [10:55] – Boilerplates for AWS Lambda Boilerplates can be used if you want to develop for production. If you publish a skill, you get free AVS instance time. You can host your skill for free for some amount of time. There are GUI tools to make it easier but if you’re a developer, you’re probably going to do the spin up a web service and deal it that way. [11:45] – Do you have to have an Amazon Echo? At one point, you have to have the Echo but now there is this called Echoism, which allows you to run it in your browser. In addition to that, you can potentially install it on a device like a Raspberry Pi and run Amazon Voice Services. The actual engine is on your PC, Mac, or Linux box. You have different options. [12:35] – Machine learning There are certain things that Amazon Alexa understand now that it did last year or time before that like understanding utterances and phrases better. A lot of the machine learning is definitely under the covers. The other portion of it Alexa Voice Service, which is a whole engine that you have untethered access to other portions like how to handle responses. That’s where you can build a custom device and take it apart. So the API that we’re working with here is just using JSON and HTTP. [16:40] – Amazon Echo Show You have that full real-time back and forth communication ability but there is no video streaming or video processing ability yet. You can utilize the engine in such a way that Amazon Voice Services can work with your existing tool language. If you have a Raspberry Pi and you have a camera to it, you can potentially work within that. But again, the official API’s and docs for that are not available yet. [27:20] – Challenges There’s an appliance in this house that listens to everything I say. There’s that natural inclination to not trust it, especially with the older generations. Giving past that is getting people to use the device. Some of the programming sides of it are getting the communication to work, doing something that Alexa isn’t pre-programmed to do. There isn’t a lot of documentation out there, just a couple of examples. The original examples are written in Java and trying to convert it to Node or JavaScript would be some of the technical challenges. In addition, getting it installed and setup takes at least an hour at the beginning. There’s also a learning curve involved. [29:35] – Is your product layered in an Echo or is your product a separate device? Terrance’s product is a completely separate device. One of the functionality of his program is medicine reminders. It can only respond to whatever the API calls from Amazon tells you to respond to but it can’t do anything like send something back. It can do an immediate audio response with a picture or turn on and off a light switch. But it can’t send a message back in like two hours from now. You do want your Alexa device to have (verbally) a list of notifications like on your phone. TLDR, Terrance can go a little further with just the Skills Kit. [32:00] – Could you set it up through a web server? Yes. There are examples out there. There’s Alexa in the browser. You can open up a browser and communicate with that. There are examples of it being installed like an app. You can deploy it to your existing iPhone app or Android app and have it interact that way. Or you can have it interact independently on a completely different device like a Raspberry Pi. But not a lot of folks are using it that way. [33:10] – Monetization Amazon isn’t changing anything in terms of monetization. They make discovery a lot easier though. If you knew the name of the app, you could just say, “Alexa, [tell the name of the app].” It will do a lazy load of the actual skill and it will add it to your available skill’s list. However, there is something called the Alexa Fund, which is kind of a startup fund that they have, which you can apply for. If you’re doing something interesting, there is a number of things you have to do. Ideally, you can get funding for whatever your product is. It is an available avenue for you. [36:25] – More information, documentation, walkthroughs The number one place to go to as far as getting started is the Amazon websites. They have the Conexant 4-Mic Far-Field Dev Kit. It has 4 mics and it has already a lot of what you need. You have to boot it up and/or SSH into it or plug it up and code it. They have a couple of these kits for $300 to $400. It’s one of the safe and simpler options. There are also directions for the AVS sites which is under Alexa Voice Services, where you can go to the Github from there. There will give you directions using the Raspberry Pi. If not that, there’s also the Slack chatroom. It is alexaslack.com. Travis Teague is the guy in charge in there. Picks Joe Eames Cosmic Engineers by Clifford D. Simak Aimee Knight Conference: React Rally Pancakes Charles Max Wood Conference: Angular Dev Summit Conference: React Dev Summit JavaScript Jabber Slack Terrance Smith Language: Elm Youtube channel: The School of Life Game: Night in the Woods Hacker Ferret Software Hackerferret.com Full Article
se JSJ BONUS: Cloud Services and Manifold with Matthew Creager and Peter Cho By devchat.tv Published On :: Wed, 18 Oct 2017 06:00:00 -0400 Panel: Amiee Knight Charles Max Wood Joe Eames Special Guests: Matthew Creager and Peter Cho In this episode, JavaScript Jabbers speak with Matthew Ceager and Peter Cho. Matthew and Peter are part of the team at Manifold. Manifold is a marketplace for developer services. Matthew takes care of growth and relations, and Peter oversee products at Manifold. The panel discusses with Peter and Matthew what Manifold does and the benefits of a Cloud Service. Matthew gives perspective on how developers can get their cloud product on the market compared to open source. Further discussion goes into how this will help the developer to get their products or services turned into a business quicker and save time Also learn about when it is the ideal time to move to cloud services vs. running a server yourself. In particular, we dive pretty deep on: Different kinds of definition of Cloud Services Anything you would rely on as a third party service What is the cloud service ecosystem - Services that connect to an application Independent market place - because it is difficult to turn a product into a business Where are people using cloud services or running their own server Spinning up a version of it is easier. Time verses doing it yourself? Experts running the services Focusing on your product instead of managing the server and such Where does the data live and who has access to that? Lock In’s? Tourist - Credentials management How do I get this setup? Command Line or register online And much more! Links: Manifold https://github.com/mattcreager @manifoldco @etcpeter @matt_creager blog.manifold.com Picks: Amiee Ryan McDermott Charles GitLab AdminLTE Joe What You Can’t Say Matt Star Trek Puppeteer Peter Player Unknown Battle Ground Sourdough by Robin Sloan Full Article
se JSJ 285 : Finding a Job Even If You're Not a Senior Developer by Charles Max Wood By devchat.tv Published On :: Wed, 01 Nov 2017 17:09:00 -0400 Panel: Charles Max Wood In this episode of JavaScript Jabber, Charles does a solo episode talking about entrepreneurship and the topic/course on “How to Get a Job.” This is an informative episode for those looking for a job as a developer and how to prepare your resume for your career search. Charles covers the core pieces of the course and specific areas of tailoring your credentials for the job you want to acquire. In particular, we dive pretty deep on: How do I get a great job? Companies are only hiring Senior Devs. Your selling point as a Jr. Dev. Framing your experience for the companies to better see your experience. I don’t want a ( this kind of boss) Feeling like you are making a difference in your job. Who do you want to work for, with, where, and how, etc? Working in a facility or remotely. What do you want? Check out the meet-up places or workplaces (WeWork), Glassdoor Check out the people who work that these companies, LinkedIn. Check out company’s Slack rooms, forum, etc. to make connections Visit the companies personally Look into contacting the Meetup Organizers Building rapport Resume mistakes - how to properly format it so it is skim-able Top 3 bullet points and tailor you resume for each job Unnecessary material in your resume - again tailor to the company Important material to include on your resume, contributions on projects The cover letter - How to do this correctly with a personal touch What to do when you get the interview - the offer! And much more! Links: devchat.tv/get-a-coder-job-full-accessfull-access WeWork Expert Salary Negotiation Full Article
se JSJ 291: Serverless For JavaScript with Gareth McCumskey By devchat.tv Published On :: Tue, 12 Dec 2017 06:00:00 -0500 Panel: Charles Max Wood Aimee Knight AJ O’Neal Joe Eames Special Guests: Gareth McCumskey In this episode, JavaScript Jabber speaks with Gareth McCumskey about Serverless For JavaScript. Gareth leads the dev team at Expat Explore in Cape Town, South Africa. Gareth and this team specialize in exploring the Serverless realm in JavaScript. The JavaScript Jabbers panel and Gareth discuss the many different types of serverless systems, and when to implement them, how serverless system work, and when to go in the direction of using Serverless. In particular, we dive pretty deep on: What does it mean to be Serverless? Since platform as a service. Microservice on Docker Firebase “no backend” Backend systems Cloud functions and failure in systems How do you start to think about a serverless system? How do decide what to do? AWS Lambda Working in a different vendor Node 4 Programming JS to deploy Using libraries for NPM How is works with AWS Lambda Where is the database? More point of failure? Calls to Slack? Authentication Micro Services Elastic Bean Stalk Static Assets, S3, Managing Testing the services Integration testing And much more! Links: @garethmcc @expatexplore gareth.mccumskey.com https://github.com/garethmcc serverless.com Picks: Aimee Serverless Architectures NG-BE Conference AJ Documentary on Enron Hard Thing about Hard Things Charles Serverless Framework The Storm Light Achieves Avengers: Infinity War Gareth Building MicroServices Skeptics Guide To The Universe Podcast Expate Explore Joe Wonder - Movie Gloom In Space - Board Game Full Article
se JSJ 294: Node Security with Adam Baldwin By devchat.tv Published On :: Wed, 03 Jan 2018 20:21:00 -0500 Panel: Charles Max Wood AJ O’Neal Joe Eames Special Guests: Adam Baldwin In this episode, JavaScript Jabber panelist speak with Adam Baldwin. Adam is a return guest and has many years of application security experience. Currently, Adam runs the Node Security Project/Node Security Platform, and Lift Security. Adam discusses the latest of security of Node Security with Charles and AJ. Discussion topics cover security in other platforms, dependencies, security habits, breaches, tokens, bit rot or digital atrophy, and adding security to your development. In particular, we dive pretty deep on: What is the Node Security Project/Node Security Platform Dependency trees NPM Tokens and internal data What does Node Security do for me? NPX and NSP Command Line CIL Bit Rot or Digital Atrophy How often should you check repos. Advisories If I NPM install? Circle CI or Travis NSP Check What else could I add to the securities? Incorporate security as you build things How do you find the vulnerabilities in the NPM packages Two Factor authentication for NPM Weak Passwords OL Dash? Install Scripts Favorite Security Story? And much more! Links: Node Security Lift Security https://github.com/evilpacket @nodesecurity @liftsecurity @adam_baldwin Picks: Adam Key Base Have I been Pwned? Charles Nettie Pot convo.com AJ This Episode with Adam Baldwin Free the Future of Radical Price Made In America Sam Walton Sonic - VGM Album Joe Pych - Movie NG Conf Why We Don’t Suck Full Article
se JSJ 296: Changes in React and the license with Azat Mardan By devchat.tv Published On :: Tue, 16 Jan 2018 11:47:00 -0500 Panel: Charles Max Wood Cory House Joe Eames Aimee Knight Special Guests: Azat Mardan In this episode, JavaScript Jabber panelist speak with Azat Mardan. Azat is a return guest, previously on JSJ Episode 230. Azat is an author of 14 books on Node JS, JavaScript, and React JS. Azat works at Capital One on the technology team. Azat is the founder and creator of Node University. Azat is on the show to talk about changes in React and licensing. Some of the topics cover Facebook, licensing with React, using the wrong version of React, patent wars, and much more in-depth information on current events in React. In particular, we dive pretty deep on: Facebook - Licensing with React Using the Wrong version of React in some companies BSD licensing Patent wars Facebook developing React Difference in Preact and Inferno Rewriting applications What did Capital One do about the changes? React 16 Pure React Was the BSD patents - Med and Sm Companies Patents explained React Developers at Facebook Fiber - New Core Architecture And much more! Links: http://azat.co https://node.university https://devchat.tv/js-jabber/230-jsj-node-at-capital-one-with-azat-mardan Picks: Cory Axel Rauschmayer post Prettier Charles Indiegogo for Dev Chat forum.devchat.tv Aimee Dev Tees Hacker News - Question on Stack Exchange and Estimates Joe Heroku El Camino Christmas Azat PMP Azat - Short Lecture Full Article
se JSJ 297: Scrollytelling with Russell Goldenberg and Adam Pearce By devchat.tv Published On :: Tue, 23 Jan 2018 18:45:00 -0500 Panel: Charles Max Wood Joe Eames Aimee Knight Special Guests: Russell Goldenberg and Adam Pearce In this episode, JavaScript Jabber panelist speak with Russell Goldenberg and Adam Pearce Russell creates visualizations, interactive graphics, and documentaries for the web. Currently an editor at The Pudding. Adam is a graphics editor at The New York Times and a journalist engineers/developer Russell and Adam are on the show to talk about what Scrollytelling is, as well as Scrollama. Scrollama is a modern and lightweight JavaScript library for scrollytelling using IntersectionObserver in favor of scroll events. This is a great episode to understand another technology/tool created with JavaScript. In particular, we dive pretty deep on: What is Scrollytelling! Graph Scroll library What is the intersection Observerable? How long does it take to build an interactive graphic…? How do you test something like this? Test on a lot of different devices Can you do automated testing? Do you have to understand the use cases or can you implement quickly? Recommendation for getting started? Is this a skill set people have to have before that some on board? How do design these interactions? Scroll jacking What JS developers should know about this technology. Position sticky What are other uses cases? What can devs use it for? Tax calculator And much more! Links: https://github.com/russellgoldenberg/scrollama https://pudding.cool/process/introducing-scrollama/ @codenberg @adamrpearce https://pudding.cool/ http://russellgoldenberg.github.io https://github.com/1wheel?direction=desc&sort=created&tab=stars https://roadtolarissa.com Picks: Adam Dominion - Broad Game Charles Smoker Tiny Epic Galaxies Indiegogo Dev Chat TV Aimee Deadlines Quest Protein Powder Joe Giving! Board Game - Azul Russel Crokinole Bust Out Full Article
se MJS 049: Sean Merron By devchat.tv Published On :: Wed, 21 Feb 2018 06:00:00 -0500 Panel: Charles Max Wood Guest: Sean Merron This week on My JavaScript Story, Charles speaks with Sean Merron. Sean is currently in Austin, Texas and is originally from Virginia Beach, Virginia. He is a full-time software engineer, and has been for a little over 15 years now, and runs a podcast called 2 Frugal Dudes. He first got into programming when he was in high school and went to a trade school for computer networking. This trade school really gave him a leg up with his certifications and led him to his first job where he did tech support for an office. Sean urges new programmers to always have a project and to never be afraid to learn something new. In particular, we dive pretty deep on: 2 Frugal Dudes How did you get into programming? CCNA and A+ certification Frist experience learning programming AP Computer Science C++ and Java How did you get into JavaScript? Gaming led to him wanting to build websites GeoCities HTML files HTML application Any advice for new programmers? Scripting Life-long learning What have your contributed to the programming community? Teaching, meetups, and conferences How did 2 Frugal Dudes come about? The importance of learning about finances The goal of podcasts His podcast audience demographics They discuss finances in layman’s terms What are you working on now and what are your future plans? And much, much more! Links: Linode 2 Frugal Dudes EarlyRetirementRoadmap.com @SeanMerron Picks Charles React and View Podcast coming up PodWrench.com Sean Mr. Money Mustache BogleHeads The Little Book of Common Sense Investing by John Bogle Full Article
se JSJ 305: Continuous Integration, Processes, and DangerJS with Orta Therox By devchat.tv Published On :: Tue, 20 Mar 2018 06:00:00 -0400 Panel: Charles Max Wood Aimee Knight Joe Eames AJ O'Neal Special Guests: Orta Therox In this episode, the JavaScript Jabber panelists talk about the tool Danger with Orta Therox. Danger allows you to create cultural rules about your pole request workflow. They discuss what Danger is, how it works, and how it can help you to catch errors and speed up code review. Danger lets you erase discussions so that you can focus on the things that you should really be focusing on, like the code. They also compare Danger to other ways of doing test converge. In particular, we dive pretty deep on: What is DangerJS? Think of it as being on the PR level Provides an eval context Used on larger projects React, React Native, Apollo, and RxJS Experimenting with moving Danger onto a server Danger can run as a linting step Pre-commit hooks Prettier How do you use Danger on your own machine? Danger Ruby vs Danger JS NPM install How is using Danger better that other ways of test coverage? What kinds of rules can you write for this system? Can use with Ruby or JavaScript React Storybooks Retrospectives And much, much more! Links: React Dev Summit JS Dev Summit Danger JS React React Native Apollo RxJS Prettier Danger Ruby Ruby JavaScript Orta’s GitHub Artsy Blog Picks: Charles Hogwarts Battle Board Game Sushi Go Party! Game NYC tips Aimee Max Stoiber Blog The Ultimate Guide to Kicking Ass on Take-home Coding Challenges Joe SaltCON Stuffed Fables Board Game AJ UniFi AC Lite Fullmetal Alchemist Orta The Wire Worm Web Serial Full Article
se JSJ 309: WebAssembly and JavaScript with Ben Titzer By devchat.tv Published On :: Tue, 17 Apr 2018 06:00:00 -0400 Panel: Charles Max Wood Cory House Aimee Knight Special Guests: Ben Titzer In 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 intro JavaScript Co-inventor of WebAssembly (Wasm) Joined V8 in 2014 asm.js Built a JIT compiler to make asm.js faster TurboFan What is the role of JavaScript? What is the role of WebAssembly? SIMD.js JavaScript is not a statically typed language Adding SIMD to Wasm was easier Easy to add things to Wasm Will JavaScript benefit? Using JavaScript with Wasm pros and cons Pros to compiling with Wasm Statically typed languages The more statically typed you are, the more you will benefit from Wasm TypeScript Is WebAssembly headed towards being used in daily application? Rust is investing heavily in Wasm WebAssembly in gaming And much, much more! Links: JavaScript V8 WebAssembly asm.js TurboFan TypeScript Rust WebAssembly GitHub Ben’s GitHub Picks: Charles Ready Player One Movie DevChat.tv YouTube Alexa Flash Briefings: Add skill for “JavaScript Rants” Cory npm Semantic Version Calculator Kent Beck Tweet Aimee MDN 418 Status code Quantity Always Trumps Quality blog post Ben American Politics Full Article
se JSJ 311: Securing Express Apps with Helmet.js with Evan Hahn By devchat.tv Published On :: Tue, 01 May 2018 06:00:00 -0400 Panel: Charles Max Wood Special Guests: Evan Hahn In 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 intro JavaScript What is Helmet.js? Node and Express Why would you use the approach of Middleware? Helmet is not the only solution Http headers Current maintainer of Helmet.js npm Has added a lot to the project, but is not the original creator Outbound HTTP response headers Helmet doesn’t fully secure your app but it does help secure it How does using Helmet work? Are there instances when you wouldn’t want to use Helmet? No cash middleware Where do you set the configuration options? Top level Helmet module 12 modules What is the biggest thing that Helmet saves you from? Content security policy code And much, much more! Links: Airtable Braintree JavaScript Helmet.js Node Express npm Evan’s Website @EvanHahn Evan’s GitHub Picks: Charles Camera Zoom H6 Shure SM58 DevChat.tv Youtube React Round Up Evan Clojure Fortune Kantaro: The Sweet Tooth Salaryman Full Article
se MJS 059: Merrick Christensen By devchat.tv Published On :: Wed, 02 May 2018 06:00:00 -0400 Panel: Charles Max Wood Guest: Merrick Christensen This week on My Angular Story, Charles speaks with Merrick Christensen. Christensen works at a company called Webflow, where they try to empower people to create software without code. The company is similar to Squarespace or Wix, except they give 100% design control to the client. Christensen talks about his journey into programming, starting by creating websites for his childhood band. He moved on from Microsoft to Dreamweaver, and his Dad got him started with some freelance jobs to create websites for people, which really sparked his interest. Christensen discusses his path to where he is as a programmer today. In particular, We dive pretty deep on: How did you get into programming? Getting into JavaScript Infogenix job Red Olive job using Flash Got into JavaScript through ActionScript Discovered Moo Tools Flex Steve Jobs says no Flash on iPhone Why Moo Tools and not jQuery? Liked flexibility of JavaScript How did you get into Angular? Angular was trendy at the time and was easier to use New code base with React Backbone Programming as an art form Webflow Meta-layers Working a remote job Framework Summit Angular, React, View, and Backbone And much, much more! Links: Linode.com/MyAngularStory Webflow Squarespace Wix Framework Summit @iamMerrick MerrickChristensen.com Picks: Merrick Sho Baraka Grid Critters Flex Zombies Charles Fresh Books Lyft Game Vice Audio-Technica 2100 Full Article
se JSJ 327: "Greenlock and LetsEncrypt" with AJ O'Neal By devchat.tv Published On :: Tue, 21 Aug 2018 06:00:00 -0400 Panel: Charles Max Wood Joe Eames Special Guests: AJ O'Neal In this episode, the JavaScript Jabber panel talks to AJ O'Neal about Greenlock and LetsEncrypt. LetsEncrypt is a brand name and is the first of its kind in automated SSL and Greenlock does what Certbot does in a more simplified form. They talk about what led him to create Greenlock, compare Greenlock to Certbot, and what it’s like to use Greenlock. They also touch on Greenlock-express, how they make Greenlock better, and more! In particular, we dive pretty deep on: Greenlock and LetsEncrypt overview LetsEncrypt is free to get your certificate Why Charles uses LetsEncrypt Wildcard domains Certbot Why he originally created Greenlock Working towards home servers Wanted to get HTTP on small devices Manages a certificate directory Greenlock VS Certbot Greenlock can work stand alone The best use case for Greenlock Excited about how people are using his tool What is it like to use Greenlock? Working on a desktop client Greenlock-express Acme servers CAA record Making Greenlock better by knowing how people are using it Using Greenlock-express Let's Encrypt v2 Step by Step by AJ And much, much more! Links: LetsEncrypt Greenlock Certbot Greenlock-express Acme servers Let's Encrypt v2 Step by Step by AJ @coolaj86 coolaj86.com AJ’s Git Greenlock.js Screencast Series Greenlock.js Patreon Sponsors Kendo UI Sentry Digital Ocean Picks: Charles Take some time off AJ OverClocked Records Full Article
se JSJ 329: Promises, Promise.finally(), and Async/await with Valeri Karpov By devchat.tv Published On :: Tue, 04 Sep 2018 06:00:00 -0400 Panel: Charles Max Wood AJ O’Neal Aimee Knight Special Guests: Valeri Karpov In this episode, the panel talks with programmer, Valerie Karpov from Miami, Florida. He is quite knowledgeable with many different programs, but today’s episode they talk specifically about Async/Await and Promise Generators. Val is constantly busy through his different endeavors and recently finished his e-book, “Mastering Async/Await.” Check-out Val’s social media profiles through LinkedIn, GitHub, Twitter, and more. Show Topics: 1:20 – Val has been on previous episodes back in 2013 & 2016. 1:37 – Val’s background. He is very involved with multiple companies. Go checkout his new book! 2:39 – Promises generators. Understand Promises and how things sync with Promises. Val suggests that listeners have an integrated understanding of issues like error handling. 3:57 – Chuck asks a question. 6:25 – Aimee’s asks a question: “Can you speak to why someone would want to use Async/Await?” 8:53 – AJ makes comments. 10:09 – “What makes an Async/Await not functional?” – Val 10:59 – “What’s wrong with Promises or Async/Await that people don’t like it?” - AJ 11:25 – Val states that he doesn’t think there really is anything wrong with these programs it just depends on what you need it for. He thinks that having both gives the user great power. 12:21 – AJ’s background is with Node and the Python among other programs. 12:55 – Implementing Complex Business Logic. 15:50 – Val discusses his new e-book. 17:08 – Question from Aimee. 17:16 – AJ answers question. Promises should have been primitive when it was designed or somewhat event handling. 17:46 – The panel agrees that anything is better than Call Backs. 18:18 – Aimee makes comments about Async/Await. 20:08 – “What are the core principles of your new e-book?” – Chuck 20:17 – There are 4 chapters and Val discusses, in detail, what’s in each chapter. 22:40 – There could be some confusion from JavaScript for someone where this is their first language. Does Async/Await have any affect on the way you program or does anything make it less or more confusing in the background changes? 24:30 – Val answers the before-mentioned question. Async/Await does not have anyway to help with this (data changes in the background). 25:36 – “My procedural code, I know that things won’t change on me because it is procedural code. Is it hard to adjust to that?” – AJ 26:01 – Val answers the question. 26:32 – Building a webserver with Python. 27:31 – Aimee asks a question: “Do you think that there are cases in code base, where I would want to use Promises? Not from a user’s perspective, but what our preferences are, but actual performance. Is there a reason why I would want to use both or be consistent across the board?” 28:17 – Val asks for some clarification to Aimee’s question. 29:14 – Aimee: “My own personal preference is consistency. Would I want to use Promises in ‘x’ scenario and/or use Async/Await in another situation?” 32:28 – Val and AJ are discussing and problem solving different situations that these programs 33:05 – “When would you not want to use Async/Await?” – AJ 33:25 – Val goes through the different situations when he would not use Async/Await. 33:44 – Chuck is curious about other features of Async/Await and asks Val. 36:40 – Facebook’s Regenerator 37:11 – AJ: “Back in the day, people would be really concerned with JavaScript’s performance even with Chrome.” He continues his thoughts on this topic. 38:11 – Val answers the AJ’s question. 39:10 – Duck JS probably won’t include generators. 41:18 – Val: “Have anyone used Engine Script before?” The rest of the panel had never heard of this before. 42:09 – Windows Scripting Host 42:56 – Val used Rhino in the past. 43:40 – Val: “Going back to the web performance question...” 47:08 – “Where do you see using Async/Await the most?” – Chuck 47:55 – Val uses Async/Await for everything on the backend because it has made everything so easy for him. 48:23 – “So this is why you really haven’t used Web Pack?” – AJ 49:20 – Let’s go to Aimee’s Picks! 50:18 – AJ’s story, first, before we get to Promises. 54:44 – Let’s transition to Promises Finally. 54:53 – Val talks about Promises Finally. 59:20 – Picks Links: JavaScript Valeri Karpov’s GitHub Valeri Karpov’s Twitter Valeri Karpov’s LinkedIn New E-Book: Mastering Async/Await Node Python Windows Scripting Host Facebook’s Regenerator Rhino Sponsors: Kendo UI Sentry Digital Ocean Picks: Charles YouTube Video “IKEA” by Coulton Conference Amazon Prime Day Aimee Blog Post Article AJ IKEA https://ppl.family Val https://www.npmjs.com/package/serve http://bit.ly/ultimate-skiing http://asyncawait.net/jsjabber New E-Book: Mastering Async/Await Full Article
se JSJ 338: It’s Supposed To Hurt, Get Outside of Your Comfort Zone to Master Your Craft with Christopher Buecheler By devchat.tv Published On :: Tue, 06 Nov 2018 06:00:00 -0500 Panel: Aimee Knight AJ O’Neal Aaron Frost Christopher Ferdinandi Special Guests: Christopher Buecheler In this episode, the panel talks with Christopher Buecheler who is an author, blogger, web developer, and founder of CloseBrace. The panel and Christopher talk about stepping outside of your comfort zone. With a technological world that is ever changing, it is important to always be learning within your field. Check out today’s episode to learn more! Show Topics: 0:00 – Advertisement: KENDO UI 1:08 – Aimee: Our guest is Christopher Buecheler – tell us about yourself and what you do. 1:22 – Guest: I run a site and help mid-career developers. I put out a weekly newsletter, too. 2:01 – Aimee: It says that you are a fan of “getting comfortable being uncomfortable”? 2:15 – Guest: I am a self-taught developer, so that means I am scrambling to learn new things all the time. You are often faced with learning new things. When I learned React I was dumped into it. The pain and the difficulty are necessary in order to improve. If you aren’t having that experience then you aren’t learning as much as you could be. 3:26 – Aimee: I borrow lessons that I learned from ice-skating to programming. 3:49 – Guest: I started running a few years ago for better health. It was exhausting and miserable at the start and wondered why I was doing it. Now I run 5 times a week, and there is always a level of being uncomfortable, but now it’s apart of the run. It’s an interesting comparison to coding. It’s this idea of pushing through. 5:01 – Aimee: If you are comfortable you probably aren’t growing that much. In our industry you always have to be learning because things change so much! 5:25 – Guest: Yes, exactly. If you are not careful you can miss opportunities. 6:33 – Panel: You have some ideas about frameworks and libraries – one thing that I am always anxious about is being able to make sense of “what are some new trends that I should pay attention to?” I remember interviewing with someone saying: this mobile thing is just a fad. I remember thinking that she is going to miss this opportunity. I am worried that I am going to be THAT guy. How do you figure out what sort of things you should / shouldn’t pay attention to? 7:47 – Guest: It is a super exhausting thing to keep up with – I agree. For me, a lot of what I pay attention to is the technology that has the backing of a multi-million dollar company then that shows that technology isn’t going anywhere, anytime soon. The other thing I would look at is how ACTIVE is the community around it? 9:15 – Panel: Is there a strategic way to approach this? There is so many different directions that you can grow and push yourself within your career? Do you have any kinds of thoughts/tips on how you want your career to evolve? 10:00 – Guest: I am trying to always communicate better to my newsletter audience. Also, a good approach, too, is what are people hiring for? 11:06 – Aimee: Again, I would say: focus on learning. 11:30 – Panel: And I agree with Aimee – “learn it and learn it well!” 12:01 – Panel: I want to ask Chris – what is CloseBrace? 12:17 – Guest: I founded it in November 2016, and started work on it back in 2013. 14:20 – Panel: It was filled with a bunch of buzz worthy words/title. 14:32 – Guest continues his thoughts/comments on CloseBrace. 16:54 – Panel: How is the growth going? 17:00 – Guest: It is growing very well. I put out a massive, massive tutorial course – I wouldn’t necessarily advice that people do this b/c it can be overwhelming. However, growth this year I have focused on marketing. I haven’t shared numbers or anything but it’s increased 500%, and I am happy about it. 18:05 – Panel: Are you keeping in-house? 18:13 – Guest: I think it would be cool to expand, but now it is in-house. I don’t want to borrow Egg Head’s setup. I would love to cover MORE topics, though. 19:05 – Panel: You are only one person. 19:08 – Guest: If I can get the site creating more revenue than I can hire someone to do video editing, etc. 19:35 – Panel: I think you are overthinking it. 19:45 – Guest. 19:47 – Advertisement – Sentry.io 20:47 – Guest. 21:30 – Aimee: There are SO many resources out there right now. Where do you think you fit into this landscape? 21:44 – The landscape is cluttered, but I feel that I am different b/c of my thoroughness. I don’t always explain line by line, but I do say how and why things work. I think also is my VOICE. Not my radio voice, but the tone and the approach you take with it. 23:25 – Panel: I was trying to copy folks in the beginning of my career. And at some point I realized that I needed to find my own style. It always came down to the reasons WHY I am different rather than the similarities. Like, Chris, you have these quick hits on CloseBrace, but some people might feel like they don’t have the time to get through ALL of your content, because it’s a lot. For me, that’s what I love about your content. 24:46 – Christopher: Yeah, it was intentional. 25:36 – Panel: Good for you. 25:49 – Guest: I am super device agnostic: Android, Mac, PC, etc. I have a lot of people from India that are more Microsoft-base. 26:28 – Aimee: I think Egghead is pretty good about this...do you cover testing at all with these things that you are doing? It’s good to do a “Hello World” but most of these sites don’t get into MORE complex pieces. I think that’s where you can get into trouble. It’s nice to have some boiler point testing, too. 27:18 – Guest answers Aimee’s question. 28:43 – Aimee: We work with a consultancy and I asked them to write tests for the things that we work with. That’s the value of the testing. It’s the code that comes out. 29:10 – Panel: Can you explain this to me. Why do I need to write tests? It’s always working (my code) so why do I have to write a test? 29:39 – Guest: When working with AWS I was writing... 31:01 – Aimee: My biggest thing is that I have seen enough that the people don’t value testing are in a very bad place, and the people that value testing are in a good place. It even comes back to the customers, because the code gets so hard that you end up repeatedly releasing bugs. Customers will stop paying their bills if this happens too often for them. 33:00 – Panel: Aimee / Chris do you have a preferred tool? I have done testing before, but not as much as I should be doing. 33:25 – Aimee: I like JEST and PUPPETEER. 33:58 – Guest: I like JEST, too. 34:20 – Aimee: Let’s go to PICKS! 34:35 – Advertisement – eBook: Get a coder job! Links: JavaScript jQuery React Elixir Elm Vue JEST Puppeteer Podflix Autojump Brutalist Web Design YouTube: Mac Miller Balloon Fiesta DocZ CloseBrace Christopher Buecheler’s Website Christopher Buecheler’s LinkedIn Christopher Buecheler’s GitHub Go Learn Things – Chris Ferdinandi Sponsors: Kendo UI Sentry Cache Fly Get a Coder Job Picks: Aimee Podflix Chris F. AutoJump Brutalist Web Design Mac Miller Tiny Desk Concert AJ Canada Dry with Lemonade Aaron ABQ Ballon Festival Joe Eames DND Recording Channel Christopher Docz South Reach Trilogy Jeff Vandermeer Full Article