All JavaScript Podcasts by

All JavaScript Shows published by
All JavaScript Podcasts by


All JavaScript podcasts produced by - JavaScript Jabber - My JS Story - JS Rants





JSJ 364: Ember Octane with Sam Selikoff

May 14, 2019 52:39


Sponsors Triplebyte offers a $1000 signing bonus Sentry use the code “devchat” for $100 credit Linode CacheFly Panel AJ O’Neal

Joined by special guest: Sam Selikoff

Episode Summary

In this episode of JavaScript Jabber, Sam Selikoff, Co-Founder at EmberMap, Inc. starts with giving a brief background about himself and his work followed by a discussion with AJ O’Neal about the Ember community. Sam mentions some of the biggest advantages in using Ember, and what it should and should not be used for. He explains the architecture of Ember apps, addresses some of the performance concerns and then dives into Octane in detail. He talks about a bunch of Ember components, compiler compatibility, relative weight of Ember apps compared to other frameworks, the underlying build system, and security considerations. Sam then helps listeners understand the usage of ES6 classes and decorators in Ember at length. At the end, they discuss component rendering and element modifiers and move onto picks.

Links Sam’s website Sam on Twitter Sam on GitHub

Follow JavaScript Jabber on, Facebook and Twitter.


AJ O’Neal:

Good Mythical Morning - YouTube

Sam Selikoff:

The Man In the High Castle   Tailwind CSS

MJS 107: Dan Fernandez

May 14, 2019 45:02


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly

Host: Charles Max Wood

Special Guest:  Dan Fernandez

Episode Summary

In this episode of My JavaScript Story, Charles hosts Dan Fernandez, Principal Group Program Manager at Microsoft.

Listen to Dan on the podcast JavaScript Jabber on this episode.

Dan went to a programming camp and fell in love with programming. He majored in Computer Science in college and started working for IBM upon graduation.  Listen to the show for Dan’s journey into programming and much more!

Links JavaScript Jabber 241: Microsoft Docs with Dan Fernandez Dan’s Twitter Dan's LinkedIn Picks

Dan Fernandez:

Microstang: Microsoft helps build a custom Mustang packed with Windows 8 and Kinect JavaScript Jabber 347: JAMstack with Divya Sasidharan & Phil Hawksworth


JSJ 363: Practical JAMstack and Serverless with Gareth McCumskey

May 7, 2019 1:09:46


Sponsors Triplebyte offers a $1000 signing bonus Sentry use the code “devchat” for $100 credit CacheFly Panel Charles Max Wood Aimee Knight AJ O’Neal Aaron Frost Joe Eames

Joined by Special Guest: Gareth McCumskey


Gareth McCumskey introduces JAMstack and serverless. He goes into great detail on how it works. Aimee Knight and Aaron Frost voice their concerns about going serverless. Aimee thinks it feels dirty. Aaron has concerns about the code, is it actually easier, what use cases would he use it for, and does it actually save money. Gareth addresses these concerns and the rest of the panel considers the positive and negatives of using JAMstack and serverless. Charles Max Wood asks for specific use cases; Gareth supplies many uses cases and the benefits that each of these cases.

Links Picks

Charles Max Wood:

Join the mailing list Watch out for new podcasts Send me defunct podcasts you love

Aimee Knight:

Productivity Isn’t About Time Management. It’s About Attention Management. Quest Nutrition Protein Bars

AJ O’Neal:

Distant Worlds: Music from Final Fantasy by Nobuo Uematsu Legend Of Zelda Concert 2018 Original Soundtrack by Never Land Orchestra   How to Diagnose and Fix Everything Electronic by Michael Jay Geier  

Aaron Frost:

The Go-Giver, Expanded Edition: A Little Story About a Powerful Business Idea

Gareth McCumskey: Steam Play on Linux

Joe Eames:

Expanding your horizons Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages Seven More Languages in Seven Weeks: Languages That Are Shaping the Future

MJS 106: Shawn Clabough

May 7, 2019 54:12


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly

Host: Charles Max Wood

Special Guest:  Shawn Clabough

Episode Summary

In this episode of My JavaScript Story, Charles hosts Shawn Clabough, Information Systems Manager and Senior Developer at Washington State University.

Listen to Shawn on the podcast JavaScript Jabber on this episode.

Shawn got interested in computers in high school. His first computer was a TRS-80. Upon graduating from Washington State University, he worked as an assistant buyer at a computer chain store before going back to university to receive further education as a programmer. He then got a job at the University of Idaho where he worked in web application development for 17 years before switching to Washington State University. Currently he is a senior developer and a developer manager at Washington State University. Shawn also works as a custom .NET application development consultant.

Links JavaScript Jabber 258: Development in a Public Institution with Shawn Clabough Shawn's GitHub Shawn’s Twitter Shawn's LinkedIn Pathfinder Roleplaying Game Picks

Shawn Clabough:

UtahJS Slack Group Utah .Net Slack Group Boise Code Camp Visual Studio 2019 Launch Event - Visual Studio Time Bandits The  Movie (1981)

Charles Max Wood:

if you want to be a host on a podcast on tv on any of the below topics, contact Charles Max Wood  Open Source Sustainability and Maintainability AI & Machine Learning Data Science Augmented Reality & Virtual Reality & Mixed Reality Internet of Things (IoT) Python .Net If you are interested in becoming a sponsor for any of the above topics or the existing podcasts on, contact Charles Max Wood 


If you are interested in being represented by Charles Max Wood for a sponsorship contract for a podcast in any of the above topics, contact Charles Max Wood


If you were listening to a podcast in any of the above topics or any other programming related subject that ended abruptly within the last 6 months and would like it continued please contact Charles Max Wood. We would like to host these shows on Most of time time podcasts stop being recorded due to lack of time or lack of money.


Become a Podwrench Beta User! If you would like to host a podcast but do not want to do it on tv then Podwrench is for you! Podwrench is a complete podcasting system that allows you to manage your podcast and sponsorship contracts all in one place! Please contact Charles Max Wood for more info.


JSJ 362: Accessibility with Chris DeMars

Apr 30, 2019 1:03:26



Sentry use code “devchat” for 2 months free

Triplebyte $1000 signing bonus


Charles Max Wood

Aimee Knight

Chris Ferdinandi

AJ O’Neal

Joe Eames

Joined by Special Guest: Chris DeMars

Episode Summary

Special guest Chris DeMars is from Detroit, MI. Currently, he works for Tuft and Needle and is an international speaker, Google developer expert, Microsoft mvp, and web accessibility specialist. He comes from a varied work background, including truck driving and other non-tech jobs.


Today the panel discusses web accessibility for people with disabilities. According to a study done by WebAIM, 97.8% of homepages tested had detectable WCAG 2 failures. The panel discusses why web accessibility is doing so poorly. Chris talks about some of the biggest mistakes he sees and some very simple fixes to make sites more accessible. Chris talks about the importance of manual testing on screen readers and emphasizes that it is important to cover the screen to make sure that it really works with a screen reader. Chris talks about some of the resources available for those who wish to increase accessibility on their sites.


The team discusses tactics for prioritizing accessibility and if there is a moral obligation to make sites accessible to those with disabilities. Chris talks about his experience making accessibility a priority for one of the companies he worked for in the past. They discuss the futue of legal ramifications for sites that do not incorporate accessibility, and what responsibility falls on the shoulders of people who regularly use assistive devices to notify companies of issues. They finish the show with resources available to people who want to learn more.



Semantic markup writings

Alt attribute

Axe by DeQue


Aria lable

WebAim study

Follow DevChat on Facebook and Twitter


Charles Max Wood:


Aimee Knight:

Implementing Git in Python tutorial

Chris Ferdinandi:

"Fighting Uphill" by Eric Bailey

“The Web We Broke” by Ethan Marcotte

AllBirds sneakers


AJ O’Neal:

Golang Channel vs Mutex vs WaitGroup

Nobuo Uematsu

The Best Way to Tin Enameled Wire

Joe Eames:

Gizmos board game accessibility course (not released yet)

Chris DeMars:

Dixxon Flannel Company accessibility simulator

Refactr accessibility workshop in June

Follow Chris

MJS 105: Brian Woodward

Apr 30, 2019 26:35


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly Host: Charles Max Wood Guest: Brian Woodward Summary

Brian Woodward shares his programming story starting at 7 or 8 messing around on his dad's computer and getting a degree in computer science. Brian discusses his journey through technologies and why he decided to work with JavaScript. Brian discloses his struggle with deciding what to do as a programmer and his decision to get a business degree. Today Brian is the co-founder of Sellside, he discusses their tools and stack and what they are currently working on.

Links Picks

Brain Woodward:

Charles Max Wood:

JSJ 361: Enough with the JS Already with Nicholas Zakas

Apr 23, 2019 1:08:20


Sponsors Triplebyte offers a $1000 signing bonus Sentry use the code “devchat” for $100 credit CacheFly Panel AJ O’Neal Joe Eames Aimee Knight Charles Max Wood Chris Ferdinandi

Joined by Special guest: Nicholas Zakas


Nicholas Zakas discusses the overuse of JavaScript and the underuse of HTML and CSS. The panel contemplates the talk Nicholas Zakas gave 6 years ago about this very same topic and how this is still a problem in the development community. Nicholas expounds on the negative effects overusing Javascript has on web applications and the things that using HTML and CSS do really well. The panel talks about the need for simplicity and using the right tool to build applications. Nicholas recommends the methods he uses to build greenfield applications and to improve existing applications.

Links Picks

Chris Ferdinandi:

The Umbrella Academy Official Trailer

AJ O’Neal:

Jurassic Park Terminator 2 E6000 adhesive

Aimee Knight:

Charles Max Wood:

Joe Eames: Richard Castle books

Nicholas Zakas:

The Power of Full Engagement: Managing Energy, Not Time, Is the Key to High Performance and Personal Renewal by Jim Loehr and Tony Schwartz

MJS 104: Ethan Brown

Apr 23, 2019 44:10


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly

Host: Charles Max Wood

Special Guest: Ethan Brown


Ethan Brown shares his story starting with his homeschooling days and getting into programming. He started selling commercial software through his dad’s company at age 16. At age 17 he was recruited for a programming job and moved to New Jersey. Ethan and Charles discuss getting university degrees, whether or not to get them and share their experiences at university. Ethan talks about getting into javascript, what he has done in the Javascript community, and his experience giving talks at conferences. They discuss what the stack looks like for Ethan's company, Value Management Strategies, and what Ethan is currently working on. Ethan ends the episode by talking about one turning point in his career.

Links Web Development with Node and Express: Leveraging the JavaScript Stack by Ethan Brown Picks

Charles Max Wood: Audiograms

Ethan Brown

JSJ 360: Evolutionary Design with James Shore

Apr 16, 2019 1:02:33


Sponsors Triplebyte $1000 signing bonus Sentry use the code “devchat” for $100 credit CacheFly Panel Aaron Frost AJ O’Neal Joe Eames Aimee Knight Chris Ferdinandi

Joined by special guest: James Shore

Episode Summary

Special guest James Shore returns for another episode of JavaScript Jabber. Today the panel discusses the idea of evolutionary design. Evolutionary design comes from Agile development. It is based on the principles of continuous integration and delivery and test driven development. In short, evolutionary design is designing your code as you go rather than in advance.

The panelists discuss the difficulties of evolutionary design and how to keep the code manageable.  James Shore introduces the three types of design that make up evolutionary design, namely simple design, incremental design, and continuous design. They talk about the differences between evolutionary design and intelligent design and the correlations between evolutionary design increasing in popularity and the usage of Cloud services. They talk about environments that are and are not conducive to evolutionary design and the financial ramifications of utilizing evolutionary design.

The panelists talk about the difficulties of planning what is needed in code and how it could benefit from evolutionary design. James enumerates the steps for implementing evolutionary design, which are upfront design, reflective design, and refactoring . The team ends by discussing the value of frameworks and how they fit with evolutionary design.


Agile Angular API CRC cards (class responsibility collaborators) Ember IntelliJ NPM React Redux Scrum Waterfall XJS Picks

AJ O’Neal:

Spiderman: Into the Spider-Verse Pre-gap tracks album list QuickChip remover alloy

Aimee Knight: Bouldering

James Shore:

Spiderman: Into the Spider Verse Pandemic Legacy

Aaron Frost:

Easter Candy, especially Nerd Jelly beans Cadbury Mini Eggs Fun D&D moments

Joe Eames:

Chronicles of Crime board game

MJS 103: Isaac Schlueter

Apr 16, 2019 51:43


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly 

Host: Charles Max Wood

Special Guest: Isaac Schlueter

Episode Summary

In this episode of My JavaScript Story, Charles Max Wood hosts Isaac Schlueter, co-founder and Chief Product Officer at NPM.

Listen to Isaac’s journey as a developer on the podcast My Java Story on this episode and on the podcast My Angular Story on this episode.

Isaac recently switched roles from Chief Executive Officer to Chief Product Officer, he explains the reasoning behind this switch. He talks about NPM Enterprise and its value proposition. He talks about projects he is working on currently and also the future of NPM. He also talks about the current available positions at NPM, both in Oakland, CA and remote.

Links My JavaScript Story Isaac Schlueter My Angular Story Isaac Schlueter JavaScript Jabber Node & NPM with Isaac Schlueter Isaac's Twitter NPM's Twitter NPM's blog NPM website Picks

Isaac Schlueter:

Ink Umbrella Academy Netflix I Love Hue Do By Friday

Charles Max Wood:

The Expanse (TV Series) The Travelers (TV Series) Podfest Multimedia Expo Netlify Eleventy We're Alive Charles’ Personal Blog  

JSJ 359: Productivity with Mani Vaya

Apr 9, 2019 1:10:42


Sponsors Sentry use the code “devchat” for $100 credit Triplebyte CacheFly Panel Aaron Frost AJ O’Neal Joe Eames Aimee Knight Charles Max Wood

Joined by special guest: Mani Vaya

Episode Summary

This episode features special guest Mani Vaya, who used to write assembly level coding, but now specializes in productivity. He has read thousands of books on the subject and summarized them for those on a time crunch. He has also been a guest on other DevChat shows, including Ruby Rogues. Mani defines productivity as the difference between efficiency and effectiveness. Efficiency is doing things the right way, effectiveness is doing the right things. The panel discusses how to optimize for effectiveness by focusing on the most important things, focusing on results, and being goal driven rather than time driven.

The panelists consider how to account for the necessities of life and how to incorporate breaks into focused work. Mani introduces the idea of ‘attention space’ and discourages switching between activities to maximize attention space. The key to doing high quality work is no distractions for an extended period of time. Mani and Chuck talk about an experiment they did involving the Pomodoro method and how it impacted their work. The panelists talk about the importance of batching their work, and how to implement these methods in a real work environment.


Entreprogrammers Deep Work by Cal Newport Effective Executive by Peter Drucker Pomodoro technique Seven Habits of Highly Effective People by Stephen R. Covey Essentialism by Greg McKeown The One Thing by Gary Keller Procrastinate On Purpose by Rory Vaden Mani’s 10x Productivity Course use the code “devchat” for a discount Picks

AJ O’Neal:

M. Night Shyamalan’s The Village colophony/pine sap/rosin/flux for electronics work

Aimee Knight:

Interested In Becoming A Site Reliability Engineer? blog post

Charles Max Wood:

Entreprogrammers episode 248 Kanbonflow Physical Pomodoro timer

Mani Vaya:

NPR’s How I Built This podcast 2000 Books podcast

MJS 102: Gil Tayar

Apr 9, 2019 39:58


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan CacheFly 

Host: Charles Max Wood

Special Guest: Gil Tayar

Episode Summary

In this episode of My JavaScript Story, Charles Max Wood hosts Gil Tayar, a Senior Architect at Applitools from Israel.

Listen to Gil on the podcast JavaScript Jabber Testing in JavaScript with Gil Tayar.

Gil started his developing journey when he was 13 years old. He continued his training during his military service and became an instructor for the PC unit. During this time, he learned and taught C, C++ and Windows. He then started working  for Wix before he went onto co-found his own startup. You can listen to Dan Shappir, another developer from Wix that has been a guest on the podcast JavaScript Jabber on this episode.

During this experience Gil realized he loves the coding side of the business but not the management side. Gil also loves testing and he very much enjoys his work at Applitools. As a Senior Architect in Applitools R&D, he has designed and built Applitools' Rendering Service.


JavaScript Jabber: Testing in JavaScript with Gil Tayar JavaScript Jabber: “Web Performance API” with Dan Shappir Start-up Nation: The Story of Israel's Economic Miracle by Dan Senor and Saul Singer WIX Gil’s LinkedIn Gil’s Twitter Gil’s Medium Applitools Kubernetes Picks

Gil Tayar:

The Polish German War The Great War 1919 Channel Peaky Blinders My Struggle (Knausgård novels)

Charles Max Wood:

The MFCEO Project Podcast - Andy Frisella The #AskGaryVee Show podcast! - Gary Vaynerchuk A Farewell to Arms by Ernest Hemingway



JSJ 358: Pickle.js, Tooling, and Developer Happiness with Anatoliy Zaslavskiy

Apr 2, 2019 1:06:30



Triplebyte offers a $1000 signing bonus

Sentry use the code “devchat” for $100 credit



AJ O’Neal

Charles Max Wood

Joined by Special Guest: Anatoliy Zaslavskiy


Anatoliy Zaslavskiy introduces pickle.js and answers the panels questions about using it. The panel discusses the automated testing culture and employee retention. The panel discusses job satisfaction and why there is so much turn over in development jobs. Charles Max Wood reveals some of the reasons that he left past development jobs and the panel considers how the impact of work environments and projects effect developers. Ways to choose the right job for you and how to better a work situation is discussed. Anatoliy finishes by advocating for junior developers and explaining the value they bring to a company.



AJ O’Neal

The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win by Gene Kim

How to Diagnose and Fix Everything Electronic, Second Edition by Michael Jay Geier  

Charles Max Wood

The 1-Page Marketing Plan: Get New Customers, Make More Money, And Stand out From The Crowd by Allan Dib

Skyward by Brandon Sanderson

Anatoliy Zaslavskiy

Acro yoga


MJS 101: Chris Ferdinandi

Mar 28, 2019 51:01


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Clubhouse CacheFly 

Host: Charles Max Wood

Special Guest: Chris Ferdinandi

Episode Summary

In this episode of My JavaScript Story, Charles Max Wood hosts Chris Ferdinandi, a Senior Front-End Engineer at Mashery. Chris is also a panelist on the podcast JavaScript Jabber and runs Go Make Things.

Chris started out his career as in Human Resources, decided he wanted to go into development after he was asked to work on a coding project by his manager and he really enjoyed it. He got his first coding job as an entry level developer after attending a web development conference.

Chris authors Vanilla JavaScript Pocket Guides which are short, focused e-books and video courses made for beginners.

Links JavaScript Jabber: How To Learn JavaScript When You’re Not a Developer with Chris Ferdinandi Vanilla JavaScript Pocket Guides Go Make Things Chris' GitHub Chris' Twitter Chris' LinkedIn Mashery Picks

Chris Ferdinandi:

Accessibility: Back to the Future by Bruce Lawson Ralph Breaks the Internet | Disney Movies

Charles Max Wood:

Running along San Francisco Bay Marriage

MJS 100: Joe Eames

Mar 27, 2019 1:00:43


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Clubhouse CacheFly 

Host: Charles Max Wood

Guest: Joe Eames

Episode Summary

In this episode of My JavaScript Story, Charles Max Wood hosts Joe Eames, CEO of and organizer of many different conferences, two of which are the AngularJS conference, ng-conf, and the WordPress developer conference, LoopConf.

Joe is a front end web developer and an educator. He has authored over 10 courses. He is also a panelist on the JavaScript Jabber podcast and the Adventures in Angular podcast on DevChat.TV.

Joe talks about his passion project, being on the organization team of Framework Summit, a two-day conference focused on all front end JavaScript frameworks, the first of which was held in Utah in October 2018. It was a great success and he and the rest of the organization team will be looking to repeat it in January of 2020.

Another conference Joe was involved in organizing was React Conf 2018 which took place in October in Henderson, Nevada. He is in the process of organizing the React Conf 2019 with the rest of the organization team.

Aside from organizing conferences Joe’s second passion is education. He has started up a podcast called Dev Ed Podcast.

Joe has recently become the CEO of is a unique platform where learners can really master web development with a lot of hands on training. Joe wants developers to be able to learn how to “generate” solutions to problems. He explains the concept of “interleaving” while learning a subject which helps students retain more and learn faster.

Links My Angular Story 049: Joe Eames My Angular Story 073: Joe Eames Dev Ed Podcast Picks

Joe Eames:

Gizmo Board Game Chronicles of Crime Board Game Deep Space D-6 Board Game

Charles Max Wood:

Villainous Board Game Pandemic Legacy Season 2 Board Game Splendor Board Game Harry Potter: Hogwarts Battle Board Game

JSJ 357: Event-Stream & Package Vulnerabilities with Richard Feldman and Hillel Wayne

Mar 26, 2019 01:10:16


Sponsors Triplebyte Sentry use the code “devchat” for $100 credit Clubhouse CacheFly Panel Aaron Frost AJ O’Neal Chris Ferdinandi Joe Eames Aimee Knight Charles Max Wood

Joined by special guests: Hillel Wayne and Richard Feldman

Episode Summary

In this episode of JavaScript Jabber, Hillel Wayne kicks off the podcast by giving a short background about his work, explains the concepts of formal methods and the popular npm package - event-stream, in brief. The panelists then dive into the recent event-stream attack and discuss it at length, focusing on different package managers and their vulnerabilities, as well as the security issues associated with them. They debate on whether paying open source developers for their work, thereby leading to an increase in contribution, would eventually help in improving security or not. They finally talk about what can be done to fix certain dependencies and susceptibilities to prevent further attacks and if there are any solutions that can make things both convenient and secure for users.


STAMP model in accident investigation Hillel’s Twitter Hillel’s website Richard’s Twitter Stamping on Event-Stream


Joe Eames:

Stuffed Fables

Aimee Knight:

SRE book - Google Lululemon leggings DVSR - Band

Aaron Frost:


Chris Ferdinandi:

Paws New England Vanilla JS Guides

Charles Max Wood:

Sony Noise Cancelling Headphones KSL Classifieds Upwork

Richard Feldman:

Elm in Action Sentinels of the Multiverse

Hillel Wayne:

Elm in the Spring Practical TLA+ Nina Chicago - Knitting Tomb Trader

MJS 099: Christopher Buecheler

Mar 20, 2019 42:45


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Clubhouse CacheFly 

Host: Charles Max Wood

Guest: Christopher Buecheler

Episode Summary

In this episode of My JavaScript Story, Charles hosts Christopher Buecheler, novelist, web developer and founder of CloseBrace, a JavaScript tutorial and resource site.

Christopher is a self-taught full-stack web developer with extensive experience in programming with JavaScript, jQuery, React.js, Angular.js, and much more. Listen to Christopher on the  JavaScript Jabber podcast.

Christopher started CloseBrace because he really enjoys helping people and giving back to the community. In his spare time, he writes science fiction novels and is also working on a web application for knitting called Stitchly with a friend.

Links CloseBrace React.js Christopher Buecheler’s Twitter Christopher Buecheler’s Website Christopher Buecheler’s LinkedIn Christopher Buecheler’s GitHub Christopher Buecheler's Amazon link Elixir by Christopher Buecheler Picks

Christopher Buecheler:

Bracket Pair Colorizer Highlight Matching Tag Fifth Season by N. K. Jemisin

Charles Max Wood:

Language Server Extension Guide RRU 015: Visual Studio Code with Rachel MacFarlane and Matt Bierner LIVE at Microsoft Build VoV 015: Visual Studio Code with Rachel MacFarlane and Matt Bierner LIVE at Microsoft Build

JSJ 356: Build Websites Like It's 2005 with Keith Cirkel

Mar 19, 2019 56:18


Sponsors Triplebyte Sentry use the code “devchat” for $100 credit Clubhouse CacheFly Panel Chris Ferdinandi Aimee Knight Aaron Frost AJ O’Neal

Joined by special guest: Keith Cirkel

Episode Summary

In this episode of JavaScript Jabber, Keith Cirkel, Senior Application Engineer at GitHub, briefly explains the projects he is working with and moves on to the recent changes done by GitHub to their website, including the decision to remove jQuery, and not choosing a popular framework such as React or Vue. He talks about some problems in using Internet Explorer 11, how these GitHub changes can help with certain browser compatibility issues, and a few challenges the team had to face during the redesigning process.

The panelists then discuss event delegation, performance considerations, and web components. Keith gives some insight into accessibility and they talk about related user concerns.

Links Keith’s website Keith’s GitHub Keith’s Twitter GitHub Engineering blog Financial Times – Polyfill service Include fragment - element Picks

Aaron Frost:

Bag Man What It’s Like to Be A Woman on the Internet

Aimee Knight:

Smooth Sailing with Kubernetes

Joe Eames:

GitHub Free users get free unlimited private repositories Swig Things I don’t know as of 2018

AJ O’Neal:

Isopropyl alcohol Bang good electronics Soldering Iron – Hakko, X-Tronic

Keith Cirkel:

GitHub careers Heston’s Pod & Chips Brexit

Chris Ferdinandi:

52 things I learned in 2018 Learn Vanilla JS

MJS 098: Vitali Zaidman

Mar 13, 2019 37:12


Sponsors Sentry use the code “devchat” for 2 months free on Sentry small plan Triplebyte offers a $1000 signing bonus Clubhouse CacheFly

Host: Charles Max Wood

Guest: Vitali Zaidman

Episode Summary

In this episode of My JavaScript Story, Charles hosts Vitali Zaidman, Technical Lead at WellDone Software Solutions. He is also the author of the popular blog piece: “An Overview of JavaScript Testing in 2019”.

Vitali has been writing code since he was 13 years old. After completing his military service, he attended The Open University of Israel where he took computer science courses. He picked JavaScript not knowing that it was going to be so popular.

He has been working for WellDone Software Solutions since he was a student where he has had the chance to work in many different projects. Vitali feels in order to keep up with technology it is important to work in different projects.

Vitali talks about projects he has worked on that he is proud of, one of which is his library at

Links JSJ 331: An Overview of JavaScript Testing in 2018 with Vitali Zaidman Picks

Vitali Zaidman: An Overview of JavaScript Testing in 2019 by Vitali Zaidman

Charles Max Wood: Player's Handbook Dungeons & Dragons Core Rule Book

JSJ 355: Progressive Web Apps with Aaron Gustafson LIVE at Microsoft Ignite

Mar 12, 2019 55:53


Sponsors Sentry use the code “devchat” for $100 credit Triplebyte Clubhouse CacheFly Panel Charles Max Wood

Joined by special guest: Aaron Gustafson

Episode Summary 

This episode of JavaScript Jabber comes to you live from Microsoft Ignite. Charles Max Wood talks to Aaron Gustafson who has been a Web Developer for more than 20 years and is also the Editor in Chief at “A List Apart”. Aaron gives a brief background on his work in the web community, explains to listeners how web standardization has evolved over time, where Progressive Web Apps (PWAs) come from, where and how can they be installed, differences between them and regular websites and their advantages. They then delve into more technical details about service workers, factors affecting the boot up time of JavaScript apps, best practices and features that are available with PWAs. 

Aaron mentions some resources people can use to learn about PWAs, talks about how every website can benefit from being a PWA, new features being introduced and the PWA vs Electron comparison. In the end, they also talk about life in general, that understanding what people have gone through and empathizing with them is important, as well as not making judgements based on people’s background, gender, race, health issues and so on.

Links Creating & Enhancing Netscape Web Pages A List Apart A Progressive Roadmap for your Progressive Web App Windows Dev Center - Progressive Web Apps MDN web docs PWA Stats PWA Stats Twitter Aaron’s website Aaron’s Twitter Picks

Aaron Gustafson:

Homegoing Zeitoun

Charles Max Wood:


MJS 097: Charles Lowell

Mar 6, 2019 56:26


Sponsors: Sentry– use the code “devchat” for $100 credit Clubhouse

Host: Charles Max Wood

Guest: Charles Lowell

JSJ 354: Elm with Richard Feldman

Mar 5, 2019 37:56


Sponsors Kendo UI Sentry use the code “devchat” for $100 credit Clubhouse CacheFly Panel Joe Eames Aimee Knight

Joined by special guest: Richard Feldman

Episode Summary

In this episode of JavaScript Jabber, Richard Feldman, primarily known for his work in Elm, the author of “Elm in Action” and Head of Technology at NoRedInk, talks about Elm 0.19 and the new features introduced in it. He explains how the development work is distributed between the Elm creator – Evan Czaplicki and the other members of the community and discusses the challenges on the way to Elm 1.0.

Richard also shares some educational materials for listeners interested in learning Elm and gives details on Elm conferences around the world touching on the topic of having diversity among the speakers. He finally discusses some exciting things about Elm which would encourage developers to work with it.

Links Elm in Action Frontend Masters – Introduction to Elm Frontend Masters – Advanced Elm Small Assets without the Headache Elm Guide ElmBridge San Francisco Renee Balmert Picks

Aimee Knight:

Most lives are lived by default

Joe Eames:


Richard Feldman:

Framework Summit 2018 – Keynote speech Nix Package Manager A Philosophy of Software Design

JSJ 353: Signal R with Brady Gaster LIVE at Microsoft Ignite

Feb 27, 2019 51:41


Sponsors: Netlify Sentry use the code “devchat” for $100 credit Clubhouse Panel:

Charles Max Wood

Special Guest: Brady Gaster

In this episode, Chuck talks with Brady Gaster about SignalR that is offered through Microsoft. Brady Gaster is a computer software engineer at Microsoft and past employers include Logical Advantage, and Market America, Inc. Check out today’s episode where the two dive deep into SignalR topics.

Links: Vue jQuery Angular C# Chuck’s Twitter SignalR SignalR’s Twitter GitHub SignalR Node-SASS ASP.NET SignalR Hubs API Guide – JavaScript Client Real Talk JavaScript Parcel Brady Gaster’s Twitter Brady Gaster’s GitHub Brady Gaster’s LinkedIn Picks:


Team on General Session Korg SeaHawks Brady’s kids Logictech spot light AirPods


Express VPN Hyper Drive J5 ports and SD card readers Podwrench

MJS 096: Bart Wood

Feb 26, 2019 22:14


Sponsors: Sentry– use the code “devchat” for $100 credit Clubhouse

Host: Charles Max Wood

Guest: Bart Wood


Episode Summary

In this episode of My JavaScript Story, Charles Max Wood speaks with his namesake Bart Wood. They talked about tools for tracking and monitoring problems while using apps.  One app in particular was able to track new releases and errors, automatically scrub passwords to secure information as well as customize the scrubbing process while allowing users to provide feedback. 

Charles delves into the past of Bart Wood who has been working with the same company, Henry Shine.  He started studying Economics before he got into programming by chance and eventually ended up graduating with a Masters in Computer Science.  Initially Bart had misconceptions of computing and eventually realized that it was not only about maintaining the OS system and learning keyboard strokes, but creating new apps and delving into the world of creating new software.

MJS 095: Misko Hevery

Feb 20, 2019 45:24


Sponsors Sentry use the code "devchat" for $100 credit Clubhouse Panel: Charles Max Wood Guest: Misko Hevery

JSJ 352: Caffeinated Style Sheets: Supporting High Level CSS with JavaScript with Tommy Hodgins

Feb 19, 2019 50:15


Sponsors Sentry- use the code “devchat” for $100 credit Netlify Clubhouse CacheFly


Episode Summary  

In this episode of JavaScript Jabber, the panelists talk with Tommy Hodgins who specializes in responsive web design. He starts with explaining to listeners what it means by a responsive web layout and goes on to discuss the techniques in using JavaScript in CSS in depth.

He elaborates on dynamic styling of components, event-driven stylesheet templating, performance and timing characteristics of these techniques and describes different kinds of observers – interception, resize and mutation, and their support for various browsers. He also talks about how to go about enabling certain features by extending CSS, comparison to tools such as the CSS preprocessor and Media Queries, pros and cons of having this approach while citing relevant examples, exciting new features coming up in CSS, ways of testing the methods, caffeinated stylesheets, along with Qaffeine and Deqaf tools.

Links JS in CSS – Event driven virtual stylesheet manager Qaffiene Deqaf Tommy’s Twitter Fizzbuzz




The Captain Is Dead


Developer on Call Tip – Try to follow a low-sugar diet


Tommy’s snippets on Twitter – JS in CSS All things frontend blog Gulp project


Coaching by Charles in exchange of writing Show Notes or Tags



MJS 094: Lee Byron

Feb 13, 2019 48:45


Sponsors Sentry use the code "devchat" for $100 credit Clubhouse Panel: Charles Max Wood Guest: Lee Byron

JSJ 351: Dinero.js with Sarah Dayan

Feb 12, 2019 1:12:08


Sponsors Netlify Sentry use the code "devchat" for $100 credit Clubhouse

MJS 093: Ben Lesh

Feb 6, 2019 53:19


Sponsors Sentry use the code "devchat" for $100 credit Clubhouse

JSJ 350: JavaScript Jabber Celebrates Episode 350!

Feb 5, 2019 1:06:43


Sponsors Netlify Sentry use the code "devchat" for $100 credit Clubhouse Panel: Charles Max Wood AJ O’Neal Aimee Knight Aaron Frost Chris Ferdinandi Joe Eames Tim Caswell Picks:

Charles Max Wood

Villainous Board Game

Joe Eames

Azul Stained Glass Board Game

AJ O’Neal Magnetic Hourglass: Amazon Hobby Lobby $6 

Aimee Knight

Aaron Frost

Matrix PowerWatch

Chris Ferdinandi

Tim Caswell

MJS 092: Shashank Shekhar

Jan 31, 2019 19:01


Sponsors Sentry use the code "devchat" for $100 credit Clubhouse

JSJ 349: Agile Development - The Technical Side with James Shore

Jan 30, 2019 59:46


Sponsors KendoUI Sentry use the code "devchat" for $100 credit Clubhouse

MJS 091: Jamund Ferguson

Jan 24, 2019 39:52


Sponsors Sentry use the code "devchat" for $100 credit Clubhouse

JSJ 348: EnactJS with Ryan Duffy

Jan 22, 2019 44:08


Sponsors KendoUI Sentry use the code "devchat" for $100 credit Clubhouse

JSJ 347: JAMstack with Divya Sasidharan & Phil Hawksworth

Jan 15, 2019 1:21:54


Sponsors KendoUI Sentry use the code "devchat" for $100 credit Clubhouse

JSJ 346: Azure Pipelines with Ed Thomson LIVE at Microsoft Ignite

Jan 8, 2019 43:19



KendoUI Sentry use the code "devchat" for $100 credit Clubhouse


Charles Max Wood

Special Guests: Ed Thomson

In this episode, the Charles speaks with Ed Thomson who is a Program Manager at Azure through Microsoft, Developer, and Open Source Maintainer. Ed and Chuck discuss in full detail about Azure DevOps! Check out today’s episode to hear its new features and other exciting news!

Show Topics:

0:59 – Live at Microsoft Ignite

1:03 – Ed: Hi! I am a Program Manager at Azure.

1:28 – Rewind 2 episodes to hear more about Azure DevOps!

1:51 – Ed: One of the moves from Pipelines to DevOps – they could still adopt Pipelines. Now that they are separate services – it’s great.

2:38 – Chuck talks about features he does and doesn’t use.

2:54 – Ed.

3:00 – Chuck: Repos and Pipelines. I am going to dive right in. Let’s talk about Repos. Microsoft just acquired GitHub.

3:18 – Ed: Technically we have not officially acquired GitHub.

3:34 – Chuck: It’s not done. It’s the end of September now.

3:55 – Ed: They will remain the same thing for a while. GitHub is the home for open source. Repos – we use it in Microsoft. Repositories are huge. There are 4,000 engineers working in these repositories. Everyone works in his or her own little area, and you have to work together. You have to do all this engineering to get there. We bit a tool and it basically if you run clone...

Ed continues to talk about this topic. He is talking about One Drive and these repositories.

6:28 – Ed: We aren’t going to be mixing and matching. I used to work through GitHub. It’s exciting to see those people work close to me.

6:54 – Chuck.

6:59 – Ed: It has come a long way.

7:07 – Chuck: Beyond the FSF are we talking about other features or?

7:21 – Ed: We have unique features. We have branch policies. You can require that people do pole request. You have to use pole request and your CI has to pass and things like that. I think there is a lot of richness in our auditing. We have enterprise focus. At its core it still is Git. We can all interoperate.

8:17 – Chuck.

8:37 – Ed: You just can’t set it up with Apache. You have to figure it out.

8:51 – Chuck: The method of pushing and pulling.

9:06 – Chuck: You can try DevOps for free up to 5 users and unlimited private repos. People are interested in this because GitHub makes you pay for that.

9:38 – Ed and Chuck continue to talk.

9:50 – Ed: Pipelines is the most interesting thing we are working on. We have revamped the entire experience. Build and release. It’s easy to get started. We have a visual designer. Super helpful – super straightforward. Releases once your code is built – get it out to production say for example Azure. It’s the important thing to get your code out there.

10:55 – Chuck: How can someone start with this?

11:00 – Ed: Depends on where your repository is. It will look at your code. “Oh, I know what that is, I know how to build that!” Maybe everyone isn’t doing everything with JavaScript. If you are using DotNet then it will know.

12:05 – Chuck: What if I am using both a backend and a frontend?

12:11 – Ed: One repository? That’s when you will have to do a little hand packing on the...

There are different opportunities there. If you have a bash script that does it for you. If not, then you can orchestrate it. Reduce the time it takes. If it’s an open source project; there’s 2 – what are you going to do with the other 8? You’d be surprised – people try to sneak that in there.

13:30 – Chuck: It seems like continuous integration isn’t a whole lot complicated.

13:39 – Ed: I am a simple guy that’s how I do it. You can do advanced stuff, though. The Cake Build system – they are doing some crazy things. We have got Windows, Lennox, and others. Are you building for Raspberries Pies, then okay, do this...

It’s not just running a script.

15:00 – Chuck: People do get pretty complicated if they want. It can get complicated. Who knows?

15:26 – Chuck:  How much work do you have to do to set-up a Pipeline like that?

15:37 – Ed answers the question in detail.

16:03 – Chuck asks a question.

16:12 – Ed: Now this is where it gets contentious. If one fails...

Our default task out of the box...

16:56 – Chuck: If you want 2 steps you can (like me who is crazy).

17:05 – Ed: Yes, I want to see if it failed.

17:17 – Chuck: Dude, writing code is hard. Once you have it built and tested – continuous deployment.

17:33 – Ed: It’s very easy. It’s super straightforward, it doesn’t have to be Azure (although I hope it is!).

Ed continues this conversation.

18:43 – Chuck: And it just pulls it?

18:49 – Ed: Don’t poke holes into your firewall. We do give you a lot of flexibility

19:04 – Chuck: VPN credentials?

19:10 – Ed: Just run the...

19:25 – Chuck comments.

19:36 – Ed: ...Take that Zip...

20:02 – Ed: Once the planets are finely aligned will just pull from it.

20:25 – Chuck: I host my stuff on Digital Ocean.

20:46 – Ed: It’s been awhile since I played with...

20:55 – Chuck.

20:59 – Ed and Chuck go back and forth with different situations and hypothetical situations.

21:10 – Ed: What is Phoenix?

21:20 – Chuck explains it.

21:25 – Ed: Here is what we probably don’t have is a lot of ERLANG support.

22:41 – Advertisement.

23:31 – Chuck: Let’s just say it’s a possibility. We took the strip down node and...

23:49 – Ed: I think it’s going to happen.

23:55 – Ed: Exactly.

24:02 – Chuck: Testing against Azure services. So, it’s one thing to run on my machine but it’s another thing when other things connect nicely with an Azure set-up. Does it connect natively once it’s in the Azure cloud?

24:35 – Ed: It should, but there are so many services, so I don’t want to say that everything is identical. We will say yes with an asterisk.

25:07 – Chuck: With continuous deployment...

25:41 – Ed: As an example: I have a CD Pipeline for my website. Every time I merge into master...

Ed continues this hypothetical situation with full details. Check it out!

27:03 – Chuck: You probably can do just about anything – deploy by Tweet!

27:15 – Ed: You can stop the deployment if people on Twitter start complaining.

27:40 – Chuck: That is awesome! IF it is something you care about – and if it’s worth the time – then why not? If you don’t have to think about it then great. I have mentioned this before: Am I solving interesting problems? What projects do I want to work on? What kinds of contributions do I really want to contribute to open source?

That’s the thing – if you have all these tools that are set-up then your process, how do you work on what, and remove the pain points then you can just write code so people can use! That’s the power of this – because it catches the bug before I have to catch it – then that saves me time.

30:08 – Ed: That’s the dream of computers is that the computers are supposed to make OUR lives easier. IF we can do that and catch those bugs before you catch it then you are saving time. Finding bugs as quickly as possible it avoids downtime and messy deployments.

31:03 – Chuck: Then you can use time for coding style and other things.

I can take mental shortcuts.

31:37 – Ed: The other thing you can do is avoiding security problems. If a static code analysis tool catches an integer overflow then...

32:30 – Chuck adds his comments.

Chuck: You can set your policy to block it or ignore it. Then you are running these tools to run security. There are third-party tools that do security analysis on your code. Do you integrate with those?

33:00 – Ed: Yep. My favorite is WhiteSource. It knows all of the open source and third-party tools. It can scan your code and...

34:05 – Chuck: It works with a lot of languages.

34:14 – Ed.

34:25 – Chuck: A lot of JavaScript developers are getting into mobile development, like Ionic, and others. You have all these systems out there for different stages for writing for mobile. Android, windows Phone, Blackberry...

35:04 – Ed: Let’s throw out Blackberry builds. We will ignore it.

Mac OS dies a fine job. That’s why we have all of those.

35:29 – Chuck: But I want to run my tests, too!

35:36 – Ed: I really like to use App Center. It is ultimately incredible to see all the tests you can run.

36:29 – Chuck: The deployment is different, though, right?

36:40 – Ed: I have a friend who clicks a button in...

Azure DevOps.

37:00 – Chuck: I like to remind people that this isn’t a new product.

37:15 – Ed: Yes, Azure DevOps.

37:24 – Chuck: Any new features that are coming out?

37:27 – Ed: We took a little break, but...

37:47 – Ed: We will pick back up once Ignite is over. We have a timeline on our website when we expect to launch some new features, and some are secret, so keep checking out the website.

39:07 – Chuck: What is the interplay between Azure DevOps and Visual Studio Code? Because they have plugins for freaking everything. I am sure there is something there that...

39:30 – Ed: I am a VI guy and I’m like 90% sure there is something there.

You are an eMac’s guy?

The way I think about it is through Git right out of the box.

Yes, I think there are better things out there for integration. I know we have a lot of great things in Visual Code, because I worked with it.

40:45 – Chuck: Yes, people can look for extensions and see what the capabilities are.

Chuck talks about code editor and tools. 

41:28 – Ed: ... we have been pulling that out as quickly as possible.

We do have IE extensions, I am sure there is something for VS Code – but it’s not where I want to spend my time.

42:02 – Chuck: Yes, sure.

42:07 – Ed: But everyone is different – they won’t work the way that I work. So there’s that.

42:30 – Ed: That Chuck.

42:36 – Chuck: Where do people get news?

42:42 – Ed: Go to here!

42:54 – Chuck: Where do people find you?

43:00 – Ed: Twitter!

43:07 – Chuck: Let’s do Picks!

43:20 – Advertisement – Fresh Books!


GitHub Microsoft’s Azure Microsoft’s Pipeline Azure DevOps Erlang WhiteSource Chuck’s Twitter Ed Thomson’s Twitter Ed Thomson’s GitHub Ed Thomson’s Website Ed Thomson’s LinkedIn



Podcast - All Things Git

JSJ 345: Azure Devops with Donovan Brown LIVE at Microsoft Ignite

Dec 25, 2018 57:32



Charles Max Woods

Special Guests: Donovan Brown

In this episode, the Charles speaks with Donovan Brown. He is a principal DevOps Manager with Microsoft with a background in application development. He also runs one of the nation’s fastest growing online registration sites for motorsports events When he is not writing software, he races cars for fun. Listen to today’s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more!

Show Topics:

1:41 – Chuck: The philosophies around DevOps. Just to give you an idea, I have been thinking about what I want to do with the podcasts. Freedom to work on what we want or freedom to work where we want, etc. Then that goes into things we don’t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do?

2:37 – Guest: We want to automate as much as we can so the developer has less work. As a developer I want to commit code, do another task, rinse and repeating.

Minutes and not even hours later then people are tweeting about the next best thing. Do what you want, where you want. Code any language you want.

4:15 – Chuck: What has changed?

4:19 – Guest: The branding changed. The name wasn’t the most favorite among the people. The word “visual” was a concerned. What we have noticed that Azure will let me run my code no matter where I am. If you want to run Python or others it can run in Azure.

People didn’t need all of it. It comes with depositories, project management, and so much more! People could feel clumsy because there is so much stuff. We can streamline that now, and you can turn off that feature so you don’t have a heart attack. Maybe you are using us for some features not all of them – cool.

7:40 – Chuck: With deployments and other things – we don’t talk about the process for development a lot.

8:00 – Guest talks about the things that can help out with that.

Guest: Our process is going to help guide you. We have that all built into the Azure tab feature. They feel and act differently. I tell all the people all the time that it’s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don’t have to do mental math.

9:57 – Chuck: Just talking about the process. Which of these things we work on next when I’ve got a bug, or a ...

10:20 – Guest: The board system works like for example you have a bug. The steps to reproduce that bug, so that there is no question what go into this specific field. Let the anatomy of the feature do it itself!

11:54 – Chuck comments.

12:26 – Chuck: Back to the feature. Creating the user stories is a different process than X.

12:44 – Guest – You have a hierarchy then, right? Also what is really cool is we have case state management. I can click on this and I expect this to happen...

These are actual tasks that I can run.

13:52 – Chuck: Once you have those tests written can you pull those into your CI?

14:00 – Guest: “Manual tests x0.”

Guest dives into the question.

14:47 – I expect my team to write those test cases. The answer to your question is yes and no.

We got so good at it that we found something that didn’t even exist, yet.

16:19 – Guest: As a developer it might be mind

16:29 – Chuck: I fixed this bug 4x, I wished I had CI to help me.

16:46 – Guest: You get a bug, then you fix a code, etc., etc. You don’t know that this original bug just came back. Fix it again. Am I in Groundhog Day?

They are related to each other. You don’t have a unit test to tell you. When you get that very first bug – write a unit test. It will make you quicker at fixing it. A unit test you can write really fast over, and over, again. The test is passing. What do you do? Test it. Write the code to fix that unit test. You can see that how these relate to each other. That’s the beauty in it.

18:33 – Chuck: 90% of the unit tests I write – even 95% of the time they pass. It’s the 5% you would have no idea that it’s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can’t remember.

19:14 – Guest: If you are in a time crunch – I don’t have time for this unit test.

Guest gives us a hypothetical situation to show how unit tests really can help.

20:25 – Make it muscle memory to unit test. I am a faster developer with the unit tests.

20:45 – Chuck: In the beginning it took forever. Now it’s just how I write software now.

It guides my thought process.

21:06 – Guest: Yes! I agree.

22:00 – Guest: Don’t do the unit tests

22:10 – Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you’ve touched. Expand your level of comfort.

DevOps – we are talking about processes. Sounds like your DevOps is a flexible tool. Some people are looking for A METHOD. Like a business coach. Does Azure DevOps do that?

23:13 – Guest: Azure DevOps Projects. YoTeam.

Note.js, Java and others are mentioned by the Guest.

25:00 – Code Badges’ Advertisement

25:48 – Chuck: I am curious – 2 test sweets for Angular or React or Vue. How does that work?

26:05 – Guest: So that is Jasmine or Mocha? So it really doesn’t matter. I’m a big fan of Mocha. It tests itself. I install local to my project alone – I can do it on any CI system in the world. YoTeam is not used in your pipeline. Install 2 parts – Yo and Generator – Team. Answer the questions and it’s awesome. I’ve done conferences in New Zealand.

28:37 – Chuck: Why would I go anywhere else?

28:44 – Guest: YoTeam  was the idea of...

28:57 – Check out Guest

29:02 – Guest: I want Donovan in a box. If I weren’t there then the show wouldn’t exist today.

29:40 – Chuck: Asks a question.

29:46 – Guest: 5 different verticals.

Check out this timestamp to see what Donovan says the 5 different verticals are. Pipelines is 1 of the 5.

30:55 – Chuck: Yep – it works on my Mac.

31:04 – Guest: We also have Test Plant and Artifacts.

31:42 – Chuck: Can you resolve that on your developer machine?

31:46 – Guest: Yes, absolutely! There is my private repository and...

33:14 – Guest: *People not included in box.*

33:33 – Guest: It’s people driven. We guide you through the process. The value is the most important part and people is the hardest part, but once on

33:59 – Chuck: I am listening to this show and I want to try this out. I want a demo setup so I can show my boss. How do I show him that it works?

34:27 – – that is a great landing page.

How can I get a demo going? You can say here is my account – and they can put a demo into your account. I would not do a demo that this is cool. We start you for free. Create an account. Let the CI be the proof. It’s your job to do this, because it will make you more efficient. You need me to be using these tools.

36:11 – Chuck comments.

36:17 – Guest: Say you are on a team of developers and love GitHub and things that integration is stupid, but how many people would disagree about...

38:02 – The reports prove it for themselves.

38:20 – Chuck: You can get started for free – so when do you have to start paying for it?

38:31 – Guest: Get 4 of your buddies and then need more people it’s $6 a month.

39:33 – Chuck adds in comments. If this is free?

39:43 – Guest goes into the details about plans and such for this tool. 

40:17 – Chuck: How easy it is to migrate away from it?

40:22 – Guest: It’s GITHub.

40:30 – Chuck: People are looing data on their CI.

40:40 – Guest: You can comb that information there over the past 4 years but I don’t know if any system would let you export that history.

41:08 – Chuck: Yeah, you are right.

41:16 – Guest adds more into this topic.

41:25 – Chuck: Yeah it’s all into the machine.

41:38 – Chuck: Good deal.

41:43 – Guest: It’s like a drug. I would never leave it. I was using TFS before Microsoft.

42:08 – Chuck: Other question: continuous deployment.

42:56 – When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc.

Anything you can do from a command line you can do from our build and release system.

PowerShell you don’t have to abandon it.

45:20 – Guest: I can’t remember what that tool is called!

45:33 – Guest: Anything you can do from a command line. Before firewall. Anything you want.

45:52 – Guest: I love my job because I get to help developers.

46:03 – Chuck: What do you think the biggest mistake people are doing?

46:12 – Guest: They are trying to do it all at once. Fix that one little thing.

It’s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let’s go and deploy it. Don’t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it’s “buggy.” Let’s add that to the pipeline.

It’s in your pipeline today, what hurts the most, and don’t do it all at once.

49:14 – Chuck: I thought you’d say: I don’t have the time.

49:25 – Guest: Say you work on it 15 minutes a day. 3 days in – 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don’t “have the time.”

50:18 – Guest continues this conversation.

How do you not have CI? Just install it – don’t ask. Just do the right thing.

50:40 – Chuck: I free-lanced and setup CI for my team. After a month, getting warned, we had a monitor up on the screen and it was either RED or GREEN. It was basically – hey this hurts and now we know. Either we are going to have pain or not have pain.

51:41 – Guest continues this conversation.

Have pain – we should only have pain once or twice a year.


If you only have it every 6 months, that’s not too bad.

The pain will motivate you.

52:40 –

Azure DevOps’ Twitter

53:22 – Picks!

53:30 – Advertisement – Get a Coder Job


Donovan Brown’s GitHub Donovan Brown’s Twitter Donovan Brown Donovan Brown – Channel 9 Donovan Brown – Microsoft Azure YoTeam GitHub Azure DevOps’ Twitter


Angular Boot Camp Digital Ocean Get a Coder Job course



Jet Blue Beta Testers


YoTeam VSTeam Powershell Module

MJS 090: AJ O’Neal

Dec 19, 2018 51:22


Panel: Charles Max Wood

Guest: A.J. O’Neal

This week on My JavaScript Story, Charles talks with A.J. O’Neal who is a panelist on My JavaScript Jabber usually, but today he is a guest! The guys talk about AJ’s background and past/current projects. Today’s topics include: JavaScript, Ruby, jQuery, Rails, Node, Python, and more.

In particular, we dive pretty deep on:

0:00 – Advertisement: Get A Coder Job!

1:23 – Chuck: Introduce yourself, please.

1:27 – AJ: I brief introduction: I am a quirky guy who is ADD and I love to figure out why/how things work. I like self-hosting or owning things in technology.

2:00 – Chuck: Where do you work now?

2:02 – AJ: I work in UTAH at Big Squid!

3:29 – AJ: I have my own company, too!

3:41 – Chuck: Yeah we’ve talked about that before. Where can we go?

3:54: AJ: We have 2 products that are both Node. Greenlock for Node.js is one of them! The other one is Telebit.

5:44 – Chuck: This interview is all about your background. How did you get into programming?

6:04 – AJ: I was in middle school but before that my grandmother was a secretary at the Pentagon. She worked on getting people paid and she wrote a program to assist these paychecks to be printed with fewer errors. Because of that she had a computer at home. I remember playing games on her computer.

The guest talks about his background in more detail.

15:21 – Chuck: No it’s interesting! I’ve done a couple hundred interviews and they all say either: I went to school for it OR I did it for my free time. It’s interesting to see the similarities!

16:00 – AJ: Yep that’s pretty much how I got into it! I went on a church service mission to Albania and really didn’t do any computer work during those 2 years.

19:39 – Chuck: You went to BYU and your mission trip. A lot of that stuff I can relate to and identify with b/c I went to BYU and went on missions trip, too! And then you got into Ruby and that’s how we met was through Ruby!

20:25 – AJ: Yep that’s it. Then that’s when I learned about Node, too. There was a guy with a funny hate – do you remember that? (No.)

21:03 – Chuck: Maybe?

21:07 – AJ continues.

27:53 – Chuck: What made you make the transition? People come into and out of different technologies all the time.

28:18 – AJ: Yeah it started with me with jQuery!

Rails has layers upon layers upon layers.

AJ talks about different technologies their similarities/differences and mentions: JavaScript, Rails, Python, Node, Ruby, and much more.

31:05 – Chuck: Node went out of their way on certain platforms that Rails didn’t prioritize.

31:11 – AJ continues to talk about different technologies and platforms.

33:00 – Chuck: You get into Node and then at what point does this idea of a home-server and Node and everything start to come together? How much of this do you want to talk bout? At one point did they start to gel?

33:33 – AJ: It’s been a very long process and started back in high school. It started with me trying to think: How do I get this picture on my phone to my mom? I thought of uploading it to Flickr or could I do this or that? What about sending it to someone in China?

39:57 – Chuck.

40:01 – AJ continues and talks about libraries and certificate standards.

42:00 – AJ continues with the topic: certificates.

42:44 – Chuck: I am going to go to PICKS! Where can people find you?

42:55 – AJ: Twitter! Blog! GitHub! Anywhere!

43:55 – Chuck: Picks!

43:58 – Advertisement – Fresh Books! 30-Day Trial!

END – Cache Fly


React Angular JavaScript Webpack.js Serverless jQuery Node AJ’s Twitter Chuck’s Twitter


Cache Fly Get A Coder Job Fresh Books



JC Penny! Stafford Shirts Express for Men Chris Ferdinandi’s GOMAKETHINGS. COM


Wordpress – Plugin KingSumo

JSJ 344: Inclusive Components with Heydon Pickering

Dec 18, 2018 1:10:37



Charles Max Wood Aimee Knight Chris Ferdinandi Joe Eames

Special Guest: Heydon Pickering

In this episode, the panel talks with Heydon Pickering who is a designer and writer. The panel and the guest talk about his new book, which is centered on the topic of today’s show: inclusive components. Check out Heydon’s Twitter, Website, GitHub, and Mastodon social accounts to learn more about him. To purchase the book – go here!

Show Topics:

0:00 – Advertisement: KENDO UI

0:38 – Chuck: Aimee, Chris, Joe, and myself – we are today’s panel. My show the DevRev is available online to check it out.

1:30 – Guest: Plain ice cream would be frozen milk and that would be terrible. So I am lemon and candy JavaScript!

2:13 – Chuck: We are talking today about...?

2:22 – Chris: He’s talking about “inclusive components” today!

2:41 – Guest: Traveling is very stressful and I wanted something to do on the plane. I’ve done this book, “Inclusive Design Patterns.”

If you don’t want to buy the book you can go to the blog. I have been talking with Smashing Magazine.

5:40 – Panel.

5:47 – Guest: I approached Smashing Magazine initially. They didn’t think there was a market for this content at the time. They were very supportive but we will do it as an eBook so our costs our down. At the time, the editor came back and said that: “it was quite good!” We skimmed it but came back to it now and now the content was more relevant in their eyes. I didn’t want to do the same book but I wanted to do it around “patterns.” Rewriting components is what I do all the time. I use Vanilla JavaScript. Backbone.js is the trendy one.

9:52 – Panel: The hard book did it get published?

10:02 – Guest: We are in the works and it’s all in the final stages right now. It has to go through a different process for the print version.

11:54 – Panel.

11:58 – (Guest continues about the editorial process.)

12:09 – Panel: They probably switched to TFS – it’s Microsoft’s.

12:23 – Guest: There was this argument on Twitter about the different processors.

13:35 – Chris: What are the ways that people are breaking accessibility with their code through JavaScript? 

13:59 – Guest: The whole premise is that there aren’t a ton of different components that we use. Generally, speaking. Most things we do through JavaScript – it’s just different ways of doing this/that, and hiding things. I am discounting things with Node or other stuff. Most of what we are doing, with interactive design, is showing and hiding.

18:37 – Chris: I have some specialty friends where they tell me where I’ve screwed up my code. For example Eric Bailey and Scott O’Hara but, of course, in very kind ways. What are some things that I can make sure that my code is going to work for many different people.

19:18 – Guest: You have accessibility and inclusive design. People think of accessibility as a check-list and that’s okay but there could be problems with this.

26:00 – Panel: That’s a great guideline.

26:05 – Chris: You talked about ARIA roles and it can be confusing. One side is: I don’t know when to use these and the other side is: I don’t know when NOT to use these so I’m going to use them for EVERYTHING! I guess both can be detrimental. What’s your advice on this topic?

27:00 – Guest: Scott is great and I would trust him to the end of the Earth about what he says.

Guest mentions Léonie Watson and her talks about this topic.

29:26 – (Guest continues.)

29:36 – Advertisement –

30:31 – Chris.

30:40 – Guest: There is a lot of pressure, though, right? People wouldn’t blog about this if it wasn’t worthwhile. It doesn’t matter what the style is or what the syntax is.

The guest talks about not throwing ARIA onto everything.

36:34 – Aimee: Is this something that was mentioned in the book: people with disabilities and accessibility.

37:28 – Guest: Yes, of course. I think it’s important to make your interfaces flexible and robust to think and include people with disabilities.

39:00 – Guest mentions larger buttons.

40:52 – Panelists and Guest talk back-and-forth.

42:22 – Chris: It’s an accessibility and inclusivity element. I saw a dropdown menu and worked great on certain devices but not others. I could beat this horse all day long but the whole: what happens of the JavaScript file doesn’t load or just accordion options?

43:50 – Guest: It’s the progressive enhancement element.

44:05 – Guest: I think it’s worth noting. I think these things dovetail really nicely.

46:29 – Chris: Did you do a video interview, Aimee, talking about CSS? Is CSS better than JavaScript in some ways I don’t know if this is related or not?

47:03 – Aimee: When I talk about JavaScript vs. CSS...the browser optimizes those.

47:27 – Aimee: But as someone who loves JavaScript...and then some very talented people taught me that you have to find the right tool for the job.

47:29 – Guest: I am the other way around – interesting.

52:50 – Chuck: Picks!

52:55 – Advertisement – Get A Coder Job!

END – Advertisement: CacheFly!


JavaScript Backbone.js Microsoft’s TFS Léonie Watson React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Heydon’s GitHub Heydon’s Mastodon Heydon’s Book Medium Article on Heydon Heydon’s Website Heydon’s Twitter


DevLifts Kendo UI Sentry CacheFly



Chris Ferdinandi's Blog Luxur board game


Blog about interviewing Birthday Cake Quest Bar


Web Dev Career Guide: Use FREECAREER at checkout to get it for free Neapolitan Ice Cream  Netflix Web Performance case study


Disney Heroes Battle Mode MFCEO Project Podcast Gary Lee Audio Experience Suggestions for JavaScript Jabber


Bruck What is Mastodon and why should I use it?

MJS 089: Gareth McCumskey

Dec 12, 2018 27:07


Panel: Charles Max Wood

Guest: Gareth McCumskey

This week on My JavaScript Story, Charles talks with Gareth McCumskey who is a senior web developer for RunwaySale! They talk about Gareth’s background, current projects and his family. Check out today’s episode to hear all about it and much more!

In particular, we dive pretty deep on:

0:00 – Advertisement: Get A Coder Job!

0:53 – Chuck: Hey everyone! Welcome! We are talking today with Gareth McCumseky!

1:05 – Gareth: Hi!

1:22 – Chuck: Are you from Cape Town, Africa? (Guest: Yes!)

1:35 – Gareth and Chuck talk about his name, Gareth, and why it’s popular. 

1:49 – Chuck: I am in my late 40’s. You were here for JSJ’s Episode 291! It’s still a hot topic and probably should revisit that topic.

2:20 – Guest: Yes!

2:30 – Chuck: It’s interesting. We had a long talk about it and people should go listen to it!

2:45 – Guest: I am a backend developer for the most part.

3:03 – Chuck: Yeah I started off as an ops guy. It probably hurt me.

3:21 – Guest: Yeah, if you poke it a certain way.

3:29 – Chuck: Let’s talk about YOU! How did you get into programming?

3:39 – Guest: South Africa is a different culture to grow-up in vs. U.S. and other places. I remember the computer that my father had back in the day. He led me drive his car about 1km away and I was about 11 years old. We would take home the computer from his office – played around with it during the weekend – and put it back into his office Monday morning. This was way before the Internet. I was fiddling with it for sure.

The guest talks about BASIC.

6:20 – Chuck: How did you transfer from building BASIC apps to JavaScript apps?

6:30 – Guest: Yeah that’s a good story. When I was 19 years old...I went to college and studied geology and tried to run an IT business on the side. I started to build things for HTML and CSS and build things for the Web.

The guest goes into-detail about his background!

9:26 – Chuck: Yeah, jQuery was so awesome!

9:34 – Guest: Yeah today I am working on an app that uses jQuery! You get used to it, and it’s pretty powerful (jQuery) for what it is/what it does! It has neat tricks.

10:11 – Chuck: I’ve started a site with it b/c it was easy.

10:19 – Guest: Sometimes you don’t need the full out thing. Maybe you just need to load a page here and there, and that’s it.

10:39 – Chuck: It’s a different world – definitely!

10:48 – Guest: Yeah in 2015/2016 is when I picked up JavaScript again. It was b/c around that time we were expecting our first child and that’s where we wanted to be to raise her.

Guest: We use webpack.js now. It opened my eyes to see how powerful JavaScript is!

12:10 – Chuck talks about Node.js.

12:21 – Guest: Even today, I got into AWS Cognito!

13:45 – Chuck: You say that your problems are unique – and from the business end I want something that I can resolve quickly. Your solution sounds good. I don’t like messing around with the headaches from Node and others.

14:22 – Guest: Yeah that’s the biggest selling point that I’ve had.

15:47 – Chuck: How did you get into serverless?

15:49 – Guest: Funny experience. I am not the expert and I only write the backend stuff.

Guest: At the time, we wanted to improve the reliability of the machine and the site itself. He said to try At the time I wasn’t impressed but then when he suggested it – I took the recommendation more seriously. My company that I work for now...

17:39 – Chuck: What else are you working on?

17:45 – Guest: Some local projects – dining service that refunds you. You pay for a subscription, but find a cheaper way to spend money when you are eating out. It’s called: GOING OUT.

Guest: My 3-year-old daughter and my wife is expecting our second child.

18:56 – Chuck and Gareth talk about family and their children.

22:17 – Chuck: Picks!

22:29 – Advertisement – Fresh Books! 30-Day Trial!

END – Cache Fly


React Angular JavaScript Webpack.js Serverless jQuery Node AWS Cognito Gareth’s Website Gareth’s GitHub Gareth’s Twitter


Cache Fly Get A Coder Job Fresh Books


Charles Max Wood

Podcasts: MFCEO Project & Gary Vaynerchuk Pokémon Go!

Gareth McCumskey Ingress Prime

JSJ 343: The Power of Progressive Enhancement with Andy Bell

Dec 11, 2018 1:05:17



Charles Max Wood Aimee Knight Chris Ferdinandi AJ O’Neal

Special Guest: Andy Bell

In this episode, the panel talks with Andy Bell who is an independent designer and developer who uses React, Vue, and Node. Today, the panelists and the guest talk about the power of progressive enhancements. Check it out!

Show Topics:

0:00 – Advertisement: KENDO UI

0:34 – Chuck: Hi! Our panel is AJ, Aimee, Chris, myself and my new show is coming out in a few weeks, which is called the DevRev! It helps you with developer’s freedom! I am super excited. Our guest is Andy Bell. Introduce yourself, please.

2:00 – Guest: I am an independent designer and developer out in the U.K.

2:17 – Chuck: You wrote things about Vanilla.js. I am foreshadowing a few things and let’s talk about the power and progressive enhancement.

2:43 – The guest gives us definitions of power and progressive enhancements. He describes how it works.

3:10 – Chuck: I’ve heard that people would turn off JavaScript b/c it was security concern and then your progressive enhancement would make it work w/o JavaScript. I am sure there’s more than that?

3:28 – The guest talks about JavaScript, dependencies, among other things.

4:40 – Chuck: Your post did make that very clear I think. I am thinking I don’t even know where to start with this. Are people using the 6th version? How far back or what are we talking about here?

5:09 – Guest: You can go really far back and make it work w/o CSS.

5:49 – Chris: I am a big advocate of progressive enhancement – the pushback I get these days is that there is a divide; between the broadband era and AOL dialup. Are there compelling reasons why progressive enhancements even matter?

6:48 – Guest.

8:05 – Panel: My family lives out in the boonies. I am aware of 50% of American don’t have fast Internet. People don’t have access to fast browsers but I don’t think they are key metric users.

8:47 – Guest: It totally depends on what you need it for. It doesn’t matter if these people are paying or not.

9:31 – Chris: Assuming I have a commute on the trail and it goes through a spotty section. In a scenario that it’s dependent on the JS...are we talking about 2 different things here?

10:14 – Panelist chimes-in.

10:36 – Chris: I can take advantage of it even if I cannot afford a new machine.

10:55 – Panel: Where would this really matter to you?

11:05 – Chris: I do have a nice new laptop.

11:12 – Chuck: I had to hike up to the hill (near the house) to make a call and the connection was really poor (in OK). It’s not the norm but it can happen.

11:37 – Chris: Or how about the All Trails app when I am on the trail.

11:52 – Guest.

12:40 – Chris: I can remember at the time that the desktop sites it was popular to have...

Chris: Most of those sites were inaccessible to me.

13:17 – Guest.

13:51 – Chuck: First-world countries will have a good connection and it’s not a big deal. If you are thinking though about your customers and where they live? Is that fair? I am thinking that my customers need to be able to access the podcast – what would you suggest? What are the things that you’d make sure is accessible to them.

14:31 – Guest: I like to pick on the minimum viable experience? I think to read the transcript is important than the audio (MP3).

15:47 – Chuck.

15:52 – Guest: It’s a lot easier with Vue b/c you don’t’ have to set aside rendering.

17:13 – AJ: I am thinking: that there is a way to start developing progressively and probably cheaper and easier to the person who is developing. If it saves us a buck and helps then we take action.

17:49 – Guest: It’s much easier if you start that way and if you enhance the feature itself.

18:38 – AJ: Let me ask: what are the situations where I wouldn’t / shouldn’t worry about progressive enhancements?

18:57 – Guest answers the question.

19:42 – AJ: I want people to feel motivated in a place WHERE to start. Something like a blog needs Java for comments.

Hamburger menu is mentioned, too.

20:20 – Guest.

21:05 – Chris: Can we talk about code?

21:16 – Aimee: This is the direction I wanted to go. What do you mean by that – building your applications progressively?

Aimee refers to his blog.

21:44 – Guest.

22:13 – Chuck: I use stock overflow!

22:20 – Guest.

22:24 – Chuck: I mean that’s what Chris uses!

22:33 – Guest (continues).

23:42 – Aimee.

23:54 – Chris.

24:09 – Chris

24:16 – Chris: Andy what do you think about that?

24:22 – Guest: Yes, that’s good.

24:35 – Chris: Where it falls apart is the resistance to progressive enhancements that it means that your approach has to be boring?

25:03 – Guest answers the question.

The guest mentions modern CSS and modern JavaScript are mentioned along with tooling.

25:50 – Chuck: My issue is that when we talk about this (progressive enhancement) lowest common denominator and some user at some level (slow network) and then they can access it. Then the next level (better access) can access it. I start at the bottom and then go up. Then when they say progressive enhancement I get lost. Should I scrap it and then start over or what?

26:57 – Guest: If it’s feasible do it and then set a timeline up.

27:42 – Chuck: You are saying yes do it a layer at a time – but my question is HOW? What parts can I pair back? Are there guidelines to say: do this first and then how to test?

28:18 – Advertisement –

29:20 – Guest: Think about the user flow. What does the user want to do at THIS point? Do you need to work out the actual dependencies?

30:31 – Chuck: Is there a list of those capabilities somewhere? So these users can use it this way and these users can use it that way?

30:50 – Guest answers the question.

31:03 – Guest: You can pick out the big things.

31:30 – Chuck: I am using this feature in the browser...

31:41 – Guest.

31:46 – Chris: I think this differently than you Andy – I’ve stopped caring if a browser supports something new. I am fine using CSS grid and if your browser doesn’t support it then I don’t have a problem with that. I get hung up on, though if this fails can they still get the content? If they have no access to these – what should they be able to do?

Note: “Cutting the Mustard Test” is mentioned.

33:37 – Guest.

33:44 – Chuck: Knowing your users and if it becomes a problem then I will figure it out.

34:00 – Chris: I couldn’t spare the time to make it happen right now b/c I am a one-man shop.

34:20 – Chuck and Chris go back-and-forth.

34:36 –Chris: Check out links below for my product.

34:54 – AJ: A lot of these things are in the name: progressive.

36:20 – Guest.

38:51 – Chris: Say that they haven’t looked at it all before. Do you mind talking about these things and what the heck is a web component?

39:14 – The guest gives us his definition of what a web component is.

40:02 – Chuck: Most recent episode in Angular about web components, but that was a few years ago. See links below for that episode.

40:25 – Aimee.

40:31 – Guest: Yes, it’s a lot like working in Vue and web components. The concepts are very similar.

41:22 – Chris: Can someone please give us an example? A literal slideshow example?

41:45 – Guest answers the question.

45:07 – Chris.

45:12 – Guest: It’s a framework that just happens to use web components and stuff to help.

45:54 – Chuck: Yeah they make it easier (Palmer). Yeah there is a crossover with Palmer team and other teams. I can say that b/c I have talked with people from both teams. Anything else?

46:39 – Chuck: Where do they go to learn more?

46:49 – Guest: Check out the Club! And my Twitter! (See links below.)

47:33 – Chuck: I want to shout-out about DevLifts that has $19 a month to help you with physical goals. Or you can get the premium slot! It’s terrific stuff. Sign-up with DEVCHAT code but there is a limited number of slots and there is a deadline, too. Just try it! They have a podcast, too!

49:16 – Aimee: Yeah, I’m on their podcast soon!

49:30 – Chuck: Picks!

END – Advertisement: CacheFly!


JavaScript React Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Past episode: AiA 115 Past episode: JSJ 120 Vue.js – Slots Using templates and slots – Article Web Components Club GitHub: Pwa – Starter – Kit Progressively Enhanced Toggle Panel Time Ago in under 50 lines of JavaScript GitHub: ebook-boilerplate Chris Ferdinandi’s Go Make Things Site Game Chops CNBC – Trump Article New in Node v10.12 Quotes Archive My Amazon Interview Horror Story Honest Work Relative Paths DevLifts Andy Bell’s Twitter Andy’s Website


DevLifts Kendo UI Sentry CacheFly



Hacker News  -  Programming Quotes My Amazon Interview Horror Story


Time Ago in Under 50 Lines of JavaScript E-Book Boiler Plate JSJABBER at


Experimental Drugs Bill My Browers FYI New In Node,10.12 Arcade Attack

Charles Self-Publishing School MF CEO podcast


MJS 088: Nicholas Zakas

Dec 5, 2018 46:10


Panel: Charles Max Wood

Guest: Nicholas Zakas

This week on My JavaScript Story, Charles talks with Nicholas Zakas who is a blogger, author, and software engineer. Nicholas’ website is titled, Human Who Codes – check it out! You can find him on Twitter, GitHub, and LinkedIn among other social media platforms. Today, Nicholas and Chuck talk about Nicholas’ background, JavaScript, and current projects.

In particular, we dive pretty deep on:

0:00 – Advertisement: Get A Coder Job!

1:00 – Chuck: Welcome! Give us a background, please, Nicholas!

1:14 – Guest: I am probably best known for making ESLint and I have written a bunch of books, too! (See links below.)

1:36 – Chuck: JSJ 336 and JSJ 075 episodes are the two past episodes we’ve had you on! (See links below.) Let’s go back and how did you get into programming?

1:58 – Guest: I think the first was written in BASIC, which was on a Laser computer. It was a cheaper knockoff version. I think I was into middle school when I got into BASIC. Then when I got into high school I did this computer project, which was the first time someone else used one of my programs.

4:02 – Chuck: Was it all in BASIC or something else?

4:13 – Guest: Just BASIC, but then transferred to something else when we got our first PC.

5:13 – Chuck: How did you get to use JavaScript?

5:18 – Guest: 1996 was my freshman year in college. Netscape 3 got into popularity around this time. I had decided that I wanted to setup a webpage to stay in-touch with high school friends who were going into different directions.

I got annoyed with how static the [web] pages were. At the time, there was no CSS and the only thing you could change was the source of an image (on webpages).

On the <a tag> you could do...

8:35 – Chuck: You get into JavaScript and at what point did you become a prolific operator and author?

8:52 – Guest: It was not an overnight thing. It definitely was fueled by my own curiosity. The web was so new (when I was in college) that I had to explore on my own. I probably killed a few trees when I was in college. Printing off anything and everything I could to learn about this stuff!

10:03 – Guest (continues): Professors would ask ME how to do this or that on the departmental website. When I was graduating from college I knew that I was excited about the WEB. I got a first job w/o having to interview.

12:32 – Guest (continues): I got so deep into JavaScript!

13:30 – Guest (continued): They couldn’t figure out what I had done. That’s when I got more into designing JavaScript APIs. About 8 months after graduating from college I was unemployed. I had extra time on my hands. I was worried that I was going to forget the cool stuff that I just developed there. I went over the code and writing for myself how I had constructed it. My goal was to have an expandable tree. This is the design process that I went through. This is the API that I came up with so you can insert and how I went about implementing it. At some point, I was on a discussion with my former colleagues: remember that JavaScript tree thing I wrote – I wrote a description of how I did it. Someone said: Hey this is really good and you should get this published somewhere. Huh! I guess I could do that. I went to websites who were publishing articles on JavaScript. I went to submit the article to one of them. I think it was DevX or WebReference.

18:03 – Guest: A book is a compilation of different articles?! I can do that. I wanted to write a book that would fill in that next step that was missing. I didn’t know what the book was going to be, and I decided to start writing. Once I’ve had enough content I would take a step back and see what it was about. (Check out Nicholas’ books here!)

19:01 – Chuck: Oh you can turn this into a book!

19:10 – Guest: There was very little that I had planned out ahead of time. Anything that happened to me that was exciting had stumbled into my lap!

19:37 – Chuck: That’s how I felt about podcasting – it fell into my lap/life!

19:50 – Chuck: Listeners – check out the past episodes with Nicholas, please. Nicholas, what are you proud of?

20:10 – Guest: In 2006, I was at Yahoo and started off with My Yahoo Team. This was the first time that I was exposed to a massive amount of JavaScript in a single web application.

26:21 – Chuck: Can you talk about your health issues? People would definitely benefit from your example and your story.

26:44 – Guest: I think it is something important for people to understand.

The guest talks about Lyme Disease.

35:49 – Chuck: Yep taking care of yourself is important!

36:00 – Guest: Yes to enjoy time with friends and explore other hobbies. Help yourself to de-stress is important. Cognitive work is very draining. When you aren’t getting the right amount of sleep your body is going to get stressed out. Take the time to do nonsense things. You need to let your brain unwind! I love these adult coloring books that they have!

38:07 – Chuck: I love to take a drive up the canyon.

38:12 – Guest.

38:24 – Chuck: Yeah to focus on ourselves is important.

38:36 – Guest: Your body will make it a point to say: pay attention to me! Your body goes into flight or fight mode and your systems shut-off, which of course is not good. You don’t want your body to stay in that state.

New parents get sick frequently with newborns, because they aren’t getting enough sleep.

41:08 – Guest: Get some R&R!

41:20 – Chuck: This is great, but I have another call! Let’s do some Picks!

41:35 – Advertisement – Fresh Books! 30-Day Trial!

END – Cache Fly


React Angular Vue.js JavaScript Ember Elm jQuery Node DevX WebReference Nicholas C. Zakas’ Books ESLint NPM – ESLint Signs and Symptoms of Untreated Lyme Disease Lyme Disease Nicholas’ Twitter JSJ 336 Episode with Zakas JSJ 075 Episode with Zakas


Cache Fly Get A Coder Job Fresh Books


Charles Max Wood

Wall Calendars – 6 ft. x3 ft.

Nicholas Zakas

Book: The Better Angels of Our Nature: Why Violence Has Declined by Steven Pinker Adult Coloring Books

JSJ 342: Aurelia in Action with Sean Hunter

Dec 4, 2018 1:00:10



AJ O’Neal Joe Eames Jesse Sanders

Special Guest: Sean Hunter

In this episode, the panel talks with Sean Hunter who is a software developer, speaker, rock climber, and author of “Aurelia in Action” published by Manning Publications! Today, the panelists and Sean talk about Aurelia and other frameworks. Check it out!

Show Topics:

0:00 – Advertisement: KENDO UI

0:38 – Joe: Hello! Our panelists are AJ, Jesse, myself, and our special guest is Sean Hunter (from Australia)! What have you been doing with your life and what is your favorite movie?

1:45 – Guest talks about Vegemite!

2:20 – Guest: I was in the UK and started using Aurelia, which I will talk about today. I have done some talks throughout UK about Aurelia. Also, the past year moved back to Australia had a baby son and it’s been a busy year. Writing a book and being a new parent has been hard.

3:22 – Panel: Tell us the history of Aurelia, please?

3:31 – Panel: Is it like jQuery, React, Vue or what?

3:44 – Guest: Elevator pitch – Aurelia is a single-page app framework! It’s most similar to Vue out of those frameworks; also, similarities to Ember.js.

4:30 – Guest goes into detail about Aurelia.

6:15 – Panel: It sounds like convention over configuration.

6:42 – Guest: Yes that is correct.

7:21 – Panel: Sounds like there is a build-step to it.

7:39 – Guest: There is a build-step you are correct. You will use Webpack in the background.

9:57 – The guest talks about data binding among other things.

10:30 – Guest: You will have your app component and other levels, too.

10:37 – Panel: I am new to Aurelia and so I’m fresh to this. Why Aurelia over the other frameworks? Is there a CLI to help?

11:29 – Guest: Let me start with WHY Aurelia and not the other frameworks. The style that you are using when building the applications is important for your needs. In terms of bundling there is a CUI and that is a way that I prefer to start my projects. Do you want to use CSS or Webpack or...? It’s almost a wizard process! You guys have any questions about the CLI?

14:43 – Panel: Thanks! I was wondering what is actually occurring there?

15:25 – Guest: Good question. Basically it’s that Aurelia has some built-in conventions. Looking at the convention tells Aurelia to pick the Vue model by name. If I need to tell the framework more information then...

17:46 – Panel: I think that for people who are familiar with one or more framework then where on that spectrum would Aurelia fall?

18:20 – Guest: It’s not that opinionated as Ember.js.

19:09 – Panel: Talking about being opinionated – what are some good examples of the choices that you have and how that leads you down a certain path? Any more examples that you can give us? 

19:38 – Guest: The main conventions are what I’ve talked about already. I can’t think of more conventions off the top of my head. There are more examples in my book.

20:02 – Panel: Your book?

20:10 – Guest: Yep.

20:13 – Panel.

20:20 – Guest. 

21:58 – Panel: Why would I NOT pick Aurelia?

22:19 – Guest: If you are from a React world and you like having things contained in a single-file then Aurelia would fight you. If you want a big company backing then Aurelia isn’t for you.

The guest goes into more reasons why or why not one would or wouldn’t want to use Aurelia.

24:24 – Panel: I think the best sell point is the downplay!

24:34 – Guest: Good point. What does the roadmap look like for Aurelia’s team?

25:00 – Guest: Typically, what happens in the Aurelia framework is that data binding (or router) gets pushed by the core team. They are the ones that produce the roadmap and look forward to the framework. The core team is working on the NEXT version of the framework, which is lighter, easier to use, and additional features. It’s proposed to be out for release next year.

26:36 – Advertisement –

27:34 – Panel: I am going to take down the CLI down and see what it does. I am looking at it and seeing how to teach someone to use it. I am using AU, new command, and it says no Aurelia found. I am stuck.

28:06 – Guest: What you would do is specify the project name that you are trying to create and that should create it for you. 

28:40 – Panel.

28:45 – Panel.

28:50 – Panel: Stand up on your desk and say: does anyone know anything about computers?!

29:05 – Panelists go back-and-forth.

29:13 – Panel: What frameworks have you used in the past?

29:17 – Guest: I was using single-paged apps back in 2010.

31:10 – Panel: Tell us about the performance of Aurelia?

31:17 – Guest: I was looking at the benchmarks all the time. Last time I looked the performance was comparable. Performances can me measured in a number of different of ways.

The guest talks about a dashboard screen that 20 charts or something like that. He didn’t notice any delays getting to the client.

33:29 – Panel: I heard you say the word “observables.”

33:39 – Guest answers the question.

35:30 – Guest: I am not a Redux expert, so I really can’t say. It has similar actions like Redux but the differences I really can’t say.

36:11 – Panel: We really want experts in everything! (Laughs.)

36:25 – Panelist talks about a colleagues’ talk at a conference. He says that he things are doing too much with SPAs. They have their place but we are trying to bundle 8-9 different applications but instead look at them as...

What are your thoughts of having multiple SPAs?

37:17 – Guest.

39:08 – Guest: I wonder what your opinions are? What about the splitting approach?

39:22 – Panel: I haven’t looked at it, yet. I am curious, though. I have been developing in GO lately.

40:20 – Guest: I think people can go too far and making it too complex. You don’t want to make the code that complex.

40:45 – Panel: Yeah when the code is “clean” but difficult to discover that’s not good.

41:15 – Guest: I agree when you start repeating yourself then it makes it more difficult.

41:35 – Panel: Chris and I are anti-framework. We prefer to start from a fresh palette and see if a framework can fit into that fresh palette. When you start with a certain framework you are starting with certain configurations set-in-place. 

42:48 – Joe: I like my frameworks and I think you are crazy!

43:05 – Panel.

43:11 – Joe: I have a love affair with all frameworks.

43:19 – Panel: I think I am somewhere in the middle.

43:49 – Panel: I don’t think frameworks are all bad but I want to say that it’s smart to not make it too complex upfront. Learn and grow.

44:28 – Guest: I think a good example of that is jQuery, right?

45:10 – Panelist talks about C++, jQuery, among other things.

45:34 – Guest: Frameworks kind of push the limits.

46:08 – Panelist talks about JavaScript, frameworks, and others.

47:04 – Panel: It seems simple to setup routes – anything to help with the lazy way to setup?

47:35 – Guest answers question.

48:37 – Panel: How do we manage complexity and how does messaging work between components?

48:54 – Guest: The simple scenario is that you can follow a simple pattern, which is (came out of Ember community) and that is...Data Down & Actions Up!

50:45 – Guest mentions that Aurelia website!

51:00 – Panel: That sounds great! Sounds like the pattern can be plugged in easily into Aurelia.

51:17 – Picks!

51:20 – Advertisement: Get A Coder Job!

END – Advertisement: CacheFly!


JavaScript React Redux Webpack Elixir Ember.js Vue GO jQuery Node.js Puppeteer Cypress Utah JS 2018 – Justin McMurdie’s Talk Aurelia Sean Hunter’s Book! Sean Hunter’s Twitter Sean Hunter’s Website Sean Hunter’s GitHub


Kendo UI Sentry CacheFly



React Conf. Endless Quest


Extreme Ownership GO Language Harry’s and Flamingo

Jesse Sanders

The Miracle Morning React Hooks Apple Products


Doesn’t Have to Be Crazy at Work Discount Code for Aurelia in Action Apple Watch

MJS 087: Rob Eisenberg

Nov 28, 2018 45:43


Panel: Charles Max Wood

Guest: Rob Eisenberg

This week on My JavaScript Story, Charles speaks with Rob Eisenberg who is a principal software engineer at InVision, and is the creator of Caliburn.Micro, Durandal, and Aurelia. Today, they talk about Rob’s past and current projects among other things.

In particular, we dive pretty deep on:

1:40 – Chuck: Our special guest is Rob Eisenberg. We’ve had you on Adventures on Angular (09 and 80), JavaScript Jabber, and others like Episode 203.

2:36 – Rob: That was over the period of 4 years all of those podcasts. I am getting older.

2:50 – Chuck: Anything that you’ve done that you want to talk about?

3:04 – Rob: I am known for opensource work over the years. Maybe we can talk about my progression through that over the years.

3:25 – Chuck: How did you get into this field?

3:29 – Rob: When I was 8 years old my dad wanted to buy a computer. We went to Sears and we bought our first computer. You’d buy the disk drive and the keyboard looking unit. You could by a monitor, we didn’t, but we used a black and white TV for our monitor. Later we bought the colored monitor and printer. That’s where my fascination started. We set up the computer in my bedroom. We played games. I got intrigued that you could write code to make different games.

It was just magical for me. As being an adult engineer I am trying to go back to that moment to recapture that magical moment for me. It was a great creative outlet. That’s how I first started. I started learning about Q basic and other flavors of Basic. Then I heard about C! I remember you could do anything with C. I went to the library and there wasn’t the Internet, yet. There were 3 books about C and read it and re-read it. I didn’t have any connections nor a compiler. When I first learned C I didn’t have a compiler. I learned how to learn the codes on notebook paper, but as a kid this is what I first started doing. I actually saved some of this stuff and I have it lying around somewhere. I was big into adventure games. That’s when I moved on C++ and printed out my source code! It’s so crazy to talk about it but at the time that’s what I did as a kid. In JHS there was one other kid that geeked-out about it with me. It was a ton of fun.

Then it was an intense hobby of mine. Then at the end of HS I had 2 loves: computers and percussion. I was composing for music, too. I had to decide between music or coding. I decided to go with music. It was the best decision I ever made because I studied music composition. When you are composing for dozens of instruments to play one unified thing. Every pitch, every rhythm, and it all works together. Why this note and why that rhythm? There is an artistic side to this and academia, too. The end result is that music is enjoyed by humans; same for software.

I did 2 degrees in music and then started my Master’s in Music. I then realized I love computers, too, how can I put these two together? I read some things on audio programming, and it stepped me back into programming. At this time, I was working in music education and trying to compose music for gamming. Someone said look at this program called C#! I don’t know can you get any better than C++?!

In 2003 – I saw a book: teach yourself C# in 24 hours. I read it and I was enthralled with how neat this was! I was building some Windows applications through C#. I thought it was crazy that there was so much change from when I was in college.

17:00 – Chuck: You start making this transition to web? What roped you in?

17:25 – Rob: I realized the power of this, not completely roped in just, yet. Microsoft was working (around this time) with...

19:45 – (Continued from Rob): When Silver Light died that’s when I looked at the web. I said forget this native platform. I came back to JavaScript for the 2nd time – and said I am going to learn this language with the same intensity as I learned C++ and C#. I started working with Durandal.

21:45 – Charles: Yeah, I remember when you worked with the router and stuff like that. You were on the core team.

21:53 – Rob: The work I did on that was inspired by screen activation patterns.

23:41 – Rob (continued): I work with InVision now.

24:14 – Charles: I remember you were on the Angular team and then you transitioned – what was that like?

24:33 – Rob comments.

25:28 – Rob (continued): I have been doing opensource for about 13 years. I almost burned myself a few times and almost went bankrupt a few times. The question is how to be involved, but run the race without getting burned-out. It’s a marathon not a sprint.

These libraries are huge assets. Thank God I didn’t go bankrupt but became very close.

The more popular something if there are more varieties and people not everyone is so pleasant. It’s okay to disagree. Now what are the different opinions and what works well for your team and project? It’s important to stay to your core and vision. Why would you pick THIS over THAT?

It’s a fun and exciting time if you are

28:41 – Charles: What are you

28:47 – Rob: InVision and InVision studio. It’s a tool for designing screens. I work on that during the day and during the night I work on Aurelia.

30:43 – Chuck: I am pretty sure that we have had people from InVision on a show before.

31:03 – Rob comments.

Rob: How we all work together.

31:20 – What is coming in with Aurelia next?

31:24 – Rob: We are trying to work with as much backwards compatibility as we can. So you don’t see a lot of the framework code in your app code. It’s less intrusive. We are trying next, can we keep the same language, the same levels, and such but change the implementation under the hood. You don’t learn anything new. You don’t have new things to learn. But how it’s implemented it’s smaller, faster, and more efficient. We have made the framework more pluggable to the compiler-level. It’s fully supported and super accessible.

Frameworks will come and go – this is my belief is that you invest in the standards of the web. We are taking that up a notch. Unobtrusiveness is the next thing we want to do. 

We’ve always had great performance and now taking it to the next level. We are doing a lot around documentation. To help people understand what the architectural decisions are and why? We are taking it to the next level from our core. It’s coming along swimmingly so I am really excited. We’ve already got 90% test coverage and over 40,000 tests.

37:33 – Chuck: Let’s get you on JavaScript Jabber!

38:19 – Chuck: Where can people find you?

38:22 – Twitter, and everywhere else. Blog!

39:17 – Chuck: Picks?

39:23 – Rob dives in!


jQuery Angular JavaScript Vue C++ C# InVision Aurelia Aurelia Blog by Rob Rob Eisenberg’s Twitter Rob’s Website Rob’s LinkedIn Rob’s GitHub Rob’s Episode 9 Rob’s Episode 80 Rob’s Episode 203


Get A Coder Job Fresh Books Cache Fly



Database: Orbit DB Robit Riddle The Wingfeather Saga


Used to play: Dungeons and Dragons Little Wizards Park City, UT VRBO

JSJ 341: Testing in JavaScript with Gil Tayar

Nov 27, 2018 1:02:49



Aimee Knight AJ O’Neal Charles Max Wood

Special Guest: Gil Tayar

In this episode, the panel talks with Gil Tayar who is currently residing in Tel Aviv and is a software engineer. He is currently the Senior Architect at Applitools in Israel. The panel and the guest talk about the different types of tests and when/how one is to use a certain test in a particular situation. They also mention Node, React, Selenium, Puppeteer, and much more!

Show Topics:

0:00 – Advertisement: KENDO UI

0:35 – Chuck: Our panel is AJ, Aimee, myself – and our special guest is Gil Tayar. Tell us why you are famous!

1:13 – Gil talks about where he resides and his background. 

2:27 – Chuck: What is the landscape like now with testing and testing tools now?

2:39 – Guest: There is a huge renaissance with the JavaScript community. Testing has moved forward in the frontend and backend. Today we have lots of testing tools.  We can do frontend testing that wasn’t possible 5 years ago. The major change was React.

The guest talks about Node, React, tools, and more!

4:17 – Aimee: I advocate for tests and testing. There is a grey area do you treat that? If you have to get something into production, but it’s not THE thing to get into production, does that fall into product or...what?

5:02 – Guest: We decided to test everything in the beginning. We actually cam through and did that and since then I don’t think I can use the right code without testing. There are a lot of different situations, though, to consider.

The guest gives hypothetical situations that people could face.

6:27 – Aimee.

6:32 – Guest: The horror to changing code without tests, I don’t know, I haven’t done that for a while. You write with fear in your heart. Your design is driven by fear, and not what you think is right. In the beginning don’t write those tests, but...

7:22 – Aimee: I totally agree and I could go on and on and on.

7:42 – Panel: I want to do tests when I know they will create value. I don’t want to do it b/c it’s a mundane thing. Secondly, I find that some times I am in a situation where I cannot write the test b/c I would have to know the business logic is correct. I am in this discovery mode of what is the business logic? I am not just building your app.

I guess I just need advice in this area, I guess.

8:55 – Guest gives advice to panelist’s question. He mentions how there are two schools of thought.

10:20 – Guest: Don’t mock too much.

10:54 – Panel: Are unit tests the easiest? I just reach for unit testing b/c it helps me code faster. But 90% of my code is NOT that.

11:18 – Guest: Exactly! Most of our test is glue – gluing together a bunch of different stuff! Those are best tested as a medium-sized integration suite.

12:39 – Panel: That seems like a lot of work, though! I loathe the database stuff b/c they don’t map cleanly. I hate this database stuff.

13:06 – Guest: I agree, but don’t knock the database, but knock the level above the database.

13:49 – Guest: Yes, it takes time! Building the script and the testing tools, but when you have it then adding to it is zero time. Once you are in the air it’s smooth sailing.

14:17 – Panel: I guess I can see that. I like to do the dumb-way the first time. I am not clear on the transition.

14:47 – Guest: Write the code, and then write the tests.

The guest gives a hypothetical situation on how/when to test in a certain situation.

16:25 – Panel: Can you talk about that more, please?

16:50 – Guest: Don’t have the same unit – do browser and business logic stuff separated. The real business logic stuff needs to be above that level. First principle is separation of concerns.

18:04 – Panel talks about dependency interjection and asks a question.

18:27 – Guest: What I am talking about very, very light inter-dependency interjection.

19:19 – Panel: You have a main function and you are doing requires in the main function. You are passing the pieces of that into the components that need it.

19:44 – Guest: I only do it when it’s necessary; it’s not a religion for me. I do it only for those layers that I know will need to be mocked; like database layers, etc.

20:09 – Panel.

20:19 – Guest: It’s taken me 80 years to figure out, but I have made plenty of mistakes a long the way. A test should run for 2-5 minutes max for package.

20:53 – Panel: What if you have a really messy legacy system? How do you recommend going into that? Do you write tests for things that you think needs to get tested?

21:39 – Guest answers the question and mentions Selenium!

24:27 – Panel: I like that approach.

24:35 – Chuck: When you say integration test what do you mean?

24:44 – Guest: Integration tests aren’t usually talked about. For most people it’s tests that test the database level against the database. For me, the integration tests are taking a set of classes as they are in the application and testing them together w/o they can run in millisecond time.

26:54 – Advertisement –

27:52 – Chuck: How much do the tools matter?

28:01 – Guest: The revolutions matter. Whether you use Jasmine or Mocha or whatever I don’t think it matters. The tests matter not the tools.

28:39 – Aimee: Yes and no. I think some tools are outdated.

28:50 – Guest: I got a lot of flack about my blog where I talk about Cypress versus Selenium. I will never use Jasmine. In the end it’s the

29:29 – Aimee: I am curious would you be willing to expand on what the Selenium folks were saying about Puppeteer and others may not provide?

29:54 – Guest: Cypress was built for frontend developers. They don’t care about cross browser, and they tested in Chrome. Most browsers are typically the same. Selenium was built with the QA mindset – end to end tests that we need to do cross browser.

The guest continues with this topic.

30:54 – Aimee mentions Cypress.

31:08 – Guest: My guessing is that their priority is not there. I kind of agree with them.

31:21 – Aimee: I think they are focusing on mobile more.

31:24 – Guest: I think cross browser testing is less of an issue now. There is one area that is important it’s the visual area! It’s important to test visually across these different browsers.

32:32 – Guest: Selenium is a Swiss knife – it can do everything.

33:32 – Chuck: I am thinking about different topics to talk about. I haven’t used Puppeteer. What’s that about?

33:49 – Guest: Puppeteer is much more like Selenium. The reason why it’s great is b/c Puppeteer will always be Google Chrome.

35:42 – Chuck: When should you be running your tests? I like to use some unit tests when I am doing my development but how do you break that down?

36:06 – Guest.

38:30 – Chuck: You run tests against production?

38:45 – Guest: Don’t run tests against production...let me clarify!

39:14 – Chuck.

39:21 – Guest: When I am talking about integration testing in the backend...

40:37 – Chuck asks a question.

40:47 – Guest: I am constantly running between frontend and backend.

I didn’t know how to run tests for frontend. I had to invent a new thing and I “invented” the package JS DONG. It’s an implementation of Dong in Node. I found out that I wasn’t the only one and that there were others out there, too.

43:14 – Chuck: Nice! You talked in the prep docs that you urged a new frontend developer to not run the app in the browser for 2 months?

43:25 – Guest: Yeah, I found out that she was running the application...she said she knew how to write tests. I wanted her to see it my way and it probably was a radical train-of-thought, and that was this...

44:40 – Guest: Frontend is so visual.

45:12 – Chuck: What are you working on now?

45:16 – Guest: I am working with Applitools and I was impressed with what they were doing.

The guest goes into further detail.

46:08 – Guest: Those screenshots are never the same.

48:36 – Panel: It’s...comparing the output to the static site to the...

48:50 – Guest: Yes, that static site – if you have 30 pages in your app – most of those are the same. We have this trick where we don’t upload it again and again. Uploading the whole static site is usually very quick. The second thing is we don’t wait for the results. We don’t wait for the whole rendering and we continue with the tests.

50:28 – Guest: I am working mostly (right now) in backend.

50:40 – Chuck: Anything else? Picks!

50:57 – Advertisement: Get A Coder Job!

END – Advertisement: CacheFly!


JavaScript React Elixir Node.js Puppeteer Cypress SeleniumHQ Article – Ideas.Ted.Com Book: Never Split the Difference Applitools Guest’s Blog Article about Cypress vs. Selenium Gil’s Twitter Gil’s Medium Gil’s LinkedIn


Kendo UI Sentry CacheFly



How Showing Vulnerability Helps Build a Stronger Team


Never Split the Difference Project - TeleBit


Monster Hunter International Metabase


Cat Zero The Origin of Consciousness in the Breakdown of the Bicameral Mind

MJS 086: James Adams

Nov 21, 2018 32:07


Panel: Charles Max Wood

Guest: James Adams

This week on My JavaScript Story, Charles speaks with James Adams who is a web and a full stack developer who currently resides in Melbourne, Australia. Chuck and James talk about James’ background, current projects, JavaScript, Ruby, Meetups, and much more! Check out today’s episode to hear all of the details.

In particular, we dive pretty deep on:

0:00 – Advertisement: Get A Coder Job!

0:55 – Chuck: Welcome to My Java Script story! You are the 4th person I have talk to today. I have only talked to one person in the U.S. Other people were from Denmark, Tennessee (USA), and Bulgaria.

1:39 – Guest: I am in Australia!

1:48 – Chuck: I try to open it up for different times and different locations. I started making my own program. I want one tool to manage my podcast company.

2:20 – Guest.

2:26 – Chuck: Introduce yourself, please!

2:33 – Guest: I have been working in JavaScript for 2 years now, and I just FOUND it. I could have been put anywhere but working with a large company. I discovered React.js. I went to study Math and Chemistry originally.

3:24 – Chuck: What was it – why did you change from mathematics to programming?

3:38 – Guest: I like solving problems and that has been true my whole life.

4:25 – Chuck: I identify with that – you’re right – for me, it’s more tangible and it’s neat to see something being built.

White line on a black floor is mentioned.

5:30 – Guest: I had a great education, but seems like the education in the U.S. is more fun. We didn’t get to program and stuff like that.

5:51 – Chuck: My experience was that I got to do really interesting things in High School.

6:20 – Guest: I think you reap benefits by diving into one topic.

6:36 – Chuck: We were building little circuits that were turning on/off LED. We then went to building robots and then computer chips. How did you get into JavaScript?

7:01 – Guest: We didn’t touch JavaScript until my 3rd year. I went to a school in Jerusalem for a while.

9:05 – Chuck: How did you get your first programming job?

9:10 – Guest: I wasn’t really applying – I thought I would travel for a year or so. It was weird I didn’t think I had to apply to jobs right away. I applied to a few jobs, and my friend started sharing my resume around and I ended up doing some contract work for that company. I used RUBY for that team.

10:18 – Chuck: First few jobs I got were through the “spray-and-pray” method. The best jobs I got are because I KNEW somebody.

10:30 – Guest and Chuck go back-and-forth.

11:31 – Guest mentions networking.

11:41 – Chuck: What have you done with JavaScript that you are especially proud of?

11:45 – Guest.

13:43 – Chuck: I didn’t know that honestly. I never really thought of integrating React Native into a native app.

14:00 – Guest: Yeah, it’s really cool. I didn’t think about it before either!

14:24 – Chuck: What are you working on now?

14:28 – Guest: Actually, I am working on some integration with different parties. Now we are routing everything back to the backend.

15:46 – Chuck: I think I have heard of Pro...

15:52 – Guest: Yeah, they are located in the U.S.

16:01 – Chuck: Every community/country is different, but what is it like to be a programmer in Melbourne, Australia?

16:16 – Guest: It’s cool and I think it has a way to go. We have a React Meetup.

16:55 – Chuck: Sounds like you have a healthy community down there. So in Denmark if you get away from the bigger cities then you have a harder time finding a community in the rural areas.

17:30 – Guest: Do you spend more time online?

17:50 – Chuck: Yeah, I don’t know. I live in Utah. It is hard because there is a community North in Logan, UT.

18:13 – Guest: You have 5-6 main cities in Australia. We don’t have medium-sized cities. In the U.S. you have a mixture out there.

18:42 – Chuck talks about the population throughout Utah.

19:03 – Guest asks a question to Chuck.

19:09 – Chuck: Yes, Facebook is putting in Data Center about 20 minutes away from my house. They have built satellite offices here. The startup scene is picking up, too.

19:49 – Chuck: We are fairly large land wise. We can spread-out more.

20:07 – Guest talks about the population density in Australia vs. U.S.

20:20 – Chuck: It’s interesting to see what the differences are.

If you are in a community that HAS a tech community you are set.

20:39 – Guest: I find it really interesting.

21:25 – Guest: Humans are a funny species – you can put out your hand, shake it, and you start talking.

21:45 – Chuck talks about the tech hubs in Fort Lauderdale, Florida in U.S.

22:17 – Guest: Yeah, if you aren’t interested than you aren’t interested.

22:28 – Chuck.

22:37 – Guest.

22:53 – Chuck: Join the mailing list, get involved and there are online groups, too.

23:11 – Guest: I really didn’t get into functional programming at first. I got to talk about this at a React Meetup.

24:25 – Chuck: The logic is the same.

24:32 – Guest: You put these functions together and there you go!

24:40 – Chuck: Go ahead.

24:48 – The guest is talking about React’s integrations.

24:56 – Chuck: Anything that is shared and put in some functional component, hook it up, and that’s it. Picks!

25:09 – Advertisement – Fresh Books! 30-Day Trial!

END – Cache Fly

29:55 – Guest: Shout-out to my mentors. I am really blessed to have these mentors in my life and I wouldn’t be here today if it wasn’t for them. Lucas is one of them who work with Prettier.


React Angular Vue.js JavaScript Ember Elm jQuery Node Tweet Mash Up Guest’s Twitter React Melbourne ReactJS Melbourne JavaScript Meetups in Melbourne


Cache Fly Get A Coder Job Fresh Books



Presser switch for my Furnace – Goggle Search


Tweet Mash Up

JSJ 340: JavaScript Docker with Julian Fahrer

Nov 20, 2018 58:15



Aimee Knight AJ O’Neal Joe Eames Charles Max Wood Chris Ferdinandi

Special Guest: Julian Fahrer

In this episode, the panel talks with Julian Fahrer who is an online educator and software engineer in San Francisco, California (USA). The panel and the guest talk about containers, tooling, Docker, Kubernetes, and more. Check out today’s episode!

Show Topics:

0:00 – Advertisement: KENDO UI

1:00 – Chuck: We have today Julian. Julian, please tell us why you are famous?

1:10 – Julian (Guest): I am a software engineer in San Francisco.

1:35 – Chuck: We had you on Elixir Mix before – so here you are! Give us a brief introduction – tell us about the

1:56 – Julian: About 11 hours. You can get it done in about 1 week. It’s a lot to learn. It’s a new paradigm, and I think that’s why people like it.

2:22 – Aimee: How did you dive into Docker? I feel that is like backend space?

2:35 – Julian: I am a full stack engineer and I have been in backend, too.

3:10 – Aimee: I know that someone has been in-charge of our Dev Ops process until the first job I’ve had. When there is a problem in the deployment, I want to unblock myself and not wait for someone else. I think it’s a valuable topic. Why Docker over the other options?

3:58 – Julian: Let’s talk about what Docker is first?

4:12 – Chuck.

4:23 – Julian: Containers are a technology for us to run applications in isolation from each other.

Julian talks in-detail about what contains are, what they do, he gives examples, and more. Check it out here!

5:27 – Chuck: Makes sense to me. I think it’s interesting that you are talking about the dependencies. Because of the way the Docker works it’s consistent across all of your applications.

5:59 – Julian. Yes, exactly.

Julian talks about containers some more!

6:56 – Chuck asks a question about the container, Docker, and others.

7:03 – Guest: You don’t have to worry about your company’s running operating system, and what you want to use – basically everything runs in the container...

7:30 – Chuck: This short-circuits a lot of it.

7:46 – Guest.

8:00 – Chuck: People will use Docker if your employer mandates it. Is there a learning curve and how do you adapt it within the person’s company?

8:25 – Guest.

8:52 – Aimee: We are using it, too.

8:57 – Guest: Awesome!

9:03 – Aimee: The only downfall is that if you have people who are NOT familiar with it – then it’s a black box for us. We can’t troubleshoot it ourselves. I want to be able to unblock from our end w/o having to go to someone else. That’s my only issue I’ve been having.

10:03 – Guest: I want to see that tooling to be honest.

10:12 – Aimee: Can you talk about how Civil and Docker work together?

10:19 – Guest: Yes!

Julian answers the question.

10:56 – Chuck: How much work it is to get a Docker file to get up and running? How much work would it take?

11:18 – Guest: For the development side in about an hour or two – this is if you understand it already. Putting it into production that’s a different story b/c there is a million different ways to do it. It’s hard to put a time on that.

12:24 – Chuck: Let’s assume they have the basic knowledge (they get how server setup takes place) is this something you could figure out in a day or so?

12:47 – Guest: If you have touched Docker then you can do it in a day; if never then not really.

13:02 – Guest: There might be some stones you will fall over.

13:39 – Panel: The part of the learning curve would be...

13:52 – Guest: The idea behind the container is that the container should be disposable. You could throw it away and then start a new one and it’s fresh and clean.

Guest continues with his answer.

15:20 – Chuck: I have seen people do this with their database engine. If you need to upgrade your database then they grab their container...

15:55 – Guest: You don’t have to worry about setting it up - its provided in the container and...

16:09 – Chuck asks a question.

16:17 – Guest: For production, I would go with a hosted database like RJS, Azure, or other options.

Guest continues.

17:13 – Chuck.

17:20 – Guest: If it dies then you need to...

17:30 – Chuck: We talked about an idea of these containers being something you can hand around in your development team.

Chuck asks a question.

17:50 – Guest answers the question. He talks about tooling, containers, web frontend, and more.

18:48 – Guest asks Aimee a question: Are you using Compost?

18:50 – Aimee: I don’t know b/c that is a black box for us. I don’t know much about our Docker setup.

19:00 – Guest to Aimee: Can I ask you some questions?

19:14 – Guest is giving Aimee some hypothetical situations and asks what their process is like.

19:32 – Aimee answers the question.

20:11 – Guest: You have customizing tooling to be able to do x, y, and z.

20:25 – Aimee: They have hit a wall, but it’s frustrating. Our frontend and our backend are different. We are getting 500’s and it’s a black box for us. It’s the way that ops have it setup. I hate having to go to them for them to unblock us.

21:07 – Chuck: I have been hearing about Kubernetes. When will you start to see that it pays off to use it?

21:20 – Guest answers the question.

22:17 – If I have a simple app on a few different machines and front end and job servers I may not need Kubernetes. But if I have a lot of things that it depends on then I will need it?

22:35 – Guest: Yes.

22:40 – Chuck: What are the steps to using it?

22:45 – Guest: Step #1 you install it.

The guest goes through the different steps to use Docker.

25:23 – Aimee: It makes sense that your UI and your database don’t live in the same container, but what about your API and your database should that be separate?

25:40 – Guest: Yes they should be separate.

26:09 – Chuck: What has your experience been with Docker – AJ or Chris?

26:17 – Panel: I have used a little bit at work and so far it’s been a black box for me. I like the IDEA of it, but I probably need to take Julian’s course to learn more about it! (Aimee agrees!)

One thing I would love (from your perspective, Julian) – if I wanted to get started with this (and say I have not worked with containers before) where would I start?

28:22 – Advertisement –

29:20 – Guest: Good question. You don’t have to be an expert (to use Docker), but you have to be comfortable with the command line, though.

30:17 – Panel: Is there a dummy practice within your course?

30:27 – Julian: We run our own web server and...

30:44 – Panel: I need to check out your course!

31:04 – Guest: It is some time investment, but it’s saved me so much time already so it makes it really worth it.

31:38 – Panel: You are a version behind on Ruby.

31:46 – Guest: ...I just want to make code and not worry about that.

32:04 – Chuck: Updating your server – you would update Ruby and reinstall your gems and hope that they were all up-to-date. Now you don’t have to do it that way anymore.

32:37 – Guest: You know it will behave the same way.

32:48 – Guest: I have some experience with Docker. I understand its value. I guess I will share my frustrations. Not in Docker itself, but the fact that there is a need for Docker...

35:06 – Chuck.

35:12 – Panel: We need someone to come up with...

35:40 – Panel: It’s not standard JavaScript.

35:51 – Chuck: One question: How do you setup multiple stages of Docker?

36:12 – Guest: The recommended way is to have the same Docker file used in the development sate and through to production. So that way it’s the same image.

37:00 – Panel: must do your entire configuration via the environmental variables.

37:29 – Chuck asks a question.

37:36 – Panel: If you are using Heroku or Circle CI...there is a page...

38:11 – Guest and Chuck go back-and-forth.

39:17 – Chuck: Gottcha.

39:18 – Guest.

39:52 – Chuck: I have seen systems that have hyberized things like using Chef Solo and...

You do your basic setup then use Chef Solo – that doesn’t’ make sense to me. Have you seen people use this setup before?

40:20 – Guest: I guess I wouldn’t do it.

40:30 – Chuck.

40:36 – Guest: Only reason I would do that is that it works across many different platforms. If it makes your setup easier then go for it.

41:14 – Chuck: Docker Hub – I want to mention that. How robust is that? Can you put private images up there?

41:38 – Guest: You can go TOTALLY nuts with it. You could have private and public images. Also, your own version. Under the hood it’s called container registry. Yeah, you can change images, too.

42:22 – Chuck: Should I use container registry or a CI system to build the Docker system and use it somewhere else?

42:35 – Guest.

43:24 – Chuck: Where can people find your Docker course?

43:30 – Guest: LEARN DOCKER ONLINE! We are restructuring the prices. Make sure to check it out.

44:05 – Chuck: Picks! Where can people find you online?

44:14 – Guest: Twitter! eBook – Rails and Docker! Code Tails IO!


JavaScript jQuery React Elixir Elm Vue ESLint Node.js Circle CI Twitter – Circle CI Heroku Berg Design Rian Rietveld PickleJS Soft Ebook – boilerplate EMx 010 Episode with Julian Fahrer Learn Docker Indie Hacker – Julian Fahrer LinkedIn – Julian Fahrer GitHub – Julian Fahrer Twitter – Julian Fahrer


Kendo UI Sentry Cache Fly  



Zermatt Resort Heber Area



BergDesign React, WP, and a11y


Docker Videos by Dan Wahlin Rock Climbing/Indoor Rock Climbing


Extreme Ownership - Book Playing DND


PickleJS Postive Intelligence

MJS 085: Chris McKnight

Nov 14, 2018 35:57


Panel: Charles Max Wood

Guest: Chris McKnight

This week on My JavaScript Story, Charles speaks with Chris McKnight who is a software developer who knows Angular, Ruby, Node.js, and iOS. He went to college at Louisiana State University and graduated with a computer science degree from LSU. They talk about Chris’ background, past/current projects, among other things. Check out today’s episode to hear the panel talk about JavaScript, Angular, C and C++, Node, React, and much more!

In particular, we dive pretty deep on:

0:00 – Advertisement: Get A Coder Job!

1:12 – Chuck: Hello! Introduce yourself, please!

1:15 – Guest: I am a software engineer outside of Nashville, Tennessee. I work for a medium consultancy company. I know JavaScript, Angular, NativeScript, and JS, too.

1:41 – Chuck: Cool! Tell us your story and how you got into programming?

2:00 – Guest: I was a really big nerd in high school and grew up in Louisiana, USA. There was one other person in the school that knew what I was talking about. I was learning C++ and Visual Studio in 2003. That was really back in the day and Microsoft Foundation class was a thing. I moved onto PHP and started working for a company in Baton Rouge after graduating college. I have a computer science degree with a secondary discipline in mathematics. I graduated from LSU and got a job offer before I graduated. Doing some part-time work for them b/c they were swamped. I was writing PHP and they said that they used jQuery a lot.

4:47 – Chuck: You got started and you said you used C and C++, why those languages?

5:05 – Guest: I did a little bit of Java, but it was the “new kid on the block.” I wanted to get into a program that was user-friendlier.

6:21 – Chuck: I took C and C++ classes in college. Eventually I did Ruby on Rails. I totally understand why you went that way.

6:44 – Guest: I picked-up Rails, because a company (that I worked for at the time) used it. I usually reached for jQuery among other options.

7:31 – Chuck: When did you start taking JavaScript seriously?

7:40 – Guest: 2012-2013. Frustrations of not using JavaScript as good as I could. For jQuery you have to call when you have an issue. Then you run into all of these bugs, and...

9:18 – Chuck: It sounds like it was more out of necessity.

9:30 – Guest: Yep, exactly. Those pain points have been reduced b/c I have been using Type Script and Angular and now version 6 and version 7. You try to call a number method on a string and vice versa, and app development time.

10:03 – Chuck: has a process running with it.

10:13 – Guest: Catching a lot of those easy mistakes (bugs) and it’s a 5-10 minute fix. It takes a lot of that away. Sometimes you can say: I want to ignore it.

Or it doesn’t give you runtime guarantees.

Some other libraries out there have been on the forefront of fixing those problems. REST TYPE is an example of that.

11:39 – Chuck: When I talk to people about JavaScript a lot of times I get basically that they are saying: I started doing more things in Node or React – I fell in love with the language. Your reasons for starting JavaScript are because “I hated running into these problems.” Did you start loving to work in JavaScript?

12:11 – Guest: I did start loving it but it took a while. I could write a short amount of code and then at the end I get a result.

Another thing that bothers me is FILTER. What does it return? It’s actually FIND and FIND INDEX and you use the pattern of filter and run this expression and give me index zero.

14:16 – Chuck: What work have you done that you are proud of?

14:20 – Guest: I started a new job last month; beforehand I worked at a mortgage company. I was proud of the Angular application and applications that I worked on. 

16:55 – Chuck: How did you get into Angular?

17:00 – Guest: Interesting story. October of 2016 – at this time I was all against Angular. However someone came to me and said we have to...

At the time I wasn’t impressed with the language. I learned about Angular at the time, though, and learned through Egghead. I learned a lot in 2 days, and I got pretty decent at it. I was writing Angular applications pretty quickly, and it made sense to me.

20:53 – Chuck: I am a fan of the CLI b/c that’s what we have in Rails. It’s really nice. What are you working on these days?

21:13 – Guest: Less on Angular b/c of the new job. I will do Angular on my free time. I work on Angular at nighttime. I build some things in React these past few weeks.

23:07 – Chuck: Any part of your experience that could help people?

23:17 – Guest: Learn what’s happening under the hood of libraries such as jQuery. Explore and find resources to help you. Keep learning and keep at it. Tools are so god now – such as Prettier and Lint – they will tell me “you don’t want to do this.” Use the tooling and learn the fundamentals. Also, use Babel! Those are my tips of advice.

25:55 – Chuck: That’s solid. Yes, the fundamentals and the poly-fills will fill in the gaps. So now it’s: what do I want to stack on top of this? Once you know the fundamentals.

26:55 – Guest: Learn what the frameworks and libraries are doing.

Don’t get overwhelmed. That’s my advice.

28:16 – Chuck: Where can people find you?

28:24 – Guest: GitHub and Twitter. I’ve been working on a website, but not ready, yet.

29:08 – Chuck: Picks!

29:15 – Advertisement – Fresh Books! 30-Day Trial!

35:45 – Cache Fly


React Angular Vue.js JavaScript Ember Elm jQuery Node Find and Find Index NativeScript Lint Babel Prettier Christopher’s GitHub Christopher’s Twitter


Cache Fly Get A Coder Job Fresh Books



Angular Explorer VS Code Finance – Staying out of Debt – Swish App


Discord DomiNations

JSJ 339: Node.js In Motion Live Video Course from Manning with PJ Evans

Nov 13, 2018 49:32



Aimee Knight AJ O’Neal Charles Max Wood

Special Guest: PJ Evans

In this episode, the panel talks with PJ Evans who is a course developer and an instructor through Manning’s course titled, “Node.js in Motion.” This course is great to learn the fundamentals of Node, which you can check out here! The panel and PJ talk about this course, his background, and current projects that PJ is working on. Check out today’s episode to hear more!

Show Topics:

0:00 – Advertisement: KENDO UI

0:36 – Chuck: Welcome and our panel consists of Aimee, AJ, myself, and our special guest is PJ Evans. Tell us about yourself and your video course! NODE JS in Motion is the title of the course. Can you tell us more?

1:29 – PJ: It’s a fantastic course.

2:25 – Chuck: You built this course and there is a lot to talk about.

2:36 – Aimee: Let’s talk about Node and the current state. 

2:50 – Chuck: Here’s the latest features, but let’s talk about where do you start with this course? How do you get going with Node? What do people need to know with Node?

3:20 – Aimee.

3:24 – PJ talks about Node and his course!

4:02 – PJ: The biggest headache with Node is the...

4:13 – Chuck.

4:19 – PJ: I am sure a lot of the listeners are familiar with callback hell.

4:50 – Aimee: Let’s talk about the complexities of module support in Node!

5:10 – PJ: It’s a horrible mess.

5:17 – Aimee: Maybe not the tech details but let’s talk about WHAT the problem is?

5:31 – PJ: You are talking about Proper Native ES6 right?

They are arguing about how to implement it. 

6:11 – PJ: My advice is (if you are a professional) is to stick with the LT6 program. No matter how tensing those new features are!

6:46 – Aimee: It could be outdated but they had to come back and say that there were tons of complexities and we have to figure out how to get there.

7:06 – PJ: They haven’t found an elegant way to do it.

7:15 – Panel: If it’s a standard why talk about it?

Seriously – if this is a standard why not implement THE standard?

7:38 – PJ.

8:11 – Panel.

8:17 – Aimee: I would love to talk about this, though!

8:24 – Chuck: I want to talk about the course, please.

8:30 – PJ.

8:54 – Chuck: We will keep an eye on it.

9:05 – PJ.

9:16 – PJ: How is it on the browser-side?

9:33 – Aimee: I don’t want to misspeak.

9:41 – Chuck: I don’t know how complete the forms are.

9:49 – Aimee: I don’t want to misspeak.

9:56 – PJ: I just found the page that I wanted and they are calling it the .MJS or aka the Michael Jackson Script. You can do an import from...

Some people think it’s FINE and others think that it’s a TERRIBLE idea.

10:42 – Chuck: “It sounds like it’s a real THRILLER!”

10:52 – Panel.

11:25 – Panel: When you start calling things the Michael Jackson Solution you know things aren’t well.

11:44 – Aimee: Just to clarify for users...

11:57 – Chuck: I want to point us towards the course: NODE.JS.

Chuck asks two questions.

12:34 – PJ: The concepts aren’t changing, but the information is changing incredibly fast. The fundamentals are fairly settled.

13:22 – Chuck: What are those things?

13:28 – PJ talks about how he structured the course and he talks about the specifics.

15:33 – Chuck: Most of my backend stuff is done in Ruby. Aimee and AJ do more Java then I do.

15:55 – Panel: I think there is something to understanding how different Node is. I think that Node is a very fast moving train. Node has a safe place and that it’s good for people to know about this space.

16:34 – Aimee: Not everyone learns this way, but for me I like to understand WHY I would want to use Node and not another tool. For me, this talk in the show notes really helped me a lot. That’s the core and the nature of NODE.

17:21 – PJ: Yes, absolutely. Understanding the event loop and that’s aimed more towards people from other back ends. Right from the beginning we go over that detail: Here is how it works, we give them examples, and more.

18:08 – Aimee: You can do more than just create APIs.

Aimee mentions Vanilla Node.

18:50 – PJ: To get into frameworks we do a 3-line server. We cover express, and also Sequelize ORM.

19:45 – Advertisement –

20:43 – Chuck: I never used Pug.

20:45 – PJ: PUG used to be called JADE.

20:56 – Aimee.

21:14 – PJ: Express does that for you and I agree with you. I advocate a non-scripted approach, I like when frameworks have a light touch.

22:05 – Aimee: That’s what I liked about it. No offense, Chuck, but for me I didn’t like NOT knowing a lot of what was not happening under the hood. I didn’t want to reinvent the wheel, but I wanted to build at a lower level.

22:40 – PJ: I had the same experience. I wanted to figure out why something wasn’t working.

23:24 – Panel: I had a friend who used Rails...he was cautious to make a switch. This past year he was blown away with how much simpler it was and how fast things were.

24:05 – Aimee: I feel like if you want to learn JavaScript then Node might be easier on the frontend.

24:21 – Chuck: No pun intended.

No, but I agree. I like about Rails is that you had well-understood patterns. But the flipside is that you have abstractions...

To a certain degree: what did I do wrong? And you didn’t follow the pattern properly.

25:57 – Panel: With Node you get a little bit of both. To me it’s a more simple approach, but the downside is that you have 100’s of 1,000’s of modules that almost identical things. When you start reaching out to NPM that...

26:29 – PJ: Yes the module system of NPM is the best/worst thing about NODE. I don’t have an answer, honestly.

There is a great article written that made me turn white. Here is the article!

28:12 – Panel: The same thing happened with the ESLint. That was the very problem that he was describing in the article.

28:50 – PJ: Yep, I put that in the chat there – go ahead and read it! It’s not a problem that’s specific to Node, there are others. It’s the way we do things now.

29:23 – Chuck: We have the NODE Security project. A lot of stuff go into NPM everyday.

29:43 – PJ: We cover those things in the course.

29:53 – Chuck: It’s the reality. Is there a place that people get stuck?

30:00 – PJ answers the question.

30:23 – Aimee.

30:55 – PJ: I am coding very similar to my PHP days.

31:20 – Aimee.

32:02 – PJ: To finish off my point, I hope people don’t loose sight.

32:18 – Aimee.

32:20 – PJ: I am working on a project that has thousands of requests for...

32:53 – Chuck: Anything you WANTED to put into the course, but didn’t have time to?

33:05 – PJ: You can get pretty technical. It’s not an advanced course, and it won’t turn you into a rock star. This is all about confidence building. It’s to understand the fundamentals.

It’s a runtime of 6 hours and 40 minutes – you aren’t just watching a video. You have a transcript, too, running off on the side. You can sit there and type it out w/o leaving – so it’s a very interactive course.

34:26 – Chuck: You get people over the hump. What do you think people need to know to be successful with Node?

34:38 – PJ answers the question.

PJ: I think it’s a lot of practice and the student to go off and be curious on their own terms.

35:13 – Chuck: You talked about callbacks – I am thinking that one is there to manage the other?

35:31 – PJ answers the question.

PJ: You do what works for you – pick your style – do it as long as people can follow you. Take the analogy of building a bridge.

36:53 – Chuck: What are you working on now?

37:00 – PJ: Educational tool called SCHOOL PLANNER launched in Ireland, so teachers can do their lesson planning for the year and being built with Express.

Google Classroom and Google Calendar.

39:01 – PJ talks about Pi and 4wd. See links below.

40:09 – Node can be used all over the place!

40:16  - Chuck: Yes, the same can be said for other languages. Yes, Node is in the same space.

40:31 – PJ: Yep!

40:33 – Chuck: If people want to find you online where can they find you?

40:45 – PJ: Twitter! Blog!

41:04 – Picks!

41:05 – Advertisement – eBook: Get a coder job!


JavaScript jQuery React Elixir Elm Vue ESLint Node.js Node Security Project Node Security Project - Medium Manning Publications: Course by PJ Evans PUG JSConf EU – talk with Philip Roberts Medium Article by David Gilbertson – Pi Car Pi Moroni Holding a Program in One’s Head PJ Evans’ Twitter


Kendo UI Sentry Cache Fly Get a Coder Job



Paul Graham - Blog




Tweet Mash-up The Diabetes Code


Music - Max Richter

MJS 084: Henry Zhu

Nov 7, 2018 27:35


Panel: Charles Max Wood

Guest: Henry Zhu

This week on My JavaScript Story, Charles speaks with Henry Zhu who is working full-time on Babel! They discuss Henry’s background, past/current projects, Babel, and Henry’s new podcast. Check-out today’s episode to hear more!

In particular, we dive pretty deep on:

0:00 – Advertisement: Get A Coder Job!

1:00 – Chuck: Today we are talking with Henry Zhu! You are the maintainer of Babel – and we have had you on the show before. Anything else?

1:25 – Henry: I used to work with Adobe and now live in NY.

1:44 – Chuck: Episode 321 we talked to you and you released Babel 7. Tell us about Babel, please.

2:01 – Henry: It’s a translator for programming languages and it’s a compiler. It only translates JavaScript to JavaScript. You would do this because you don’t know what your users’ are using. It’s an accessibility thing as well.

3:08 – Chuck: Later, we will dive into this some more. Let’s back-up: how did you get into programming?

3:22 – Henry: I think I was in middle school and I partnered with a friend for science class and we made a flash animation about earthquakes. Both of my parents worked in the field, too. They never really encouraged me to do it, but here I am.

4:07 – Chuck: How did you get into Java?

4:11 – Henry: I made some games and made a Chinese card game. Then in college I went to a bunch of Hackathons. In college I didn’t major into computer science, but I took a bunch of classes for fun. I learned about Bootstrap and did a bunch of things with that.

5:12 – Chuck: How did you settle on JavaScript?

5:28 – Henry: It was my experience – you don’t have to download anything. You can just open things up in the console and it’s easy to share. I think I like the visual part of it and their UI.

6;07 – Chuck: At some point you ran across Babel – how did you get into that?

6:17 – Henry: After college I wanted to do software. I threw out my degree of industrial engineering. I tried to apply to Google and other top companies. I applied to various places and picked something that was local. I met Jonathan Neal and he got me into open source. Through that, I wanted to contribute to Angular, but it was hard for me. Then I found a small issue with a linting error. After that I made 30 commits to Angular. I added a space here and there. JSES is the next thing I got involved with. There is one file for the rule itself and one for the test and another for the docs. I contributed there and it was easy. I am from Georgia and a year in I get an email through Adobe. They asked if I wanted to work through Enhance in Adobe. I moved to NY and started working here. I found JS LINT, and found out about Babel JS LINT. And that’s how I found about Babel.

9:24 – Chuck: Was Sebastian still running the project at the time?

9:33 – Henry.

10:53 – Chuck: It seems like when I talk with people that you are the LEAD on Babel?

11:07 – Henry: I guess so, because I am spending the most time on it. I also quit the job to work on it. However, I want people to know that there are other people out there to give you help, too.

11:45 – Chuck: Sebastian didn’t say: this is the guy that is the lead now. But how did that crystalize?

12:12 – Henry: I think it happened by accident. I stumbled across it. By people stepping down they stepped down a while ago and others were helping and making changes. It was weird because Sebastian was going to come back.

It’s hard when you know that the person before had gotten burnt-out.

14:28 – Chuck: What is it like to go fulltime on an open source project and how do you go about it?

14:34 – Henry: I don’t want to claim that you have to do it my way. Maybe every project is different. Maybe the focus is money. That is a basic issue. If your project is more of a service, then direct it towards that. I feel weird if I made Babel a service. For me it feels like an infrastructure thing I didn’t want to do that.

I think people want to do open source fulltime, but there are a lot of things to take into consideration.

16:38 – Chuck.

16:50 – Guest.

16:53 – Henry.

16:55 – Chuck: How do you pay the bills?

17:00 – Henry: Unlike Kickstarter, Patreon is to help donate money to people who are contributing content.

If you want to donate a lot then we can tweak it.

19:06 – Chuck: Is there something in particular that you’re proud of?

19:16 – Henry: I worked on JS ES – I was a core team member of that. Going through the process of merging them together was quite interesting. I could write a whole blog post about that. There are a lot of egos and people involved. There are various projects.

Something that I have been thinking about...

20:53 – Chuck: What are you working on now?

20:58 – Henry: We released 7 a while ago and 7.1. Not sure what we are going to do next. Trying to figure out what’s important and to figure out what we want to work on. I have been thinking long-term; for example how do we get reviewers, among other things. I can spend a lot of time fixing bugs, but that is just short-term. I want to invest ways to get more people in. There is a lot of initiatives but maybe we can do something new. Maybe pair with local universities. Maybe do a local Meetup? Learning to be okay with not releasing as often. I don’t want to put fires out all day. Trying to prioritize is important.

23:17 – Chuck.

23:2 – Henry: Twitter and other platforms.

23:37 – Chuck: Picks!

23:38 – Advertisement – Fresh Books! 30-Day Trial!

24:45 – Picks.


React Angular Vue.js JavaScript Ember Elm jQuery Henry Zhu’s Twitter Henry Zhu’s GitHub Henry Zhu’s Website Patreon to Donate Towards Babel Babel Babel JS


Cache Fly Get A Coder Job Fresh Books



My own podcast – releasing it next week Podcast about Faith and Open Source


Ruby Rogues’ cohost + myself – Data Podcast – DevChat.Tv Reworking e-mails

JSJ 338: It’s Supposed To Hurt, Get Outside of Your Comfort Zone to Master Your Craft with Christopher Buecheler

Nov 6, 2018 43:37



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 –

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 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!


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


Kendo UI Sentry Cache Fly Get a Coder Job




Chris F.

AutoJump  Brutalist Web Design Mac Miller Tiny Desk Concert


Canada Dry with Lemonade


ABQ Ballon Festival Joe Eames DND Recording Channel


Docz South Reach Trilogy Jeff Vandermeer

MJS 083: Christine Legge

Oct 31, 2018 34:03


Panel: Charles Max Wood

Guest: Christine Legge

This week on My JavaScript Story, Charles speaks with Christine Legge who is a computer software engineer who works for Google in New York. Previous employment includes Axiom Zen, and Vizzion, Inc. She and Chuck talk about her background, past and current projects, and her future goals.

In particular, we dive pretty deep on:

1:07 – Hello!

1:10 – Chuck: You were on Episode 328 in the past. Tell us about yourself!

1:24 – Christine: I started working with Google about 2 weeks ago. In the past I worked in Vancouver, Canada.

2:05 – Chuck: Let’s start with how you got into programming?

2:14 – Christine: When I was in HS I wasn’t interested at all into computers. I wanted to do applied math in Toronto Canada for college. For engineering you have to take an introduction to programming in the 1st year. I had a 4-hour computer science course in the morning and I dreaded it. I dropped out 3 months later b/c I didn’t like the program. Surprisingly, enough, I did like the computer science course. I went back to Vancouver and I said to my parents that I wanted an office job. I went to the YMCA center and wanted to be hired. The man there asked if I had any interest in data entering, and I started working for him. I worked 4 hours a week with him where he taught me C+. I decided to go back to school for it.

5:37 – Chuck: What did you like about it?

5:43 – Christine: I liked the problem solving part of it. I like how you can break things down. The technology doesn’t interest me that much, but I like the problem-solving aspect. The guy wasn’t that up-to-date with the newest technologies either.

6:53 – Chuck: You have a 4-year degree in computer science.

7:05 – Yes that and statistics, too.

7:13 – Chuck: I was going to say “nerd.”

How do you go from desktop applications to web apps?

7:25 – Christine: I worked with a company part-time and fulltime depending on the year/season.

I didn’t know what web development was but I thought that THAT was computer science. I thought that if I knew how to do web development then I was going to be good to go. This company asked: What do you want to do? And I answered that I wanted to do web development b/c I thought that’s what I was lacking. I basically got thrown into it. I didn’t understand anything at all. It took me to write one line of CSS and it took 4 hours.

10:35 – Why did JavaScript attract you more so than C# or other languages that you’ve used?

10:43 – It’s simpler and you don’t need a lot of setup; from top to bottom. I am working in typescript, I like it even more, but I like how Java is more free to do what you want. I like functional programming in JavaScript. I like the big community for Java, and there are tons of applications for it. I really like how flexible the language is. You can do functional and oriented or you can combine the two. You aren’t constrained.

12:00 – Chuck: You get in, you work through JavaScript, were you only doing backend?

12:14 – Christine: Yep, backend.

13:00 –Chuck: I know you talked at the conference, and what are you most proud of?

13:14 – Christine: To be honest, no. My mentor (Pablo) at the last company – he wrote a book about D3. He started learning and writing the book. To me that I had thought that all these people are experts from the get go. I realized that everyone has to start somewhere to eventually become an expert. I do want to make an impact even outside of my job. I don’t have anything new that I’ve been working on. It’s a goal for me within the next couple of months.

15:30 – Chuck: I understand that.

15:36 – Christine: I haven’t found that balance, yet. When I gave that talk during Developer Week I was moving and stressed out. “I am NEVER doing this again!” It was over and it was very rewarding. People gave good feedback, and I would like to do that again.

16:56 – Chuck: People have different experience with that kind of stuff. People are interested in different things. So you’ve been working on moving and all that stuff right? What would you like to dive back into?

17:32 – Christine: Yes we are using Angular 2 and typescript and a Reactive Library. Angular is interesting to me. I would like to dive into the dependency injection in Angular. I really like typescript.

19:24 – Chuck: Have you looked at resources?

19:39 – Christine: I read the documentation so far. Like for React I just read the documentation but I haven’t found a central source just, yet. Not a single source. The docs are okay to get started but I haven’t found that they were enough.

20:50 – Chuck: This is about your story. I worked through the Tour of Heroes, and that helped me with Angular. It’s in the Angular Documentation.

21:23 – Christine: When you are starting at a new job I want to make sure I’m settled-in. And now I want to start thinking at a high-level of how these things work. I think the cool thing working here is that you can talk to the people who are working on Angular and get some insight that way.

22:27 – Chuck: People are usually very approachable.

22:34 – Christine: Yes, I agree. To be apart of the communities people want you to use their stuff.

22:48 – Chuck: Do you have another talk in mind when you are ready to give your next talk?

22:59 – Christine: Not sure. I have one thing on my list right now and that’s it.

23:42 – Chuck: I haven’t looked at RJX documentation but I think it’s pretty easy to pick-up. Ben who is the main developer RJX joined the team last year.

24:04 – Christine: It’s a lot of promises. When I figure it out that’s how something would work if it were a promise then I can usually get there.

24:25 – Chuck: Yeah.

24:38 – Christine: I kind of want to make connections in the office rather than me trying to do myself. I don’t want to waste time. Working on those connections would be good.

25:20 – Chuck: Let’s do some picks!

25:30 – Advertisement – Fresh Books! 30-Day Trial!


React Angular Vue.js JavaScript Ember Elm jQuery Christine Legge’s LinkedIn Christine Legge’s Twitter Christine Legge’s GitHub


Cache Fly Get A Coder Job Fresh Books



My Calendar Software – BusyCal and Google Calendar Google Calendar just started appointment slots


Podcast: The Pitch Podcast: How I Built This

JSJ 337: Microstates.js – Composable State Primitives for JavaScript with Charles Lowell & Taras Mankovski

Oct 30, 2018 1:18:15



Aimee Knight Charles Max Wood Joe Eames AJ O’Neil Chris Ferdinandi 

Special Guests: Charles Lowell (New Mexico) & Taras Mankovski (Toronto)

In this episode, the panel talks with two special guests Charles and Taras. Charles Lowell is a principle engineer at Frontside, and he loves to code. Taras works with Charles and joined Frontside, because of Charles’ love for coding. There are great personalities at Frontside, which are quite diverse. Check out this episode to hear about microstates, microstates with react, Redux, and much more!

Show Topics:

1:20 – Chuck: Let’s talk about microstates – what is that?

1:32 – Guest: My mind is focused on the how and not the what. I will zoom my mind out and let’s talk about the purposes of microstates. It means a few things. 1.) It’s going to work no matter what framework you are using. 2.) You shouldn’t have to be constantly reinventing the wheel. React Roundup – I talked about it there at this conference. 

Finally, it really needs to feel JavaScript. We didn’t want you to feel like you weren’t using JavaScript. It uses computer properties off of those models. It doesn’t feel like there is anything special that you are doing. There are just a few simple rules. You can’t mutate the state in place. If you work with JavaScript you can use it very easily. Is that a high-level view?

7:13 – Panel: There are a lot of pieces. If I spoke on a few specific things I would say that it enables programming with state machines.

7:42 – Panel: We wanted it to fell like JavaScript – that’s what I heard.

7:49 – Aimee: I heard that, too.

7:59 – Guest.

8:15 – Aimee: Redux feels like JavaScript to me.

8:25 – Guest: It’s actually – a tool – that it feels natural so it’s not contrived. It’s all JavaScript.

8:49 – Panel.

9:28 – Guest: Idiomatic Ember for example. Idiomatic in the sense that it gives you object for you to work with, which are simple objects.

10:12 – Guest: You have your reducers and your...we could do those things but ultimately it’s powerful – and not action names – we use method names; the name of the method.

11:20 – Panel: I was digging through docs, and it feels like NORMAL JavaScript. It doesn’t seem like it’s tied to a certain framework or library platform?

11:45 – Guest: Yes, we felt a lot of time designing the interfaces the API and the implementation. We wanted it to feel natural but a tool that people reach for.

(Guest continues to talk about WHY they created microstates.)

Guest: We wanted to scale very well what you need when your needs to change.

13:39 – Chuck: I have a lot of friends who get into React and then they put in Redux then they realize they have to do a lot of work – and that makes sense to do less is more.

14:17 – Guest: To define these microstates and build them up incrementally...building smaller microstates out of larger ones.

Guest continued: Will we be able to people can distribute React components a sweet array of components ready for me to use – would I be able to do the same for a small piece of state? We call them state machines, but ultimately we have some state that is driving it. Would we be able to distribute and share?

16:15 – Panel: I understand that this is tiny – but why wouldn’t I just use the native features in specific the immutability component to it?

16:42 – Guest: I’m glad you asked that question. We wanted to answer the question...

Guest: With microstates you can have strict control and it gives you the benefit of doing sophisticated things very easily.

18:33 – Guest: You mentioned immutability that’s good that you did. It’s important to capture – and capturing the naturalness of JavaScript. It’s easy to build complex structures – and there is an appeal to that. We are building these graphs and these building up these trees. You brought up immutability – why through it away b/c it’s the essence of being a developer. If you have 3-4-5 levels of nesting you have to de-structure – get to the piece of data – change it – and in your state transition 80% of your code is navigating to the change and only 20% to actually make the change. You don’t have to make that tradeoff.

21:25 – Aimee: The one thing I like about the immutability b/c of the way you test it.

21:45 – Guest: There a few things you can test. 

23:01 – Aimee: You did a good job of explaining it.

23:15 – Guest: It makes the things usually hard  easy! With immutability you can loose control, and if that happens you can get so confused. You don’t have a way to have a way to navigate to clarity. That’s what this does is make it less confusing. It gives you order and structure. It gives you a very clear path to do things you need to do. If there is a property on your object, and if there is a way to change it...

25:29 – Guest: The only constant is change no matter what framework you are working on.

24:46 – Chuck: We are talking about the benefits and philosophy. What if I have an app – and I realize I need state management – how do I put microstates into my app? It’s using Angular or React – how do I get my data into microstates?

26:35 – Guest: I can tell you what the integration looks like for any framework. You take a type and you passed that type and some value to the create function so what you get is a microstate.

(The Guest continues diving into his answer.)

28:18 – Guest: That story is very similar to Redux, basically an event emitter. The state changes on the store.

Maybe this is a good time to talk about the stability benefits and the lazy benefits because microstates is both of those things.

Stability – if I invoke a transition and the result is unchanged – same microstate – it doesn’t emit an event. It recognizes it internally. It will recognize that it’s the same item. Using that in Ember or Redux you’d have to be doing thousands of actions and doing all that computation, but stability at that level.

Also, stability in the sense of a tree. If I change one object then that changes it won’t change an element that it doesn’t need to change.

31:33 – Advertisement:

32:29 – Guest: I want to go back to your question, Chuck. Did we answer it?

32:40 – Chuck: Kind of.

32:50 – Guest.

32:59 – Guest: In Angular for example you can essentially turn a microstate...

33:51 – Guest: You could implement a connect, too. Because the primitive is small – there is no limit.

34:18 – Chuck summarizes their answers into his own words.

34:42 – Guest: If you were using a vanilla React component – this dot – I will bind this. You bind all of these features and then you pass them into your template. You can take it as a property...those are those handlers. They will perform the transition, update and what needs to be updated will happen.

35:55 – Chuck: Data and transitions are 2 separate things but you melded them together to feel like 1 thing. This way it keeps clean and fast.

36:16 – Guest: Every framework helps you in each way.

Microstates let’s you do a few things: the quality of your data all in one place and you can share.

38:12 – Guest: He made and integrated Microstates with Redux tools.

38:28 – Guest talks about paths, microstates to trees.

39:22 – Chuck.

39:25 – Panel: When I think about state machines I have been half listening / half going through the docs. When I think of state machines I think about discreet operations like a literal machine. Like a robot of many steps it can step through. We have been talking about frontend frameworks like React - is this applicable to the more traditional systems like mechanical control or is it geared towards Vue layered applications?

40:23 – Guest: Absolutely. We have BIG TEST and it has a Vue component.

41:15 – Guest: when you create a microstate from a type you are creating an object that you can work with.

42:11 – Guest: Joe, I know you have experience with Angular I would love to get your insight.

42:33 – Joe: I feel like I have less experience with RX.js. A lot of what we are talking about and I am a traditionalist, and I would like you to introduce you guys to this topic. From my perspective, where would someone start if they haven’t been doing Flux pattern and I hear this podcast. I think this is a great solution – where do I get started? The official documents? Or is it the right solution to that person?

43:50 – Guest: Draw out the state machine that you want to represent in your Vue. These are the states that this can be in and this is the data that is required to get from one thing to the other. It’s a rope process. The arrow corresponds to the method, and...

44:49 – Panel: It reminds me back in the day of rational rows.

44:56 – Guest: My first job we were using rational rows.

45:22 – Panelist: Think through the state transitions – interesting that you are saying that. What about that I am in the middle – do you stop and think through it or no?

46:06 – Guest: I think it’s a Trojan horse in some ways. I think what’s interesting you start to realize how you implement your state transitions.

48:00 – (Guest continues.)

48:45 – Panel: That’s interesting. Do you have that in the docs to that process of stopping and thinking through your state transitions and putting into the microstate?

49:05 – Guest: I talked about this back in 2016. I outlined that process. When this project was in the Ember community.

49:16 – Guest: The next step for us is to make this information accessible. We’ve been shedding a few topics and saying this is how to use microstates in your project. We need to write up those guides to help them benefit in their applications.

50:00 – Chuck: What’s the future look like?

50:03 – Guest: We are working on performance profiling.

Essentially you can hook up microstates to a fire hose.

The next thing is settling on a pattern for modeling side effects inside microstates. Microstates are STATE and it’s immutable.

52:12 – Guest: Getting documentation. We have good README but we need traditional docs, too.

52:20 – Chuck: Anything else?

52:28 – Guest: If you need help email us and gives us a shot-out.

53:03 – Chuck: Let’s do some picks!

53:05 – Advertisement for Charles Max Wood’s course!


Kendo UI Frontside Redux Microstates Microstates with React Taras Mankovski’s Twitter Taras Mankovski’s GitHub Taras Mankovski’s LinkedIn Taras Mankovski’s Frontside Bio Charles Lowell’s Twitter Charles Lowell’s GitHub Charles Lowell’s Frontside Bio Schedule Once Ruby on Rails Angular Get A Coder Job YouTube Talks Email: Working with State Machines Twitch TV BigTest Close Brace REEF The Developer Experience YouTube Video


Kendo UI – 2 months free – DEVCHAT/code Get A Coder Job



ShopTalk Episode 327 Professional JavaScript for Web Developers Technical Debt Stripe


Twitch Channel Big Test Frontside

Charles Lowell

Chalkboards Sargent Art Chalk


Close Brace LaCroix Water Chris’s Git Hub


The Developer Experience Bait and Switch Good Bye Redux Recording Dungeon and Dragons


UtahJS Conf Start with Why The Rust Book VanillaJS w/ Chris Zero to One

Charles -  beta

MJS 082: Benjamin Hong

Oct 24, 2018 22:26


Panel: Charles Max Wood

Guest: Benjamin Hong

This week on My JavaScript Story, Charles speaks with Benjamin Hong who is a Senior UI Developer at Politico where he lives in the Washington, D.C. area. He has worked with other companies including Treehouse, Element 84, and Udacity. Charles and Benjamin talk about his past and current projects, and how it’s different working for the government vs. working for a business. Check it out!

In particular, we dive pretty deep on:

1:06 – Chuck: Tell us a brief introduction, please.

1:23 – Ben: I am a lead frontend developer at Politico.

1:43 – Chuck: It’s an area that can affect everyone. How did you get into developing?

1:52: Ben: I had everything you can think of to develop at first.

2:10 – Chuck: For me it was a TI90 calculator!

2:18 – Chuck: Was it somebody or something that pushed you towards this area?

2:32 – Ben: I wanted to change something with the theme, Googled it, and it went from there, and the Marquis Tag.

2:51 – Chuck: And the Blink Tag! The goodies. So you got the he HTML book – and what website did you build that was your first big project?

3:07 – Ben: It was fiddling around, but it was fortune cookie universe.

3:20 – Chuck: You will have to recreate it!

3:27 – Ben: I think this was 1993/1995 timeframe.

3:40 – Chuck: Yep, me too same time frame. If you had something move on your website it was so cool. You went to building...

4:02 – Ben: JavaScript was a roadblock for me. There was nobody to correct me. I had a JavaScript book and it was a massive failure.

4:33 – Chuck: You took a break and you came back?

4:40 – Ben: Oh – people will PAY you to do this?!

4:54 – Chuck: Did you go to college?

5:01 – Ben: Yes, I have a Master’s in a different field. I was always a tech junkie. I just wanted to put things together.

5:20 – Chuck: Take us through your journey through JS?

5:30 – Ben: I started off with the jQuery piece of it. I needed Java, and it took me awhile to wrap my head around it at first. Through the trial and process of trying to get into Angular and React, too.

6:19 – Chuck: Did you play with Backbone, Knockout, or Ember?

6:32 – Ben: I did do SOME Ember and some Knockout. Those were my first interactions.

6:49 – Chuck: What got you into the profession? How did you get from your Master’s to being a tech guy?

7:14 – Ben: From the Master’s field I learned a lot about human experience, and anted to breed the two together. Also, consulting and helping to build things, too.

7:44 – Charles: What was the career change like?

7:53 – Ben: I went to the federal government at first around the recession – it was good having a stable job. I was bored, though. While I was working for the government I was trying to get my foot in the door. From there I have been building my way up.

8:30 – Ben: I was working on and then later...

8:46 – Charles: We won’t use the word “disaster”!

What is it like to work for the government?

9:20 – Ben: Yep. The federal government is a different area because they are stake holders. They were about WHO owned the content, and who do we have to talk to get something approved. It was not product oriented like a business. I made my transition to Politico, because I wanted to find solutions and diversify the problems I was having.

10:31 – Chuck: Have you been there from the beginning?

10:39 – Ben answers the question.

Ben: They were looking for frontend developers

10:54 – Chuck: You are the lead there now. What was that like with the transition?

11:08 – Ben talks about the beginnings stages of his time with Politico and the current situation. He talks about the different problems, challenges, and etc.

11:36 – Chuck: Do you consider yourself a news organization or?

11:47 – Ben: We have Politico Pro, too. I have been working with this site more so. There are updates about campaign and voting data. People will pay a fee.

12:25 – Chuck: Do they pain themselves as leaning one way or another or nonpartisan?

12:38 – Ben: We are objective and nonpartisan.

12:51 – Chuck: I know, I was hesitant to ask. What’s the mission of the company and into what you do?

13:09 – Ben: The projects get dumped to us and we are about solving the problems. What is the best route for solving it? I had to help pioneer the new framework into the tech staff is one of my roles.

13:48 – Chuck: What’s your tech stack?

13:55 – Ben: JavaScript and Vue.js. We are experimenting with other software, too.

14:16 – Chuck: We should get you talking about Vue on the other show!

Are you working at home?

14:32 – Ben answers the question.

Ben: One thing I am helping with Meetup. Community outreach is important and I’m apart of that.

15:09 – Chuck: Yep, it’s interesting to see various fields into the tech world. I am not one of those liberal arts majors, I do have a computer science degree. It’s interesting to see the different perspectives. How little it is for someone to be able to dive-in right away.

What are you working on?

16:09 – Ben: Meetup population and helping with the work at Politico.

16:27 – Chuck: Reusable components. Are those opensource or only internal?

16:41 – Ben: They are now opensource but we are seeing which portions can be opensource or not.

17:01 – Chuck: Different companies have come out and offered their opensource.

Where do they find you?

17:20 – BenCodeZen! They are more than welcome to message me.

17:36 – Chuck: Any advice on newbies to this field?

17:46 – Ben: Attending those meetings and making those connections.

18:18 – Chuck: I have been writing a book on HOW to get a job as a coder. That’s the same advice that I am giving, too.

18:46 – Chuck: Picks!

18:51 – Advertisement – Fresh Books! 30-Day Trial!


React Angular Vue.js JavaScript Ember Elm jQuery BenCodeZen Ben’s LinkedIn Ben’s Crunch Base


Cache Fly Get A Coder Job Fresh Books



Framework Summit – UT (Ember, Elm, and tons more!) Microsoft Ignite Code Badge


Conference in Toronto Conference in Atlanta, GA (Connect Tech) Conference in London – Vue

JSJ 336: “The Origin of ESLint” with Nicholas Zakas

Oct 23, 2018 1:08:01



Aimee Knight Charles Max Wood (DevChat TV) Christopher Ferdinandi (Boston) Cory House (Kansas City) Joe Eames

Special Guests: Nicholas Zakas

In this episode, the panel talks with Nicholas Zakas who writes on his site, Human Who Codes. He is the creator of ESLint, also the author of several books, and he blogs, too. He was employed through Box and today he talks about ESLint in full detail! Check it out! 

Show Topics:

0:05 – Advertisement: KENDO UI

0:37 – Hello! The panel is...(Chuck introduces everyone).

1:04 – Nicholas who are you?

1:17 – Nicholas: Yeah it’s been about 5 years and then you invited me again, but I couldn’t come on to talk about ESLint back then. That’s probably what people know me most for at this point. I created ESLint and I kicked that off and now a great team of people is maintaining it.

1:58 – Chuck: What is it?

2:04 – It’s a Linter for JavaScript. It falls into the same category as JSLint. The purpose of ESLint is to help you find problems with your code. It has grown quite a bit since I’ve created it. It can help with bugs and enforcing style guides and other things.

2:53 – Where did it come from?

2:57 – Guest: The idea popped into my head when I worked at Pop. One of my teammates was working on a bug and at that time we were using...

Nothing was working and after investigating someone had written a JavaScript code that was using a native code to make an Ajax request. It wasn’t the best practice for the company at the time. For whatever reason the person was unaware of that. When using that native XML...there was a little bit of trickiness to it because it was a wrapper around the...

We used a library to work around those situations and add a line (a Linter) for all JavaScript files. It was a text file and when you tried to render code through the process it would run and run the normal expression and it would fail if any of the...matched.

I am not comfortable using normal expressions to write code for this. You could be matching in side of a string and it’s not a good way to be checking code for problems. I wanted to find a better way.

6:04 – Why did you choose to create a product vs. using other options out there?

6:15 – Guest: Both of those weren’t around. JSHint was pretty much the defector tool that everyone was using. My first thought was if JSHint could help with this problem?

I went back to look at JSHint and I saw that on their roadmap you could create your own rules, and I thought that’s what we need. Why would I build something new? I didn’t see anything on GitHub and didn’t see the status of that. I wanted to see what the plan was, and they weren’t going to get to it. I said that I really needed this tool and I thought it would be helpful to others, too.

8:04 – My history was only back when it was customizable.

8:13 – Aimee: It’s interesting to see that they are basing it on regular expressions.

8:32 – Guest: Interesting thing at Box was that there was...I am not sure but one of the engineers at Box wrote...

9:03 – Aimee: I was going to ask in your opinion what do you think ES Lint is the standard now?

9:16 – Guest: How easy it is to plug things in. That was always my goal because I wanted the tool not to be boxed in – in anyway.

The guest continues to talk about how pluggable ESLint is and the other features of this tool.

13:41 – One thing I like about ESLint is that it can be an educational tool for a team. Did you see that being an educational tool?

14:24 – Guest: How do you start introducing new things to a team that is running at full capacity? That is something that I’ve wondered throughout my career. As a result of that, I found that a new team there were some problems I the code base that were really hard to get resolved, because when one person recognizes it there isn’t a god way to share that information within a team in a non-confrontational way. It’s better to get angry at a tool rather than a person.

Guest goes into what this can teach people.

18:07 – Panelist: I am not surprised. Is there a best practice to get a team to start with ESLint?

Do you get the whole team in a room and show them the options or take the best guess and turn it on?

18:34 – Guest: The thing I recommend is that first and foremost get ESLint in your system with zero rules on. It starts that mindset into your development process. We can do something to automatically check...

Get Syntax checking and you will se improvements on the number of bugs that are getting out of production. I recommend using the default the ESLint configuration. This has all of the things that we have found that are most likely errors and runtime errors vs. syntax errors. You can go through with those and sometimes it is easier to run that check with...

Using those ESLint rules will clean up a lot of problems that you didn’t know you had with your code. There are too many problems with those rules. I recommend instead of turning them off then put the severity to warning and not error. That is something we started with in the beginning. We turned on as many rules as we could and it drove people crazy. They didn’t feel like when they were committing to a file why should I be...

The idea with the different scenario levels you don’t’ want to turn off rules so people don’t know there is a problem. There can be a rule on so people will know that there is a problem, but...

Doing that alone will give you a lot of benefit in using ESLint. How do you decide as a team on the rules that are maybe not for finding errors but for stylistic in error? Do we use four spaces, semi-colons, etc. To figure that out I am a big component on finding a pre-existing style guide and adapting it. Get everyone to agree.

There is no right or wrong when it comes to stylistic preferences. It really is just getting everyone to do the same thing. I think it was Crawford that said: Whether you drive on the right side of the left side of the road – it doesn’t matter as long as everyone is dong the same thing. I agree with that and it applies to style guides. It can get heated but for the best thing for the team is stick with a guide and work together.

24:36 – Aimee: I can go through the options to pick one of the style guides out there and then it will automatically create my configuration for me is helpful. Question: If you had to pick 2 or 3 rules that you are super helpful what would they be?

25:30 – Guest: To touch briefly on indentation. Whether you like four spaces or whether you are wild and like tabs, I think the indent rule is very helpful. Just for wiping out and eliminating that discussion through your team. Have your editor setup however they want but on the pre-hook...

But my favorite rules I tend to lean towards the ones that saved me.

The Guest goes through his favorite rules with ESLint. Check it out!

26:51 – Guest mentions his second favorite rule, here!

28:24 – Guest mentions his third favorite rule, here!

29:03 – Guest mentions the rule that makes him giggle a lot, here!

30:07 – Advertisement – Sentry!

31:22 – What is your take on running Fix? Does it make sense to run Fix?

32:00 – Guest: It depends and the idea behind Fix is the idea of doing a one time (at the start) fix everything that it can find wrong b/c I don’t want to do it by hand. It morphed into a more of a tool that people are using all the time. I too have mixed feelings about it. I think the greatest value you get out of Fix is that when you first install it or when you enable a new rule. I think in those situations you get a lot of value out of Fix. I think that when people were getting aggressive with their code styles it took us down a path where we...

As a pre-commit hook it could be to fix things and part of the built system you wouldn’t want...

People are probably wondering: Why doesn’t ESLint doesn’t fix all the time?

It can be a team decision: do you want to run Fix at the point that the developer is writing the code, do you want to use Fix as running it as a build when you are bundling? It really seems more of a personal preference. I am on the fence about it. Even though I am leaning more towards...

35:16 – Do you run Premier?

35:20 – Guest: No I don’t. I don’t have anything against Premier but I think Prettier uses a very interesting space.

37:50 – Chuck: What is next for ESLint and what is next for you?

37:55 – Guest: Well, to be honest I am not sure what is next for ESLint. I haven’t been involved with keeping it maintained for the last few years. I do help out with feedback with decisions. But in general the ESLint the direction is that let’s add tings that help people avoid language hazards and make sure that ESLint is still pluggable. Lastly, that we will be there to help people and the community. There is this virtuosic cycle and tools like Babble and then tools like ESLint introducing rules adapting new rules and features better.

For myself, and the future, I haven’t been involved with ESLint because I am focusing on my health. I was diagnosed with Lyme Disease and it meant that I needed to focus on my health. That’s why, too, I wasn’t able to join a few years ago. I am doing better but I am a few years away for working fulltime and writing books and blogging, again. The trajectory is upward. I want to stress that you need to take care of yourself.

There is interesting stuff that we are doing and I love it, but make sure you take care of yourself! If you don’t have your health then nothing will really matter. I want to encourage you all to take care of yourselves better. This industry can take a toll on your body b/c it is high-stressed. If you are stressed your immune system will shut down. For a lot of us we are working too much and there isn’t an off-switch. I would like to encourage people to examine their life and their time.

When you take time to turn off your analytic brain, and work on your creative brain then the pathways will connect better.

Please save your money!

Lyme disease is spread through tick bites.

44:30 – Aimee: Thank you for sharing that!

44:38 – Chuck: It’s encouraging to me that you are still trying to come back even after this disease. I think we take things for granted sometimes. You can’t always count on things going the way you want it to go.

45:19 – Guest: What happened to me was I left work and one Friday afternoon I had a normal weekend. My health was on the decline, and I rested all weekend. And Monday I couldn’t get out of bed. That started this whole period where I stopped leaving the house completely. That’s how quickly things can change for you. I harp on people a lot to save their money. If I didn’t have savings there would be a very different end to my story. I want to encourage people to save.

46:33 – Chuck: I think on that note let’s go to picks. Where can people find you?

46:45 – Guest: My blog is Human Who Codes.

47:10 – Chuck: Anything people can do to help you? Check out his books you won’t regret it!

47:33 – Guest: Buying books is always helpful. I would say that if you can spend some time contributing to ESLint that is always a great help. Anything you can do to help them will help me. I want to make sure that those folks are happy, healthy and productive. For me, personally, I love when people Tweet at me and say HI! I love hearing other people’s stories of how they have overcome past diseases or illnesses. If you want to send monetary gifts – donate to a wonderful organization that helps children with Lyme disease. I would encourage you to support if you feel inclined.

50:49 – Chuck: We appreciate it, and I appreciate you being so open about your personal story.

51:11 – Advertisement – eBook: Get a coder job!


JavaScript jQuery React Elixir Elm Vue GitHub – Prettier GitHub – Premier Lyme Light Foundation Inclusive Components ESLint – Disallow Specific Imports State of JS Learn JavaScript Book: Total Recall Goodbye Redux YouTube Channel – Sideways Human Who Codes – Nicholas Zakas Nicholas’ Books Nicholas’ Twitter Nicholas’ GitHub Nicholas’ LinkedIn


Kendo UI Sentry Cache Fly Get a Coder Job



Technical debt Professional JavaScript for Web Developers


Inclusive Components Blog CSS Cascade JS Jabber - code


No Restricted Imports State of JS Total Recall


My JavaScript Story


Thought bubbles... Goodbye Redux Sideways Channel


The Brain that Changes Its Self Ghost Boy Tip - Turn off your Wi-Fi before Bed

MJS 081: Christiané Heiligers

Oct 17, 2018 19:20


Panel: Charles Max Wood

Guest: Christiané Heiligers

This week on My JavaScript Story, Charles speaks with Dr. Christiané Heiligers who is new to the industry. Her background is in physics where she has her Ph.D. in the field. Listen to today’s episode to hear her background, experience with the different programs/languages, and much more!

In particular, we dive pretty deep on:

Beginning – Advertisement: Code Badges!

1:07 – Christiané: Hello!

1:17 – Chuck: I like hearing people’s stories from our community. Tell us where you come from and who you are?

1:33 – Christiané: I am from South Africa, and have been in the US for 2 years now. My formal training is in physics. I have been a researcher with lab coats and test tubes. Through immigration, which took 2 years. I couldn’t be still, and started learning code on my own. I enjoyed the art. I had to use Python, and then I was hooked. I enjoyed the functional programming and other things. I had some experience with Ruby on Rails. I enjoy development because its problem solving, methodically approach, and uses your creative side, too. My preference is a Mac, need the Internet and decided to go to camps and take courses.

I snagged a job a week before I graduated!

4:36 – Chuck: your journey, thus far. You said that you couldn’t be idle – so why code?

4:53 – Guest: The UK is cold you don’t want to do anything outside! From South American I couldn’t stand the cold. I kept busy indoors – hint the code. You can’t get bored – frontend or backend.

5:28 – Chuck: Can you give us background on the Grace Hopper Academy.

5:40 – Guest: Sure! It’s based in NY City.

6:26 – Chuck: Did you move somewhere or was it remote?

6:30 – Guest: I had to live somewhere e

6:51 – Chuck: Where did you

6:55 – Guest: NY City. There were 16 of us in the course.

7:14 – Chuck: Why did you feel like you had to go to coding school?

7:25 – Guest: I am impatient with myself. The home-life you ask yourself: “Am I doing the right thing? Am I going in the right direction?” I wanted to go and pick up some skills.

7:56 – Chuck: You go through Grace Hopper – is this how you got into JavaScript?

8:11 – Guest: I didn’t know a line of JavaScript.

I did my application code line in Ruby.

My husband has been in software development my whole life.

9:16 – Chuck: What have you done with JavaScript since learning it?

9:24 – Guest: Some card playing games for my nieces in South Africa.

10:50 – Guest: Stack Overflow is wonderful.

11:05 – Chuck.

11:11 – Guest: I wasn’t actively contributing, but I did...

11:30 – Chuck: What is it like being a prof

11:37 – Guest: It’s addictive. When I am writing code in the frontend / backend side. It’s always learning.

12:11 – Chuck: What’s next for you?

12:18 – Guest: I would love to continue this journey. Maybe into the DevOps, but my passion happens with React. The Hapi Framework.

13:10 – Guest: The community is wonderful to work with – everyone is very helpful.

13:22 – Chuck: People are usually talking about Express and not Hapi.js.

13:35 – Guest: I have some contact names you can call.

13:43 – Guest: I am working on a few small projects right now. Some Angular sites that need assistance. Helping out where I can. It’s a small team that I am working with. There is only a few of us.

14:31 – Chuck: Usually people stick with one. What’s your experience using the different frameworks?

14:40 – Guest: It’s an eye-opener! React vs. Angular.

15:07 – Chuck: How can people find you?

15:14 – Guest: LinkedIn, Twitter, Tallwave, etc.

15:37 – Chuck: Picks!

15:40 – Advertisement!


React Angular Grace Hopper Academy Christiané’s Instagram Christiané’s Facebook


Code Badge Cache Fly Get A Coder Job



Podcasts that Chuck listens to: Code Newbie Our podcasts through DevChat Food – Kedo Diet – 2 Keto Dudes

Christiané Heiligers

Hapi Framework Hapi Slack Channel – Hapi.js

JSJ 335: “CanJS 4.0” with Justin Meyer

Oct 16, 2018 54:04



Aimee Knight Charles Max Wood (DevChat TV) Christopher Ferdinandi (Boston) Joe Eames

Special Guests: Justin Meyer

In this episode, the panel talks with Justin Meyer who is a co-author of DoneJS, CanJS, jQueryPP, StealJS, and DocumentJS. Justin currently works for Bitovi and is their Director of R&D. He is also a fan of basketball and Michael Jackson. The panel and Justin talk about CanJS in-detail – check it out!

Show Topics:

0:58 – We had you on Episode 202.

1:14 – Chuck: Can you tell everyone who you are?

1:20 – Justin tells us his background.

1:50 – Chuck.

1:58 – Justin.

2:06 – Chuck: Can you give us an introduction to what CanJS 4.0?

2:11 – Justin: It is a JavaScript framework and is similar to Vue. It adds a very model layer, and uses Real Time very well.

2:44 – Panelist.

2:49 – Justin.

2:55 – Panelist: What is the current...

3:09 – Justin: Compatibility is very important to us. A lot of the same tools are still available. It has over 80 different repositories.

Justin continues to talk about the differences/similarities between the different versions.

4:55 – Panelist: Angular, React, and Vue are dominating, so I have 2 questions.

1.) Where is the core strength of JS and its user base?

2.) What is like to be the CanJS when everyone is talking about the other programs?

5:31 – Justin: We have dealt with this for the past 10 years. Emotionally it’s not great, I wished it was more popular, but our priority is keeping our user-based happy. We’ve had big companies use it.

Justin answers the second question.

8:44 – Panelist: You mentioned two things.

9:22 – Aimee: I think everything has trade-offs. I would use something because it was the right tool for the job. I wouldn’t want to make something that was “cool.” I would want to make it super accessible in a network.

10:10 – Justin: That is a great marketing angle. We are trying to remove the worst parts of the program.

10:26 – Now I am intrigued.

10:32 – Justin: You have this mutable state and you aren’t sure. At least for CanJS I don’t see that occurring too often.

10:54 – Aimee.

10:58 – Justin: Deep inheritance is definitely a problem and it can create...

11:13 – Aimee.

11:19 – Justin: We have changed strategies a lot, and I think it’s helped CanJS grow; like 60% since January. We are doing a lot of user studies now. I run Meetups, etc. That being said inheritance schemes aren’t something that people will encounter. This is something that they won’t encounter months down the road.

13:00 – Aimee.

13:05 – Panelist: I would like to dig deeper into state-management. Everyone is doing Flux, talk about that with CanJS.

13:20 – Justin: Yeah. It depends on what kind of user you are talking to. When I talk to new users off the street (people who just graduated, etc.)...

If you look at React’s statistics – more than 50% doesn’t use any state management.

16:15 – Panelist: I think it’s interesting that there are people that aren’t “oh my gosh...”

16:43 – Justin: The last coolest thing I’ve done is...

18:02 – Justin continues.

18:16 – Panelist: I kind of have this belief that we as a community turn to frameworks and tools too much. From your perspective when does it make sense to turn to a tool like this or better off working with native...

18:56 – It depends on how complex your app is and our ability to work through those problems. I think that’s a generic answer, but hopefully that helps. I don’t think you really can’t live without.

19:49 – Panelist: I think that’s fair. One thing that I found is that there are many things layered into state-management. Because you mentioned performance, which is something I care about, too. At what point does the extra tooling become too heavy for the user’s experience? Where do you draw the line?

21:11 – Justin: It depends. I don’t know what the parallel is – it’s like a richer developer problem. You have too many users where you can make those fine tuned adjustments. Do whatever is going to deliver the product first and then worry about performance later? I think our things are geared towards performance by default.

22:41 – Panelist: Playing devil’s advocate, though. But isn’t there some danger in kind of suggesting that you focus on performance WHEN it’s a business issue? Maybe there is there a lack of empathy among developers. I worry that advice is hurting us.

23:53 – Justin: No matter what you can build your homepage with Angular weird monstrosity, but then when you get to the point when people are using your product – you can just use native HTML, and native methods and build that one widget and as easy and fast as possible.

24:50 – Panelist: Dealing with complexity. Now we need to do things like bundlers, and such to deal with this issue. I feel like a crotchety old man yelling because it takes forever.

25:38 – Justin: I think it depends on where you are sitting. I think that comes down to the design. If your design has a lot of complex states, then...

26:37 – Panelist: Because you care about performance...

26:54 – Advertisement

27:53 – Justin: I don’t think that the run time of CanJS is going to be a critical performance path for anybody. Is there a responsibility? This is the oldest question. It’s like saying: where do you draw the line that you need to choose success/be elected to fight the battles if you really want to win.

You need someone using your product or it doesn’t really matter. Start-ups use our product because they need to get something up and in. I am going to flip this back onto you guys.

30:48 – Panelist: I think that’s fair.

31:00 – Aimee: I have a question. You got into consultancy when do you recommend using CanJS or something else?

31:15 – Justin: I always suggest people using CanJS.

31:53 – Aimee: What do these people do when their contract is over? I have used an older version of Can, and...

32:20 – Justin: Are you on Gitter?

Aimee: No, I am not.

32:25 – Justin: We do offer promote job posting to help them find somebody. We try our best to help people in any way we can.

33:05 – Aimee: That’s helpful. Another question.

33:28 – Justin: DoneJS is that. It uses the full kitchen sink. That’s what DoneJS is.

33:50 – Panelist: Let’s talk about CanJS in the mark-up. Do you think it’s better now or worse than 2012? Less space or more space?

34:13 – Justin: It’s probably worse. I think the methodology that we are using: focusing on our users. We get their feedback frequently. We are listening to our users, and I think we are being smarter.

35:16 – Panelist: Is the space getting more welcoming or less?

35:31 – It depends on what framework you are. It’s very hard to compete if you are the exact same thing as...

The market is so dense and there are so many ideas, so it’s getting harder and harder. What helps people break-through? Is it the technology or the framework?

36:36 – Panelist: I appreciate the richness of the field, as it exists right now. There aren’t a few things SMELT and ELM

37:10 – Justin: Elm for sure. I don’t have a lot of experience with SMELT.

37:23 – Panelist continues the talk.

37:54 – Chuck.

38:00 – Justin: I think it spreads by word-of-mouth. I used to think it was “technology” or... all that really matters is “can you deliver” and the person have a good experience.

Usability is the most important to me. We will see how this turns out. I will be either right or wrong.

39:18 – Panelist: Can we talk about the long-term future of Can JS?

39:28 – Justin: We are connecting to our user-base and making them happy. If I had it my way (which I don’t anymore) I think JSX is the best template language. We have been building integrations between JSX and...

I am putting out proposals where most people don’t like them.

Justin continues this conversation.

44:24 – Picks!

44:28 - Advertisement


JavaScript jQuery React Elixir Elm Vue Dinero.js Vanilla JS Toolkit CanJS’ Website CanJS’ GitHub CanJS’ Twitter JSX JSX- NPM Justin Meyer’s GitHub Justin Meyer’s Twitter Past Episode with Justin Meyer


Kendo UI Sentry Cache Fly Get a Coder Job



Taking a walk for creativity

Chris Dinero.js


Pitch Meeting Solo


Phoenix Framework The Queens Poisoner A View From The Top


The Killing of H2Push Browser Contributor Days JSJ Episode 326 with Tom Dale

MJS 080: Ely Lucas

Oct 10, 2018 35:40


Panel: Charles Max Wood

Guest: Ely Lucas

This week on My JavaScirpt Story, Charles speaks with Ely Lucas who is a software developer. He loves technologies and mobile technologies among other things. Let’s listen to today’s episode where Chuck and Ely talk about Ionic, Angular, React and many other topics! Check it out!

In particular, we dive pretty deep on:

1:33 – Hello!

1:40 Chuck: Give us a background on who you are, and tell us how famous you are!

2:31 – Chuck: What do you do with Ionic?

2:40 – Ely answers the question.

3:51 – Chuck: How did you get into your field?

3:55 – Ely: When I was a kid and played with video games. Later on I got into web development, like my website. Then I got into a professional-level of developing.

Ely goes into detail about how his passion for developing began and developed.

6:30 – Chuck: Yeah, I’ve talked with people who have gotten into video games, then got into software development.

7:01 – Ely: Someday I would like to develop games.

7:12 – Chuck: Yes, web developing is awesome.

Chuck asks Ely another question.

7:25 – Ely answers the question and mentions web controls.

9:17 – Ely: I thought Ajax was easier.

9:38 – Chuck: When I got into web development jQuery was sort of new. It made things a lot easier.

9:58 – Ely: A lot of people like to sneer at jQuery now, but back in the day it was IT.

10:28 – Chuck: How did you get into Ionic?

10:43 – Ely: I got a fulltime gig working on Ionic; I like the framework. I saw a job application and sent in my résumé. Two days later I got a callback and was amazed. They were hiring remotely. The team liked me and started over a year ago.

11:46 – Chuck asks a question.

11:54 – Ely answers the question.

13:20 – Chuck: Why Ionic?

13:35 – Ely: It was based off of Angular.

15:17 – Chuck: You mentioned...what has the transition been like?

15:32 – Ely talks about past programs he has worked with. He taught React in the early React days.

16:37 – Ely: I have a deep appreciation on React now.

17:09 – Chuck: I like seeing the process that people go through.

17:24 – Ely continues the conversation.

Ely: It is interesting to see the learning process that people go through to arrive in the same place.

18:18 – Chuck: Redux is a good example of this. Anyway, this is near the end of our time.

18:39 – Chuck: Anything else you want to talk about?

18:48 – Ely: Yes, I have been involved in the Denver community. Check us out.


Ionic jQuery JavaScript React Ely Lucas’ Twitter Ely Lucas’ LinkedIn Ely Lucas Ely Lucas’ GitHub


Get A Coder Job Code Badges Digital Ocean



Audible Book: Seven Proven Principles... Tony Robbins’ Book: Unshakeable


Fantasy Novel: Shadow of what was lost. Ionic

JSJ 334: “Web Performance API” with Dan Shappir

Oct 9, 2018 1:07:58



Aimee Knight Charles Max Wood Christopher Ferdinandi (Boston)

Special Guests: Dan Shappir (Tel Aviv)

In this episode, the panel talks with Dan Shappir who is a computer software developer and performance specialist at As Dan states, his job is to make 100 million websites (hosted on the Wix platform) load and execute faster! Past employment includes working for companies, such as: Ericom, Ericom Software, and BackWeb. He studied at Technion Institute of Management and currently lives in Tel Aviv, Israel. The panel talks about web performance API among other things. Check it out!

Show Topics:

1:29 – Charles: Let us know who you are and why you’re famous!

1:39 – “Hello!” from Dan Shappir.

2:25 – Charles: You should say that you go to EACH site EVERY day out of the millions of sites out there.

2:53 – Charles: My mom mentioned Wix to me at first. My mom teaches High School Math.

3:16 – Dan: Yes that is our mission statement. That everyone can get a website without the knowledge of how to build a website.

3:52 – Aimee makes her comments.

3:59 – Dan: On our platform we try to offer people flexibility. There are bounds and limits, but people can do their very own thing, though. To make Wix faster because as we add more features and functionality that is our goal.

4:40 – Chuck: Okay, I know how to make X perform a little bit better. You are looking at a platform that controls TONS of sites, how do you even go about that?

4:58 – Dan: It is more difficult then that. We have millions of users leveraging the platform but there are a lot of developers in Wix who are developing the platform. I don’t think anyone at Wix has a total grasp of the complexity of the platform that we built. We have hundreds of frontend people working on our platform. All of them have pieces to the kingdom. We have processes in place with code reviews and whatnot, but there is so much going on. There is a change every 2 minutes, 24/7. We need to make sure progressing instead of regressing. 

6:54 – Aimee: I think it was interesting in one of the links you sent over. Because you know when something is getting worse you consider that a bug.

7:15 – Dan: It is more than a bug because if we see regression in performance then that is a problem. I can literally see any part of the organization and say, “stop” if it will

7:57 – Chuck: We are talking about performance, but what does that mean? What measures are there?

8:15: Dan: We are looking at performance can mean different things in different contents. User sites, for example, most important aspect is load time. How quickly the page loads and gets open to the viewer to that specific site. When they click something they want it instantly and no drag time. It does change in different contexts.

9:58 – Chuck: People do talk about load time. People have different definitions of it.

10:12: Dan: Excellent question. When you look at the different sites through Wix. Different people who build sites – load time can mean something else to everybody. It can mean when you see the MAIN text or the MAIN image. If it’s on an ECON site then how soon can they purchase or on a booking site, how long can the person book X product.

I heard someone at a conference say that load time is when: HERO TEXT And HERO IMAGE are displayed.

12:14 – Chuck: What is faster React or Vue?

12:21 – NEW HOST: Not sure. It all depends.

12:34 – Dan: We are big into React. We are one of the big React users outside of Facebook. I joined Wix four years ago, and even back then we were rebuilding our framework using React. One of our main modifications is because we wanted to do server-side rendered.

13:27 – Christopher asks Dan a question.

14:16 – Dan: We are in transition in this regard. Before we were totally client-site rendered, and that was the case until middle of last year. Then we deployed...

Dan: We are 100% server-side rendered now. Some things we are still using JavaScript. We have another project going on now and it’s fully CSS, and little JavaScript as possible. What you might want to do with that site is...

You might get in a few months every Wix site will be visible even if JavaScript is disabled.

16:26 – Aimee adds in her comments and observations to this topic.

16:55 – Dan: We don’t want things displayed incorrectly before it lays out. We hide the content while it’s downloading then make it visible. They lay-outing are done faster, because...

17:44 – Christopher asks Dan a question.

18:04 – Dan: I got into API...

Either you are moving forward or are you moving back. AKA – You are either progressing or regressing.

Different stages:

1.) Development stage

2.) Pre-Production (automated tools that check the performance with specific use cases)

3.) Check it out!

It’s beneficial to use these APIs.

21:11 – Christopher: What is performance APIs?

21:38 – Dan: There is a working group – Todd from Microsoft and others who are exposing the information (that is available in the browser) out into the browser. When the browser downloads a certain source (image, font, etc.) it can measure the various stages of downloading that feature.  You have these different sages of downloading this resource. The browser can measure each of these stages and then expose them to you. Basically it’s for the browser to expose this information to you and in a way that is coherent and uniform. It essentially maintains this buffer that puts performance entries sequentially.

Dan continues explaining this topic in detail.

25:55 – Dan: You have this internal buffer...

28:45 – Advertisement – Sentry – They support opensource.

29:39 – Christopher: everything you are saying seems that I can use this or that tab right now...

Why would I prefer the API to something visual, hypothetically?

30:03 – Dan: Three Different Stages. (See above.)

This information is very, very helpful during the developmental stage. Say you got a link from someone...

Dan mentions: Performance.mark

34:04 – Aimee: When you were talking about resource-ends. Many people don’t know what this is. Can you spend 2-3 minutes about how you guys are using these? Are there people can add for big bang for their buck?

34:41 – Dan: This might want to be a topic for its own podcast show.

Dan gives a definition of what a resource-end means.

Go back to fonts as an example.

Pre-connect for example, too.

39:03 – Dan: Like I said, it’s a huge topic.

You have to exercise some care. Bandwidth is limited. Make sure you aren’t blocking other resources that you do need right now.

40:02 – Aimee: Sounds like a lot of great things to tap into. Another question I have is about bundling.

40:27 – Dan: One of the things that we try to do (given that we are depending on the JavaScript we are downloading) we need to download JavaScript content to the client side. It has been shown often that JS is the most impactful resources that you need to download. You really want to be as smart as possible with that. What is even more challenging is the network protocols are changing.

Dan continues to go in-depth about this topic.

Dan: What we have found is that you want to strive to bundle resources together.

44:10 – Aimee: Makes sense.

44:15 – Dan continues talking about this topic.

45:23 – Chuck asks two questions. (First question is now and second question is at 51:32.)

2 Questions:

1. You gather information from web performance AI - What system is that?

45:42 – Dan: I am not the expert in that. I will try not to give misleading information. Actually let me phrase it different. There are 3rd party tools that you can use leverage in your website. IF you are building for commercial reasons I highly recommend that you use performance-monitoring solution. I am not going to advertise one because there are tons out there. We ended up rolling out our own infrastructure because our use case is different than most.

At a conference I talked with a vendor and we talked about...

51:32 – 2nd Question from Charles to Dan: Now you’ve gathered this information now what to you do? What patterns? What do you look for? And how do you decide to optimize things?

54:23 – Chuck: Back to that question, Dan. How should they react to it and what are they looking for

54:41 – Dan: Three main ways: 1.) Generate alerts 2.) See trends over long period of time 3.) Looking at real-time graphs.

Frontend developer pro is that likely being woken up in the middle of the night is lower. We might be looking at the real time graph after we deployed...

57:31 – Advertisement – Get a Coder Job!

58:10 – Picks!


JavaScript jQuery React Elixir Elm Vue Wix Window Performance Web Performance Terra Genesis Terra Genesis: Space Colony The One Thing DevChat TV – YouTube GitHub: Off Side HBO: Insecure Wix: Engineering JavaScript Riddle JavaScript Riddles for Fun and for Profit Dan Shappir’s Twitter Dan Shappir’s LinkedIn Dan Shappir’s Crunch Base Dan Shappir’s GitHub Dan Shappir’s Talk through Fluent Dan Shappir’s Medium Dan Shappir’s YouTube Talk: JavaScript riddles for fun and profit


Code Badges Kendo UI Sentry Digital Ocean Cache Fly  



Waking up early! How to Deal with Dirty Side Effects in Your Pure Functional JavaScript


Offside - Toomuchdesign Insecure TV Show


Terraform - Game “The One Thing" Code Badge DevChat on YouTube


Wix Engineering JavaScript Riddle

MJS 079: Michael Garrigan

Oct 3, 2018 33:31


Panel: Charles Max Wood

Guest: Michael Garrigan

This week on My JavaScript Story, Charles speaks with who is one of the podcast’s listeners. He is changing careers midway and has had many exciting careers in the past, such as being a professional chef, carpenter, repairman, and so on. Listen to today’s episode to hear Michael’s unique experience with programming and JavaScript.

In particular, we dive pretty deep on:

1:18 – Chuck: I started this show but interviewing guests and then opened up to listeners. Michael scheduled an interview and here we go! I find that his experience will be different than mine than others. We will be getting guests on here, but wanted this to be a well-rounded view within the community.

2:25 – Michael’s background! His experience is a mid-career change. To see the things that are intimidating and exciting.

3:16 – How did you get into programming?

3:23 – Michael: How do people talk to machines? What are the different computer languages out there? What do people prefer to use? The C programming language, I saw as the “grandfather” program. That’s the first thing I looked at. Then I was like, “what is going on?” I got a copy of the original K&R book and worked through that.

4:58 – Chuck: I did the C language in college. The Java that I was learning then was less complicated. How did you end up with JavaScript then?

5:26 – Guest: It was easy and you can just open up a console and it works. You want to see things happen visually when you program is great. It’s a great entry point. We started building things in React and how fun that is. I enjoy JavaScript in general.

6:11 – Chuck: What is your career transition?

6:18 – Guest: I have always been a craftsman and building things. I had a portion time I was a professional chef, which is the cold side like sausages and meats and cheeses, etc. I used to do a lot of ice carvings, too. Stopped that and opened a small business and repaired antique furniture for people. Wicker restoration. It was super cool because it was 100+ years old. To see what people did very well was enjoyable. Every few years I wanted to see how something worked, and that’s how I got into it. That was the gateway to something that was scary to something that made programs.

8:24 – Chuck: I was working in IT and wrote a system that managed updates across multiple servers. There is some automation I can do here, and it grew to something else. What made you switch? Were you were looking for something more lucrative?

9:01 – Michael: Main motivation I appreciate the logic behind it. I always build physical items. To build items that are non-physical is kind of different. Using logic to essentially put out a giant instruction sheet is fun.

9:52 – Chuck: At what point do you say I want to do a boot camp?

10:04 – Michael: I might to this as a career. Hobby level and going to work is definitely different. I could see myself getting up every day and going to meetings and talking about these topics and different issues. Coding day to day.

10:51 – Chuck: Who did you talk to who got you started?

10:57 – Guest: Things I read online and friends. They said get the basics behind programming. Languages come and go. Be able to learn quickly and learn the basics.

12:13 – Chuck: In NY city? It’s pricy to live there.

12:33 – Guest: Cost of living is much greater.

12:42 – Chuck: What was it like to go to a boot camp?

12:50 – Guest answers question.

14:30 – Advertisement – Get a Coder Job

15:11 – Chuck: What different projects have you worked on?

15:19 – Guest talks about his many different projects. Like

18:11 – Michael: Working on getting a job. I put together a portfolio and just graduated this past week.

19:38 – Charles: Anything that has been a huge challenge for you?

19:47 – Not really just one. I’ve done big projects in the past. Seeing that I can do them and sheer amount of work that I have put in. Not really too concerned. Only concern is that mid-30s any bias that is out there. I don’t think that will really affect me.

20:25 – Chuck: Yeah, it’s rally not age-bias.

20:55 – Michael: “Making your bones” is an expression in culinary school. That means that you put in the hours in the beginning to become a professional at it. So I have had transitioned several times and each time I had to make my bones and put in the time, so I am not looking forward to that for me right now, but...

21:43 – Chuck: Anything else?

21:51 – Guest: Meetups.

22:40 – Chuck: I have been putting time into making this book.

22:53 – Guest puts in his last comments.

24:00 – Chuck: Thinking about what I want DevChat TV to be. I have been thinking and writing the mission statement for DevChat TV.

25:14 – Chuck: It’s a big deal to get out of debt. My wife and I will be at the end of the year.

25:37 – Guest: Discipline not to spend money, and peer pressure.

25:48 – Picks!

25:57 – Advertisement for Digital Ocean!


Book Dave Ramsey: Introducing Our Brand-New Book! Hack Reactor JavaScript Meetup – website


Code Badge Digital Ocean Cache Fly Get A Coder Job



TNT – The Last Ship Board game – Pandemic Legacy Kickstarter – Code Badges

Michael Garrigan

Brad’s YouTube channel - ½ million subscribers – website

JSJ 333: “JavaScript 2018: Things You Need to Know, and a Few You Can Skip” with Ethan Brown

Oct 2, 2018 1:12:33



Aimee Knight Joe Eames Charles Max Wood

Special Guests: Ethan Brown

In this episode, the panel talks with Ethan Brown who is a technological director at a small company. They write software to facilitate large public organizations and help make projects more effective, such as: rehabilitation of large construction projects, among others. There is a lot of government work through the endeavors they encounter. Today, the panel talks about his article he wrote, and other topics such as Flex, Redux, Ruby, Vue.js, Automerge, block chain, and Elm. Enjoy!

Show Topics:

2:38 – Chuck: We are here to talk about the software side of things.

Let’s dive into what you are looking at mid-year what we need to know for 2018. You wrote this.

3:25 – Ethan: I start off saying that doing this podcast now, how quickly things change. One thing I didn’t think people needed to know was symbols, and now that’s changed. I had a hard time with bundling and other things. I didn’t think the troubles were worth it. And now a couple of moths ago (an open source project) someone submitted a PR and said: maybe we should be using symbols? I told them I’ve had problems in the past. They said: are you crazy?!

It’s funny to see how I things have changed.

4:47 – Panel: Could you talk about symbols?

4:58 – Aimee: Are they comparable to Ruby?

5:05 – Ethan talks about what symbols are and what they do!

5:52 – Chuck: That’s pretty close to how that’s used in Ruby, too.

6:04 – Aimee: I haven’t used them in JavaScript, yet. When have you used them recently?

6:15 – Ethan answers the question.

7:17 – Panelist chimes in.

7:27 – Ethan continues his answer. The topic of “symbols” continues. Ethan talks about Automerge.

11:18 – Chuck: I want to dive-into what you SHOULD know in 2018 – does this come from your experience? Or how did you drive this list?

11:40 – Ethan: I realize that this is a local business, and I try to hear what people are and are not using. I read blogs. I think I am staying on top of these topics being discussed.

12:25 – Chuck: Most of these things are what people are talking.

12:47 – Aimee: Web Assembly. Why is this on the list?

12:58 – Ethan: I put on the list, because I heard lots of people talk about this. What I was hearing the echoes of the JavaScript haters. They have gone through a renaissance. Along with Node, and React (among others) people did get on board. There are a lot of people that are poisoned by that. I think the excitement has died down. If I were to tell a story today – I would

14:23 – Would you put block chain on there? And AI?

14:34 – Panel: I think it’s something you should be aware of in regards to web assembly. I think it will be aware of. I don’t know if there is anything functional that I could use it with.

15:18 – Chuck: I haven’t really played with it...

15:27 – Panel: If you wrote this today would you put machine learning on there?

15:37 – Ethan: Machine Learning...

16:44 – Chuck: Back to Web Assembly. I don’t think you were wrong, I think you were early. Web Assembly isn’t design just to be a ... It’s designed to be highly optimized for...

17:45 – Ethan: Well-said. Most of the work I do today we are hardly taxing the devices we are using on.

18:18 – Chuck and panel chime in.

18:39 – Chuck: I did think the next two you have on here makes sense.

18:54 – Panel: Functional programming?

19:02 – Ethan: I have a lot of thoughts on functional programming and they are mixed. I was exposed to this in the late 90’s. It was around by 20-30 years. These aren’t new. I do credit JavaScript to bring these to the masses. It’s the first language I see the masses clinging to. 10 years ago you didn’t see that. I think that’s great for the programming community in general. I would liken it to a way that Ruby on Rails really changed the way we do web developing with strong tooling. It was never really my favorite language but I can appreciate what it did for web programming. With that said...(Ethan continues the conversation.)

Ethan: I love Elm.

21:49 – Panelists talks about Elm.

*The topic diverts slightly.

22:23 – Panel: Here’s a counter-argument. Want to stir the pot a little bit.

I want to take the side of someone who does NOT like functional programming.

24:08 – Ethan: I don’t disagree with you. There are some things I agree with and things I do disagree with. Let’s talk about Data Structures. I feel like I use this everyday. Maybe it’s the common ones. The computer science background definitely helps out.

If there was one data structure, it would be TREES. I think STACKS and QUEUES are important, too. Don’t use 200-300 hours, but here are the most important ones. For algorithms that maybe you should know and bust out by heart.

27:48 – Advertisement for Chuck’s E-book Course: Get A Coder Job

28:30 – Chuck: Functional programming – people talk bout why they hate it, and people go all the way down and they say: You have to do it this way....

What pay things will pay off for me, and which things won’t pay off for me? For a lot of the easy wins it has already been discussed. I can’t remember all the principles behind it. You are looking at real tradeoffs.  You have to approach it in another way. I like the IDEA that you should know in 2018, get to know X, Y, or Z, this year. You are helping the person guide them through the process.

30:18 – Ethan: Having the right tools in your toolbox.

30:45 – Panel: I agree with everything you said, I was on board, until you said: Get Merge Conflicts.

I think as developers we are being dragged in...

33:55 – Panelist: Is this the RIGHT tool to use in this situation?

34:06 – Aimee: If you are ever feeling super imposed about something then make sure you give it a fair shot, first.

34:28 – That’s the only reason why I keep watching DC movies.

34:41 – Chuck: Functional programming and...

I see people react because of the hype cycle. It doesn’t fit into my current paradigm. Is it super popular for a few months or...?

35:10 – Aimee: I would love for someone to point out a way those pure functions that wouldn’t make their code more testable.

35:42 – Ethan: Give things a fair shake. This is going back a few years when React was starting to gain popularity. I had young programmers all about React. I tried it and mixing it with JavaScript and...I thought it was gross. Everyone went on board and I had to make technically decisions. A Friend told me that you have to try it 3 times and give up 3 times for you to get it. That was exactly it – don’t know if that was prophecy or something. This was one of my bigger professional mistakes because team wanted to use it and I didn’t at first. At the time we went with Vue (old dog like me). I cost us 80,000 lines of code and how many man hours because I wasn’t keeping an open-mind?

37:54 – Chuck: We can all say that with someone we’ve done.

38:04 – Panel shares a personal story.

38:32 – Panel: I sympathize because I had the same feeling as automated testing. That first time, that automated test saved me 3 hours. Oh My Gosh! What have I been missing!

39:12 – Ethan: Why should you do automated testing? Here is why...

You have to not be afraid of testing. Not afraid of breaking things and getting messy.

39:51 – Panel: Immutability?

40:00 – Ethan talks about this topic.

42:58 – Chuck: You have summed up my experience with it.

43:10 – Panel: Yep. I agree. This is stupid why would I make a copy of a huge structure, when...

44:03 – Chuck: To Joe’s point – but it wasn’t just “this was a dumb way” – it was also trivial, too. I am doing all of these operations and look my memory doesn’t go through the roof. They you see it pay off. If you don’t see how it’s saving you effort, at first, then you really understand later.

44:58 – Aimee: Going back to it being a functional concept and making things more testable and let it being clearly separate things makes working in code a better experience.

As I am working in a system that is NOT a pleasure.

45:31 – Chuck: It’s called legacy code...

45:38 – What is the code year? What constitutes a legacy application?

45:55 – Panel: 7 times – good rule.

46:10 – Aimee: I am not trolling. Serious conversation I was having with them this year.

46:27 – Just like cars.

46:34 – Chuck chimes in with his rule of thumb.

46:244 – Panel and Chuck go back-and-forth with this topic.

47:14 – Dilbert cartoons – check it out.

47:55 – GREAT QUOTE about life lessons.

48:09 – Chuck: I wish I knew then what I know now.

Data binding. Flux and Redux. Lots of this came out of stuff around both data stores and shadow domes. How do you tease this out with the stuff that came out around the same time?

48:51 – Ethan answers question.

51:17 – Panel chimes in.

52:01 – Picks!


JavaScript jQuery React Elixir Elm Vue Automerge - GITHUB Functional – Light JavaScript Lego’s Massive Cloud City Star Wars Lego Shop The Traveler’s Gift – Book Jocks Rule, Nerds Drool by Jennifer Wright 2ality – JavaScript and more Cooper Press Book – Ethan Brown O’Reilly Community – Ethan Brown’s Bio Ethan Brown’s Twitter


Kendo UI Sentry Digital Ocean Cache Fly  





Lego - Star Wars Betrayal at Cloud City Functional-Light JavaScript


The Traveler’s Gift The Shack The Expanse


Jocks Rule, Nerd Drool JavaScipt Blog by Dr. Axel Rauschmayer Cooper Press

MJS 078: Steve Edwards

Sep 26, 2018 39:09


Show notes coming shortly!

JSJ 332: “You Learned JavaScript, Now What?” with Chris Heilmann

Sep 25, 2018 1:13:57



AJ O’Neal Aimee Knight Joe Eames Charles Max Wood

Special Guests: Chris Heilmann

In this episode, the panel talks with programmer, Chris Heilmann. He has written books about JavaScript, in addition to writing a blog about it and is an educator about this program.  He currently resides in Berlin, Germany. Let’s welcome our special guest and listen to today’s episode!

Show Topics:

2:19 – Chuck talks.

2:41 – Chris: He has talked about JavaScript in Berlin upon an invitation. You can get five different suggestions about how to use JavaScript. The best practices, I have found, are on the projects I am on now. JavaScript was built in ten days. My goal is to help people navigate through JavaScript and help them feel not disenfranchised. 

5:47 – Aimee: The overall theme is...

5:54 – Panelist: I really like what you said about helping people not feeling disenfranchised.

6:47 – Chris: There is a lot of peer pressure at peer conferences

7:30 – Aimee chimes in with some comments.

7:50: Chris: I think we need to hunt the person down that put...

8:03 – Panelist: A good point to that is, I try to avoid comments like, “Well, like we ALL know...”

8:27 – Chris: There are things NOT to say on stage. It happens, but we don’t want to say certain things while we are teaching people. We are building products with different groups, so keep that in mind.

9:40 – Aimee: My experience in doing this is that I have found it very rewarding to share embarrassing experiences that I’ve had. My advice would to tell people to let their guard down. It’s encouraging for me.

10:26 – Chris: It helps to show that you are vulnerable and show that you are still learning, too. We are all learning together. 90% of our job is communicating with others.

11:05 – Chuck: Now, I do want to ask this...

11:35 – Chris answers.

12:24 – What makes you say that? (Question to Chris)

12:25 – Chris answers.

13:55 – Chuck: The different systems out there are either widely distributed or...

You will have to work with other people. There is no way that people can make that on their own. If you can’t work with other people, then you are a hindrance.

14:31 – Aimee chimes in.

14:53 – Chris: They have to be very self-assured. I want to do things that are at the next level. Each developer has his or her own story. I want to move up the chain, so I want to make sure these developers are self-assured.

16:07 – Chris: Back to the article...

18:26 – Chuck: Yes, I agree. Why go and fight creating a whole system when it exists.

18:54 – Chris chimes in with some comments.

19:38 – Panelist: I still use console logs.

19:48 – Chris: We all do, but we have to...

19:55 – Aimee: In the past year, I can’t tell you how much I rely on this. Do I use Angular? Do I learn Vue? All those things that you can focus on – tools.

10:21 – Chris: We are talking about the ethics of interfaces. Good code is about accessibility, privacy and maintainability, among others. Everything else is sugar on top. We are building products for other people.

22:10 – Chuck: That is the interesting message in your post, and that you are saying: having a deep, solid knowledge of React (that is sort of a status thing...). It is other things that really do matter. It’s the impact we are having. It’s those things that will make the difference. Those things people will want to work with and solves their problems.

23:00 – Chris adds his comments. He talks about Flash.

24:05 – Chris: The librarian motto: “I don’t know everything, but I can look “here” to find the answer.” We don’t know everything.

24:31 – Aimee: Learn how to learn.

24:50 – Chris: There is a big gap in the market. Scratch is a cool tool and it’s these puzzle pieces you put together. It was hard for me to use that system. No, I don’t want to do that. But if you teach the kids these tools then that’s good. 

24:56 – Chuck: Here is the link, and all I had to do was write React components.

26:12 – Chris: My first laptop was 5x more heavy then this one is. Having access to the Internet is a blessing.

27:24 – Advertisement

28:21 – Chuck: Let’s bring this back around. If someone has gone through boot camp, you are recommending that they get use to know their editor, debugging, etc.

Chris: 28:47 – Chris: Yes, get involved within your community. GitHub. This is a community effort. You can help. Writing code from scratch is not that necessary anymore. Why rebuild something if it works. Why fix it if it’s not broken?

31:00 – Chuck talks about his experience.

31:13 – Chris continues his thoughts.

Chris: Start growing a community.

32:01 – Chuck: What ways can people get involved within their community?

32:13 – Chris: Meetup. There are a lot of opportunities out there. Just going online and seeing where the conferences

34:08 – Chris: It’s interesting when I coach people on public speaking. Sharing your knowledge and learning experience is great!

34:50 – Chuck: If they are learning how to code interacting with people you can get closer to what you need/want.

35:30 – Chris continues this conversation.

35:49 – Chris: You can be the person that helps with x, y, z. Just by getting your name known then you can get a job offer.

36:23 – Chuck: How do you find out what is really good content – what’s worth your time vs. what’s not worth your time?

36:36 –Chris says, “That’s tricky!” Chris answers the question.

37:19: Chris: The best things out there right now is...

38:45 – Chuck: Anything else that people want to bring up?

39:00 – Chris continues to talk.

42:26 – Aimee adds in her thoughts.

Aimee: I would encourage people to...

43:00 – Chris continues the conversation.

Chris: Each project is different, when I build a web app is different then when I build a...

45:07 – Panelist: I agree. You talked about abstractions that don’t go away. You use abstractions in what you use. At some point, it’s safe to rly on this abstraction, but not this one. People may ask themselves: maybe CoffeeScript wasn’t the best thing for me.

46:11 – Chris comments and refers to jQuery.

48:58 – Chris continues the conversation.

Chris: I used to work on eight different projects and they worked on different interfaces. I learned about these different environments. This is the project we are now using, and this will like it for the end of time. This is where abstractions are the weird thing. What was the use of the abstraction if it doesn’t have longevity? I think we are building things too soon and too fast.

51:04 – Chris: When I work in browsers and come up with brand new stuff.

52:21 – Panelist: Your points are great, but there are some additional things we need to talk about. Let’s take jQuery as an example. There is a strong argument that if you misuse the browser...

53:45 – Chris: The main issue I have with jQuery is that people get an immediate satisfaction. What do we do besides this?

55:58 – Panelist asks Chris further questions.

56:25 – Chris answers.

Chris: There are highly frequent websites that aren’t being maintained and they aren’t maintainable anymore.

57:09 – Panelist: Prototypes were invented because...

57:51 – Chris: It’s a 20/20 thing.

58:04 – Panelist: Same thing can be said about the Y2K.

58:20 – Panelist: Yes, they had to solve that problem that day. The reality is...

58:44 – Chris: We learned from that whole experience.

1:00:51 – Chris: There was a lot of fluff around it.

1:01:35 – Panelist: Being able to see the future would be a very helpful thing.

1:01:43 – Chris continues the conversation.

1:02:44 – Chuck: How do people get ahold of you?

1:03:04 – Twitter is probably the best way.

1:03:32 – Let’s go to picks!

1:03:36 - Advertisement


JavaScript So you Learned Java Script, what now? – Article WebHint Article by James Sinclair Clank! Angular GitHub Meetup Chris Heilmann’s Twitter Chris Heilmann’s Website Chris Heilmann’s Medium Chris Heilmann’s LinkedIn Chris Heilmann Chris Heilmann’s GitHub Smashing Magazine – Chris Heilmann jQuery CoffeeScript React Elixir


Kendo UI Sentry Digital Ocean Cache Fly  

Picks :


Hacker News -  How to deal with dirty side effects in your pure functional JavaScript




Framework Summit Clank ASMR


Get a Coder Job Course The Iron Druid Chronicles Framework Summit


Web Unleashed Toronto Kurzgesagt It Is Just You, Everything’s Not Shit

MJS 077: Sérgio Crisóstomo

Sep 19, 2018 34:21


Panel: Charles Max Wood

Guest: Sérgio Crisóstomo

This week on My JavaScript Story, Charles speaks with Sérgio Crisóstomo. Charles is now interviewing podcast listeners, not just guest speakers. Check-out toady’s episode to hear Sérgio’s background as a musician and as a programmer. Also, to hear Sérgio’s latest projects and how he fell in-love with Sweden and ended up moving there!

In particular, we dive pretty deep on:

1:46 – Chuck: How did you get into programming?

1:53 – Sérgio: As a child, I got interested into gaming. I wrote coding. Spectrum.

2:22 – Chuck: I think that makes you about my age.

2:41 – Sérgio: I was born in 1978.

2:51 – Sérgio: I had a cousin who got inspired by me and we started doing things together. We would show each other what we were doing. Better games and better computers came around. Turned out that I came back to it later in life.

3:29 – Chuck: what got you interested?

3:30 – Sérgio: It was all about problem-solving. There was no book. It was trial and error. It was magic. I was doing small steps, and it was empowering to me.

4:29 – Chuck: I used Logo. How did you get into programming at the professional-level?

4:45 – Sérgio: It was a long journey. My family was deep into a musical background. I went to the conservatory. I had a background in math, music, and physics. I went into programming because my father pushed me towards that direction. I did my Master’s in violin. After that I moved to Sweden. I really liked Sweden’s educational system. After 20 years I got into program working. I faked it until I made it. I had no one who could help me day-to-day life. I love solving problems. I found myself helping people in Portugal and other countries, since their English wasn’t strong. I liked that I was helping the community. That made me feel good about c

10:15 – Chuck: You switch from PHP to Node? What was the reasoning to that?

11:30 – Chuck: What things have you built in JavaScript?

11:47 – Sérgio: I started doing some freelance work. In the beginning it was helping friends.

13:22 – Chuck: Football – do you mean soccer or football?

13:35 – Sérgio: One day in the school, we got a new principal that the school didn’t like. I left because I wasn’t happy. I was a fulltime musician, and looked at this fulltime-programming job. I went to an interview where there were code quizzes. I loved the challenges. I had to choose between two different careers. After some negotiations it was a great fit for me. I got to be in-charge of different projects. Right now, I am a senior developer. It’s a small company but it is growing.

15:48 – Advertisement  E-book!

16:31 – Chuck: It’s interesting to see how you weren’t happy with your original job and how you got into programming fulltime.

17:29 – Sérgio: It’s important to have a good perspective. I am used to meeting people because I worked with choirs, orchestras, dance, and people and I can use those tools that I learned with musicians and transfer over to programming. Since I was good in JavaScript that helped me. Also, it was good that I was head-in-chief, because of my background of being a teacher. I found similarities and made it happen. That was my way in.

19:36 – Chuck: I find that very interesting. Yes, in the larger markets they might have their pick, but if you look into the smaller markets they might need you.

20:21 – Sérgio: People will invest into you if you are willing to learn and stay for a while.

20:48 – Chuck: What is the community like over in Sweden?

21:12 – Chuck: Do you have a lot of communities/boot camps out there to help people to code out in Sweden?

21:32 – Sérgio: Yes. It’s a really active community, and I have been involved helping connect people. People are curious and wanting to grow. It’s really open.

22:39 – Chuck: How do you start a program like that?

22:53 – Sérgio: I went to MEETUP.COM. 

23:45 – Sérgio: I fell in-love with the concept of Sweden’s education system. I was there touring and decided I wanted to move to Sweden. It was worth staying. Sweden is having different political winds now. They are open to foreigners. I am a Swedish citizen now.

25:18 – Chuck: What are you working on now?

25:26 – Sérgio answers Chuck’s question.

26:45 – Chuck: Anything else?

26:54 – Sérgio: I can talk about music a lot! I find a lot of programmers are musicians, too.

27:23 – Chuck: One more question. I have met, too, a lot of programmers who are musicians, too. What is the correlation?

27:43 – Music has a lot of mathematics. You have to play on time and solve problems all the time. I was in a workshop with musicians and entrepreneurs, and I learned a lot in this workshop. There are different attitudes when conducting. There is problem solving and managing people. I see the connections there.

Links: Sergio’s GitHub Sergio’s Website Sergio’s Website Sergio’s Twitter


Code Badges Digital Ocean Cache Fly



Views on Vue – DevChat Code Badge - Kick Starter


Chopin! Checkout Sweden if you want a job as a programmer! Email me!

JSJ 331: “An Overview of JavaScript Testing in 2018” with Vitali Zaidman

Sep 18, 2018 54:56



AJ O’Neal Aimee Knight Joe Eames Charles Max Wood

Special Guests: Vitali Zaidman

In this episode, the panel talks with programmer, Vitali Zaidman, who is working with Software Solutions Company. He researches technologies and starts new projects all the time, and looks at these new technologies within the market. The panel talks about testing JavaScript in 2018 and Jest.

Show Topics:

1:32 – Chuck: Let’s talk about testing JavaScript in 2018.

1:53 – Vitali talks about solving problems in JavaScript.

2:46 – Chuck asks Vitali a question.

3:03 – Vitali’s answer.

3:30 – Why Jest? Why not Mocha or these other programs?

3:49 – Jest is the best interruption of what testing should look like and the best practice nowadays. There are different options, they can be better, but Jest has this great support from their community. There are great new features.

4:31 – Chuck to Joe: What are you using for testing nowadays?

4:43 – Joe: I use Angular, primarily.

6:01 – Like life, it’s sometimes easier to use things that make things very valuable.

7:55 – Aimee: I have heard great things about Cypress, but at work we are using another program.

8:22 – Vitali: Check out my article.

8:51 – Aimee: There are too many problems with the program that we use at work.

9:39 – Panelist to Vitali: I read your article, and I am a fan. Why do you pick Test Café over Cypress, and how familiar are you with Cypress? What about Selenium and other programs?

10:12 – Vitali: “Test Café and Cypress are competing head-to-head.”

Listen to Vitali’s suggestions and comments per the panelists’ question at this timestamp.

11:25 – Chuck: I see that you use sign-on...

12:29 – Aimee: Can you talk about Puppeteer? It seems promising.

12:45 – Vitali: Yes, Puppeteer is promising. It’s developed by Google and by Chrome. You don’t want to use all of your tests in Puppeteer, because it will be really hard to do in other browsers.

13:26: Panelist: “...5, 6, 7, years ago it was important of any kind of JavaScript testing you had no idea if it worked in one browser and it not necessarily works in another browser. That was 10 years ago. Is multiple browsers testing as important then as it is now?

14:51: Vitali answers the above question.

15:30 – Aimee: If it is more JavaScript heavy then it could possibly cause more problems.

15:56 – Panelist: I agree with this.

16:02 – Vitali continues this conversation with additional comments.

16:17 – Aimee: “I see that Safari is the new Internet Explorer.”

16:23: Chuck: “Yes, you have to know your audience. Are they using older browsers? What is the compatibility?”

17:01 – Vitali: There are issues with the security. Firefox has a feature of tracking protection; something like that.

17:33 – Question to Vitali by Panelist.

17:55 – Vitali answers the question.

18:30 – Panelist makes additional comments.

18:43 – If you use Safari, you reap what you sow.

18:49 – Chuck: I use Chrome on my iPhone. (Aimee does, too.) Sometimes I wind up in Safari by accident.

19:38 – Panelist makes comments.

19:52 – Vitali tells a funny story that relates to this topic.

20:45 – There are too many standards out there.

21:05 – Aimee makes comments.

21:08 – Brutalist Web Design. Some guy has this site – Brutalist Web Design – where he says use basic stuff and stop being so custom. Stop using the web as some crazy platform, and if your site is a website that can be scrolled through, that’s great. It needs to be just enough for people to see your content.

22:16 – Aimee makes additional comments about this topic of Brutalist Web Design.

22:35 – Panelist: I like it when people go out and say things like that.

22:45 – Here is the point, though. There is a difference between a website and a web application. Really the purpose is to read an article.

23:37 – Vitali chimes in.

24:01 – Back to the topic of content on websites.

25:17 – Panelist: Medium is very minimal. Medium doesn’t feel like an application.

26:10 – Is the website easy enough for the user to scroll through and get the content like they want to?

26:19 – Advertisement.

27:22 – See how far off the topic we got?

27:31 – These are my favorite conversations to have.

27:39 – Vitali: Let’s talk about how my article got so popular. It’s an interesting thing, I started researching “testing” for my company. We wanted to implement one of the testing tools. Instead of creating a presentation, I would write first about it in Medium to get feedback from the community as well. It was a great decision, because I got a lot of comments back. I enjoyed the experience, too. Just write about your problem in Medium to see what people say.

28:48 – Panelist: You put a ton of time and energy in this article. There are tons of links. Did you really go through all of those articles?

29:10 – Yes, what are the most permanent tools? I was just reading through a lot of comments and feedback from people. I tested the tools myself, too!

29:37 – Panelist: You broke down the article, and it’s a 22-minute read.

30:09 – Vitali: I wrote the article for my company, and they ad to read it.

30:24 – Panelist: Spending so much time – you probably felt like it was apart of your job.

30:39 – Vitali: I really like creating and writing. It was rally amazing for me and a great experience. I feel like I am talented in this area because I write well and fast. I wanted to express myself.

31:17 – Did you edit and review?

31:23 – Vitali: I wrote it by myself and some friends read it. There were serious mistakes, and that’s okay I am not afraid of mistakes. This way you get feedback.

32:10 – Chuck: “Some people see testing in JavaScript, and people look at this and say there are so much here. Is there a place where people can start, so that way they don’t’ get too overwhelmed? Is there a way to ease into this and take a bite-size at a time?”

32:52 – Vitali: “Find something that works for them. Read the article and start writing code.”

He continues this conversation from here on out.

34:03 – Chuck continues to ask questions and add other comments.

34:16 – Vitali chimes-in. 

34:38 – Chuck. 

34:46 – Vitali piggybacks off of Chuck’s comments.

36:14 – Panelist: Let’s go back to Jest. There is a very common occurrence where we see lots of turn and we see ideas like this has become the dominant or the standard, a lot of people talk about stuff within this community. Then we get this idea that ‘this is the only thing that is happening.’ Transition to jQuery to React to... With that context do you feel like Jest will be a dominant program? Are we going to see Jest used just as common as Mocha and other popular programs?

38:15 – Vitali comments on the panelist’s question.

38:50 – Panelist: New features. Are the features in Jest (over Jasmine, Mocha, etc.) so important that it will drive people to it by itself?

40:30 – Vitali comments on this great question.

40:58 – Panelist asks questions about features about Jest.

41:29 – Vitali talks about this topic.

42:14 – Let’s go to picks!

42:14 – Advertisement.


Vitali Zaidman’s Facebook Vitali Zaidman’s Medium Vitali Zaidman’s GitHub Vitali Zaidman’s NPM Vitali Zaidman’s LinkedIn Vitali Zaidman’s Medium Article JavaScript Brutalist Web Design Jasmine Cypress React jQuery Jest Protractor – end to end testing for Angular Test Café Intern Sinon XKCD


Kendo UI Sentry Digital Ocean Cache Fly


AJ O’Neal

Continuous from last week’s episode: Crossing the Chasm – New Technologies from Niche to General Adaptation. Go Lang

Joe Eames

Board Game: Rajas of the Ganges Framework Summit Conference in Utah React Conference

Aimee Knight

Hacker News – “Does Software Understand Complexity” via Michael Feathers Cream City Code


E-Book: How do I get a job? Express VPN


Book: The Square and The Tower: Networks and Power, from the Freemasons to Facebook by Niall Ferguson My article!

JSJ 330: “AWS: Amplify” with Nader Dabit

Sep 11, 2018 1:04:11



AJ O’Neal Aimee Knight Joe Eames

Special Guests: Nader Dabit

In this episode, the panel talks with programmer, Nader Dabit, who has been with Amazon’s AWS for the past six months. They discuss the new innovations that Amazon is currently working on, and the exciting new projects that Nader gets to be involved with. Check out this episode to hear all the latest!

Show Topics:

1:45 – There are two main things that Nader works with. Check out this timestamp to see what they are.

3:29 – AJ to Nader: Tell me more about manage cloud. I am not sure about Cognito.

3:56 – Yes, Cognito is used by/through Amazon.

5:06 – What are the other manage cloud services that companies want to offer through the tools you have?

5:12 – Nader answers AJ’s question.

7:30 – Can you give me more specifics on the storage solutions you are offering?

8:03 – Nader answers AJ’s question. People store websites there for example. Frontend developers are using S3 buckets, and they are using the library, which is a storage solution.

9:10 – AJ and Nader are having a dialogue between different situations, and Nader is giving the solutions to those hypothetical situations.

10:17 – AJ: “I am interested in what you are talking about AppSync. Can you tell me how that works?” AJ is picking Nader’s brain about how AppSync works.

11:05 – Nader: “It is a single API layer for a point of entry. You can have multi-data sources.” Nader continues, in detail, answering AJ’s question.

12:36 – AJ: As a frontend developer, it sounds like I will have to become familiar with the backend, too. How is it providing the most value? What is it that I do not have to touch, because I am using this?

15:37 – How would these relations work? As a frontend developer, and I do not want to learn sequel, how would that might look like; currently or in the future? How do you extract that knowledge?

16:18 – Yes, it is not an easy solution to solve. Nader goes into detail about how he would approach this situation.

18:26 – AJ: Are these resolvers written in JavaScript?

22:04 – Acronym fun!

22:45 – Node

23:51 – Summarizing these pasts 20-some-minutes: Off-Storage, AppSync, Landis, and others are what people are using Amplify for. New Question/New Topic: Simplify.

25:45 – AWS MOBILE – is not mobile specific.

26:44 – If you are using Angular, we have a plugin in Angular to help you. We also have that for React and Vue as well.

27:52 – Advertisement

28:56 – What should we be talking about?

29:04 – Let’s talk about Amazon’s Lex, Chat Bot. Nader goes into full detail of this service.

33:52 – Apple T.V.

34:00 – AJ: Sounds like this is more platform/ more agnostic than getting different things to come together, and the Microsoft one is more hybrid and the Amazon one is more open?

35:13 – Joe, let’s go back to what you had to ask.

35:28 – Nader, you talked about PUSH notifications earlier. What is Pub/Sub?

36:30 – Is this like traditional hooks? Or custom?

37:25 – What is the “stuff” that gets you up in the morning and gets you excited to go to work at AWS?

38:40 – Nader: I really had no desire to change career paths, but it happened.

41:30 – AJ: I totally agree with the idea in that finding the common patterns, so that way someone on the lower-level can participate. AJ wants a platform that is open or purchase that can offer some of these benefits. It could be open-source or you used to buy the different tools.

43:27 AJ: What about for the hobbyist?

43:40 – Nader: I agree, that would be really nice. I can’t think of any free services that would be nice.

44:03 AJ – Not free in “free,” but “free” towards the idea of “free speech.” They would all be available and you get to choose what works well for you.

45:00 – SHOUTOUT to LISTENERS: Have an idea about this? Shoot the panel an e-mail!

45:33 – Hopefully this opens the listeners’ eyes to what’s out there.

45:48 – Cloud services.

46:55 – Innovation follows niche markets. When something gets big and established, innovation comes to a plateau. The innovation will develop in a new economic area like hydraulics. AJ thinks a niche will develop.

49:03 – Is there anything, Dabit, which you would like to talk about?

49:15 – Can we talk about AI as a service?

51:10 – Nader saw a demonstration recently.

52:26 – Hearing these implications is so cool, but when it comes to ML a panelist dabbled a little bit. He watched some videos, unless you want to devote a year or two to learning it then it’s too complex to put together. Do you have to be genius-level to get through?

53:29 – ML you are passing data. Nader is not quite sure.

56:00 Nader just did a blog post  check-it-out!

56:49 – Let’s do Picks!

56:50 – Advertisement


Nader Dabit’s Twitter Nader Dabit’s Medium Nader Dabit’s LinkedIn Nader Dabit’s GitHub Nader Dabit’s Website Nader Dabit’s YouTube channel Nader Dabit’s Egg Head JavaScript Amazon’s Cognito AWS AppSyncNode Landis AWS Mobile Vue Angular Amazon’s Lex – Chat Bot Apple T.V. Push Notifications Pub/Sub AWS’ Artificial Intelligence (AI)


Kendo UI Sentry Digital Ocean


AJ O’Neal

Blog / Thoughty 2’s Video: Pop Music The Innovator’s Solution / Book The Innovator’s Dilemma / Book

Joe Eames

Framework Summit - Tickets are still available! Movie: Equalizer 2

Nader Dabit

Finland – Graph Talks Conference, October AWS – San Francisco - LOFT

JSJ 329: Promises, Promise.finally(), and Async/await with Valeri Karpov

Sep 4, 2018 1:08:31



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


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


Kendo UI Sentry Digital Ocean  



YouTube Video “IKEA” by Coulton Conference Amazon Prime Day


Blog Post Article



Val New E-Book: Mastering Async/Await

MJS 076: Kevin Griffin

Aug 29, 2018 37:47


Panel: Charles Max Wood

Guest: Kevin Griffin

This week on My JavaScript Story, Charles speaks with Kevin Griffin. Kevin is one of the hosts of the 2 Frugal Dudes Podcast which helps programmers learn how to be smarter with handling their money. He first got into programming really young when his Dad brought home a computer and he was curious about it so he read books and taught himself basic programming that way. They talk about his first job out of college and how that has impacted him now, the fact that you have to create your own job security, and what kind of frameworks he uses. They also touch on the importance of exposing yourself to new technologies and being open-minded, what he is working on currently, and more!

In particular, we dive pretty deep on:

JavaScript Jabber Episode 273 Helping programmers handle their money 2 Frugal Dudes Podcast Runs financial peace university at his church Mindset is everything How did you first get into programming? Got started really young when his Dad brought home a computer DOS for Dummies Taught himself very basic coding Really into text adventures as a child – wrote some of his own Taught Logo in Middle school Computer Science degree in college Got into software developer community because he was laid off from first job You have to build your own job security Do you do JavaScript full-time? Doesn’t like to pigeon hole himself into one language C++ and C# Didn’t want to support JavaScript originally Using jQuery, Knockout, Ember, and Backbone Working with Vue and React now The same problems persist now, just with different frameworks Looking at the project and then deciding which tool to use And much, much more!


JavaScript Jabber Episode 273 2 Frugal Dudes Podcast DOS for Dummies jQuery JavaScript Knockout Ember Backbone Vue React @2frugaldudes @1kevgriff Kevin’s Twitch Swift Kick


Code Badges Digital Ocean



The Expanse


TwitchHis twitch

JSJ 328: Functional Programming with Ramda with Christine Legge

Aug 28, 2018 55:21



Joe Eames Aimee Knight AJ O'Neal Joe Eames

Special Guests: Christine Legge

In this episode, the JavaScript Jabber panel talks to Christine Legge about functional programming with Ramda. Christine is a front-end software engineer and just recently got a new job in New York working at Google. Ramda is a utility library in JavaScript that focuses on making it easier to write JavaScript code in a functional way. They talk about functional programming and what it is, using Ramda in Redux, and referential transparency. They also touch on why she first got into Ramda, compare Ramda to Lodash and Underscore, and more!

In particular, we dive pretty deep on:

Chirstine intro  Works as a front-end software engineer What is RamdaJavaScript Utility library like Lodash and Underscore Lodash and Underscore VS Ramda Functional programming Ramda and Functional programming as a mindset Ramda at ZenHub Ramda with Redux and React What is referential transparency? Why would you use Ramda VS Lodash or Underscore? Why she first got into Ramda Didn’t always want to be a programmer Background in Math Learning functional programming as a new programmer Erlang DrRacket and Java Ramda makes it easy to compose functions Creating clean and reusable code How do you start using Ramda? And much, much more! 


Ramda Lodash Underscore ZenHub Redux React Erlang DrRacket @leggechr Chirstine’s GitHub


Kendo UI Sentry Digital Ocean



Home Depot Tool Rental Podcast Movement CES VRBO


Apple Cider Vinegar Jeremy Fairbank Talk – Practical Functional Programming


Goat’s Milk


Topgolf Framework Summit


Dan Mangan Reply All Podcast

MJS 075: Jeff Escalante

Aug 22, 2018 48:41


Show notes coming shortly!

JSJ 327: "Greenlock and LetsEncrypt" with AJ O'Neal

Aug 21, 2018 55:08


Show notes coming shortly!

JSJ 327: "Greenlock and LetsEncrypt" with AJ O'Neal

Aug 21, 2018 55:08



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!


LetsEncrypt Greenlock Certbot Greenlock-express Acme servers Let's Encrypt v2 Step by Step by AJ @coolaj86 AJ’s Git Greenlock.js Screencast Series Greenlock.js Patreon


Kendo UI Sentry Digital Ocean



Take some time off


OverClocked Records

MJS 074: Scott Wyatt

Aug 15, 2018 30:16


Panel: Charles Max Wood


Guest: Scott Wyatt


This week on My JavaScript Story, Charles speaks with Scott Wyatt. Scott is a VC partner and is the CTO at Cali Style Technologies, works with startups, and was the CTO of the Dollar Beard Club. He first got into programming because his dad was a computer programmer and he really got hooked from a young age writing games and playing on the computer. They talk about the benefit of not living in the hustle and bustle of California and the Silicon Valley, how he got into JavaScript, what was it about JavaScript that hooked him, and more!


In particular, we dive pretty deep on:

JavaScript Jabber Episode 282 Scott intro Works remotely from Indiana The pros to not living in Silicon Valley How did you first get into programming? Father was a computer programmer Strong arts background Started coding really young How did you get into JavaScript? Started out with ActionScript JavaScript to jQuery The cool part of having a diverse background as a programmer What was it that got you into JavaScript? Back-end JavaScript Node.js JavaScript is very versatile How did you get into doing something like Trails.js? Sails.js Fabrix and TypeScript  What have you done in JS that you are most proud of? Partitioned apps Contributing to freedom of information What are you working on now? And much, much more!



JavaScript Jabber Episode 282 Cali Style Technologies Dollar Beard Club JavaScript jQuery Node.js Trails.js Sails.js Fabrix TypeScript @ScottBWyatt Scott’s GitHub



Loot Crate FreshBooks




Get a Coder Job Course Golf Clash Golfing Planning in sanity time Suggest a Topic 



Gun.js Bitcoin

JSJ 326: Conversation with Ember co-creator Tom Dale on Ember 3.0 and the future of Ember

Aug 14, 2018 57:18



Joe Eames Aimee Knight AJ ONeal

Special Guests: Tom Dale

In this episode, the JavaScript Jabber panel talks to Tom Dale about Ember 3.0 and the future of Ember. Tom is the co-creator of Ember and is a principle staff engineer at LinkedIn where he works on a team called Presentation Infrastructure. They talk about being in the customer service role, having a collaborative culture, and all the information on Ember 3.0. They also touch on the tendency towards disposable software, the Ember model, and more!

In particular, we dive pretty deep on:

How Joe met Tom Programmers as rule breakers The pressure to conform Tom intro Staff engineer at LinkedIn Customer service role Having a way to role improvements out to a lot of different people JavaScript and Ember at LinkedIn Having a collaborative culture All about Ember 3.0 Banner feature – there is nothing new Cracked how you develop software in the open source world that has longevity Major competition in Backbone previously The Ember community has never been more vibrant Tendency towards disposable software The idea of steady iteration towards improvement The Ember model Being different from different frameworks Ember adoption rates Python 3 Valuable from a business perspective to use Ember Ember community being friendly to newbies How much Ember VS how much JavaScript will a new developer have to learn? And much, much more!


Ember LinkedIn JavaScript Backbone Python @tomdale Tom’s GitHub


Kendo UI Sentry Digital Ocean



Framework Summit Jayne React sent Evan You a cake


Maker's Schedule, Manager's Schedule by Paul Graham


James Veitch


JavaScript Tech Talk Drake’s Ties Melissa Watson Ellis at Hall Madden

MJS 073: Tara Z. Manicsic

Aug 8, 2018 37:21


Panel: Charles Max Wood

Guest: Tara Z. Manicsic

This week on My JavaScript Story, Charles speaks with Tara Z. Manicsic. Tara is a developer advocate for Progress, is on their Kendo UI team, and is also a Google developer expert on the Web Technologies team. She first got into programming in the second grade when she learned Logo and came back to development when she was asked to do Crystal Reports at Harvard Law School. They talk about how she found Women Who Code, the importance of understanding open source software, having a support system, what is was about Node that got her excited, and more!

In particular, we dive pretty deep on:

Tara intro Very excited and fascinated with the web Helped to start up React Round Up as a panelist Her experience as a developer Started out as a business school dropout How did you first get into programming? Learned Logo in the second grade Loved the ability to help people and create change Crystal Reports at Harvard Law CS courses with tuition assistance Getting back into CS Being a non-traditional student Finding Women Who Code First job as a Node software engineer How did Women Who Code help you? OpenHatch Being familiar with open source software The importance of having support How did you first get into JavaScript? Seeing jobs for Ruby on Rails Matt Hernandez on JavaScript Jabber NG conf Her intro to the Angular community in person And much, much more!


Progress React Round Up Crystal Reports Women Who Code Node OpenHatch JavaScript Ruby on Rails Matt Hernandez on JavaScript Jabber NG conf Angular @Tzmanics Tara’s GitHub


Loot Crate FreshBooks



Get a Coder Job Course Golf Clash


Connect.Tech DevFest Atlanta Cedar Point

JSJ 325: Practical functional programming in JavaScript and languages like Elm with Jeremy Fairbank

Aug 7, 2018 53:47



Aimee Knight Joe Eames AJ ONeal

Special Guests: Jeremy Fairbank

In this episode, the JavaScript Jabber panel talks to Jeremy Fairbank about his talk Practical Functional Programming. Jeremy is a remote software developer and consultant for Test Double. They talk about what Test Double is and what they do there and the 6 things he touched on in his talk, such as hard to follow code, function composition, and mutable vs immutable data. They also touch on the theory of unit testing, if functional programming is the solution, and more!

In particular, we dive pretty deep on:

Jeremy intro Works for Test Double What he means by “remote” What is Test Double? They believe software is broken and they are there to fix it His talk - Practical Functional Programming The 6 things he talked about in his talk Practical aspects that any software engineer is going to deal with Purity and the side effects of programming in general Hard to follow code Imperative VS declarative code Code breaking unexpectedly Mutable data VS immutable data The idea of too much code Combining multiple functions together to make more complex functions Function composition Elm, Elixir, and F# Pipe operator Scary to refactor code Static types The idea of null The theory of unit testing Is functional programming the solution? His approach from the talk And much, much more!


Test Double His talk - Practical Functional Programming Elm Elixir F# @elpapapollo Jeremy’s GitHub Jeremy’s YouTube


Kendo UI Sentry Digital Ocean



American Dollar Force with lease




The 2018 Web Developer Roadmap by Brandon Morelli Svelte


Programming Elm The Secrets of Consulting by Gerald M. Weinberg Connect.Tech

MJS 072: Orta Therox

Aug 1, 2018 38:58


Panel: Charles Max Wood

Guest: Orta Therox

This week on My JavaScript Story, Charles speaks with Orta Therox. Orta is a native engineer that believes that the right way to build systems is to understand as many systems as possible. He works predominately on iOS programming at a company called Artsy, where they make it easy to buy and sell art on the internet. He first got into programming because he loved playing video games as a child, loved creating his own video games, and worked his way up from there. They talk about his work at Artsy, how he used open source to learn himself how program, how he got into Ruby and then React and React Native, and more!

In particular, we dive pretty deep on:

JavaScript Jabber Episode 305 Orta intro Artsy iOS programming Hates lack of documentation CocoaPods Trouble with building native apps His move to React and React Native Used to run iOS team at Artsy How did you get into programming? Played video games as a kid Taught himself with books Using open source to learn Open source by default idea Loves giving back through blogging and open source How did you get into Ruby? MacRuby Boundaries are very obvious in React Native How did you get into React and React Native? Native developers building stuff in JavaScript Culture conflicts How they dealt with dependencies in their apps And much, much more!


JavaScript Jabber Episode 305 Artsy CocoaPods React React Native MacRuby JavaScript @orta Orta’s GitHub Artsy Engineering


Loot Crate FreshBooks



South Pacific Get a Coder Job course Framework Summit



JSJ 324: with Kent Beck

Jul 31, 2018 1:06:32



Charles Max Wood Joe Eames Aimee Knight

Special Guests: Kent Beck

In this episode, the JavaScript Jabber panel talks to Kent Beck. Kent left Facebook 4 months ago after working for them for 7 years and is now self-unemployed so that he can decompress from the stressful environment that he was a part of for so long. He now travels, writes, creates art, thinks up crazy programming ideas, and is taking a breather.  They talk about what he did at Facebook, what his coaching engagement sessions consisted of, and the importance of taking time for yourself sometimes. They also touch on what he has learned from his experience coaching, how to create a healthy environment within the workplace, and more!

In particular, we dive pretty deep on:

Kent intro/update Ruby Rogues Episode 23 Worked at Facebook for 7 years What were you doing at Facebook? Unique culture at Facebook His strengths as a developer didn’t match with the organization’s Coaching developers TDD and Patterns Advantages as an old engineer What did coaching engagement consist of? Takes time to build trust Discharging shame Need permission to take care of what you need to Being at your best so you can do your best work Vacation in place What have you learned in your time working with people? The nice thing about coaching Everyone is different How do we create a healthy environment within the workplace? Mentor in Ward Cunningham What is it costing us? Why did you decide to leave? And much, much more!


Ruby Rogues Episode 23 @KentBeck Kent’s GitHub


Kendo UI Sentry Digital Ocean



The Five Dysfunctions of a Team by Patrick Lencioni Crucial Accountability by Kerry Patterson




Test Driven Development: By Example by Kent Beck


The Field Guide to Understanding 'Human Error' by Sidney Dekker Conspiracy: Peter Thiel, Hulk Hogan, Gawker, and the Anatomy of Intrigue by Ryan Holiday

JSJ 323: "Building a JavaScript platform that gives you the power to build your own CDN" with Kurt Mackey

Jul 26, 2018 1:03:05



Charles Max Wood AJ ONeal

Special Guests: Kurt Mackey

In this episode, the JavaScript Jabber panel talks to Kurt Mackey about At, they are "building a JavaScript platform that gives you the power to build your own CDN." They talk about how came to fruition, how CDN caching works, and what happens when you deploy a Fly app. They also touch on resizing images with Fly, how you actually build JavaScript platforms using Fly, and more!

In particular, we dive pretty deep on: Building a programmable CDN High level overview of How did this project come together? CDNs didn’t work with dynamic applications Has been working on this since 2008 Extend application logic to the “edge” Putting burden of JavaScript “nastiest” onto the web server Fly is the proxy layer Getting things closer to visitors and users CDN caching Cache APIs Writing logic to improve your lighthouse score Have you built in resizing images into Fly? Managing assets closer to the user Can you modify your own JavaScript files? What happens when you deploy a Fly app Having more application logic DOM within the proxy Ghost React and Gatsby Intelligently loading client JavaScript How do you build the JavaScript platform? And much, much more!

Links: JavaScript Ghost Gatsby React @flydotio @mrkurt Kurt at ARS Technica Kurt’s GitHub


Kendo UI Sentry Digital Ocean





Gitea Black Panther

Kurt The Three-Body Problem by Cixin Liu

MJS 071: Kye Hohenberger

Jul 25, 2018 19:18


Panel: Charles Max Wood

Guest: Kye Hohenberger

This week on My JavaScript Story, Charles speaks with Kye Hohenberger. Kye is a senior front-end engineer at Gremlin, where they do chaos as a service and break your stuff on purpose so that you can fix it and it hopefully won’t happen again. He also created the Emotion library, which is a CSS-in-JS library. He first got into programming because his Grandpa was always working on computers and Kye was curious about how they worked. They talk about how he got into JavaScript, what he's built in JavaScript that he’s proud of, what he’s working on now, and more!

In particular, we dive pretty deep on:

JavaScript Jabber Episode 286 Kye intro Works at Gremlin as a front-end engineer How did you first get into programming? Always had a burning curiosity for computers Worked on HTML first Worked with flash in High School Tried to major in Computer Science and dropped out of it Job in IT Wordpress maintenance Hooked on wanting to learn more Python with Django What was it that caught your attention? How did you get into JavaScript? Job at cPanel What led you to build something like Emotion? Didn’t like having to use the Sass compiler What problem were you trying to solve? Have you worked on anything else in JavaScript that you’re proud of? What are you working on now? APIs from Java to Node Wrote Qordoba apps for 2 years What made you switch from Angular to React? Learning WebPack And much, much more!


JavaScript Jabber Episode 286 Emotion Wordpress Python Django JavaScript cPanel Sass Node Angular React WebPack @tkh44 Kye’s GitHub Kye’s Medium


Loot Crate FreshBooks



Home Depot Tool Rentals Framework Summit Podcast Movement


The Console Log Brian Holt on Frontend Masters Emotion Team

MJS 070: Jerome Hardaway

Jul 18, 2018 39:40


Show notes coming shortly!

JSJ 322: Building SharePoint Extensions with JavaScript with Vesa Juvonen LIVE at Microsoft Build

Jul 17, 2018 30:56



Charles Max Wood

Special Guests: Vesa Juvonen

In this episode, the JavaScript Jabber panel talks to Vesa Juvonen about building SharePoint extensions with JavaScript. Vesa is on the SharePoint development team and is responsible for the SharePoint Framework, which is the modern way of implementing SharePoint customizations with JavaScript. They talk about what SharePoint is, why they chose to use JavaScript with it, and how he maintains isolation. They also touch on the best way to get started with SharePoint, give some great resources to help you use it, and more!

In particular, we dive pretty deep on:

Vesa intro What is SharePoint? Has existed since 2009 People either know about it and use it or don’t know what it is Baggage from a customization perspective Why JavaScript developers? Modernizing development SharePoint Framework Microsoft Ignite Conference Is there a market for it? System integrators Angular Element and React React for SharePoint Framework back-end Supports Vue React Round Up Podcast How do you maintain isolation? What’s the best way to get started with SharePoint extensions? Office 365 Developer Program SharePoint documentation SharePoint YouTube What kinds of extensions are you seeing people build? And much, much more!


SharePoint JavaScript SharePoint Framework Microsoft Ignite Conference Angular Element React Vue React Round Up Podcast Office 365 Developer Program SharePoint documentation SharePoint YouTube @OfficeDev @vesajuvonen Vesa’s blog Vesa’s GitHub @SharePoint


Kendo UI Sentry Digital Ocean



Zig Ziglar Conversations with My Dog by Zig Ziglar Pimsleur Lessons on Audible


Armada by Ernest Cline

MJS 069: Lizzie Siegle

Jul 11, 2018 16:28


Panel: Charles Max Wood

Guest: Lizzie Siegle

This week on My JavaScript Story, Charles speaks with Lizzie Siegle. Lizzie is a senior computer science major at Bryn Mawr College, works for Twilio as a contracting developer evangelist, and also contributes to their documentation. She first got into programming when her AP calculus teacher told some of her classmates to attend a one day all girls coding camp at Stanford and she overheard and was interested by it. She was inspired at this camp to pursue a career in coding because she loved that you can build anything with code and be creative. They talk about what got her hooked on coding, why she chose JavaScript, why she chose to work as a developer evangelist, and more!

In particular, we dive pretty deep on:

Lizzie intro Computer Science Major Works at Twilio Greg Baugues was her assigned mentor this past summer How did you first get into programming? Grew up in Silicon Valley Hated STEM growing up Was inspired at a one day all girls coding camp at Stanford Loves being able to be creative with code What was the coding camp like? Camp was for high-schoolers HTML and CSS What was it that got you interested in code? Seeing the application of code in the real world Why JavaScript? Works also in Python, Swift, and Haskell Loves how versatile JS is Why developer evangelism? Internship at PubNub Loves being able to teach others as an evangelist What have you done in JavaScript that you’re proud of? Eon.js What are you working on currently? Get comfortable with being uncomfortable And much, much more!


Twilio JavaScript Python Swift PubNub Haskell Eon.js @lizziepika Her newsletter Lizzie’s Website Lizzie’s GitHub


Loot Crate FreshBooks



The importance of a mentor or a sponsor

JSJ 321: Babel and Open Source Software with Henry Zhu

Jul 10, 2018 57:53



Charles Max Wood Aimee Knight AJ ONeal Joe Eames

Special Guests: Henry Zhu

In this episode, the JavaScript Jabber panel talks to Henry Zhu about Babel and open source software. Henry is one of the maintainers on Babel, which is a JavaScript compiler, and recently left this job to work on doing open source full time as well as working on Babel. They talk about where Babel is today, what it actually is, and his focus on his open source career. They also touch on how he got started in open source, his first PR, and more!

In particular, we dive pretty deep on:

Henry intro Babel update Sebastian McKenzie was the original creator of Babel Has learned a lot about being a maintainer What is Babel? JavaScript compiler You never know who your user is Has much changed with Babel since Sebastian left? Working on open source How did you get started in pen source? The ability to learn a lot from open source Atrocities of globalization More decentralization from GitHub Gitea and GitLab Gitea installer Open source is more closed now His first PR JSCS Auto-fixing Prettier Learning more about linting You don’t have to have formal training to be successful Sustainability of open source And much, much more!


Babel JavaScript Gitea GitLab Gitea installer Prettier @left_pad Henry’s GitHub Henry’s Patreon


Kendo UI Sentry Digital Ocean



Orphan Black Crucial Accountability by Kerry Patterson


Desk with cubby holes for cats The Key to Good Luck Is an Open Mind blog post


Gitea Gitea installer Greenlock


Solo Justified


Celeste Zeit Day talks

MJS 068: Ian Sinnott

Jul 4, 2018 26:41


Panel: Charles Max Wood

Guest: Ian Sinnott

This week on My JavaScript Story, Charles speaks with Ian Sinnott. Since being on JavaScript Jabber for Episode 227, he has being writing a lot in JavaScript and has been taking a break from the meetups and podcast scene. He first got into programming when he took two CS courses in college that focused on Java graphical programming and SML. Once these courses were through, he stopped programming for a while and came back to it when he was creating an HTML email template. They talk about why he was excited with web development, how he got into JavaScript, what he is working on currently, and more!

In particular, we dive pretty deep on:

JavaScript Jabber Episode 227 Ian intro How did you first get into programming? 2 CS courses in college Left programming after the classes Why did you decide to come back? Learning on PHP and WordPress What was it about web development that got you excited? Web development is high level and you can get quick wins What made you cross over into JavaScript? Really likes native apps Rise of the single-page web app Interactive apps What’s your flavor of choice? React is his go to MJS Episode 43 - Nick Disabato JSX, Angular, TypeScript, and Vue What are you working on now? Johnny-Five and Arduino Learning hardware allows you to attach an API to anything Is there anything that you have done that you are proud of? Rendering static sites in React Gatsby react-static-webpack-plugin and react-static-boilerplate RxJS and Redux-Observable And much, much more!


JavaScript Jabber Episode 227 JavaScript WordPress React MJS Episode 43 - Nick Disabato JSX Angular TypeScript Vue Johnny-Five Gatsby react-static-webpack-plugin react-static-boilerplate RxJS Redux-Observable @ian_sinn Ian’s GitHub


Loot Crate FreshBooks



Sling TV JS Dev Summit Views on Vue, React Round Up, and Elixir Mix


Salary Negotiation: Make More Money, Be More Valued by Patrick McKenzie A Curious Moon Cortex Podcast

JSJ 320: Error Tracking and Troubleshooting Workflows with David Cramer LIVE at Microsoft Build

Jul 3, 2018 27:45



Charles Max Wood Alyssa Nicholl Ward Bell

Special Guests: David Cramer

In this episode, the JavaScript Jabber panelists talk to David Cramer about error tracking and troubleshooting workflows. David is the founder and CEO of Sentry, and is a software engineer by trade. He started this project about a decade ago and it was created because he had customers telling him that things were broken and it was hard to help them fix it. They talk about what Sentry is, errors, workflow management, and more!

In particular, we dive pretty deep on:

David intro Founder and CEO of Sentry What is Sentry? Working with PHP De-bugger for production Focus on workflow Goal of Sentry Triaging the problem Workflow management Sentry started off as an open-source side project Instrumentation for JavaScript Ember, Angular, and npm Got their start in Python Logs Totally open-source Most compatible with run-time Can work with any language Deep contexts Determining the root cause And much, much more!


Sentry JavaScript Ember Angular npm Python Sentry’s GitHub @getsentry David’s GitHub David’s Website @zeeg


Kendo UI FreshBooks Loot Crate



Socks as Swag


VS Code Kubernetes

MJS 067: Tracy Lee

Jun 27, 2018 44:09


Panel: Charles Max Wood

Guest: Tracy Lee

This week on My Angular Story, Charles speaks with Tracy Lee. Tracy is the co-founder This Dot and her goal with it is to bring the JavaScript community together. She first got into programming when she tried to build websites for people and then was interested in learning JavaScript and really fell in love with the community. She really stayed with Angular because of the community she found there, the size of the community, and the fact that it gave her the ability to have a voice.

In particular, We dive pretty deep on:

This Dot How did you first get into programming? Really loves community Angular community being so welcoming What made you pick the Angular community? Ember originally Loves how big the Angular community is Business background Loves the challenge of trying to create things On the RxJS Core team This Dot Media This Dot Labs Loves to builds brands and consult The importance of mentors Starting an apprentice program She loves being able to help others People underestimate the impact they have on the world AngularAir and JavaScript Air And much, much more!


This Dot JavaScript Angular Ember RxJS Core Team This Dot Media This Dot Labs AngularAir JavaScriptAir Tracy’s Medium @LadyLeet Youtube This Dot Media Youtube



Ready Player One by Ernest Cline Bad Lip Reading YouTube


Mermaid Tail Makeup Brushes Beauty Fix Box

JSJ 319: Winamp2-js with Jordan Eldredge

Jun 26, 2018 48:37



Charles Max Wood AJ ONeal Aimee Knight Joe Eames

Special Guests: Jordan Eldredge

In this episode, the JavaScript Jabber panelists discuss Winamp2-js with Jordan Eldredge. Jordan is the creator of Winamp2-js and was inspired to create this media player from the old Winamp media player that he used back in the day. They talk about the importance of limitations, the value of having fun side projects, and pushing the boundaries. They also touch on skin parsing, making Webamp an electron app, and more!

In particular, we dive pretty deep on:

What is Winamp2-js? The history and future of Winamp WACUP Winamp was the first big mp3 player that you could style Webamp’s features and the technical challenges associated with them Why JavaScript? Creative solutions Limitations of browser and creating something that previously existed The importance of limitations Hadn’t done very much JavaScript prior to this project Originally created with jQuery Led him into a career in JavaScript Pushing the boundaries Skin parsing “Bitrot” and making Winamp skins accessible again The value of side projects, even stupid ones Architecture docs What made you choose React and Redux? Spotiamp (Soptify’s canceled Winamp client) Making Webamp an Electron app Winamp visualizers being ported to the web The domain name And much, much more!


Winamp2-js Webamp JavaScript jQuery Architecture docs React Redux Jordan’s GitHub @captbaritone


Kendo UI FreshBooks Loot Crate



JAM XT Speaker Trello


Samson GoMic Greenlock for Web Servers Greenlock for Node.js


KA Engineering Principles

Joe What if JavaScript wins? Medium post


JavaScript Garden Rust @winampskins

MJS 066: Henrik Joreteg

Jun 20, 2018 31:22


Panel: Charles Max Wood

Guest: Henrik Joreteg

This week on My JavaScript Story, Charles speaks with Henrik Joreteg. Henrik has been on JavaScript Jabber previously discussing &yet back in December of 2014 on episode 137. He has since then left &yet and now does independent consulting and works on his own projects. He first got into programming when he started a company that created online video tours for houses and he needed to teach himself programming in order to create the website. They talk about what led him to JavaScript, what he’s proud of contributing to the community, what he is working on now, and much more!

In particular, we dive pretty deep on:

JavaScript Jabber Episode 137 &yet How did you first get into programming? Liked computers as a child but didn’t want to spend his life on it originally Studied Business in college Create house touring video company Adobe ColdFusion How were you exposed to JavaScript? Gig as a ColdFusion developer jQTouch, jQuery, and Django Interested in building app-like experiences What have you done with JavaScript that you are proud of? Want to push the web into an app-like space Helped to create Ampersand.js Wrote Human JavaScript Created Simple WebRTC Promote web as an application platform What are you working on now? Redux and React New book: Human Redux Independent consulting Redux-bundler And much, much more!


JavaScript Jabber Episode 137 JavaScript Jabber &yet JavaScript jQTouch jQuery Django Human JavaScript Ampersand.js Simple WebRTC Human Redux Redux React Redux-bundler Henrik’s GitHub @HenrikJoreteg


Loot Crate FreshBooks



Hogwarts Battle React Dev Summit JS Dev Summit Newspaper Theme on Themeforest Get a Coder Job Course


Preact Parcel.js Rollup.js Space repetition systems Anki

JSJ 318: Cloud-Hosted DevOps with Ori Zohar and Gopinath Chigakkagari LIVE at Microsoft Build

Jun 18, 2018 56:37



Charles Max Wood

Special Guests: Ori Zohar and Gopinath Chigakkagari

In this episode, the JavaScript Jabber panelists discuss Cloud-Hosted DevOps with Ori Zohar and Gopinath Chigakkagari at Microsoft Build. Ori is on the product team at VSTS focusing on DevOps specifically on Azure. Gopinath is the group program manager in VSTS primarily working on continuous integration, continuous delivery, DevOps, Azure deployment, etc. They talk about the first steps people should take when getting into DevOps, define DevOps the way Microsoft views it, the advantages to automation, and more!

In particular, we dive pretty deep on:

Ori and Gopi intro VSTS – Visual Studio Team Services VSTS gives developers the ability to be productive Developer productivity What’s the first big step people should be taking if they’re getting into DevOps? The definition of DevOps The people and the processes as the most important piece DevOps as the best practices Automating processes What people do when things go wrong is what really counts Letting the system take care of the problems Have the developers work on what they are actually getting paid for Trend of embracing DevOps Shifting the production responsibility more onto the developer’s Incentivizing developers People don’t account for integration Continuous integration Trends on what customers are asking for Safety Docker containers And much, much more!


Azure Microsoft Build VSTS @orizhr Ori’s GitHub Gopi’s GitHub @gopinach


Kendo UI Linode FreshBooks



.NET Rocks! Shure SM58 Microphone Zoom H6


Fitbit Pacific Northwest Hiking


Seattle, WA

MJS 065: Greg Wilson

Jun 13, 2018 55:17


Panel: Charles Max Wood

Guest: Greg Wilson

This week on My JavaScript Story, Charles speaks with Greg Wilson about his educational and programming background, a Canadian company (Rangle) who’s doing amazing things, and much more! Greg is currently the head of instructor training at DataCamp and a principal consultant at Rangle.

In particular, we dive pretty deep on:

Past Episode – 184 JavaScript The one unavoidable language. Company in Canada – Rangle. 1980’s when Greg got into super computing – everything was custom hardware. Want to be “rich, famous, and popular?” – check out 11:58! Rangle – what a great company! Emily Porta Rangle’s program, Bridge, aimed at women who are trying to get into the tech industry. How did you get into programming? Queen’s University – 1980. Started off as chemistry major. From Vancouver, Canada. Engineering degree. Got hired to do math with computers. Software. 1985 – working for a lab in Ottawa. Master’s degree in Artificial Intelligence (AI) – Scotland. Ph.D. Academia. Moved to Toronto. Ruby Greg is a Python user. Not familiar with Ruby. Violence and video games? Where is the data? If people had the habit of being skeptical, such as fake news and other things, that simply isn’t true. For example: are vaccines dangerous? Professor Marian Petre – Open University Book: “Software Designs Decoded: 66 Ways Experts Think” by Marian Petre


Digital Ocean, LLC FreshBooks Greg Wilson’s Third Bit Greg Wilson’s Twitter Greg Wilson’s GitHub Greg Wilson’s LinkedIn Greg Wilson’s “What We Actually Know About Software Development, and Why We Believe It’s True” JavaScript Past Episode – 184 Rangle Rangle’s Bridge Python Ruby Professor Marian Petre – Open University Book: “Software Designs Decoded: 66 Ways Experts Think” by Marian Petre CacheFly Charles Max Wood’s Twitter


Digital Ocean, LLC



St. George, Utah Parade of Homes Upside Bose SoundLink Headphones ATR2100 Microphone


Rangle’s Bridge Inclusivity and diversity AOSABOOK.ORG Samson Meteor Microphone

JSJ 317: Prisma with Johannes Schickling

Jun 12, 2018 48:53



Charles Max Wood AJ O’Neal

Special Guests: Johannes Schickling

In this episode, the JavaScript Jabber panelists discuss Prisma with Johannes Schickling. Johannes is the CEO and co-founder of GraphCool and works with Prisma. They talk about the upcoming changes within GraphCool, what Prisma is, and GraphQL back-end operations. They also touch on the biggest miscommunication about Prisma, how Prisma works, and much more!

In particular, we dive pretty deep on:

JSJ Episode 257 MJS Episode 055 Raised a seed round Rebranding of GraphCool What are you wanting to do with the seed money you raised? Focused on growing his team currently Making GraphQL easier to do The change in the way people build software What is Prisma? Two things you need to do as you want to adopt GraphQL Apollo Client and Relay GraphQL on the back-end Resolvers Resolving data in one query Prisma supports MySQL and PostgreSQL How do you control access to the GraphQL endpoint that Prisma gives you? Biggest miscommunication about Prisma Prisma makes it easier for you to make your own GraphQL server Application schemas How do you blend your own resolvers with Prisma? And much, much more!


JSJ Episode 257 MJS Episode 055 GraphCool Prisma GraphQL Apollo Client Relay MySQL PostgreSQL @schickling Johannes’ GitHub Prisma Slack


Kendo UI Linode FreshBooks



Audible The 5 Love Languages of Children by Gary Chapman Facebook Backyard Homesteader Groups Sling TV Roku Express


The Legend of Zelda: Breath of the Wild


Figma Netlify Functions GraphQL Europe

MJS 064: Troy Hunt

Jun 6, 2018 24:57


Panel: Charles Max Wood

Guest: Troy Hunt

This week on My JavaScript Story, Charles speaks with Troy Hunt who is from Australia. In this episode, Troy and Charles talk about web security and how Troy got into the field. Troy writes a blog, creates courses for Pluralsight, and he is a Microsoft Regional Director and an MVP who travels the world speaking at events and training technology professionals.

In particular, we dive pretty deep on:

Web security This show is not about code or technology, but about the person. How did you get into programming, Troy? 1995 Troy started at the university. Book: HTML for Dummies How did you get into web development and JavaScript in general? 1999 – JavaScript Bank – Cahoot What have you done with JavaScript that you are particularly proud of? At the time, I was proud of my work with the Pizza Hut application. Fast-forward – I still use JavaScript but also framework. How did you get into security? Architectural role in Pfizer pharmaceutical company. Troy started writing a blog in 2009. What are you working on now? Launched my Version 2 of “Pwned Passwords.” Cloud Flare E-mails and Passwords breached Have a program that tells you to do something different instead. Try to find a balance. Do most people think about web security? Probably not. Bring awareness about this. Make systems usable Give people enough advice. Service Troy’s Real-Life Stories How do you stay current with all of this web security information? Having a healthy following in Twitter. Stay on top of the mentions. Interesting spread of people within this field.


Digital Ocean Troy Hunt’s Website Book: HTML for Dummies JavaScript Cahoot Troy’s Blog Version 2 of “Pwned Passwords” Troy Hunt’s Twitter Troy Hunt’s Medium Troy Hunt’s Facebook Troy Hunt’s LinkedIn Troy Hunt’s GitHub Fresh Books CacheFly


Digital Ocean



The Greatest Showman – Musical JavaScript


BrowseAloud Subresource Integrity – Blog at Hunt’s Website CSP’s Supply chain

JSJ 316: Visual Studio Code with Rachel MacFarlane and Matt Bierner LIVE at Microsoft Build

Jun 5, 2018 34:56



Charles Max Wood

Special Guests: Rachel MacFarlane and Matt Bierner

In this episode, the JavaScript Jabber panelists discuss Visual Studio Code with Rachel MacFarlane and Matt Bierner, who are both developers on Visual Studio Code. They talk about what the workflow at Visual Studio Code looks like, what people can look forward to coming out soon,  and how people can follow along the VS Code improvements on GitHub and Twitter. They also touch on their favorite extensions, like the Docker extension and the Azure extension and their favorite VS Code features.

In particular, we dive pretty deep on:

Rachel and Matt intro Month to month workflow of Visual Studio Code VS Code JavaScript, TypeScript, and Mark Down support Working on GitHub and within the community Check out new features incrementally with insiders Community driven work What is coming out in Visual Studio Code? GitHub helps to determine what they work on Working on Grid View Improved settings UI Highlighting unused variables in your code Improvements with JS Docs Dart Visual Studio Extension API How do people follow along with the VS Code improvements? Follow along on GitHub and Twitter Download VS Code Insiders Have a general road map of what the plan is for the year Technical debt week What do you wish people knew about VS Code? Favorite extensions Docker extension and Azure extension And much, much more!


Visual Studio Code JavaScript TypeScript Dart VS Code GitHub @Code VS Code Insiders Docker extension Azure extension Rachel’s GitHub Matt’s GitHub @mattbierner


Kendo UI Linode FreshBooks



Orphan Black Avengers: Infinity War Fishing




The Bronx Warriors

MJS 063: Fred Zirdung

May 30, 2018 31:20


Panel: Charles Max Wood

Guest: Fred Zirdung

This week on My JavaScript Story, Charles speaks with Fred Zirdung. Fred is currently the head of curriculum at Hack Reactor, where he essentially builds all of the tools and learning materials for the students there. He is also an instructor and has been there for five years. Prior to that, he worked for multiple companies such as Walmart Labs as well as many small startups. He first got into programming with the Logo programming language in the 6th grade and he had always been interested in working with computers since a young age. They talk about what got him into web programming, what enthralled him about JavaScript and Ruby on Rails, and what he is proud of contributing to the JavaScript community.

In particular, we dive pretty deep on:

JavaScript Jabber Episode 76 Fred intro How did you first get into programming? Coding professionally for 20+ years Coding prior to college graduation Logo programming language QNX operating system Were you always interested in programming? Always interested in computers Commodore 64 Basic programming in high school Programming didn’t click for him until high school In college when the web became popular Computer engineering degree in college What was it that appealed to you about software over hardware? Software vs hardware Embedded systems software How did you get into web programming? Dolby Laboratories What technologies got you excited? JavaScript, Perl, and Ruby on Rails Loved the flexibility of JS and Rails Found something he could be productive with What are you proud of contributing to the JavaScript community? What are you working on now? And much, much more!


JavaScript Jabber Episode 76 Hack Reactor Walmart Labs Dolby Laboratories JavaScript Perl Ruby on Rails @fredzirdung Fred’s GitHub Fred’s Medium



React Developer Tools plugin PluralSight React Round Up and Views on Vue Framework Summit


Navalia Koa Vue

JSJ 315: The effects of JS on CSS with Greg Whitworth

May 30, 2018 53:29



AJ O’Neal Aimee Knight

Special Guests: Greg Whitworth

In this episode, the JavaScript Jabber panelists discuss the effects of JavaScript on CSS with Greg Whitworth. Greg works on Microsoft EdgeHTML, specifically working on the Microsoft Layout team, is on the CSS working group, and is involved with the Houdini task force. They talk about JS engines and rendering engines, what the CSSOM is, why it is important to understand the rendering engine, and much more!

In particular, we dive pretty deep on:

Greg intro What is the Houdini task force? Extensible web manifesto DOM (Document Object Model) Layout API Parser API Babel jQuery Back to basics JavaScript engine and rendering engine What is the CSSOM? Every browser has its separate JS engine Browsers perspective Aimee ShopTalk Podcast Episode Why is it important to understand how the rendering engine is working? Making wise decisions Give control back to browser if possible When you would want to use JavaScript or CSS Hard to make a hard or fast rule CSS is more performant Overview of steps And much, much more!


Parser API Babel jQuery Aimee ShopTalk Podcast Episode JavaScript @gregwhitworth Greg’s GitHub  


Kendo UI Linode FreshBooks



Microsoft Surface Microsoft Cursor


Greg’s Talk What Your Conference Proposal Is Missing by Sarah Mei


Aimee ShopTalk Podcast Episode Jake Archibald Tasks Talk

MJS 062: Zachary Kessin

May 23, 2018 26:18


Panel: Charles Max Wood

Guest: Zachary Kessin

This week on My JavaScript Story, Charles speaks with Zachary Kessin. Zach is a web developer who has written Programming HTML5 Applications and Building Web Applications with Erlang. Currently, he works a lot with functional programming. He first got into programming because his mother used to write in Lisp and he earned his first computer by begging his relatives to help pitch in to get him one when he was seven. They talk about what led him to Erlang and Elm, why he wanted to be a programmer from a young age, and what he is most proud of in his career.

In particular, we dive pretty deep on:

JavaScript Jabber Episode 57 JavaScript Jabber Episode 169 Zach intro Elm and Erlang How did you first get into programming? Mother was writing Lisp when he was a kid RadioShack color computer Mother taught him Basic Pascal and AP Computer Science Studied CS originally in college and then switches to Physics First web app written in Pearl 4 Did PHP for a living for a while and hated it Elm saves him time and effort What was it that made you want to program from a young age? Don’t be afraid to jump into programming at a late age Elm error messages Writes fewer tests in Elm code that JS code What are you most proud of? Loves mentoring Making a difference in the community It’s not just about the code, it’s about the people What are you doing now? And much, much more!


JavaScript Jabber Episode 57 JavaScript Jabber Episode 169 Programming HTML5 Applications Building Web Applications with Erlang Elm Erlang Lisp Zach’s GitHub @zkessin Zach’s YouTube Zach’s LinkedIn



Masterbuilt Smoker Crock-Pot


If you like a book, tell the author! How to Get a Meeting with Anyone by Stu Heinecke 1177 B.C.: The Year Civilization Collapsed by Eric Cline

JSJ 314: Visual Studio Code and the VS Code Azure Extension with Matt Hernandez and Amanda Silver LIVE at Microsoft Build

May 22, 2018 50:46



Charles Max Wood

Special Guests: Matt Hernandez and Amanda Silver

In this episode, the JavaScript Jabber/Adventures In Angular, panelists discuss Visual Studio Code and the VS Code Azure Extension with Matt Hernandez and Amanda Silver at Microsoft Build. Amanda is the director of program management at Microsoft working on Visual Studio and VS Code. Matt works on a mix between the Azure and the VS Code team, where he leads the effort to build the Azure extensions in VS code, trying to bring JavaScript developers to Azure through great experiences in VS Code. They talk about what’s new in VS Code, how the Azure extension works, what log points are, and much more!

In particular, we dive pretty deep on:

Amanda intro Matt intro What’s new in VS Code? VS Code core VS Live Share Shared Terminal Now have Linux support Live Share is now public to the world for free What would you use Shared Terminal for? Are there other things coming up in VS Code? Constantly responding to requests from the community Live Share works for any language How does the Azure extension work? Azure App Service Storage extension Azure Cosmos DB What are log points? All a part of a larger plan to create a better experience for JS developers Visual debuggers Is it the same plugin to support everything on Azure? Want to target specific services that node developers will take advantage of And much, much more!


Visual Studio VS Code Azure Live Share Azure Cosmos DB Microsoft Build Azure App Service Amanda’s GitHub @amandaksilver Matt’s GitHub @fiveisprime



Orphan Black Shout out to VS Code team Battle of the Books


The Customer-Driven Playbook by Travis Lowdermilk The Speed of Trust by Stephen M.R. Covey Yes, And by Kelly Leonard Digital Marketing For Dummies by Ryan Deiss Ed Gets His Power Back Kickstarter


Microsoft Quantum Development Kit for Visual Studio Code Iggy Peck, Architect Tek by Patrick McDonnell

MJS 061: Kyle Simpson

May 16, 2018 54:03


Panel: Charles Max Wood

Guest: Kyle Simpson

This week on My JavaScript Story, Charles speaks with Kyle Simpson. Kyle is most well-known for being the writer of You Don’t Know JS. He first got into programming because his friend’s dad was a programmer and he was hooked by the software side of computers. He grew up writing games with QBasic and Turbo Pascal and then in his teens did some client projects. He was very much a self-taught programmer and ended up sticking with it into his career today. They talk about what led him to JavaScript and what he is doing currently.

In particular, we dive pretty deep on:

Kyle intro You Don’t Know JS How did you first get into programming? Dad’s friend was a programmer Dad built computers Wrote games with QBasic and Turbo Pascal Some client projects in teen years Very much self-taught programmer CS degree in college First professional job at a biotech company Do you feel people need to get a CS degree these days? Grateful for his degree What engineering taught him Striving to understand why and how things work Don’t need a CS degree but you do need a certain mindset Valuable but not necessary What led you to JavaScript? Web Portal at his college What made you want to deepen your knowledge of JS? What are you working on now? And much, much more!


You Don’t Know JS JavaScript Kyle’s GitHub Functional-Light JavaScript @getify Kyle on Front-end masters



Template Weeks Working Out


Fluent Conf Node RSA

JSJ 313: Light Functional JavaScript with Kyle Simpson

May 15, 2018 53:21



AJ ONeal Aimee Knight Joe Eames

Special Guests: Kyle Simpson

In this episode, the JavaScript Jabber panelists discuss light functional JavaScript with Kyle Simpson. Kyle is most well-known for writing the books You Don’t Know JS and is on the show today for his book Functional-Light JavaScript. They talk about what functional programming is, what side-effects are, and discuss the true heart behind functional programming. They also touch on the main focus of functional programming and much more!

In particular, we dive pretty deep on:

You Don’t Know JS Functional-Light JavaScript From the same spirit as first books JavaScript Documents journey of learning What does Functional Programming mean? Functional programming is being re-awoken Many different definitions History of functional programming Programming with functions What is a function? “A collection of operations of doing some task” is what people think functions are What a function really is Map inputs to outputs What is a side-effect? Side-effects should be intentional and explicit The heart of functional programming Refactoring Can’t write a functional program from scratch What functional programming focuses on Making more readable and reliable code Pulling a time-stamp Defining a side-effect And much, much more!


You Don’t Know JS Functional-Light JavaScript JavaScript Kyle’s GitHub @getify



What Does Code Readability Mean? @FunctionalKnox HTTP 203 Podcast




Barking Up the Wrong Tree by Eric Barker Workshops in general


GDPR The start-up’s guide to the GDPR Hatch Fluent Conf

JSJ 312: Hygen with Dotan Nahum

May 9, 2018 47:53



Charles Max Wood Aimee Knight AJ ONeal

Special Guests: Dotan Nahum

In this episode, the JavaScript Jabber panelists discuss Hygen with Dotan Nahum. Dotan has worked within open source community, where he created Hygen. They talk about what Hygen is, how it came to be, and code generators in general. He was inspired by the Rails generator to create his own generator and took his inspiration from 12 years prior to creating Hygen. They also touch on how to share generators in separate packages and much more!

In particular, we dive pretty deep on:

Dotan intro What is Hygen? Code generators Rails in 2006 Ruby on Rails 15-minute blog video PHP and Python Carried Rails wow moment with him into creating Hygen Wanted Rails generators everywhere Can you also modify files? Took the good things from Rails generator The fact that front-end apps have architecture is new Redux The solution of generating code A component is a ray of files and assets JavaScript gives you great freedom A standardized way of doing components GraphQL Everything lives in the “day job” project How the Hygen template is formatted Can have a shell action Is there a way to share generators in a separate package? Go And much, much more!


Hygen Rails Ruby on Rails 15-minute blog video Python Redux JavaScript GraphQL Go @jondot Dotan’s GitHub Dotan’s Medium



Fluent Conf Hot Jar Ethereum


Deep-copying in JavaScript


Let’s Encrypt Nintendo Switch Breath of the Wild


asdf Brew Cask

MJS 060: Jeff Cross

May 9, 2018 44:18


Panel: Charles Max Wood

Guest: Jeff Cross

This week on My JavaScript Story, Charles speaks with Jeff Cross. Jeff has been working on Angular and JavaScript for the past five years with Google and now with Nrwl, which he created in the past year. He got started with programming around 12 years old when his Mom taught him and his siblings how to create websites using FrontPage. He then worked as a web designer utilizing Flash and joined an agency when he was in his 20’s that focused on Flash. Jeff talks about his path to his success and the different steps it took him to get to where he is today. 

In particular, We dive pretty deep on:

How did you get into programming? HTML and FrontPage Dreamweaver GeoCities Gifs Started off as a web designer Flash Object-Oriented Programming JavaScript Backbone From JavaScript to Angular Node Programming APIs Deployd Angular Team at Google What have you contributed to angular? Embarrassing stories Consulting NX And much, much more!


FreshBooks Nrwl Deployd Linode @JeffBCross @nrwl_io Nrwl Blog



Things App Charles Apple Air Pods Astro Reality

MJS 059: Merrick Christensen

May 2, 2018 41:23


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: Webflow Squarespace Wix Framework Summit @iamMerrick  



Sho Baraka Grid Critters Flex Zombies Charles Fresh Books Lyft Game Vice Audio-Technica 2100

JSJ 311: Securing Express Apps with Helmet.js with Evan Hahn

May 1, 2018 40:09



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!


Airtable Braintree JavaScript Helmet.js Node Express npm Evan’s Website @EvanHahn Evan’s GitHub



Camera Zoom H6 Shure SM58 Youtube React Round Up


Clojure Fortune Kantaro: The Sweet Tooth Salaryman

MJS 058: Dean J Sofer

Apr 25, 2018 39:00


Panel: Charles Max Wood

Guest: Dean J Sofer

This week on My JavaScript Story, Charles speaks with Dean J Sofer. Dean currently works at PlayStation now and has recently taken a step back from open source recently. He first got into programming because his Dad was really into technology, and he first started off with scripting and creating portfolio websites. They also talk about his time using Angular and what he is working on now.

In particular, we dive pretty deep on:

Episode 95 JSJ Dean intro Realized he prefers working at larger corporations How did you first get into programming? Dove into computers because of his Dad Started with scripting Creating portfolio websites CSS, HTML, and MVC Node scripts Took a visual basic class in High School Liked being able to create things that other people could interact with Cake PHP and Node What was it that made you want to switch over to JavaScript? Angular What was it about Angular that appealed to you? Why he went searching for Angular Angular UI Don’t be zealot when it comes to frameworks Create states in your application Is there anything that you are particularly proud of in your career? And much, much more!


Episode 95 JSJ Cake PHP Node JavaScript Angular Angular UI Dean’s GitHub



Brandon Sanderson Books Writing Excuses Podcast Life, the Universe, and Everything Conference Bullies by Ben Shapiro Fire and Fury by Michael Wolff


Wallaby.js You Suck at Dating Podcast

JSJ 310: Thwarting Insider Threats with Greg Kushto

Apr 24, 2018 45:59



Charles Max Wood Cory House AJ O’Neal Aimee Knight

Special Guests: Greg Kushto

In this episode, the JavaScript Jabber panelists discuss thwarting insider threats with Greg Kushto. Greg is the vice president of sales engineering for Force 3 and has been focused on computer security for the last 25 years. They discuss what insider threats are, what the term includes, and give examples of what insider threats look like. They also touch on some overarching principles that companies can use to help prevent insider threats from occurring.

In particular, we dive pretty deep on:

Greg intro Insider threats are a passion of his Most computer attacks come from the inside of the company Insider threats have changed over time What does the term “insider threats” include? Using data in an irresponsible manner Who’s fault is it? Blame the company or blame the employee? Need to understand that insider threats don’t always happen on purpose How to prevent insider threats Very broad term Are there some general principles to implement? Figure out what exactly you are doing and documenting it Documentations doesn’t have to be a punishment Know what data you have and what you need to do to protect it How easy it is to get hacked Practical things to keep people from clicking on curious links The need to change the game Fighting insider threats isn’t fun, but it is necessary And much, much more!


Force 3 Greg’s LinkedIn @Greg_Kushto Greg’s BLog


Charles Plural Sight Elixir podcast coming soon NG conf MicroConf RubyHack Microsoft Build


Plop VS code sync plugin


Awesome Proposals GitHub

AJ O’Neal

Fluffy Pancakes The Mind and the Brain by Jeffrey M. Schwartz



MJS 057: David Luecke

Apr 18, 2018 35:51


Panel: Charles Max Wood

Guest: David Luecke

This week on My JavaScript Story, Charles speaks with David Luecke. David currently works for Bullish Ventures, which is a company that builds APIs and mobile web applications for clients using their open source tools. He first got into programming when he got his first computer and started programming using Delphi with Pascal. They also touch on how he first got into JavaScript, Feathers JS, and what he is working on now.

In particular, we dive pretty deep on:

David intro How did you first get into programming? Tinkered a lot with electronics as a child Delphi with Pascal Planned on doing an apprenticeship computer programming Went to University and got a CS degree How critical do you think a CS degree is? Having a CS degree helps you to pick up things faster How did you get into JavaScript? Did some website development in the beginning of his career Java Dojo and JavaScript MVC Works a lot with React Native now What products have you worked on that you’re proud of? Feathers JS How did you come around to creating this? In-server architecture idea at university What are you working on now? mySam And much, much more!


Bullish Ventures Pascal JavaScript Dojo JavaScript MVC React Native Feathers JS mySam David’s GitHub @daffl David’s Medium



Merge Cube Primo Octagon Augmented Reality Cards CES

David How to Fix Facebook—Before It Fixes Us by Roger McNamee

JSJ 309: WebAssembly and JavaScript with Ben Titzer

Apr 17, 2018 52:21



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!


JavaScript V8 WebAssembly asm.js TurboFan TypeScript Rust WebAssembly GitHub Ben’s GitHub



Ready Player One Movie YouTube Alexa Flash Briefings: Add skill for “JavaScript Rants”


npm Semantic Version Calculator Kent Beck Tweet


MDN 418 Status code Quantity Always Trumps Quality blog post


American Politics

JSJ 309: WebAssembly and JavaScript with Ben Titzer

Apr 17, 2018 52:21



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!


JavaScript V8 WebAssembly asm.js TurboFan TypeScript Rust WebAssembly GitHub Ben’s GitHub



Ready Player One Movie YouTube Alexa Flash Briefings: Add skill for “JavaScript Rants”


npm Semantic Version Calculator Kent Beck Tweet


MDN 418 Status code Quantity Always Trumps Quality blog post


American Politics

MJS 056: Jonathan Carter

Apr 11, 2018 41:30


Panel: Charles Max Wood

Guest: Jonathan Carter

This week on My JavaScript Story, Charles speaks with Jonathan Carter. Jonathan is a PM at Microsoft and has been a web developer for over 15 years. At Microsoft, he’s had the opportunity to work on tooling, platform pieces for JavaScript applications, and many other things. He first got into programming when his uncle let him shadow him and the IT department he had working for him, and this is where he was first introduced to software and the idea of working with computers as a career. They talk about his proudest accomplishments within the JavaScript community as well as what he is working on now.

In particular, we dive pretty deep on:

Jonathan intro Asure How did you first get into programming? Interest in creating a website Dual enrollment in high school at local community college Started off with VB6 Uncle was very active in his programming start .net Scrappy boredom mixed with curiosity led to him actually getting into software Everyone comes into programming differently Your past is important in explaining where you have ended up Node.js on Asure How did you get into JavaScript? Worked at a newspaper in the software division Ajax jQuery Wanted to write better apps CodePush Stayed in JavaScript community because it brings him inspiration and excitement Likes to be able and look back on his past projects App development for fun Is there anything that you are particularly proud of? Profiling tools Liked building tools that meet people where they are at and simplify their jobs Qordoba React Native And much, much more!


JavaScript Microsoft Asure Node.js jQuery CodePush Qordoba React Native @LostinTangent Jonathan’s GitHub



Anti-Pick: Intellibed Tuft and Needle


Notion Doomsday by Architects

JSJ 308: D3.js with Ben Clinkinbeard

Apr 10, 2018 45:50



Joe Eames Cory House Aimee Knight

Special Guests: Ben Clinkinbeard

In this episode, the JavaScript Jabber panelists talk about D3.js with Ben Clinkinbeard. D3.js is a JavaScript library that has you use declarative code to tell it what you want and then it figures out all of the browser inconsistencies and creates the notes for you. He talks about the two main concepts behind D3, scales and selections, which once you understand make D3 a lot more user friendly. He then touches on SPGs and discusses his Learn D3 in 5 Days course.

In particular, we dive pretty deep on:

What is D3.js? Stands for Data Driven Documents JavaScript How much of the learning curve is attributed to learning D3? SPG 2 main concepts behind D3: scales and selections Is learning about SPGs a prerequisite to leaning D3? How serious are you talking when saying idiosyncrasies? SPG tag Understanding positioning in SPG Positions with CSS transforms Are you required to use SPG? Not required to use SPG with D3 Canvas SPG is vector based SPG utility function Responseivefy Learn D3 in 5 Days course Is there and overlap with D3 and React? And much, much more!


D3.js JavaScript Responsivefy Learn D3 in 5 Days course React @bclinkinbeard Ben’s GitHub



React cheat sheet “Why software engineers disagree about everything” by Haseeb Qureshi

Joe Eames

“JavaScript vs. TypeScript vs. ReasonML” by Dr. Axel Rauschmayer


“How To Use Technical Debt In Your Favor” Neuroscience News Twitter



MJS 055: Johannes Schickling

Apr 4, 2018 40:13


Panel: Charles Max Wood

Guest: Johannes Schickling

This week on My JavaScript Story, Charles speaks with Johannes Schickling. Johannes is the CEO and Co-Founder of GraphCool and works a lot on Prisma. He first got into programming when he started online gaming and would build websites for gaming competitions. He then started getting into creating websites, then single page apps, and has never looked back since. He also gives an origin story for GraphCool and the creation of Prisma. 

In particular, we dive pretty deep on:

Johannes intro How did you first get into programming? Always been interested in technology PHP to JavaScript Creating single page apps Self-taught The problem-solving aspect keeps people coming back to programming Always enjoyed math and physics Programmers make up such a diverse community How did you find JavaScript? Has used a wide range of front-end frameworks Node WebAssembly Opal What drew you into doing single page apps? Like the long-term flexibility of single page apps Don’t have to worry about the back-end right off the bat GraphQL What have you done in JavaScript that you are most proud of? Open source tooling GraphCool origin story What are you working on now? Prisma And much, much more!


JavaScript GraphCool Prisma PHP Node WebAssembly Opal GraphQL @_Schickling @GraphCool GraphCool Blog





Gatsby GraphQL Europe GraphQL Day

JSJ 307: Apollo with Peggy Rayzis

Apr 3, 2018 39:55



Charles Max Wood Aimee Knight AJ ONeal

Special Guests: Peggy Rayzis

In this episode, the JavaScript Jabber panelists talk about Apollo with Peggy Rayzis. Peggy is an open source engineer on the Apollo team where she primarily focuses on client stuff, working on Apollo Client, and also other libraries. Previously, she was a UI engineer at Major League Soccer where she worked primarily with React and React Native. She discusses what GraphQL is and how it is used, as well as how they use it in the Apollo team to make their lives as developers easier. They also touch on when it would work best to use GraphQL and when it is not ideal to use it.

In particular, we dive pretty deep on:

AiA 127 Episode Peggy intro What is GraphQL? What is a Typed Query Language? What is a schema? Where do schemas get defined? GraphQL SDL Apollo Stack and Apollo Server Tracing and cash control Apollo Engine How GraphQL Replaces Redux GraphQL cuts down on front-end management Apollo Link State The best code is no code Apollo Client allows for greater developer productivity Does the conversation change if you’re not using Redux or in a different ecosystem? When is the right time to use this? Data doesn’t have to be graph shaped to get the most out of GraphQL Analyze schema with Apollo Engine Is there a way to specify depth? Max Stoiber blog post How would people start using this? And much, much more!


React Dev Summit JS Dev Summit Apollo AiA 127 Episode Apollo Client Major League Soccer React React Native GraphQL GraphQL SDL Apollo Server Apollo Engine How GraphQL Replaces Redux Apollo Link State Redux Max Stoiber blog post @PeggyRayzis Peggy’s GitHub Peggy’s Medium



GraphQL Ruby WordPress GraphQL Hogwarts Battles Board Game Pandemic Legacy Risk Legacy


How GraphQL Replaces Redux JavaScript Meetup in LA

AJ The Four by Scott Galloway

Peggy Thanks for the Feedback by Douglas Stone

MJS 054: Gordon Zhu

Mar 28, 2018 45:41


Panel: Charles Max Wood

Guest: Gordon Zhu

This week on My JavaScript Story, Charles speaks with Gordon Zhu. Gordon is the founder of Watch and Code. The mission of the company is to take total beginners and turn them into amazing developers. He first got into programming by trying to avoid programming. He studied business in college and was really interested in the internet, leading him to have to learn coding. He talks about the importance of being focused, especially in the beginning, and the ability to figure things out.

In particular, we dive pretty deep on:

Watch and Code How did you first get into programming? Studied business in college Peak Two different eras of programmers There is more than one way to get into programming Culture is promoting a new way of thinking about technology Black Mirror How did you get into JavaScript? Marketing, product management, and engineering Angular Tried to avoid JS and focused on Python Importance of focus The ability to figure things out How to spend your time in the beginning Current focus Focus gives you freedom Reading a lot of code What are you proud of? And much, much more!


JavaScript Watch and Code Peak Black Mirror Angular Python @Gordon_Zhu Practical JavaScript



4k Camcorder 25 ft XLR Cables Zoom H6 Roland R-09 USB-C Dongle Docking Station ScreenFlow PB Works


How I Built This podcast Stay Tuned with Preet podcast

JSJ 306: The Framework Summit with Joe Eames

Mar 27, 2018 48:03



Charles Max Wood Cory House Aimee Knight Joe Eames AJ O'Neal

In this episode, the JavaScript Jabber panelists talk about the Framework Summit. It was the brainchild of Merrick Christensen. This summit includes talks on multiple different frameworks all in a two-day conference, which allows you to get exposed to new frameworks while still learning more about the framework your job requires you to use. Another goal of the conference is that it will be able to open people’s eyes up to the different frameworks available to them and show that no one framework is superior to another.

In particular, we dive pretty deep on:

What is the Framework Summit? The framework you use plays a huge role in your programming For people who want to learn about more than one framework Allows you to explore The format of the conference Park City, Utah in October 2018 Helps you answer which framework should you use? Goal is to open people’s eyes up to other frameworks Decrease internet arguments over which framework is better Fluent Conference Get to have conversation with other people who work in your framework Making connections React Rally Talk Evan Czaplicki The context matters Being able to deep dive into the different frameworks Using frameworks in conjunction with one another Have you seen “religionist” themes in programming frameworks? Why Good People Are Divided by Politics and Religion by Jonathan Haidt Some people will never look beyond their frameworks If it’s working, why would you mess with it? And much, much more!


React Dev Summit JS Dev Summit Framework Summit Angular React Ember JavaScript Fluent Conference React Rally Talk Evan Czaplicki Why Good People Are Divided by Politics and Religion by Jonathan Haidt @FrameworkSummit



Parked Out By the Lake Dustin Christensen Newspaper by Themeforest




Republic of Tea – Apple Cider Vinegar Tea The Way of Testivus


Evan Czaplicki Talk


Dinosaurs Cough Syrup by Young the Giant

MJS 053: Quincy Larson

Mar 21, 2018 30:12


Panel: Charles Max Wood

Guest: Quincy Larson

This week on My JavaScript Story, Charles speaks with Quincy Larson. Quincy created Free Code Camp, whose goal is to build a huge community of people who will then contribute to the project so that they can help more people learn code for free. Quincy first got into programming when he wanted to find a way to get teachers out from behind the computer and into the classrooms. This revealed to him how powerful technology was and really got him interested in learning more code. He feels very strongly about the importance of accessibility and strived to make his camp as accessible as he could so he could reach the most people with it. 

In particular, we dive pretty deep on:

Free Code Camp How did you first get into programming? Previously a school director and teacher AutoHotkey How did you get into JavaScript? Focused on the problem of learning the code Free Code Camp was his main focus as a programmer The importance of accessibility Free Code Camp curriculum New update launching soon Build projects in order to get a certificate 6 certificates in total What is the work breakdown with Free Code Camp? Editorial staff now Free Code Camp YouTube Channel Writes on Medium Loves the fact that he gets to help others and positively affect their lives What else are you working on now? Expanding Free Code Camp Directory And much, much more!


Free Code Camp AutoHotkey JavaScript Free Code Camp YouTube Channel Quincy’s Medium @Ossia Free Code Camp Medium



VRBO Mesquite, Nevada


The state of machine learning in JavaScript Tensor Fire

JSJ 305: Continuous Integration, Processes, and DangerJS with Orta Therox

Mar 20, 2018 48:29



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!


React Dev Summit JS Dev Summit Danger JS React React Native Apollo RxJS Prettier Danger Ruby Ruby JavaScript Orta’s GitHub Artsy Blog



Hogwarts Battle Board Game Sushi Go Party! Game NYC tips


Max Stoiber Blog The Ultimate Guide to Kicking Ass on Take-home Coding Challenges


SaltCON Stuffed Fables Board Game


UniFi AC Lite Fullmetal Alchemist


The Wire Worm Web Serial

MJS 052: Jeremy Likness

Mar 14, 2018 39:42


Panel: Charles Max Wood

Guest: Jeremy Likness

This week on My JavaScript Story, Charles speaks with Jeremy Likness. Jeremy works for Microsoft currently and first got into programming when he was kept home while having a sunburn and taught himself how to type in a program into his family’s TI-99 4A computer and then later moved on to the Commodore 64. They stress the fact that you can be a successful programmer, no matter your background and they talk about the pros and cons of being a cloud developer advocate.

In particular, we dive pretty deep on:

How did you first get into programming? How much Microsoft is in the different programming aspects Cloud developer advocates Azure TI-99 4A and Commodore 64 C and C+ You don’t have to go the traditional route to be a programmer Having a CS major is not the only way How did you get into JavaScript? Discovered the internet in college Career focused on Web apps jQuery Backbone.js Hands-on career with the code He did consulting for 10 years Linux How has your earning changed? His biggest fear was getting out of touch with the realities of day-to-day programming Pros and cons of being a cloud developer advocate Community, Content, and Connection with engineering And much, much more!


Microsoft Cloud developer advocates Azure JavaScript jQuery Backbone.js Linux @JeremyLikness Jeremy’s Blog




Jeremy Hello World: The Film Node.js documentation on Azure

JSJ 304: React: The Big Picture

Mar 13, 2018 51:00



Charles Max Wood Aimee Knight Joe Eames Cory House AJ O'Neal

Special Guests: None

In this episode, the JavaScript Jabber panelists talk about React: The Big Picture, Cory’s course on Pluralsight and what React is all about. They discuss both the pros and cons when it comes to using React and when it would be the best to use this library. They also encourage programmers to use React in a more consistent way so that people can share components.

In particular, we dive pretty deep on:

What is React: The Big Picture course? React The frameworks work with each other Reason and Elm How to decide when using React is the best option? React tradeoffs JavaScript React expects you to do a little more typing and work React is very close to JavaScript React pushes you towards a single file per component React Round Up Are the Code Mods as wonderful as they sound? Angular Create React App What are Code Mods? Lack of opinionated approach in React Using React in a more consistent way MobX and Redux Start off using just plain React When wouldn’t you want to use React? And much, much more!


React: The Big Picture Cory’s Pluralsight Reason Elm React JavaScript React Round Up Create React App Angular MobX Redux Framework Summit 2018 Angular: The Big Picture React Dev Summit



Hunting Hitler The Greatest Showman: Sing-a-long


“Why being a perfectionist is an obstacle (and how to beat it)” by Gui Fradin “How to understand the large codebase of an open-source project?” blog post


Marital Bliss Card Game


MJS 051: Todd Gardner

Mar 8, 2018


Panel: Charles Max Wood

Guest: Todd Gardner

This week on My JavaScript Story, Charles speaks with Todd Gardner. Todd is one of the co-founders of Track JS, which is a JavaScript error monitoring service. He first got into programming in Jr. High when he and his friends played around with computers they had dumpster dived for from their school in order to play video games. In High School, he learned how to create websites so that people could register for his LAN parties online. They also discuss the importance of finding passion in what you do as well as what Todd is most proud of contributing to the JS community.

In particular, we dive pretty deep on:

Track JS Stack trace Telemetry Decodes errors that are actually good to focus on How did you get into programming? Warcraft video game Started programming past gaming in High School LAN parties Pearl The importance of passion in programming C# He didn’t start off with programming as his focus Find the thing that inspires you and go do it! How did you wind up on JavaScript? Working as a consultant Knockout vs Backbone .net contractor to JS contractor Node JS What are you most proud of in JS? Understand that you’re never done with a JS app What are you doing now? And much, much more!


Track JS @ToddHGardner



Eternium The E-Myth Revisited: Why Most Small Businesses Don't Work and What to Do About It by Michael E. Gerber My Business on Purpose Podcast Jamie Masters  Profit First by Mike Michalowicz The 12 Week Year by Brian P. Moran


Smart Things Rage

JSJ 303: Test Coverage Tools with Ben Coe, Aaron Abramov, and Issac Schleuter

Mar 6, 2018 1:01:53



Charles Max Wood

Aimee Knight

Corey House

AJ O'Neal

Special Guests: Ben Coe, Aaron Abramov, and Issac Schleuter

In this episode, the JavaScript Jabber panelists talk with Ben Coe, Aaron Abramov, and Issac Schleuter about test coverage and testing tools. They talk about the different tools and libraries that they have contributed to the coding community, such as NYC, conf, and Jest. They also discuss what test coverage is actually about and when using test coverage tools is necessary.

In particular, we dive pretty deep on:

What have you contributed to the testing tools community? npm NYC tool and instanbul project conf Jest These libraries were developed to be easy and have “batteries included” False positives with test coverage Encourage testing practices that don’t practice in a superficial way Test coverage is about making sure you test every state a public API can get into Think through the test you’re writing first Barriers against testing Don’t spike the code too quickly Provides guardrails for newer developers to contribute to open source projects Use tests to understand the system How to spend your time better When you need tests Value is very short term TDD And much, much more!


@BenjaminCoe @AaronAbramov_ Issac’s GitHub



React Roundup Views on Vue Adventures in Angular React Dev Summit 2018


Galentine’s Day Dnote CLI


The Hero of Ages by Brandon Sanderson


We are hive project guidelines Tip: You can install node as a dependency on your project


Hack Illinois 2018 C8




The Tap 100 Krypton App Friendly Fire Podcasts

MJS 050: Azat Mardan

Feb 28, 2018 35:01


Panel: Charles Max Wood

Guest: Azat Mardan

This week on My JavaScript Story, Charles speaks with Azat Mardan. Azat is the author of 14 books on Node JS, JavaScript, and React JS. He also founded Node University, speaks at conferences, and works at Capitol One. Azat first got into programming when he was in college and his major was Informatics in eastern Europe and then when he graduated, he taught himself JavaScript and PHP and did some freelance work. Once he came to the United States, he got his master’s degree in Information Systems Technology and was building websites for country embassies. His main advice to people new to programming and IT is to just focus on one thing and give yourself enough time to get comfortable with that technology, and then move on to a new technology to conquer.

In particular, we dive pretty deep on:

How did you get into programming? Major in informatics PHP, JavaScript, CSS, and HTML Freelancing Masters in Information Systems Technology C++ class FDIC Advice to new programmers The importance of focus His startup experience Ruby on Rails Mac vs Windows Taught himself different frameworks and languages Location matters MongoDB The best way to learn is to teach others What was it about JavaScript that really clicked for you? JavaScript has expressiveness The Talent Code What led you to React? Which contributions are you most proud of? And much, much more!


Node University The Talent Code Azat’s Blog:



Gardenscapes Starcraft II The Osiris Method


Echo JS

JSJ 302: Evaluating Web Frameworks with Kitson Kelly

Feb 27, 2018 53:44



Charles Max Wood

Aimee Knight

AJ O'Neal

Special Guests: Kitson Kelly

In this episode, the JavaScript Jabber panelists talk with Kitson Kelly about evaluating web frameworks. Kitson is currently in Australia working for ThoughtWorks as a principle technologist. He has written many articles on frameworks and urges that people don’t get stuck on one framework in their programming. He talks about how using only frameworks that you know could hurt you in the long run. This episode is great for understanding when to use certain JavaScript frameworks and how branching out from what is comfortable might make your job easier.

In particular, we dive pretty deep on:

Articles on web frameworks How do you pick a JavaScript framework to use? The framework depends on your changing needs Recommending less popular frameworks Angular, Ember, React React vs Redux Certain domains with different frameworks? Each framework takes a different approach How to decide which framework to use? Only give it a couple days to see if your app works with the framework Is it ever appropriate to not use a certain framework? Frameworks are there to make your job easier Don’t be afraid to try new frameworks Choose a framework that will “be there tomorrow” What is the future for frameworks? Experiment and be honest with what you need And much, much more!


Linode ThoughtWorks Kendo UI LootCrate @KitsonK Kitson’s GitHub



Facebook The 12 Week Year by Brian P. Moore Google Drive for Business


Would College Students Retain More If Professors Dialed Back The Pace? URL to PDF Converter CSS History


Tylenol Cold and Flu Severe


Microsoft Azure Zype

MJS 049: Sean Merron

Feb 21, 2018 58:56


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!


Linode 2 Frugal Dudes @SeanMerron



React and View Podcast coming up


Mr. Money Mustache BogleHeads The Little Book of Common Sense Investing by John Bogle

JSJ 301: CSS Grids: The Future of Frontend Layout with Dave Geddes

Feb 20, 2018 1:03:42



Charles Max Wood

Aimee Knight

Cory House

AJ O'Neal

Joe Eames

Aaron Frost

Special Guests: Dave Geddes

In this episode, the JavaScript Jabber panelists talk with Dave Geddes about CSS Grids. Dave quit his job about a year ago and has been living the entrepreneur and programmer life since then. Now, he builds mastery games to help people learn CSS. Dave discusses the differences between Flexbox and CSS Grid and how the games that he creates can help people learn CSS Grid in a fun and interactive way.

In particular, we dive pretty deep on:

CSS Mastery games Uses spaced repetition and delayed recall to learn CSS Grid Flexbox CSS Grid as the cake and Flexbox as the frosting Edge spec What Flexbox can do Sub-Grids Nesting Grids Old Grid vs New Grid layout Why would you move from Flexbox to CSS Grid? CSS Grid tools Education and Gamification Pick a UI that interests you For a discount on Grid Critters: enter JS Jabber for 20% off And much, much more!


Linode FreshBooks @Geddski



R Pods Earphones


NEU Cleanse “At Age 6, Girls Are Less Likely to Identify Females As ‘Really, Really Smart’”


Cory Tweet


How to Start a Startup Made in America by Sam Walton


The Dungeoneers by John David Anderson NG Conf


Fire and Fury by Michael Wolff


They Are Billions

MJS 048: JC Hiatt

Feb 14, 2018 34:01


Panel: Charles Max Wood

Guest: JC Hiatt

This week on My JavaScript Story, Charles speaks with JC Hiatt. JC is a 25-year-old software consultant from Jackson, Mississippi. He first got into programming in the 7th grade when he had the desire to create a website. He has since done a lot of work with WordPress, helped to found DevLifts, and much more. Now, he is doing a lot of little things to help make an impact on the programming world, including running multiple podcasts and creating tutorials for new programmers.

In particular, we dive pretty deep on:

How did you get into programming? HTML and CSS What got you into JavaScript? Hackers jQuery WordPress What are you most proud of? Tutorial involving React and WordPress Consulting Cryptocurrencies Podcast: HODL Daily DevLifts and DevLifts Podcast Cryptocurrency interest Balance And much, much more!


Linode DevLifts Website and Podcast HODL Daily Podcast FreshBooks @JCHiatt  



CSS Grid The Punisher


Artemis by Andy Weir Star Wars: The Last Jedi React Dev Summit

JSJ 300: Celebration

Feb 14, 2018 56:58



Charles Max Wood

Aimee Knight

Cory House

AJ O'Neal

Joe Eames

Special Guests: None

In this episode, the JavaScript Jabber panelists speak on where they are what they are up to today. Aimee is still in Nashville, Tennessee, and it is currently working at

Built Technologies and is working with JavaScript. Cory is still authoring courses for Pluralsite, has more recently been doing consulting with React, and is the principal engineer at Cox Automotive. Joe is doing a lot of Pluralsight work, puts together conferences, and is working on a new podcast with Charles. AJ recently did some side work with Dash, is interested in working on a new domain service, and recently got married. Charles is currently at ngATL conference, and has been attending a lot of conferences recently. He is also starting to head over to the video realm and is creating a new podcast called React Roundup and a View Podcast with Joe. They also talk about what they each have planned in the upcoming year for their careers and their lives.

In particular, we dive pretty deep on:

Built Technologies JavaScript Front End and Full Stack Pluralsite React consulting Cox Automotive Front end apps View and React podcast Angular JS to Angular Pluralsight courses Big Picture React courses Fork of Bitcoin called Dash New domain service ngATL React Roundup Podcast New podcasts on artificial intelligence, IOT, augmented and virtual reality game development, python Node, JavaScript, and Rust And much, much more!


Linode Built Technologies Pluralsite Cox Automotive Dash ngATL Youtube FreshBooks



ATR2100 Microphone Zoom H6 Apple AirPods ngATL ngGirls


Improving Ourselves to Death What Does Code Readability Mean?


JavaScript Tip Tweet  


How to Start a Startup YouTube Series Singham Movie  


MJS 047: Tim Caswell

Feb 9, 2018 41:44


Panel: Charles Max Wood

Guest: Tim Caswell

This week on My JavaScript Story, Charles speaks with Tim Caswell. Tim got into programming when he was a kid and would mess around on a Commodore 64 he had found. He next moved onto writing games in Cue Basic, and once the internet came into play in the mid to late 90’s, his programming really took off, especially after he got Windows. Tim has since written his own language based on Lua, called Luvit, worked on browser-based IDE systems, like Cloud 9, and so much more. After working on many projects and programs over the years, he is now focusing on building his startup. His advice is to always balance your needs with what you can do and make sure that you are always moving forward.

In particular, we dive pretty deep on:

How did you get into programming? Commodore 64 386SX Games in Cue Basic CompuServe startup JavaScript and HTML Learning about CPUs in college Studied at Central Arkansas originally C++ Software engineering at UT Dallas Connect Framework NVM in Bash Luvit computer language Polyglot startup New product, SDK, coming soon Daplie Balance and moving forward Getting paid for value His mission The power to create and to inspire And much, much more!


Fresh Books Linode @CreationIX  



Daplie Upcoming SDK Beaker Browser Secure Scuttle Butt



JSJ 299: How To Learn JavaScript When You're Not a Developer with Chris Ferdinandi

Feb 7, 2018 1:11:42



AJ O’Neal

Joe Eames

Aimee Knight

Special Guests: Chris Ferdinandi

In this episode, JavaScript Jabber panelist speak with Chris Ferdinandi. Chris teaches vanilla JavaScript to beginners and those coming from a design background. Chris mentions his background in Web design and Web Develop that led him JavaScript development. Chris and the JSJ panelist discuss the best ways to learn JavaScript, as well as resources for learning JavaScript. Also, some discussion of technologies that work in conjunction with vanilla JavaScript.

In particular, we dive pretty deep on:

Teaching JavaScript - Beginners and Design patrons Web Design and Web Development CSS Tricks  Todd Motto How to do jQuery Things without jQuery Doing things like mentors (Todd) When JavaScript makes sense. CSS is easier to learn then JS? Being good at CSS and JS at the same time? How about Node developers? jRuby, DOM Documentation And much more!

Links: @ChrisFerdinandi  



Discover Card Mistborn 


Your Smart Phone is Making You Stupid… Crypto Currency


Mystic Vale Kedi

Chris Teva Mush

MJS 046: Donovan Brown

Feb 1, 2018 53:50



Charles Max Wood

Guest: Donovan Brown

This week on My JavaScript Story, Charles speaks with Donovan Brown. Donovan is a principle DevOps Manager at Microsoft. Donovan talks about his journey into programming starting in the 8th grade with Cue Basic to college and writing games in Cue Basic. Donovan talks about different avenues of programming and working independently, and being entrepreneurial, and finally getting a call from Microsoft. Donovan tells many great high energy stories and shares his enthusiasm in his career in DevOps. This is a great episode to hear the possibilities in the programming and developer world.

In particular, we dive pretty deep on:

How did you get into programming? 8th grade Cue Basic Computer Math  Cue Basic Selling notes  -  Chemistry class Board Game creation Teach yourself C in 21 days Change majors Work at Compaq Computers and go promoted as a software engineer Independent, then into Dev Ops Notion Solutions Ending up in Microsoft doing DevOps Hot Topic  - Dev Opts  - Release BrianKellerVM Demos DevOps and the Process Visual Studio and people Pain Points Programmers - Permission to do your job? JQuery Yeoman Generator  Power Shell Plugin Open source and Contributions to the community DevOps Interviews Podcast and much, much more!

Links: @DonovanBrown DevOps Interviews Podcast 



Visual Studio Code 


Installing Windows 10  Docker Support for Windows 

JSJ 298: Angular, Vue and TypeScript with John Papa

Jan 31, 2018 1:03:04



Charles Max Wood

Cory House

Joe Eames

Aimee Knight

Special Guests: John Papa

In this episode, JavaScript Jabber panelist speak with John Papa. John has been doing web programming for over twenty years on multiple platforms and has been contributing to the developer communities through conferences, authoring books, videos and courses on Pluralsight.

John is on the show to discuss an articles he wrote on A Look at Angular Along Side Vue, and another article on Vue.js  with TypeScript. John talks about the new features with the different versions of Angular technologies, anxiety in the different features, comparisons between the technologies and use case with Angular.

In particular, we dive pretty deep on:

A look at Angular Along Side Vue - Article Angular 5, Amber,Vue,  React, Angular Angular 2 - different features CLI Spell Webpack Comparisons - Why the anxiety? Opinions of Angular and sprinkling in other technologies Vue is the easy to use with Angular Are there breakpoints with the uses case? Choosing technologies Talk about working with Vue and Angular DSL - Domain Specific Language Vue and 3rd party libraries Talk about Vue working with TypeScript Vue.js  with TypeScript Vue with TypeScript looks similar to Angular Vetur What does 2018 have in store for Angular? Native apps and web functionality And much more!

Links: Vue.js  with TypeScript A Look at Angular Along Side Vue @john_papa




E Myth Revisited Profit First  Dunkirk


Crucial Conversations  Ripple or XRP


The Greatest Showman Better Late Then Never Vue 7 Languages In 7 Weeks  - Book


Jumanji 2017 Emotional Intelligence

MJS 045: Gant LaBorde

Jan 25, 2018 49:00



Charles Max Wood

Guest: Gant LaBorde

This week on My JavaScript Story, Charles speaks with Gant LaBorde. Gant is a regular in React Native Radio of Dev Chat TV. Gant works for Infinite Red and works with Ignite, a toolkit/framework for React Native. Infinite Red is a mobile app consulting company.

Gant talks about his journey in programming and working in the development world. Gant describes his early introduction to programming through the fascination of home computers and friends. Gant talks about his experience in learning  Javascript, PHP, Data Base, Desktop apps, and much more. Lastly, Gant talks about his contributions to React Native, and other platforms, and his current projects.

In particular, we dive pretty deep on:

How did you get into programming? Got into programming by help his dad with technology and computers Started his intro into programming through a friend programming on their home computer Basic AOL world - Visual Basic Programming Backend web ASP PHP Javascript talk Typescript talk Cardboard talk How did you get into React Native? Ruby Motion Building the Story How does React Native allow you to build the story? Components and structures Reactotron  What are you working on now? Out of sync Yarn files and much, much more!

Links: Yargs InstanbulJS  



Chain React Conference


Avengers Infinity Donate React Podcast for Dev Chat TV 

JSJ 297: Scrollytelling with Russell Goldenberg and Adam Pearce

Jan 24, 2018 42:12



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: @codenberg @adamrpearce



Dominion - Broad Game


Smoker Tiny Epic Galaxies Indiegogo Dev Chat TV


Deadlines Quest Protein Powder


Giving! Board Game - Azul


Crokinole Bust Out

MJS 044: Ben Coe

Jan 17, 2018 35:11



Charles Max Wood

Guest: Ben Coe

This week on My JavaScript Story, Charles speaks with Ben Coe. Ben is the co-founder of Currently, work for NPM, and had worked for Freshbooks where he began his professional development career.  Ben talks about his journey into programming and learning JavaScript, and the many experiences into his successful dev career. Ben shares his contributions to the Javascript community and the open source world with technologies like Yargs and InstanbulJS.

In particular, we dive pretty deep on:

How did you get into programming? Noodling around with old computers from Waterloo Geo cites How did you get into Javascript? Working at Freshbooks Backend infrastructure at NPM How did you end up working at NPM? Operations person at NPM Dev Ops What was it like being there in the early days? Automation Yargs InstanbulJS Product management at NPM C8 What is next? and much, much more!

Links: @BenjaminCoe Yargs InstanbulJS


Ben C8 tool

JSJ 296: Changes in React and the license with Azat Mardan

Jan 17, 2018 57:34



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!




Axel Rauschmayer post Prettier


Indiegogo for Dev Chat


Dev Tees Hacker News - Question on Stack Exchange and Estimates 


Heroku  El Camino Christmas


PMP  Azat - Short Lecture

MJS 043: Nick Disabato

Jan 11, 2018 28:15



Charles Max Wood

Guest: Nick Disabato

This week on My JavaScript Story, Charles speaks with Nick Disabato. Nick is a return guest how was recent on JavaScript Jabber episode 283   talking about AB testing. Also, Nick is an interaction designer from Chicago and runs a consultancy called Draft, who do research AB testing for online stores to increase conversion rate without increase ad spend. Nick talks about his current work, and his journey into programming, more on testing, and contributions to the JavaScript Community.

In particular, we dive pretty deep on:

How much programming do you do day today? Programming activities Interacting with programmers to deliver products What was your introduction to programmer Logo - Turtle Cue Basic How did that get you to where you are today? Did not want to be a mathematician Never been to art school? Being a creative person but not visual Describe the creative, design, position you are in. Wire Frames Verbal communication Web development, etc. Front facing pages How did you get into JavaScript and how much do you have to know? Where are the bottlenecks? Which framework is the best? What are you working on now? and much, much more!

Links: @nickd



Dash Pro


Visual Web Optimizer  Designing for Accessibility 

JSJ 295: Developers as Entrepreneurs with Ryan Glover

Jan 9, 2018 1:05:42



Charles Max Wood 

Cory House

Joe Eames

Aimee Knight  

Special Guests: Ryan Glover

In this episode, JavaScript Jabber panelist speak with Ryan Glover. Ryan is on JavaScript Jabber to talks about Entrepreneurship as a developer.  Ryan runs Clever Beagle in Chicago Illinois. Clever Beagle is a mentorship company that helps people build their first software Product. Ryan and the panel discuss the many roads of entrepreneurship, startup business ideas, servicing and teaching the community, how to’s, and psychological challenges, hiring, seeing your ideas through to the end, and privilege. 

In particular, we dive pretty deep on:

How do you get started as an entrepreneur?  Clever Beagle The Meteor Chef Where are people getting stuck on the builds?  Fear, unknowns Simple, but not easy  Drive and ability to step into the unknown Survival of the fittest Hire before you are already  Losing your marbles Starting on a smaller scale How do I know my idea is going to work?  Book - Brick by Brick Multiple lines of business Managing a portfolio of business  Revenue streams  Marketing  Quitter When do I quit?  6-12 months of cash before you quit Making mistakes in entrepreneurship? Be a reader and study Go out a read books!  Experiential not taught  Luck and Privilege Video - Life of Privilege Explained in a $100 Race Procrastinate on Purpose And much more! 


Clever Beagle  The Meteor Chef Brick by Brick Quitter Procrastinate on Purpose Do Thing That Don’t Scale @rglover



The Power of Moments The 50th Law

Charles Indiegogo for Dev Chat .NetRocks


Life of Privilege Explained in a $100 Race


Everybody Lies Murder on the Orient Express  


Turning Pro - Steven Pressfield series The Power of Beliefs in Business

MJS 042: Kassandra Perch

Jan 5, 2018 50:27



Charles Max Wood

Guest: Kassandra Perch

This week on My JavaScript Story, Charles speaks with Kassandra Perch. Kassandra is a return guest from JavaScript Jabber episode 197. Kassandra is a developer relations engineer for IOpipe, that does AWS Lambda monitoring and visibility in the server-less space. 

Kassandra talks about her journey into program through game sharks or programming game cartridges. Also, furthering her interest in programming was taking computer science courses in college, and getting a part-time job in the technology field during college while networking. Kassandra shares her favorite contributions to javascript and open source projects. 

In particular, we dive pretty deep on:

How did you get into programming? Game Sharks Game Cartridges Austin Meetup Group and JavaScript Working in the open source community  College courses Contributions - Nodebotanist  Interest in education  and being autistic  Child of a teacher  Serving the community  Helping people with projects  IOT - Internet of Things Building Robots Serverless  What are you working on now?  AVR Girl and much, much more!

Links: IOpipe



Sue Hitten Johnny 5  Serverless Framework 


VS Code Azure pluggin  Serverless Framework Amanda Silver interview  More VS Code Interviews on Dev Chat TV

JSJ 294: Node Security with Adam Baldwin

Jan 4, 2018 1:08:31



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!


Node Security  Lift Security @nodesecurity @liftsecurity @adam_baldwin



Key Base Have I been Pwned?


Nettie Pot


This Episode with Adam Baldwin Free the Future of Radical Price Made In America Sam Walton Sonic - VGM Album


Pych - Movie NG Conf Why We Don’t Suck

JSJ 293: Big Data with Nishant Thacker

Dec 28, 2017 34:16



Charles Max Wood

Special Guests: Nishant Thacker

In this episode, JavaScript Jabber speaks with Nishant Thacker. Nishant is the technical product manager for all things big data at Microsoft. Nishant mentions the many new technologies and announcements he is in-charge of at Microsoft.

Nishant is on the show to talk about Big Data and gives advice on how to process data and acquire deep insight of your customers. This is a great episode to understand the development of data systems that are the backbone of some marketing tools.

In particular, we dive pretty deep on:

Processing Metrics Processing into report and usable information Data lake Collecting data points Creating and maintaining the data lake in its raw form Scale up engines and limits Commodity machines and leverage Big data means to scale out Specialized engines for audio and video files How to have a cohesive report? Writing and Querying across data Storing raw data and retrieve data Data cluster What does the data box look like? And much more!

Links: @nishantthacker



Robot I


Zoom H6 Shure SM 58 Lavalier Mics

MJS 041: Austin McDaniel

Dec 28, 2017 40:10



Charles Max Wood

Guest: Austin McDaniel

This week on My JavaScript Story/My Angular Story, Charles speaks with Austin McDaniel. Austin is a return guest and was previously featured on JavaScript Jabber episode 275 . Austin talks about his journey getting into programming as an 11year old, to recently, as a web developer with more complex technologies. Austin talks about building widgets, working in Angular, JavaScript, and more in-depth web development on many different platforms. Lastly, Austin talks about his contributions to NGX Charts and speaking at a variety of developer conferences.

In particular, we dive pretty deep on: 

How did you get into programming? 11 years old Cue Basic Web developer College jobs was in web developing IE6 Building Widgets Components jquery  Web is the future How did you get into Angular? 2013, v1.2 Backbone Angular 1 & 2 NG X Charts Speaking at Conferences Augmented Reality and VR Web AR Angular Air Podcast Working as a contractor with Google and much, much more!


JavaScript Jabber episode 275 jquery Angular Air Podcast @amcdnl  



Todd Motto 


NG Conf Angular Dev Summit Angular Air Podcast

MJS 040: Kitson Kelly

Dec 22, 2017 48:13



Charles Max Wood

Guest: Kitson Kelly

This week on My JavaScript Story, Charles speaks with Kitson Kelly. Kitson is a return guest, previously on JavaScript Jabber 277. Kitson is the CTO at SitePen, and has been working and maintaining Dojo 2 for the last couple years.

Kitson talks about his journey as a developer. First, sparking his interest with old Atari games and getting his first computer in his early years.  Kitson talks about his education background and introduction to computers in high school and hang out with other in the same programming niche. Kitson talks about his challenges not having a degree in computer science, but still very successful as a developer after climbing the corporate latter.

In particular, we dive pretty deep on:

Atari Games and old first computer Hangout with the computer nerds Community college No actual formal computer science degree Tech Support and Self Taught Challenges with not degree Climbing the latter Troubles even with a degree Is a degree in computer science really needed? Experience verses degree Working with other people is important Getting into JavaScript and Dojo What kept you working in JavaScript How do you get to being CTO and SitePen? What are you most proud of with the work on Dojo Contributions Side Projects  - Dojo 2 and much, much more!

Links: Kistson Kelly



SVG  Noun Project

Charles Ruby on Rails, Jquery

JSJ 292: CosmosDB with Kirill Gavrylyuk

Dec 20, 2017 29:59



Charles Max Wood

Special Guests: Kirill Gavrylyuk

In this episode, JavaScript Jabber speaks with Kirill Gavrylyuk. Kirill is a dev manager at Cosmos DB, and works professionally with Azure CosmosDB. Kirill is on JavaScript Jabber to talk about what CosmosDB is in the world of development technology. Chuck and Kirill discuss the nuances of this database technology, how it is implemented, and how to manage and migrate data, among other great features.

In particular, we dive pretty deep on:

What is Cosmos DB? Bring your data anywhere your users are It is a website Multimodel database Works with Mongodb  Cassandra Started as database DB Throughput Key data pairs Switching from MongoDB to Azure How do you decide what goes into this? It looks like an everything database. Migration path Uses cases, problems solved Supporting APIs Does it only exist in the Cloud? An emulator is available. Subscription info. And much more!





Shared Debugging with VS Code - Keynote


USB Powered Monitor on Amazon 




MJS 039: Tyler Renelle

Dec 13, 2017 47:44



Charles Max Wood

Guest: Tyler Renelle

This week on My JavaScript Story, Charles speaks with Tyler Renelle. Tyler is a contractor and developer who has worked in many web technologies like Angular, Rails, React and much more! Tyler is a return guest, previously on Adventure in Angular and JavaScript Jabber talking Ionic and Machine learning.

Tyler has recently expanded his work beyond JavaScript and is on the show to talk his interest in AI or Artificial intelligence and Machine Learning. Furthermore, Tyler talks about his early journey as a game developer, web developer, and work with some content management systems, and more recently, his development in various technologies.

In particular, we dive pretty deep on:

Writing games out of college Studies computer science in college Did web development to pay for college working with PHP and ASP Content management Working with various technologies Working with React, is this it? Problems React has solved with web apps What is the next big innovation? View Creating Podcasts Machine Learning Specialized application of AI NLP Never use his computer science degree as a web developer You don’t study code to be a developer AI and machine learn is based on Computer Science Tensor Flow Data Skeptic - podcast Performance Graphics cards Philosophy of Consciousness The subjective experience Job displacement phenomenon and much, much more!

Links: Tensor Flow Data Skeptic - podcast



The Great Courses 


CES Email beforehand and set up an appointment  

JSJ 291: Serverless For JavaScript with Gareth McCumskey

Dec 12, 2017 54:26



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! 


@garethmcc @expatexplore



Serverless Architectures  NG-BE Conference 


Documentary on Enron Hard Thing about Hard Things 


Serverless Framework The Storm Light Achieves  Avengers: Infinity War


Building MicroServices  Skeptics Guide To The Universe Podcast Expate Explore 


Wonder -  Movie Gloom In Space - Board Game   

MJS 038: Peter Cooper

Dec 6, 2017 52:17


MJS 038: Peter Cooper


Charles Max Wood

Guest: Peter Cooper

This week on My JavaScript Story, Charles speaks with Peter Cooper. Peter was one the original panelist on Ruby Rogues and JavaScript Jabber. Currently, Peter runs several weekly new letters on JS, Ruby, Go, React, etc. Peter talks about his journey as a programmer, which started at an early age tinkering with his father’s computer at home. Peter describes the beginning as a hobby until he learned the skills to being programming on many platforms. Peter talks about how he learn Ruby and JavaScript, and in early stages of noodling or learning code. Lastly, Peter talks about his contributions to the community and giving back.

In particular, we dive pretty deep on:

How did you get into programming? Playing with computers at an early age Computers were a hobby, rather than a career builder then Being heavily into to anything can become your career, age does not matter Finding the skill or passion in programming Natural ability to see and make sense of code UseNet AJax Directness Blogging  New Letters What is the ultimate goal of the new letters? Contributions Helping host podcasts Current work? and much, much more!

Links: Cooper Press



Litmus Cheap Gaming consoles on eBay Jason Scott of


Hyper Drive J5 Dash Pro In-Ear Headphones



JSJ 290: Open Source Software with Dirk Hohndel - VMWare Chief Open Source Officer

Dec 5, 2017 1:13:59



Charles Max Wood

Aimee Knight

Corey House

Joe Eames

Special Guests: 

In this episode, JavaScript Jabber speaks with Dirk Hohndel about Open Source Software. Dirk is the Chief Open Source Officer at VMWare and has been working with open source for over 20 years. Dirk duties as the Chief Open Source Officer is to engage with the open source community and help promote the development between the community, companies, and customers.

Dirk provides historical facts about open sources to current processes. The discussion covers vision and technological advances with languages, security, and worries of using open source software, view/consumption and burnout on maintaining a project. This is a great episode to learn about more different avenues of Open Source.

In particular, we dive pretty deep on:

What does the Chief Open Source Officer do? What is really different and has stayed the same in open source? Technological advances Good engineering and looking ahead or forward 100 million lines of code running a car… This is in everything.. Production environments Security Bugs in the software and the security issues Scaling and paying attention Where should we be worried about open source Notation and data sets Write maintainable software How does VMWare think about open source? View and Consumption of open source The burnout of open source projects - how to resolve this abandonment To much work to maintain open source  - not a money issue Scaling the team workload not the money Contribution and giving back Companies who do and don’t welcome open source What to do to make a project open source? Adopting an API And much more!


@_drikhh VMWare Drikhh - everywhere!



De Contact  Dodow 


Track This Critical Thinking


Nicholas Zakas - Books 


Fun Fun Function Show


Dice Forge Concept of empathy



MJS 037: Nader Dabit

Nov 30, 2017 38:33



Charles Max Wood

Guest: Nader Dabit

This week on My JavaScript Story, Charles speaks with Nader Dabit. Nader is a familiar guest on JavaScript Jabber, talking about the state of React Native. Nader is the host of React Native Radio, another podcast on the Dev Chat TV network. Nader is a React Native trainer that does consulting and workshops in major cities in the US.

Nader dives into his background and how he began his journey as a developer. Interestingly, Nader became successful as a developer without any formal training, but, by only learning to code on the job. This is a great episode to learn specific ways to build a career without formal training, and how to present yourself for the job.

In particular, we dive pretty deep on:

React Native Radio and the React Native world React Training and pop up workshops How Nader got into programming Learning HTML and Web Development E-commerce, WordPress Nader talks about getting his first job Positioning  yourself as a developer for success Specialization Presenting yourself for the job How Nader learn to do JavaScript Learning a viable option Ionic What is it about React Native that interest you? React Native In Action - Book! React Native Elements  Sharing Content and much, much more!


React Native In Action Ideas anyone?



Audio Book- A Guide To the Good Life 


The Way of Kings Scratching your own itch!



JSJ 289: Visual Studio Code and Live Sharing with Chris Dias and PJ Meyer LIVE at Microsoft Connect 2017

Nov 29, 2017 1:03:26



Charles Max Wood

Special Guests: 

Chris Dias

PJ Meyer

In this episode, Charles is at Microsoft Connect 2017 in NYC. Charles speaks with Chris Dias and PJ Meyer about Visual Studio Code and Live Sharing. Chris and PJ explain more on their demo at Microsoft Connect on Live Collaborative Editing and Debugging. Learn more about the new features with Visual Studio Code and the efficient workflows with screen sharing, and much more.

In particular, we dive pretty deep on:

Demo of Live Collaborative Editing and Debugging explained New Features with VS Code Developer productive Debugging pain points Getting feedback New in VS Code Language support and Java Debugger Live Share Debugging from different machines and platforms Multi-Stage Docker File TypeScript compiler More on debugging with Cosmos db Debugging in the Cloud? Docker Extensions Data Bricks Updated python tools Coming up with Visual Studio Code in the next 6 months TypeScript and Refactoring Getting the word out about code -  Word of mouth? Number of people using VS Code? Envision for what VS Code is becoming? Preparing for a keynote and processes? And much more!

Links: @code







Coupon Pass for tourist in NYC  

MJS 036: Ryan Glover

Nov 23, 2017 32:43



Charles Max Wood

Guest: Ryan Glover

This week on My JavaScript Story, Charles speaks with Ryan Glover, Ryan is the COO of Clever Beagle. Clever Beagle is a company that helps people create their first products and begin selling to their customers. Clever Beagle uses platforms like  Meteor JS, Node JS, and React to provide frameworks for help build applications.

Ryan describes their business as a technical therapist for bringing ideas to fruition. Ryan shares his journey into programming by learning to build websites with Geocities. Thereafter, Ryan had began his self-taught journey with programming after learning he did not like his college major. Ryan talks about his contribution to the JS community, his website called Meteor Chef designed to help newbies learn to build with Meteor JS.

In particular, we dive pretty deep on:

Learning Geocites Becoming a Self Taught programmer Freelancing Building WordPress websites and learning JS By trade a  being a designer Building with JavaScript Learning about Meteor on Hacker News in 2013 Sacha Greif  Apollo Raw Node JS Understanding Webpack? Gearheads vs. Builders Boilerplates and much, much more!


Sacha Greif Clever Beagle @rglover



Halt and Catch Fire Sacha Greif State of JavaScript Tom Coleman


React Developer Summit JavaScript Developer Summit How To Find A Job Course  Stranger Things Season 2



JSJ 288: TypeScript with Amanda Silver

Nov 22, 2017 1:04:40


Charles Max Wood

Special Guests: 

Amanda Silver

In this episode, Charles is at Microsoft Connect 2017 in NYC. Charles speaks with Amanda Silver. Amanda is deemed the  TypeScript and future of JavaScript guru, and this year's speakers at Microsoft Connect with Visual Studio Live Share. Amanda shares what is new with TypeScript and how that is a kind of subscript to JavaScript. Amanda explains the big picture of TypeScript’s inception and where she believes the language will be most efficient and effective for JavaScript and TypeScript developers.

In particular, we dive pretty deep on:

What is new in TypeScript? Keep JavaScript and TypeScript aligned TypeScript is implemented to create larger scaled applications Integration with VS Code, etc. Building better tools for JavaScript Developers When would this be taken on by users Defaults in Visual Studio TypeScript replacing JavaScript type service TypeScript is written in TypeScript Chakra runtime Diaspora The different faces of JavaScript Optimized JavaScript runtime Languages should be created with tooling A satisfying tooling experience Foot Guns New Tokens Eco-systems and metadata Multi-phase Minimum common denominator constantly changing Collaborating on the same code Open Source and the impact How to move to open source Contributing The next thing for TypeScript The future of JavaScript And much more!





Visual Studio Live Share Instinct of learning technology


Visual Studio Live Share AI




JSJ 287: Blockchain and JS with Ari Lerner

Nov 14, 2017 56:59



Aimee Knight

AJ O’Neal

Charles Max Wood

Special Guests: 

Ari Lerner

In this episode, Java Script Jabbers speak with Ari Lerner. Ari is the author of NG Book: The Complete Book on AugularJS, Full Stack React,  and a few others.  Ari co-runs a platform that teaches about the Block Chain, Ethereum, New Contracts, etc. Ari mentions a few upcoming books on Machine Learning, Elixir, and react Native.

Ari gives a rundown on what the Block Chain is about, and an explanation of a Hash. Ari explains the value of a Hash and 6-bit strings of a Hash. Also, Ari explains the exchange of currency in Bitcoin and the rate of exchange in the Block Chain. Next Ari covers web 3.0 and much more.

In particular, we dive pretty deep on:

What is the Block Chain? A Hash? The blockchain is an order of ledger. The blockchain is a  list of transactions How is a Hash used? Sha 256 Bitcoin and Block Chains What If two machines get the same answer? Describe a transaction in a blockchain? Exchanging currency The cost of Bitcoin Web 3.0 Everything on the Block Chain is public! Where else is Block Chain is used besides bitcoin type currency Public Key. What should JS developer be doing to prepare? And much more!

Links: The History of Money @Auser



Article -  Learn Block Chain by Building One The Source Bar


Microsoft Connect - Meet up at 7pm Stranger Thing Season 2


Spice Labels and Spice Jars Marriage


Moving to NYC Learn Block Chain by Building One

JSJ 286: Creating a CSS-in-JS Library from Scratch and Emotion with Kye Hohenberger

Nov 8, 2017 50:56



Amiee Knight

Charles Max Wood

Special Guests: 

Kye Hohenberger

In this episode, JavaScript Jabbers speak with Kye Hohenberger. Kye is a developer and co-founder of Side Way. One of Kye’s most notable works and library is Emotion, a CSS and JS library.

Kye talks about what CSS and JS library is about in the context of the Emotion library system. Kye discusses why this is practical for the writing process, in comparison to other types of tools that do similar jobs. Kye explains the how this tool reduces the number of lines of code and is compact and clearer.

In particular, we dive pretty deep on:

What is a CSS and JS library? Controlling CSS with JS, what does this solve? Style bugs What kind of styling are you using vs. complex styles? Media query A more declarative style Using Sass Where do you see people using this? Class names and you can apply to anything How Emotion works! Style tags Object styles What are some of the problems you are solving React Emotion - dynamic styles How does this compare to other style components? Glamor Styles How do you test something like this? Just Glamor React with Emotion Can people use the Babel plugin Pure flag and function calls And much more!

Links: Emotion-js/emotion @TKH44



Article on Medium Antibiotics and Steroids RX Bars 


Disney Emoji Blitz  How To Get A Job  -


Styled System Face Paint Aussie Bites 

JSJ 285 : Finding a Job Even If You're Not a Senior Developer by Charles Max Wood

Nov 2, 2017 46:30



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: WeWork Expert Salary Negotiation

JSJ 284 : Helping Developers Build Healthy Bodies

Oct 26, 2017 57:01



Amiee Knight

Charles Max Wood

Special Guests: 

JC Hiatt

In this episode, JavaScript Jabbers speak with JC Hiatt. JC is a software consultant, and working a starting a company called DevLifts. DevLifts is a company that helps developers learn to live healthier lives. JC mentions this business was base on this health journey.

JC and the panel discuss output and mental clarity to get work done in a healthy fashion. Also, the benefits of eating a healthy diet, rather it is the Keto Diet or others types of healthy clean eating, there is a physical and mental benefit. JC and the panel talk about count macros, healthy food intake, and a basic outline of getting into ketosis. Also, the panel discusses finding the motivation to get into a healthy lifestyle to benefit work and your lifestyle.

In particular, we dive pretty deep on:

Mental Clarity Keto Diet Cutting out processed foods Counting Macros Getting into Ketosis Supporting brain function Motivation for a healthy lifestyle Gaining energy Getting started  - Walking, Eat Whole. Etc. Pack your own lunch Mindset change -  you are responsible for anyone else’s healthy choices Drink Water You can find a healthy balance and practice moderation Cheat day? Sugar Sitting to0 long at work Sleep - brain wave activity, caffeine, and light Naps And much more!







Gunnar blue blockers  Flux  


American Vandal Confession Tapes  Qalo

JSJ BONUS: Cloud Services and Manifold with Matthew Creager and Peter Cho

Oct 18, 2017 46:30



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!








Ryan McDermott


GitLab  AdminLTE


What You Can’t Say


Star Trek Puppeteer


Player Unknown Battle Ground  Sourdough   by Robin Sloan

JSJ 283: A/B Testing with Nick Disabato

Oct 17, 2017 42:32



Amy Knight

Charles Max Wood

Special Guests: 

Nick Disabato

In this episode, Java Script Jabbers talk with Nick Disabato. Nick is a newbie to JavaScript Jabber. Nick is the founder of Draft, an interaction design agency where he does research driven A/B testing of E-commerce business.

This is a practical episode for those who are running a business and doing marketing for the products and services. Nick talks about A/B testing for a number scenarios within the company, such as for websites, funnels, and various marketing mechanisms. Nick further goes into how this helps companies strategically increase revenue by changing things such as websites design or building funnels.

In particular, we dive pretty deep on:

Testing of changes of Copy, Websites, etc. What does it mean of changes, Tools, Framework, Plugins, etc Does it matter what tools you use? Framework that works within your stack How do make we company money Researching for the next test Testing for conversion rate to decide which design to go implement - Variant Responsibility for the designs Feature and getting pay for the service Learn more about the resources and Copy Hackers Large organization or developers, or a QA department Optimization teams Usability tests and coming up with A/B tests Expertise Why should be care? And much more!



Nick Disabato



AB Testing Manual

Wider Funnels 

Copy Hackers





Mike Gehard  Admin LTE


JSJ 282: Trails.js with Scott Wyatt

Oct 10, 2017 45:31



Joe Amies

Aimee Knight

Charles Max Wood

Cory House

Special Guests: 

Scott Wyatt

In this episode, JavaScript Jabbers talk with Scott Wyatt. Scott is the Co-founder, CTO, UEX at Cali StyleTechnologies, and is a Node developer and graphic designer.  Scott is on JavaScript Jabber to talk about Trails.js. and its simplistic build, but many useful functions.

Scott mentions that Trails.js was created by Travis Webb. Scott gives us an introduction to the Trails.js framework, as the Jabbers take apart and dive deep into the build, functions, and uses.  Scott goes into what trail packs are, and the similar or related projects. Scott talks about the ease of using trails to build with, and not ending up in frustration.

In particular, we dive pretty deep on:

Trails.js is Node Framework and lightweight or Blueprint Similar to Redux? Is it MVC like Rails You don’t need to understand it, it is all under the hood. Tuple Space Is this sole for server-side rendering? Closest projects - Sails Avoid problems like React. Not dealing with corporations Why would you want to use trails instead of other projects like Sails, rails, etc. How do you get started - Quickest way to learn Trails is to build a Trail Pack Don’t be afraid to kill you darlings Testing It Trails production ready? It is a particular type of app where Trails shines?


Travis Webb



Full Stack Developers by Brad Frost Tracking Macros


The Behavior Gap


Profit First  Keto Diet scott-wyatt/GitHub  


Never write another high Order Component


Proxy Engine

JSJ 281: CodeSponsor - Sustaining Open-Source Software through Ethical Advertising with Eric Berry

Oct 2, 2017 1:01:12





Charles Max Wood

Guest: Eric Berry

This week on Ruby Rogues, we interview our very own, Eric Berry, to talk about the sustainability of open-source projects through ethical advertising. The team talks about once open source projects like PhantomJS, Cancan, and many others.

The Rogues dive into the many different scenarios that lead open source projects astray. Problems like working on the project without compensation, be overworked, and no interest are many of the reasons these are not sustained in the long run.

However, are there solutions like donations or sponsorship to sustain such projects? And how do we go about finding funding or compensation for these open source projects? Eric describes that advertising tactics and strategies for open source. Eric talks about his work with Code Sponsor and how they support the open source community with funding.

In particular, we dive pretty deep on:

Ruby Rogues talk about burnout on projects Working on projects for free and the project falls apart Solutions behind the more popular projects like Ruby on Rails and NPM. Lemonade Stand - Sustaining and bounty sourced projects Sponsorship or company supported projects. Crowdfunding - not sustainable, but helps. Donation buttons, do they work? Who would pay developers for this? Developers taking care of other developers Advertising, and helping pay for projects to stay alive! Help developers stay funded without a spam haven. and much, much more!




Code Sponsor









Positive Experience for Women in Tech Hand Written Cards


Keto Diet - Fat Head Ruby Dev. Summit


Real Love by Greg Baer


Nate Hopkins

Open Collective


JSJ 280: Stackblitz with Eric Simons and Albert Pai

Sep 26, 2017 51:19







Special Guests: 

Eric Simmons 

Albert Pai

In this episode, JavaScript Jabbers talk to Eric Simmons and Albert Pai, the co-founder of, where their team teaches the bleeding edge of javascript technology’s various frameworks and backend. Also, with the recent creation of Stalkblitz, which is the center topic of today discussion. 

Stackblitz it an online VS Code IDE for Angular, React, and a few more others are supported. This is designed to run web pack and vs code inside your browser at blazing fast speeds. Eric and Albert dive into the many different advantages and services available by StackBlitz and

In particular, we dive pretty deep on:

Similarities  and differences to Heroku  System JS  Stacklets   Testing and creating an in-browser system file system Creating a type of VS Code experience, Working Off Line  Updating of the Stacklets Deployment tools or exporting  Hot Reloading Integrated terminals Monaco Language Services  How do you architect this implementation  The innovation of browsers Guy Bedford  Financing vs. Chipotle Burritos  Will this product in the future cost money

Links @stackblitz




Promises Series by Andrew Del Prete Crossfit 


Wholesome Meme Sara Cooper


Pivotal Tracker  MatterMost Zapier

Eric  David East 

Albert Thing Explainer

MJS 035: John-Daniel Trask

Sep 20, 2017 28:27


Tweet this Episode John-Daniel Trask is the CEO and developer at

JD and Chuck talk in this episode about learning to program as a kid, the arc of JD's career, and entrepreneurship.


154 JSJ Error Reporting and Workflow with John-Daniel Trask JSJ 263 Moving from Node.js to .NET and with John-Daniel Trask C C++ Delphi NetScape Navigator VBScript JQuery Mindscape CoffeeScript Visual Studio Scott Hanselman on Dark Matter Developers Tensorflow Stripe @traskjd


JD: Octopus Deploy JavaScript x86


The Miracle Morning Meditations App Vision Board App LootCrate Game of Thrones Journal Zelda Theme Journal

JSJ 279: ES Modules in Node Today! with John-David Dalton

Sep 19, 2017 56:54


Tweet this Episode John-David Dalton is probably best known for the Lodash library. He's currently working at Microsoft on the Edge team. He makes sure that libraries and frameworks work well in Edge.

The JavaScript Jabber panel discusses the ECMAScript module system port to Node.js. John wanted to ship the ES module system to Node.js for Lodash to increase speed and decrease the disk space that it takes up. This approach allows you to gzip the library and get it down to 90 kb.

This episode dives in detail into:

ES Modules, what they are and how they work The Node.js and NPM package delivery ecosystem Module loaders in Node.js Babel (and other compilers) versus ES Module Loader and much, much more...


Lodash ES Module Loader for Node Node CommonJS Babel TypeScript FlowType Microsoft ESM Blog Post Meteor Reify ESM Spec PhantomJS zlib module in Node AWS Lambda NPM Webpack Rollup John-David Dalton on Twitter



Trending Developer Skills The Devops Handbook


Nodevember ES Modules in Node Today (blog post) Dating is Dead


Ready Player One trailer breakdown Jim Jefferies  Show I Can't Make This Up by Kevin Hart Work with Aaron at SaltStack


Angular Dev Summit ZohoCRM Working on Cars - Therapeutic working with your hands doing physical work


TC39 Proposal for Optional Chaining ToyBox 3D Printer

MJS #034 John-David Dalton

Sep 13, 2017 48:30


Tweet this Episode MJS 034: John-David Dalton

Today’s episode is a My JavaScript Story with John-David Dalton. JD talked about his contributions to the JavaScript community like Lo-Dash, Sandboxed Native, etc. Listen to learn more about JD!

[01:15] – Introduction to JD

JD has been on JavaScript Jabber. He talked about Lo-Dash.

[02:00] – How did you get into programming?

First website

This was when JD was a junior in high school. Then, he got involved with a flight squadron for a World War 1 online game. They needed a website so he created a GeoCities website for them. That’s what got him into JavaScript. He’d have to enhance the page with mouseover effects - cursor trail, etc.


From there, JD started created a Dr. Wiley little-animated bot that would say random things in a little speech bubble with the HTML on your page like a widget. He also passed an assignment turning a web page into an English class paper. He used to spend his lunch breaks learning JavaScript and programming. He also created a little Mario game engine – Mario 1 with movable blocks that you could click and drag and Mario could jump over it. That was back with the document.layers and Netscape Navigator.


JD wanted to be an animator in animation so he started getting into macro media flash. That led him to ActionScript, which was another ECMAScript-based language. He took a break from JavaScript and did ActionScript and flash animations for a while as his day job too.

PHP and JavaScript

JD started learning PHP and they needed to create a web app that got him right back into JavaScript in 2005. That was when AJAX was coined and that’s when Prototype JS came up. He was reading AJAX blog posts back then because that was the place to find all of your JavaScript news.

JS Specification

JD remembers being really intimidated by JavaScript libraries so he started reading the JavaScript specification. It got him into a deeper understanding of why the language does what it does and realized that there’s actually a document that he could go to and look up exactly why things do what they do.

[06:45] – What was it about JavaScript?

JD has been tinkering with programming languages but what he liked about ActionScript at the time was it is so powerful. You could create games with it or you could script during animations. He eventually created a tool that was a Game Genie for flash games that you could get these decompilers that would show you the variables in the game, and then, you could use JavaScript to manipulate the variables in the flash game. He created a tool that could, for example, change your lives to infinite life, grow your character or access hidden characters that they don’t actually put in the game but they have the animations for it.

JD was led to a page on the web archive called Layer 51 or Proto 51. That was a web page that had a lot of JavaScript or ActionScript snippets. There were things for extending the built-in prototypes - adding array methods or string methods or regex methods. That was how JavaScript became appealing to him. He has been doing JavaScript for almost 20 years. PHP also made him appreciate JavaScript more because, at the time, you couldn’t have that interface.

[09:30] – Lo-Dash, Sandboxed Native, Microsoft


Eventually, JD grew to respect jQuery because I became a library author. jQuery is the example of how to create a successful library. It’s almost on 90% of the Internet. He likes that right now but before, he was a hardcore Prototype fanboy. He didn’t like new tools either. He liked augmenting prototypes but over time, he realized that augmenting prototypes wasn’t so great whenever you wanted to include other code on your page because it would have conflict and collisions. Later on, he took Prototype, forked it, and he made it faster and support more things, which is essentially what he did with Lo-Dash.

Sandboxed Native

JD created something called Sandboxed Native, which got him into talking on conferences. Sandboxed Native extends the prototypes for the built-ins for your current frame. It would import new built-ins so you got a new array constructor, a new date constructor, a new regex, or a new string. It wouldn’t collide or step on the built-ins of the current page.


After that, JD ended up transitioning to performance and benchmarking. That landed him his Microsoft job a couple years later.


John-David Dalton

JS Foundation Sonarwhal Twitter / Github: @jdalton

Charles Max Wood

Aaron Walker Interview Valet


JSJ 278 Machine Learning with Tyler Renelle

Sep 12, 2017 58:40


Tweet this Episode

Tyler Renelle is a contractor and developer who has worked in various web technologies like Node, Angular, Rails, and much more. He's also build machine learning backends in Python (Flask), Tensorflow, and Neural Networks.

The JavaScript Jabber panel dives into Machine Learning with Tyler Renelle. Specifically, they go into what is emerging in machine learning and artificial intelligence and what that means for programmers and programming jobs.

This episode dives into:

Whether machine learning will replace programming jobs Economic automation Which platforms and languages to use to get into machine learning and much, much more...


Raspberry Pi Arduino Hacker News Neural Networks (wikipedia) Deep Mind Shallow Algorithms Genetic Algorithms Crisper gene editing Wix Codeschool Codecademy Tensorflow Keras Machine Learning Guide Andrew Ng Coursera Course Python R Java Torch PyTorch Caffe Scikit learn Tensorfire DeepLearn.js The Singularity is Near by Ray Kurzweil Tensorforce Super Intelligence by Nick Bostrom



Include media Nodevember Phone cases


Data Skeptic Ready Player One


Everybody Lies


Ex Machina Philosophy of Mind: Brains, Consciousness, and Thinking Machines

JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump

Sep 12, 2017 59:19


Tweet this episode JSJ BONUS: Web Apps on Linux with Jeremy Likness and Michael Crump

In this episode Aimee Knight and Charles Max Wood discuss Microsoft's Web Apps on Linux offering with Jeremy Likness and Michael Crump.

[00:37] Michael Crump Introduction

Michael is on the developer experience team for Azure.

[00:52] Jeremy Likness Introduction

Jeremy is on the cloud developer advocacy team. Their mission is to remove friction and support developers and work with teams to build a positive experience.

The NodeJS team is headed up by John Papa. They have teams around the world and involved in many open source communities.

They're focused on building documentation and creating great experiences

[02:54] What is it about Azure that people should be getting excited about?

Azure is a huge platform. It can be overwhelming. They're trying to help you start with your problem and then see the solution as it exists on Azure.

Azure is growing to embrace the needs of developers as they solve these problems.

The experience is intended to be open and easy to use for any developer in any language on any platform. It allows you to work in whatever environment you want.

Standing up applications in production is tough. Azure provides services and facilities (and interfaces) that make it easy to manage infrastructure.

You don't have to be an operations expert.

Chuck mentions this messaging as he heard it at Microsoft Connect() last year.

It's not about bringing you to .NET. It's about making it easy where you're at.

Aimee adds that as a new-ish person in the community and Azure excites her because the portal and tutorials are easy to follow for many new programmers.

A lot of these features are available across command lines, tools, and much more.

The documentation is great. See our interview with Dan Fernandez on the Microsoft Docs.

[12:04] Web Apps on Linux

Web application as a service offering from Microsoft. I don't need to worry about the platform, just what's different about my application.

Web Apps has traditionally been on Windows. Web Apps on Linux is in preview.

You can choose the size of your infrastructure. You only get billed for what you use and can scale up.

Setting up multiple servers, managing synchronization and load balancing is a pain. Web Apps gives you a clean interface that makes this management easy.

You can also scale across multiple datacenters around the world.

[15:06] Why Linux? What's hard about Windows?

Node was originally created on Linux and many tools run nicely on Linux. It was later ported to Windows.

The toolchains and IDE's and build processes is in an ecosystem that is targeted more toward Linux than Windows.

This allows people to work in an environment that operates how they expect instead of trying to map to an underlying Windows kernel.

Aimee gives the example of trying to set up ImageMagick on Windows.

Web Apps on Linux also allows you to build integrations with your tools that let you build, test, and deploy your application automatically.

[19:12] Supported Runtimes

Web Apps on Linux supports Node, PHP, Ruby, and .NET Core.

You can run a docker container with Node up to 6.x. If you want Node 7.x and 8.x you can create your own Docker container.

Web Apps on Linux is build on Docker.

The containers also have SSH, so developers can log into the docker container and troubleshoot problems on the container.

If you can build a container, you can also run it on this service.

At certain levels, there's automatic scaling.

[22:06] Consistency between containers? Shared ownership of state or assets

It depends on how you build your app. The Docker containers have a shared storage where all the containers have access to the same data and state.

There's a system called kudu that makes this really simple.

You can also pull logs across all systems.

You can also use SSH in the browser

[25:23] What's painful about Linux and containers?

How is the application built and how does it manage state so that you can isolate issues.

If you have 20 containers, can you connect to the right one.

It's up to you to manage correlation between containers so you can find the information you need.

Knowing your traffic and understanding what to do to prepare for it with scaling and automation is sometimes more art than science.

[28:28] How should you manage state?

A lot of these systems lend themselves to running stateless, but you don't want to run mongodb on each container versus running one mongodb instance that everything attaches. You want a common place to store data for the entire app for shared state.

[30:34] CosmosDB (was DocumentDB)

It's an API equivalent to MongoDB. It's a database as a service and you can connect your containers to the CosmosDB in Azure using your portal to make it super easy.

You may need to open up some firewall rules, but it should be pretty straightforward.

[34:14] Third Party Logging Management Apps

Azure has a service that provides metrics (Application Insights) and a logging service. Many other companies use elasticsearch based solutions that solve some of these problems as well.

[36:06] How do people use Web Apps on Linux?

Companies building new applications many times want to run without managing any infrastructure. So, they use Azure Functions, and other services on Azure.

Lift and shift: Take a virtual machine and change it into a web app container that they can run in the cloud. They also move from SQL Server on a server to SQL Server on the cloud. Moving from hosted MongoDB to CosmosDB.

You can also use any images on DockerHub.

[40:06] Continuous Integration and Continuous Deployment

Whether you're using a private registry or cloud registry. When you publish a new image, it'll use a webhook to pull the custom image and deploy it. Or to run it through Continuous Integration and then deploy it without any human interaction.

Chuck mentions the case when you haven't logged into a server for a while, there's a huge backlog of system updates. Updating your container definitions makes upkeep automatic.

[42:02] Process files and workers with PM2 format

You can set up instances to run across cores with the PM2 definitions. You can also make it run various types of workers on different containers.

Why did you use PM2? What other uses are there for this kind of setup?

You can tell it which processes to start up on boot. You can also have it restart processes when a file is changed, for example, with a config file you can have it restart the processes that run off that config file.

[45:38] How to get started

Getting started with Node

Trial account with a few hundred dollars in Azure credit.

Michael's Links @mbcrump Jeremy's Links @jeremylikness github/jeremylikness Picks


Having a little bit of mindfulness while waiting on code and tests to run.


Ozark on Netflix Star Wars: Rogue One


Travelers on Netflix


Ozark filming in Woodstock, GA Autonomous Smart Desk LED light strips


Conference Call Bingo Life (Movie) Get Out (Movie)

MJS #033 Dylan Schiemann

Sep 6, 2017 36:44


MJS 033: Dylan Schiemann

Today's episode is a My JavaScript Story with Dylan Schiemann. Dylan talked about his contributions to the JavaScript community to what JavaScript is back in 2004. Listen to learn more about Dylan!

[01:10] – Introduction to Dylan Schiemann

Dylan was on episode 62 of JavaScript Jabber, which was about 4 years ago. We had him on to talk about the Dojo Toolkit.

[02:00] – How did you get into programming?

When Dylan was 7 or 8 years old, he and his father took basic programming class together. In Junior high, probably mid-1980’s, he received his first Commodore 64 computer. He picked up the Programmer’s Reference Guide, toppled on Assembly, and tried to write data to a tape drive. It got updated to a floppy drive. And then in high school, he took some Pascal classes. He learned the basics - ranging from BASIC, Pascal, and to Assembly.

[03:00] – How did you get into JavaScript?

As an undergraduate, Dylan studied Chemistry and Mathematics. He did some basic HTML and discovered the web roughly when he was a junior year in college. And then, he went to graduate school and studied Physical Chemistry at UCLA. He was studying the topology and reality of quasi-two-dimensional phone. If you imagine a bunch of beer bubbles at the top of a glass, and you spin it around really quickly, you watch how the bubbles rearrange as force is applied to it. He wanted to put his experiments on the web so he started learning this new language that had just been invented called JavaScript. So, he dropped out of graduate school a few years later. Eight years after that point in time, it was possible to show his experiments with Dojo and SVG.

[04:25] – How did you get into Dojo and the other technologies?


Right after grad school, Dylan helped start a company called SitePen. That let him really learn how JavaScript works. He started doing some consulting work. And he started working with Alex Russell, who had a project called netWindows at the time, which is a predecessor to any JavaScript framework that most people have worked with.


Dylan got together and decided to create a next generation version of the HTML toolkit, which ended up becoming Dojo back in 2004. Things that they created back then are now part of the language - asynchronous patterns such as Promises, or even modules, widgets, which led to the web components pack. Over the years, they’ve built on that and done various utilities for testing and optimizing applications.

[06:20] – Ideas that stood the test of time

A lot of the things that Dylan and his team did in Dojo were on the right path but first versions ended up iterating before they’ve met their way into the language. Other things are timing. They were there very early and but to tell people in 2005 and 2006 that you need to architect the front-end application met some confusion of why you would want to do that. According to him, they never created Dojo to say that they want to create the world’s leading framework.

[07:45] – JavaScript

Dylan no longer answers the question of, “Oh, JavaScript, you mean, Java?”

The expectations of 2004 were the hope of making something that might work in a browser. The expectation today is we are competing against every platform and trying to create the best possible software in the world, and do it in a way that’s distributable everywhere in the browser. The capabilities have grown. There are audio, video and real-time capabilities. They were ways to do those things but they were brutal and fragile. And now, we have real engineering solutions to many of those things but there are still going to be ways to do this. There were few people who are interested in this and maybe this wasn’t even their day job. But now, literally hundreds and thousands of engineers who write code in JavaScript every day.


Dylan Schiemann

JavaScript user groups JavaScript conferences SeattleJS Phoenix TypeScript Meet-up London HalfStack

Charles Max Wood

Focuster BusyCal Asana Trello

JSJ 277: Dojo 2 with Dylan Schiemann and Kitson Kelly

Sep 6, 2017 1:02:52


JSJ 277: Dojo 2 with Dylan Schiemann and Kitson Kelly

This episode of JavaScript Jabber features panelists Aimee Knight, Cory House, and Charles Max Wood. They talk with Dylan Schiemann and Kitson Kelly about Dojo 2.

[00:02:03] Introduction to Dylan Schiemann

Dylan is the CEO at Sitepen and co-founder of the Dojo Toolkit.

[00:02:22] Introduction to Kitson 

Kitson is the CTO at Sitepen and project lead for Dojo 2.

[00:02:43] Elevator Pitch for Dojo

Dojo 1 has been around forever. Started back in 2004 as a way to solve the challenge of "I want to build something cool in a browser." Promises and web components were inspired by or created by Dojo. It's been a huge influence on the web development community.

Dojo 2 is a ground up re-write with ES 2015, TypeScript and modern API's. It's a modernized framework for Enterprise applications.

[00:04:29] How is Dojo different from other frameworks?

There's a spectrum: small libraries like React with an ecosystem and community of things you add to it to Angular which is closer to the MV* framework with bi-directional data binding. Vue lands somewhere in the middle. Dojo 2 is also somewhere in the middle as well. It's written in TypeScript and has embraced the TypeScript experience.

[00:06:00] Did the Angular 2 move influence the Dojo 2 development and vice-versa?

Dojo 2 had moved to TypeScript and 2 days later Angular announced that they were going to TypeScript. Angular also moved very quickly through their BETA phase, which caused some challenges for the Angular community.

With Dojo 2, they didn't start the public discussion and BETA until they knew much better what was and wasn't going to change. They've also been talking about Dojo 2 for 6 or 7 years.

The update was held up by adoption of ES6 and other technologies.

Dojo 1 was also responsible for a lot of the low-level underpinning that Angular didn't have to innovate on. Dojo 2 was built around a mature understanding of how web applications are built now.

People doing Enterprise need a little more help and assistance from their framework. Dojo provides a much more feature rich set of capabilities.

Angular could have pushed much more of TypeScript's power through to the developer experience. Dojo much more fully adopts it.

It's also easier if all of your packages have the same version number.

Call out to Angular 4 vs Angular 2.

[00:12:44] AMD Modules

Why use AMD instead of ES6 modules?

You can use both. Dojo 2 was involved in the creation of UMD. James Burke created UMD while working on Dojo.

ES6 modules and module loading systems weren't entirely baked when Dojo 2 started to reach maturity, so they went with UMD. It's only been a few months since Safari implemented the ES6 module system. Firefox and friends are still playing catchup.

The Dojo CLI build tool uses webpack, so it's mostly invisible at this point.

So, at this point, should I be using UMD modules? or ES6? Is there an advantage to using AMD?

With TypeScript you'd use ES6 modules, but UMD modules can be loaded on the fly.

[00:16:00] Are you using Grunt?

Internally, for tasks we use Grunt. But for users, we have a CLI tool that wraps around Webpack.

For package builds and CI, Grunt is used.

[00:18:30] What is the focus on Enterprise all about?

There are a lot of different challenges and complexities to building Enterprise apps. Dojo was the first framework with internationalization, large data grids, SVG charts, etc. Dojo has spend a long time getting this right. Many other systems don't handle all the edge cases.

Internationalization in Angular 2 or 4 seems unfinished.

Most Dojo users are building for enterprises like banks and using the features that handle large amounts of data and handle those use cases better.

[00:21:05] If most application frameworks have the features you listed, is there a set of problems it excels at?

The Dojo team had a hard look at whether there was a need for their framework since many frameworks allow you to build great applications. Do we want to invest into something like this?

React has internationalization libraries. But you'll spend a lot of time deciding which library to use and how well it'll integrate with everything else. A tradeoff in decision fatigue.

In the Enterprise, development isn't sexy. It's necessary and wants to use boring but reliable technology. They like to throw bodies at a problem and that requires reliable frameworks with easily understood decision points.

Producing code right is a strong case for TypeScript and they pull that through to the end user.

Many frameworks start solving a small set of problems, become popular, and then bolt on what they need to solve everything else...

Dojo tried to make sure it had the entire package in a clear, easy to use way.

You can build great apps with most of the big frameworks out there. Dojo has been doing this for long enough that they know where to optimize for maintainability and performance.

[00:29:00] Where is Dojo's sweet spot? 

The Sitepen Blog series on picking a framework

The biggest reason for using Dojo over the years is the data grid component.

They also claim to have the best TypeScript web development experience.

You may also want a component based system with the composition hassles of React.

The composability of components where one team may write components that another uses is a big thing in Dojo where one person doesn't know the entire app you're working on.

Theming systems is another selling point for Dojo.

[00:34:10] Ending the framework wars

Try Dojo out and try out the grid component and then export it to your Angular or React app.

There are a lot of frameworks out there that do a great job for the people who use them. The focus is on how to build applications better, rather than beating out the competition.

Sitepen has build apps with Dojo 2, Angular, React, Dojo + Redux, etc.

[00:39:01] The Virtual DOM used by Dojo

2 years ago or so they were looking for a Virtual DOM library that was small and written in TypeScript. They settled on Maquette.

The more you deal with the DOM directly, the more complex your components and libraries become.

Makes things simpler for cases like server side rendering getting fleshed out in BETA 3.

It also allows you to move toward something like React Native and WebVR components that aren't coupled to the DOM.

They moved away from RxJS because they only wanted observables and shimmed in (or polyfilled) the ES-Next implementation instead of getting the rest of the RxJS  that they're not using.

[00:46:40] What's coming next?

They're finishing Dojo 2. They're polishing the system for build UI components and architecture and structuring the app. They plan to release before the end of the year.

They're also wrapping up development on the Data Grid, which only renders what shows on the screen plus a little instead of millions of rows.

[00:49:08] Testing

They've got intern.

It pulls together unit testing, functional testing, continuous integration hooks, accessibility testing, etc.

It's rewritten in TypeScript to take advantage of modern JavaScript.

The Dojo CLI uses intern as the default test framework.

Kitson build the test-extras library to help with Dojo testing with intern.

Dojo Links gitter channel



Amateur vs Professional


DevFest Florida (use code 'jsjabber')


Taking some time off AudioTechnica ATR2100 How to define your life purpose in 5 minutes


zenhub HalfStack Conference How to choose a framework series on the Sitepen Blog


Dunbar Number


MJS #032 Feross Aboukhadijeh

Aug 30, 2017 29:20


MJS 032: Feross Aboukhadijeh

Today's episode is a My JavaScript Story with Feross Aboukhadijeh. Feross talked about his contributions to the JavaScript community to the decentralized web. Listen to learn more about Mike!

[01:00] – Introduction to Feross Aboukhadijeh

Feross was on episode 155 and he talked about Webtorrent. It was 2 years ago.

[01:35] – How did you get into programming?


Feross has always been interested in computers and technology. His mom told him a story about how when he was a toddler, he was always watching people whenever they’re using technology – the television, the microwave, or the VCR. She said that he’s trying to imitate what he saw.

HTML and Web proxies

According to Feross, he became seriously interested when he was in middle school when he learned about HTML and wanted to make a personal site. In high school, there was this class that you could take. It’s a tech team where they went around and fixed teachers’ computers because they were understaffed. Some of the computers have administrator privileges turned on for the student accounts as well because some of the software that was required for certain classes needed it. The computers always had viruses on them because people would install first-person shooters and play during class time. They actually have school-wide filtering system so students can’t access certain sites. One of the categories they blocked was downloading sites. In order to even do their job, they have to figure out web proxies to get around the filters. He ended up setting up one of those on his own server.

First website

Feross’ real programming experience was PHP. It was in his junior year of high school. He bought a book in Barnes & Noble about PHP and MySQL. He wanted to build a site to host his favorite flash animations. That project was a database-driven website where people can segment their flash animations and soundboards, prank phone calls, and other internet humor. The site was called freetoflash. That was the first website that he built.

[07:10] – How did you get into JavaScript?

Feross thinks JavaScript is one of those languages that you don’t actually really bother to sit down and learn. There weren’t any good resources. According to him, He really didn’t know JavaScript until he started a company right after he graduated from college. He started taking JavaScript seriously because he was learning Node.js and realized that you can build real things from it. The start-up is called PeerCDN. They’re trying to make a content delivery network that would work in the browser using WebRTC. The idea is you would add a script tag to your website and then we would try to find other people visiting your site that already has the content that you want, you’ll fetch it from them over a peer-to-peer connection to save on your hosting build to reduce your CDN bill. That was a big Node application. It also has intense front-end component. He started learning about NPM, how you build things with microservices, and how do you deploy a JavaScript application. That was in 2013.

[09:35] – Webtorrent

Feross has been trying to transition Webtorrent into a distributed contribution model. It’s always been something that he would give out commit rights. If someone makes a good contribution, he’ll just add them to the Github for it. He recently made it into an organization on Github. He’s hoping to make it something that’s not completely dependent on him in order for it to continue existing. He’s going to be involved with it for the foreseeable future but he’s also trying to do new projects as well besides that. The good news is Webtorrent is mostly done in some sense. It works well. There are bugs. But if you use Webtorrent, especially if you use the desktop application to torrent things, it’s really polished and works nicely.


Feross Aboukhadijeh

Decentralized web Dat Project Beaker Project IPFS Secure Scuttlebutt Patchwork Brave Twitter: @WebTorrentApp Twitter: @feross

Charles Max Wood

Let’s Encrypt Digital Ocean

JSJ 276: Vue.js with Maximilian Schwarzmüller

Aug 29, 2017 50:32


JSJ 276: Vue.js with Maximilian Schwarzmüller         

This episode of JavaScript Jabber features panelists AJ O’Neal, Aimee Knight, and Charles Max Wood. They talk with special guest Maximilian Schwarzmüller about Vue.js. Tune in to find out more!

[00:02:21] Introduction to Maximilian

Maximilian lives in Germany and is a self-taught web developer. He mostly teaches web development on Udemy and his YouTube channel. Vue.js is just one topic that he teaches. He enjoys teaching and passing on information to other web developers: he believes it is the best thing you can do.

[00:03:10] What other courses do you teach?

He tries to cover basic web development topics. On Udemy Maximilian teaches Angular and generic JavaScript courses. He also teaches courses on Angular and Node.js. On his YouTube channel he teaches more back-end development and Node.js courses.

[00:04:00] Elevator Pitch for Vue.js

Vue.js is a new framework that is popular because it is similar to React but also has Angular features. It is easier to learn than React: not everything is in JavaScript and JXS is not included. It is more also flexible and has better performance than Angular 1. Vue.js is easier than Angular 2 both to learn and master. It is still a JavaScript framework, where developers build single page applications or drop in existing applications to enhance views, control parts of a page with JavaScript, get rid of jQuery, and have an easier time creating applications.

[00:05:10] What are some challenges people run into as they learn it?

If developers are brand new to Vue.js, getting started is easy. It has one thing that a lot of frameworks lack which is awesome documentation. has a comprehension guide that makes getting started simple. There is a general idea that developers still need to learn of how to structure the app, which is similar to React. Developers have to learn how to build components which is used to build the application. The build template is where everything is controlled with Vue.js. JavaScript code is used as well as template syntax.

[00:06:27] So you build the template and then tell it how each part is supposed to behave with JavaScript?

Yes. To get started use Vue instances, which are JavaScript objects, control parts of the page and it is marked by an id on an HTML element. Then, write a Vue template, which is basically HTML code where extra features can be used to easily output a variable. It makes it much easier to control via Vue instance. Then add a code, add a method which changes the property of Vue instance. It works together and is easy to build up templates and control your page with Vue.


[00:11:12] Vue’s Advantages

That depends on the application. Vue.js is easier to learn, which is an advantage when trying to get new developers. The documentation on the website is excellent, which helps when learning the language. Vue also has it’s own single team that develops it’s products, such as the Vue Router and Vue X. It has better performance, but for extremely big projects Angular 4 may be better.

[00:13:38] Does Vue have routing in it?

Vue.js has its own router. The core Vue team develops it, which is a different package that is downloaded separately. The advantage to this is that if you don’t need the router, then you don’t have it in your bundle but can easily add it. Once it is added it integrates nicely.

[00:14:16] How does the Vue router compare to the React router?

The Vue router offers the same features as the React router: nested routes, passing parameters, route guards, etc. The Vue router integrates nicely into the Vue package. It also injects into every component you have and is very simple. All that has to be done is just to execute one line of code and then the router is in the project.

[00:17:10] How often is Vue.js upgraded and how hard is it to keep up?

Vue.js only has two versions. Upgrading from Vue 1 to Vue 2 is easy. The base syntax and framework is still the same, you just need to adjust and move on. Since Vue 2 they released bigger upgrades. There so far haven’t been any issues upgrading, they have added new features, and still use the old code.

[00:19:09] What is the feature with Vue as far as adoption goes?

It is hard to predict but there are indicators that Vue.js has a good future. Vue.js probably will not overtake Angular but it is becoming important for companies in Asia, which is an important market. They have developed an Ionic version of Vue.js. There has also been an ongoing trend on GitHub.

[00:21:20] Why do we keep having new frameworks and versions?

The language of JavaScript itself is seeing rapid development. New features have been added, new web technologies developed, etc. One reason is that developers do more on the web. They want easier ways of building applications. There is no perfect framework so there has to be tradeoffs between the frameworks. There is no perfect solution for every application so need a framework for every application.

[00:23:16] What is left undone in Vue.js?

It is complete as far as something can be complete. Developers are working on service rendering to improve search engine optimization and initial rendering performance. They are also working on progress web app support.


[00:28:02] What drives the way that Vue grows?

There is simplicity in their documentation. While the documentation is simple, the framework is also easy to learn. Maximilian believes that the reason Vue.js took off is because the documentation and framework work together nicely.

[00:31:19] What is going to keep Vue around?

The support is not based on corporation, but there is an Asian company that is developing a framework that uses Vue to with their own product. Because of this, can draw an assumption that they will keep Vue.js around. Vue.js also has a strong community and core team, giving it a good support system.

[00:34:15] What are people using if they want to use Native Apps but they want to use Vue?

They are having a hard time right now. Frameworks for Quasar and Weex are in the early stages. A Vue.js app needs to be built but there are packages that are working in that direction.

[00:37:25] How do you structure your Udemy courses and what do you think of that as a whole?

Maximilian started teaching Udemy courses about one and a half years ago. He really enjoys teaching. Each course follows a similar pattern. He starts with a rough topic, researches the topic to see what is in demand, and builds a course around projects. He then fits all the things he wants to teach into the project, plans the course curriculum, records and edits the lecture videos, and then finally releases the course.

[00:39:22] What do you get the most questions about with your Vue course?

Questions are mixed. Students dive into the course quickly but then pause. Most questions are about the basics. They usually have something to do with the first few sections of the course or setup problems.



Broke Eatery  Dream Dinners


Julie Evans blog  Nodevember


The Ketogenic Diet 2 Keto Dudes Podcast 


Nuxt.js Framework  Slack “Chat with yourself” Channel Links Onsen UI for Vue Twitter Youtube Utemy Vue.js Course 

MJS #031 Mike Hostetler

Aug 23, 2017 35:08


MJS 031: Mike Hostetler

Today's episode is a My JavaScript Story with Mike Hostetler. Mike talked about his contributions to the JavaScript community. Listen to learn more about Mike!

[00:50] – Introduction to Mike Hostetler

Mike was on episode 133 which was like 2.5 years ago.

[01:45] – How did you get into programming?

First computer

Mike got their first computer when he was 5 or 6 years old. 286 IBM Clone had a command prompt that he spent several years trying to figure out how to code with it until he stumbled on a few basic books at their local public library in junior high. He began teaching himself how to code with QBasic and Borland C++. He, then, found the internet early high school and downloaded the Mosaic browser. He started coding HTML and early JavaScript, late 90’s. Then, he went off to college to get a Computer Science degree.

First job

When Mike was late high school, he decided that he knew enough coding that he was going to try to get a job. He ended up finding web development companies in the phone book and calling each one of them, trying to explain that his 16-year-old self could help them code and build websites. He ended up landing a job and was paid minimum wage to build HTML sites - a lot of 1x1 pixels transparent gifs, coding HTML by hand and notepad. Then, he ended up working for that company for his first couple of years of college as well.

[05:30] – How did you wind up doing JavaScript?

After college, the job that Mike landed was spent on learning Microsoft technologies and then half on the open-source side of learning the LAMP stack. At that time, it required hand-coding JavaScript. His next role is building a custom mapping application which was a single page application that heavily relied upon JavaScript. This was client-side object-oriented. There were no frameworks but it was enough script to build a URL that called a custom CGI to render the map. So, he immediately jumped in and started using the early JavaScript frameworks and prototypes.

The role that Mike was in next was building a touchscreen capable device. They needed custom plug-ins to provide the highlight focus effect around the button. He needed to write a plugin to do that and jQuery has just been released. So, he stripped all the prototype code, throw JQuery in there, and then, write a plug-in to navigate this interface by keyboard.

[09:20] – Contributions with JavaScript


Mike’s first participation was on the JQuery project. If you ever use the JQuery plug-ins site, the old site, that was his contribution. He ended up running infrastructure for JQuery for several years. JQuery launched his business career. He switched into an entrepreneur around 2009. Since then, he’s contributed in numerous ways through speaking, leading training, and writing articles. He was a co-author of the JQuery Cookbook.


As Node began to get more popular, Mike switched his attention to Node and found passion around the Sails.js project. It was a Node framework that made it easy to build Express-powered apps with Node and limit a lot of the convention over configuration elements of the Sails framework. That morphed into ES6 rewrite of Sails called the Trails framework. Currently, he is an organizer of the Chicago Node.js Meetup and he’s a contributor to the Trails framework.

[11:50] – JQuery challenges and experiences

jQuery 1.4

Mike and the team made community’s problems their problems so the gravity of what they were working didn’t hit them very much until jQuery 1.4. They had an online conference. They all recorded talks and they’re releasing a talk a day for jQuery that will be going to accommodate the 1.4 release. He remembered that he was setting up, managing the servers, and was doing some last-minute configuration. Then, John had tweeted that 1.4 was ready, pointing to The web server just ground to a halt as he saw the traffic come in off a tweet.

Open-source community

Mike remain friends with a lot of them. According to Mike, they were just normal people who made a choice to lean in, contribute, where those contributions ended up becoming popular. Looking forward, he said that he’s going to continue to contribute to the open-source community. He wants to help the junior developer that is learning ES6 for the first time and is solving a syntax error. From Mike’s perspective, technologies come in waves. jQuery was a wave but jQuery’s wave focuses its energy into JavaScript’s wave. Certain people catch a contribution wave. React is on the upswing. Node is in an interesting spot because they’ve been on the upswing for many years but there’s new work that could be done. He said that had a shot to be at the forefront of the wave and got to see it.


For anybody else that maybe listening, find a spot where there’s new ground that you can contribute to and just dive in and do what you can to solve a problem to make it better. You’ll catch your wave.

[21:00] – How to pick frameworks

Node frameworks

There was a Reddit thread about Node frameworks in 2017 that listed out all the possible frameworks. The classic answer is to use the right tool for the right job but Mike’s answer is: Node has grown so big that different frameworks are built to different people on the learning curve of Node. The other thing that Node has done is they have this culture of really running away from any Monolithic one-size-fits-all solution. The community of Node has made sure that they make space for an incredible diversity of solutions and frameworks.


The anti-pattern is: what is the best framework of 2017. That’s the wrong question in the Node culture. Look at your team, look at your project, what framework can you be most productive in and what framework can you contribute back into the community with? That is one of the key reasons that Node itself has remained and continued to grow in popularity.

[23:40] – Role in Sails and Trails

Mike’s not contributing to the Sails project at the moment. He has been focusing on the Trails project. He has written a couple of Trails packs or the equivalent of plug-ins, messed around with GraphQL. He is also helping answer questions in the Gitter chat – small ways.

[24:25] – Best ways to contribute

Stack Overflow

Go on to Stack Overflow. Subscribe to tags where you can answer questions. Every answer on Stack Overflow is a contribution. Go, watch, subscribe to the issue queues for the projects that you use. Just even sharing your experience with how you solve a problem, there is somebody that you could reach down to and answer their questions that take their burden off.


Get involved in the Gitter chat. Listen, watch, stand on the sidelines, and see what’s going on how the community works.

Pull request

The next step, if you see a problem, submit a pull request, listen to see what the roadmap is, and see what you can contribute.


A lot of projects need help in infrastructure in their build scripts to produce better-written code. You can document for them. If you wait for the next sexy thing to do, you’ll never get there. Be humble.


Remember that open-source is fun. If it becomes a drag, you are doing it wrong. Look for the opportunities that are aligned with what you do so it’s a fun, happy experience.

[26:45] – What are you working on now?

Raise Marketplace

Currently, Mike is taking on a new role as Director of Front-end Engineering at Raise Marketplace. It is a marketplace start-up in Chicago. His focus is rebuilding the front-end of Raise on a micro service Node.js in Go service architecture. They have also been listed to help some folks at Google in the web performance team. They are always hiring. If you are looking for a remote role for a start-up. Feel free to reach out to him on Twitter or on Raise.


Mike’s side-project now is a website called, where they help connect companies with teams of software developers and tell the stories of those software projects. A lot of developers are great at writing code but are terrible at telling the awesome things that we do. So, ModernWeb exists to tell the stories of development. The great side effect is companies want to work with you when you tell your stories. They help complete that circle. Go over to and you can contact them through the website or you can drop him an email at


Mike Hostetler

App: OmniFocus App: Sleep Cycle App: Life Cycle Zapier Twitter: @mikehostetler

Charles Max Wood

Talk: Setting up and Contributing to Open-source Projects by Kent C. Dodds JavaScript Jabber Slack  

JSJ 275: Zones in Node with Austin McDaniel

Aug 22, 2017 31:44


JSJ 275: Zones in Node with Austin McDaniel

The panel for this week on JavaScript Jabber is Cory House, Aimee Knight, and Charles Max Wood. They speak with special guest Austin McDaniel about Zones in Node. Tune in to learn more about this topic!

[00:01:11] Introduction to Austin

Austin has worked in JavaScript for the past ten years. He currently works in Angular development and is a panelist on Angular Air. He has spent most of his career doing work in front-end development but has recently begun working with back-end development. With his move to back-end work he has incorporated front-end ideas with Angular into a back-end concept.

[00:02:00] The Way it Works

NodeJS is an event loop. There is no way to scope the context of a call stack. So for example, Austin makes a Node request to a server and wants to track the life cycle of that Node request. Once deep in the scope, or deep in the code, it is not easy to get the unique id. Maybe he wants to get the user from Passport JS. Other languages – Python, Java – have a concept called thread local storage. They can associate context with the thread and throughout the life cycle of that request, he can retrieve that context.

There is a TC39 proposal for zones. A zone allows you to do what was just described. They can create new zones and associate data with them. Zones can also associate unique ids for requests and can associate the user so they can see who requested later in the stack. Zones also allow to scope and create a context. And then it allows scoping requests and capturing contacts all the way down.

[00:05:40] Zone Uses

One way Zone is being used is to capture stack traces, and associating unique ids with the requests. If there is an error, then Zone can capture a stack request and associate that back to the request that happened. Otherwise, the error would be vague.

Zones are a TC39 proposal. Because it is still a proposal people are unsure how they can use it. Zones are not a new concept. Austin first saw Zones being used back when Angular 2 was first conceived. If an event happened and they wanted to isolate a component and create a scope for it, they used Zones to do so. Not a huge fan of how it worked out (quirky). He used the same library that Angular uses in his backend. It is a specific implementation for Node. Monkey patches all of the functions and creates a scope and passes it down to your functions, which does a good job capturing the information.

[00:08:40] Is installing the library all you need to get this started?

Yes, go to npminstallzone.js and install the library. There is a middler function for kla. To fork the zone, typing zone.current. This takes the Zone you are in and creates a new isolated Zone for that fork. A name can then be created for the Zone so it can be associated back with a call stack and assigned properties. Later, any properties can be retrieved no matter what level you are at.

[00:09:50] So did you create the Zone library or did Google?

The Google team created the Zone library. It was introduced in 2014 with Angular 2. It is currently used in front-end development.

[00:10:12] Is the TC39 proposal based on the Zone library?

While Austin has a feeling that the TC39 proposal came out of the Zone library, he cannot say for sure.

[00:10:39] What stage is the proposal in right now?

Zone is in Stage Zero right now. Zone JS is the most popular version because of its forced adoption to Angular. He recommends people use the Angular version because it is the most tested as it has a high number of people using it for front-end development.

[00:11:50] Is there an easy way to copy the information from one thread to another?

Yes. The best way would probably be to manually copy the information. Forking it may also work.

[00:14:18] Is Stage Zero where someone is still looking to put it in or is it imminent?

Austin believes that since it is actually in a stage, it means it is going to happen eventually but could be wrong. He assumes that it is going to be similar to the version that is out now. Aimee read that Stage Zero is the implementation stage where developers are gathering input about the product. Austin says that this basically means, “Implementation may vary. Enter at your own risk.”

[00:16:21] If I’m using New Relic, is it using Zone JS under the hood?

Austin is unsure but there something like that has to be done if profiling is being used. There has to be a way that you insert yourself in between calls. Zone is doing that while providing context, but probably not using Zone JS. There is a similar implementation to tracing and inserting logging in between all calls and timeouts.

[00:17:22] What are the nuances? Why isn’t everybody doing this?

Zone is still new in the JavaScript world, meaning everyone has a ton of ideas about what should be done. It can be frustrating to work with Zone in front-end development because it has to be manually learned. But in terms of implementation, only trying to create a context. Austin recommends Zone if people want to create direct contacts. The exception would be 100 lines of Zone traces because they can get difficult.

Another issue Austin has is Node’s native basic weight. Weight hooks are still up in the air. The team is currently waiting on the Node JS community to provide additional information so that they can finish. Context can get lost sometimes if the wrong language is used. He is using Typescript and doesn’t have that problem because it is straightforward.

[00:21:44:] Does this affect your ability to test your software at all?

No, there have not been any issues with testing. One thing to accommodate for is if you are expecting certain contexts to be present you have to mock for those in the tests. After that happens, the tests should have no problems.



Apple AirPods


Blackmill Understanding Zones


Classical Reading Playlist on Amazon Building stairs for his dad Angular Dev Summit 


NGRX Library Redux  Links Twitter GitHub

MJS 030: Mike North

Aug 16, 2017 33:02


MJS 030: Mike North

This episode is a My JavaScript Story featuring Mike North. Tune in to learn more about how Mike started his journey as a developer in JavaScript!

[00:01:15] Introduction to Mike

Mike has a Frontend Masters Series for Ember 2 and has two other courses that help developers stand out from the software perspective.

[00:02:45] How did you get into programming?

Mike describes that he has taken a non-linear path to get to where he is now. He started programming as a teenager. He was laying dry wall with a construction company when he was 15 or 16. At the end of the job, he built a training app for the company in order to decrease their paperwork. Mike states that the programming work he does day-to-day he only learned two or three years ago.

[00:04:13] Is that due to things changing so quickly?

Mike’s role and passion keeps evolving. People pick what is important to them. A goal of his is to always stay learning; he enjoys having a deep understanding of topics. He enjoys using brand new skills and calls himself a “perpetual beginner.” Mike is always talking about something that he has just figured out how to do.

[00:05:20] How do you approach keeping current?

Mike thinks that it is impossible to keep up with everything. It is a full time job to keep track of everything. Developers don’t need to spend so much time going through information. He goes to teams once every quarter and helps them absorb the information in a distilled way so they do not have to filter through stuff such as what frameworks are worth paying attention to. This condenses the information and frees them from having to learn everything. Instead, they are able to focus on their product.

[00:08:27] How did you get into JavaScript and web development?

When Mike entered college, he was going into mechanical engineering and did not want to write code. He thought it was boring. When he began getting into code, it was because he could use it to solve real world problems. When he first started, he wrote engineering simulation code for Formula One racecars. When the iPhone came out, it gave him clarity that he wanted to work with that. He began to work with jQuery Mobile. He liked doing this enough that he ran a consultancy at night. He ran projects that he had no previous experience with in order to learn skills that would help him make JavaScript his full-time job.

[00:13:29] Where does Ember fit in with all of this?

When Mike started working at Yahoo, he became very familiar with Ember. Ember allowed employees to treat engineers as resources towards the larger goal of building and merging all apps together instead of having separate pockets of different technology everywhere. There were only a few Ember experts at the time, so Mike took advantage and spent a lot of time to gain expertise with the framework.

[00:16:50] What kinds of contributions do you feel like you’ve made to the JavaScript community?

Mike believes the way he has contributed to the community has evolved over time. In the past, he wrote libraries and worked with issues in the framework itself. The impact he has now is representing newcomers to a technology. He does workshops at conferences. He loves teaching and enabling people.

[00:19:07] How do you structure the learning to make it that it is approachable for people? How do you address both audiences?

As far as newcomers to programming, there is an alarming statistic of companies hiring computer programmers at 400% of the rate at which CS majors can graduate. The demand for software engineers exceeds the ability to educate conventionality. This means companies have to take people seriously that were educated via boot camps. There is a lot of material for new beginners. For people who are established programmers but new to specific technologies, there is a huge gap of material. Video courses, tutorials, and books should be made more accessible for these people. Mike also believes it is the job of a senior engineer to spend time teaching people.

Books, tutorials, and trainings that scrape the surface disappoint Mike. This has informed the techniques he uses to teach during his workshops. Students spend 50% of their time solving problems. His students are given code tests and spend time working how to solve problems. It takes a long time to build his curriculum but it is his main focus right now.



TypeScript Deep Dive by Basarat Ali Syed Proposal for Async Iteration


Visual Studio Code Frontend Masters  Links Twitter

JSJ 274: Amazon Voice Services and Echo Skills with Terrance Smith

Aug 15, 2017 49:37


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 Travis Teague is the guy in charge in there.


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

MJS #029 Matt Creager

Aug 9, 2017 45:26


MJS 029: Matt Creager

On this episode, we have another My JavaScript Story, our guest is Matt Creager. Matt works for Manifold. He's here with us today to tell us his story. Stay tuned!

[01:00] – Introduction to Matt Creager

Matt works for an interesting company called Manifold. They sponsored the show.

[01:35] – How did you get into programming?

Before Matt fell in love with programming, he was in love with technology. They bought his first computer. It was a Gateway 2000 and he got access to the internet around the same time. He spent all of his time on that computer because they were moving around so much. That became the way that he stayed in touch with people. He remembers taking it apart and formatting the hard drive accidentally.

His uncle has been in the IT industry since he was a kid too. Matt was always associating him with spending time with his computer programming, a role model, and stabilizer in his life. He was switching tapes. And then, his cousin decided that he was going to start scripting his character’s actions in a game that they were playing. And now, looking back, it was some combination of Lua and C++. He started taking his cousin’s scripts apart to automate his own character in the game. He was 13 or 14.

The first programming book that he bought was a result of not being able to figure out how to get his character what it wants to do. It was one of the C++ bibles. And then, he became active in the forums around the scripting language. He was sharing the scripts and he started to realize that he can harvest stuff in the game and sell it for real cash.

Matt never considered himself technical and never considered programming a career. He was just translating CPU and RAM for people who were shopping for computers. And then, he wanted people to measure theirs so he built tools that took the data they had in an office and turn them into reports. When the manager started using that, it became a nationwide program and suddenly, he was on the map. He was leading a team.

When Blackberry started a technical interview, he realized that he has the answers to these questions. Initially, he was just a Technical Issues Manager. He had a Data Science team and that team was responsible for identifying and prioritizing issues. They were using Node 0.4, very early version of Node. And then, he discovered Angular and dived head first to the Angular community.

[13:10] – BlackBerry got Matt to JavaScript

Matt looked at Node because he was trying to figure out how he could do real time analytics. He wanted these dashboards that data scientists are looking at. That was the stepping stone into JavaScript.

[15:30] – Hackathon

On the side, a couple of local companies started to run hackathons. Matt was going to hackathons all the time. Then, he ended up of hopping from BlackBerry to becoming a full time front-end developer at a start-up.

Matt was talking with one of the organizers at LA Hacks. She was telling him that the reason why people are going to these hackathons is because they want to win and they want to put that fact on their resumes. In his day, that was not hackathons were like. The prizes can act as a negative incentive. They really work hard for the prizes. Sometimes they actually end up becoming more creative as a result because they know they need to use this specific combination of API’s.

[18:45] – Contributions to JavaScript community

When Matt joined GoInstant, it was very early days of RTC. Web sockets are new at that point. You’re probably more familiar with Firebase. In the early days, GoInstant and Firebase are competing for the same developers. They’re working on the same problems. The tools that they are building were real time synchronization between the state you have on the client and the state you have on the server. A lot of those that they build, open-source tools, they went with GoInstant to Salesforce. But they inspired the libraries and a lot of it is probably on the same code base that you now see in libraries that pretty much does the same things with Firebase.

And then, most recently, Matt and the team built Torus. They realized that if they are going to be building smaller applications, going to start to use more cloud services, more services tailored towards developers, and going to manage a lot more credential, a lot of credentials that need to be secured and shared with the teammates, they needed to take those credentials and put them on applications wherever they are running, whether that’s a Docker container or Heroku. That’s his most recent open-source project.

[20:50] – What are you working on now?

Manifold is their latest project. They’re trying to build a market place for developer services. It’s been 3 months. They moved from Torus to building Manifold earlier this year. The official launch hasn’t happened yet. That’s hopefully to come earlier this year – September. If it’s something that you want to try out and experiment with, there is a coupon for My JS. Give it a try before they launch a $25 credit that they can use to provision a logging instance, monitoring, or database. You can use it with any type of services that you might need to build your app.


Matt Creager Scaphold GraphQL Elixir Twitter, Github: @matt_creager

Charles Max Wood

AWS Lambda Zapier Heroku Udemy course for Ionic Framework

JSJ 273: Live to Code, Don't Code to Live with 2 Frugal Dudes Sean Merron and Kevin Griffin

Aug 8, 2017 68:49


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.



Random Walk Down Wall Street by Burton Malkiel  Rich Dad, Poor Dad by Robert Kiyosaki  Ego is the Enemy by Ryan Holiday


Hacker News Thread – How to Not Bring Emotions Home With You Phantogram 


Money Master the Game by Tony Robbins  ELPs (Endorsed Local Providers) Dave Ramsey


The Little Book of Common Sense Investing by John Bogle Mr. Money Mustache Blog


Unshakable by Tony Robbins YNABS  The Millionaire Next Door by Thomas Stanley Links 2 Frugal Dudes Twitter Sean's Twitter Kevin's Twitter 2 Frugal Dudes Podcast

MJS #028 Zach Kessin

Aug 2, 2017 34:48


MJS 028 Zach Kessin

In this episode we have another JavaScript Story, this time our guest is Zach Kessin. Zach is a Developer and consultant. On the server side he works with Erlang and Elixir. On the front end he works on Elm. He also also written a few books for O’Reilly and a video course for Manning available sometime in the fall. He was a guest on episode 57 and is here with us today to tell us his story. Stay tuned!

[2:48] How did you get into programming.

Zack tells the story about how when he was 7 he asked his mother for a computer. She agreed that if he paid for half of it somehow, then she would help him get it. He Gathered his half by calling relatives and gathering funds. His mom taught him Basic and Logo. He also learned Pascal. While in University he picked up the book Structure and Interpretation of Computer Programs and loved it. He talks about remembering writing a HTML forum but not knowing how to submit entries. After college he started working.

[4:38] Resources then vs now.

Charles adds that if you’re tenacious enough to call your family members to find funding to buy a computer to learn, then you probably have the drive it takes to be a programmer. Charles and Zack talk about how in the 80s it was rare to have access to a computer, and now homes have multiple computers throughout. The resources are more readily available now with the internet. If you’re looking to get into development, there are plenty of great resources.

[7:45] How did you get into JavaScript and Erlang?

Zach starts explaining by telling how he get into JavaScript before the internet really existed. His first JavaScript program exposure was a loan calculator at a bank. Early on the only thing you could do was validate forms, but over time it grew. He started working for a company writing php. He felt like it wasn’t as functional or elegant as he was hoping for. He found various languages and landed on Erlang. Erland was designed to work for programming telephone switches. Due to phone services nature, It handles high scale, high reliability, has to be upgraded on the fly, etc. Zach talks about how server programming looks very similar to phone line programming. Zach adds that a few years ago he wanted work on some front end and after looking around finally he learned about Elm. He says that he is always looking for what’s new and useful.

[14:26] Programming Languages Change the Way We Think

Charles points out that it’s very interesting out about how functional programming has played out. He mentions that many JavaScript programmers use functional style programming to help with speed or efficiency. He adds that a fully functional programming language is very interesting and could be helpful. Zach talks about how learning new languages helps adjust the way we think.

[16:45] How have you contributed to the development community?

Charles starts off with mentioning Zach’s podcast that was called Mostly Erlang. Zach adds that he has wrote two books for O’ Reilly, one on HTML5 and Erlang. He has done some blogging and is creating a video course called Startup Elm. He mentions that he spends most of his time teaching. He admires people who write libraries and sustains them over years, but it isn’t something he sees himself getting into. He adds that having the libraries are useless unless you have someone to communicate about it and teach it. Charles mentions that contributions come in various ways and the community needs those sort of teachers. Zach mentions that he often speaks at conferences and meet ups. Public speaking can be a great way to progress your career. Charles brings up the idea of “Sweeping the dojo floor”. He was introduced to this idea by Dave Hoover. Sweeping the dojo floor means that you’ve got enough experience to talk about the topic, but maybe not fully contribute and so you do things like document code, or write articles and outreach for the topic. Talks can lead to work. You can easily find research papers and do talks on that. Zach adds that sometimes in a community, you see the same speakers over and over and new speakers are needed. Zach also mentions that there are plenty of opportunities to do talks in something other than english.

[26:36] What are you working on now?

Zach talks about the list of things he is working on. Starting with Startup Elm and it’s live course that will be happening in October. He is also working on a SaSS product for Instagram marketers called SquareTarget. He adds that he has a day job as well.

Picks Zach

Intrepid Large Format Camera Kickstarter


Toast Masters

JSJ 272: Functional Programming and ClojureScript with Eric Normand

Aug 1, 2017 48:24


JSJ 272: Functional Programming and ClojureScript with Eric Normand

This episode of JavaScript Jabber features panelists Aimee Knight and Charles Max Wood. Special guest Eric Normand is here to talk about functional programming and ClojureScript. Tune in to learn more!

[00:1:14] Introduction to Eric Normand

Eric works for The main target market for his company is those people who want to transition into functional programming from their current job. He offers them support, shows them where to find jobs, and gives them the skills they need to do well.

[00:02:22] Address that quickly

Functional programming is used at big companies such as Wal-Mart, Amazon, EBay, Paypal, and banks. They all have Clojure but it is not used at the scale of Java or Ruby.

So yes, people are using it and it is influencing the mainstream programming industry.

[00:3:48] How do you build an application?

A common question Eric gets is, “How do I structure my application?” People are used to using frameworks. Most start from an existing app. People want a process to figure out how to take a set of features and turn it into code. Most that get into functional programming have development experience. The attitude in functional programming is that they do not want a framework. Clojure needs to be more beginner friendly. His talk is a four-step process on how to turn into code.

[00:05:56] Can you expand on that a little?

There are four steps to the process of structuring an application.

Develop a metaphor for what you are trying to do. Developing the first implementation. How would you build it if you didn’t have code? Develop the operations. What are their properties? Example: will have to sort records chronological. Develop relationships between the operations. Run tests and refactor the program. Once you have that, you can write the prototype.

[00:13:13] Why can’t you always make the code better?

Rules can’t be refactored into new concepts. They have to be thrown away and started completely over. The most important step is to think before beginning to write code. It may be the hardest part of the process, but it will make the implementation easier.

[00:17:20] What are your thoughts on when people take it too far and it makes the code harder to read?

He personally has written many bad abstractions. Writing bad things is how you get better as a programmer. The ones that go too far are the ones that don’t have any basis or are making something new up. They are trying to be too big and use no math to back up their code.

[00:20:05] Is the hammock time when you decide if you want to make something abstract or should you wait until you see patterns develop?

He thinks people should think about it before, although always be making experiments that do not touch production.

[00:23:33] Is there a trade off between using ClojureScript and functional JavaScript?

In terms of functional programming in JavaScript don’t have some of the niceties that there are in Clojure script. Clojure Script has a large standard library. JavaScript is not as well polished for functional programming; it is a lot of work to do functional programming it and not as much support.

[00:27:00:] Dave Thomas believes that the future of software is functional programming. Do you agree?

Eric thinks that it seems optimistic. He doesn’t see functional programming take over the world but does think that it has a lot to teach. The main reason to learn functional programming is to have more tools in your toolbox.

[00:31:40] If this is a better way to solve these problems, why aren’t people using it?

There is a prejudice against functional programming. When Eric was first getting into it, people would ask why he was wasting his time. Believes that people are jaded. Functional programming feels foreign because people are used to a familiar way of programming; they usually start with a language and get comfortable.

[00:40:58] If people want to get started with it, is there an easy way in?

Lodash is great to start replacing for loops. It will clean up code. There are other languages that compile to JavaScript. For example, Elm is getting a lot of attention right now. It is a Haskell like syntax. If you want more of a heavyweight language, use TypeScript or PureScript. ClojureScript is into live programming. You are able to type, save, and see results of the code immediately on the screen in front of you.



The Hidden Cost of Abstraction  What Functional Language Should I Learn 


Steven King, On Writing  Youtube Channel: Tested  


Ionic Framework Links Purely Functional TV  Blog  Building Composable Abstractions 

MJS #027 Chris Anderson

Jul 26, 2017 31:31


MJS 027 Chris Anderson

This episode is a My JavaScript Story with guest Chris Anderson. Chris works at Microsoft, specifically on Azure Functions and WebJobs SDK. Hear how he got his start, how he has contributed to the community, as well as a bit about what it’s like being a Program Manager for Microsoft. 

[00:01:50] ]How did you get into programming?

In college Chris was an aerospace engineer. His first taste of working with code was at an internship at Lockheed Martin. Most of his daily work was with spread sheets so he learned Visual Basic to help handle that. He found himself interested in writing code more so he took an intro in C summer course and then things snowballed. When he finished that semester, he talked to advisor about switching to Computer Science. Immediately landed into JavaScript. Chris talks about having a ‘clicking moment’ while in a topics class. A classmate was talking about NodeJS and so he tried it out and hasn’t stopped using it since.

[00:03:36] What about programing appealed to you?

Chris says that programming made him have a sense of having superpowers. In aerospace he learned how planes worked and that was fun, but programming had an immediately feedback on what he was working on. He adds that it made sense in the way that programming is a universal toolset for no matter what field you’re in. Charles adds that he dug into coding after working in tech support and needing it.

[00:05:22] Have you worked with JavaScript before learning about Node?

Chris’ first real coding experience was with his internship. He taught himself JavaScript on the job and after a few months found himself really liking it. He felt like JavaScript felt more natural and expressive. Javascript empowered him to work on the client side and the server side and he felt empowered to do full stack.

[00:06:55] Was this before Microsoft?

Microsoft’s hiring process for college graduates you apply the year you graduate and go through a handful of interviews. He got hired into a team working on databases, working in SQL server. He wanted to work in developer tools and learned how to use power shell and SQL works and how powerful it was. He started moving back and pushing NodeJS onto SQL. There was a driver for SQL purely in JavaScript called TDS and he would make pull requests and contributed to that. He talks about searching internally looking for other work and finding a mobile services team that needed a NodeJS person so he started there. Later he started WebJobs and then later Functions, as an effort to make NodeJS technology work with a .Net technology called Webjobs SDK. Functions exists because he wanted to add a NodeJS to a .Net product.

[00:11:07] ] Did you find pushing NodeJS into a well developed language ecosystem risky?

Chris talks about helping push adoption of .Net and creating prototype ideas, and it sparking from that. His goal was to make customers more productive.

[00:12:02] Having fun at work

Chris talks about the team culture being fun at times. Sometimes as a developer you get buffered by Project Managers, but in the case developers spend a lot of time talking to customers. They are excited so they have loads of interactions, helping develop diverse ideas. Charles adds that the preconception to how the environment feels in Microsoft tends to be negative but from talking to people who work there, things seem to be more open than expected. Chris points to open source concepts that really makes working with Microsoft great.

[14:40] What does a Program Manager do on a team?

Chris talks about how his job is to explore the issues and talk to customers and then prioritize how to make things better. He talks about doing whatever he can to make the product successful with the customers, including building a prototype of an idea, taking a sort of position similar to an entrepreneur. Charles adds that it’s refreshing to find that someone in the Program Manager also being technical sufficient and hands on. Chris talks about how teams are built naturally and pulled together with a group of people who love what they are doing.

[00:16:52] Does the Azure Functions team use Azure Functions to make Azure Functions work?

Chris talks about not using Azure functions under the covers, for the most part it’s built on top of the app service technology stack like web apps and mobile apps. Things that power that is what powers the Azure functions, like Angular. A lot of the engineering pieces are on top of that. They do use Azure for various Microsoft internal things. All of the tests they build are functions to test functions.

[00:18:24] How did you and your team come to use Angular?

Chris was working on the prototype for Azure Functions. Amed had experience with working on front end applications and he wanted to try out Angular 2 even though it was still in beta. He found that had the right amount of stuff out of the box. Additionally it had typescript which meshed well. They tend to pick things that people on the team know well and not as much as trying to stay tied into Microsoft supported systems. Chris talks about doing one or two major refactoring.

How much Angular have you worked on yourself?

Amed works the most on Angular, Chris’ job as Program Manager puts in him in a place where his commits don’t go into production, but he will often write prototypes. He played around a lot with the Monaco editor and adding features for that. As far as outside of that, he has written a few tutorials for using Functions plus Angular as well as written his wedding website with Angular.

[00:22:33] What other extracurricular projects have you worked on?

Chris talks about doing a lot of side projects for a while. One working with He also built a middleware project where you can write middleware into Functions. Plenty of little projects he puts on GitHub and never finishes. Chris talks about wishing he could switch hats between being the Program Manager and a developer.

[00:23:42] Is there anything in particular you feel like you’ve contributed to Angular?

Chris talks about improving by putting in loads of pull requests for tons of JavaScript libraries and a few NodeJS libraries. He would like to be more involved in the start of those processes. Chris says he hopes to maybe be involved in the next Node version update. He really likes the Node community.

Picks Chris

Mountain Dew Pitch Black
The Expanse Series on SciFi
Application Insights


Wheel of Time
Dog Company
Data Dog



JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen

Jul 25, 2017 53:17


JSJ 271: SharePoint Extensions in JavaScript with Mike Ammerlaan and Vesa Juvonen

This episode is a live episode from Microsoft Build where AJ O'Neal and Charles Max Wood interview Mike Ammerlaan and Vesa Juvonent about building extensions for SharePoint with JavaScript.

[00:01:28] Mike Ammerlaan introduction
Mike has worked at Microsoft for a long time on multiple Microsoft products and projects. He's currently on the Office Ecosystem Marketing Team.

[00:01:52] Vesa Juvonen introduction
Ves a is Senior Program Manager for the SharePoint Splat team. He's been with Microsoft for about 11 years and manages the community and documentation for the SharePoint framework.

[00:02:18] What is the SharePoint Framework?
This is how you write SharePoint extensions with JavaScript. SharePoint has changed. It now works with common modern development tools and web development techniques. SharePoint consolodates the extension effort

[00:03:32] What is SharePoint?
File sharing, team sites, communication points for teams. Part of Office 365. You use Web Parts to add functionality to SharePoint. Web Parts provide functionality like widgets and are scoped to a team, group, or set of users. It's usually hosted on premises, but you can also use it with Office 365 as a hosted solution.

[00:05:56] What extensions can you build for SharePoint?
You can build widgets for your front page or intranet. You can also add user management or data management or document management.


Dashboards Mini Applications Scheduling and Time Tracking Document Storage Source code repositories

[00:07:39] What is WebDAV and how does it relate?
WebDAV is a protocol for accessing documents and SharePoint supports it among other protocols for managing documents.

[00:08:36] Do I have to build front-end and back-end components to get full functionality?
You can build the front-end UI with Angular and other frameworks. And then build a service in Azure on the backend. The backend systems can then access Line of Business systems or other data systems.

It really does take multiple skill sets to build extensions for SharePoint.

[00:11:10] SharePoint on Mobile
There is a mobile web app and the Web Parts work through the mobile application. You can also use any browser to connect to the application.

[00:12:08] Building extensions with standard Angular or React component libraries
There are standard Yeoman templates. You can also pull in the components through React or Angular just like what Microsoft does.

Newer Angular versions are designed for Single Page Apps and SharePoint isn't necessarily set up to work that way. The Web Parts are isolated from each other and Angular requires some workarounds.

[00:14:30] Getting around sandboxing
Google and Microsoft are talking to each other to see how to work around this when there are multiple sandboxed applications that can't talk to each other in very simple ways.

[00:15:39] Application library or naming collisions if my UI uses different versions or clobber page wide settings
There are guides for a lot of this. React does a bunch of the isolation work.

Addons are iframed in and an API token is given to grant access to the data and APIs.

Microsoft also reviews and approves plugins.

[00:18:30] How do you get started and make money at this?
Look at the SharePoint store. You can build things through websites and pages and offer the plugins through the store.

You can request a SharePoint tenant installation from the Microsoft Dev Tools for free. Then you can build into the tenant site. The rest of the tools are available on npm.

SharePoint Developer Tools

[00:22:13] Automated testing for SharePoint extensions
Unit testing is built in for JavaScript. Testing the UI's require you to sign into Office 365. There are people doing it, though.

[00:22:54] Building internal-only extensions
SharePoint is an enterprise tool, so a lot of enterprises may not want to install extensions from the store. You can definitely build and install private plugins for SharePoint setups. They also have their own backend systems that will require custom development.

[00:25:50] Office 365, SharePoint, and OneDrive
Office 365 is used by people across many different sized organizations and SharePoint is much more enterprise. Office 365 tools store files and information in SharePoint.

What about OneDrive versus Sharepoint? OneDrive is focused for one person. SharePoint is focused around a team. But they have the same APIs and use the same technology stack.

[00:29:05] The history and future of SharePoint
It started out on premises and has moved to the cloud. The SharePoint team is working to keep it available and useful in the modern cloud based era.

[00:30:25] What does the API footprint look like?
It spans modifying lists, data objects, attributes, items in a list, put Web Parts on a page, modify the experience, and manage and modify access, users, and documents. SharePoint is a way of building a way of conveying information.

SharePoint is layers of data and scopes.

[00:35:26] Tutorials and Open Source
The Sharepoint framework is not open source yet, but they're working on that. They also need to open source the Yeoman templates.
Open source samples are available at


Charles Max Wood

BlueTick Zapier ScheduleOnce Advice: Take the time to go talk to people.
Vesa adds that you should go to a session that's on something completely outside your experience.

AJ O'Neal

The Circle Spontaneity/Happiness: AJ tells a story about a woman he saw running through sprinklers. Oh the places you'll go by Dr. Seuss: AJ talks about a journal entry he read at a yard sale.

Mike Ammerlaan

Super hot VR on Oculus Rift

Vesa Juvonen


A big thanks to Microsoft, DotNetRocks, and Build!

MJS #026 Chris Coyier

Jul 19, 2017 42:51


MJS 026 Chris Coyier

This week’s episode is a My JavaScript Story with Chris Coyier. He is from the ShopTalk Show and CodePen. Listen to learn more about Chris!

How did you get started programming?
Chris has an atypical story. good time in life. He is from a small town in Madison, Wisconsin and had a very privileged upbringing. He went to a nice high school that had a programming elective in his high school. He took a class that taught Turbo Pascal and loved it. He had a lot of fun doing it and became set on doing it in college.

How do you go from that to professional web developer?

Have to give up on it first. He almost got a degree in university management computer systems, which was more management focused than programming focused. He tried and gave up on Java. He then tried graphic design and ended up getting a degree in that. He got into digital prepress at print jobs where he designed documents. It was fun but it was not as fun as being a “real programmer” would be in his mind. He then got a job at an agency doing web developer work. During this time JavaScript was not on his radar.

How do you get from front-end work to building something like CodePen and starting a front-end podcast?

He has made his career his hobby. He loves doing this stuff. When he was building websites for the first time he started CSS tricks. It became really fun. He grew it over ten years. Because it’s his career and hobby he got better over time. All of his time was spent helping friends, writing, or at conferences. He then decided to build CodePen with some of his friends.

What are you working on these days?

Chris wants to be careful not to be working on too many things at once. His top priority is CodePen, which he says is hard to keep up with what developers want there. The second priority is CSS tricks. He likes to publish quality articles for people to read. This third priority is his podcast.

What’s the thing you’ve done that you’re the proudest of?

CodePen is what has been so continually rewarding. This last month he is all money accounted for. He is really proud of CodePen because they made a company from nothing. He and his coworkers have made the podcast over a decade of growing an audience and it feels entrepreneurial.

Charles’ most proud thing is the decision to go full time with his podcast for the last year and a half.



CodePen ShopTalk Alien Covenant

Charles: React Native JS Dev Summit


GitHub Twitter

JSJ 270 The Complete Software Developers Career Guide with John Sonmez

Jul 18, 2017 60:43


JSJ 270 The Complete Software Developers Career Guide with John Sonmez

This episode features a panel of Joe Eames, AJ O’Neal, as well as host Charles Maxwell. Special guest John Sonmez runs the website that is focused on personal development for software developers. He works on career development and improving the non-technical life aspects of software developers. Today’s episode focuses on John’s new book The Complete Software Developers Career Guide.

Did the book start out being 700 pages?

No. My goal was 200,000 words. During the editing process a lot of questions came up, so pages were added. There were side sections called “Hey John” to answer questions that added 150 pages.

Is this book aimed at beginners?

It should be valuable for three types of software developers: beginner, intermediate, and senior developers looking to advance their career. The book is broken up into five sections, which build upon each other. These sections are: - How to get started as a software developer - How to get a job and negotiate salary - The technical skills needed to know to be a software developer - How to work as a software developer - How to advance in career

Is it more a reference book, not intended to read front to back?

The book could be read either way. It is written in small chapters. Most people will read it start to finish, but it is written so that you can pick what you’re interested in and each chapter still makes sense by itself.

Where did you come up with the idea for the book?

It was a combination of things. At the time I wanted new blog posts, a new product, and a new book. So I thought, “What if I wrote a book that could release chapters as blog posts and could be a product later on?” I also wanted to capture everything I learned about software development and put it on paper so that didn’t lose it.

What did people feel like they were missing (from Soft Skills) that you made sure went into this book?

All the questions that people would ask were about career advice. People would ask things regarding: - How do I learn programming? - What programming language should I learn? - Problems with co-workers and boss - Dress code

What do you think is the most practical advice from the book for someone just getting started?

John thinks that the most important thing to tell people is to come up with a plan on how you’re going to become educated in software development. And then to decide what you’re going to pursue. People need to define what they want to be. After that is done, go backwards and come up with a plan in order to get there. If you set a plan, you’ll learn faster and become a valuable asset to a team. Charles agrees that this is how to stay current in the job force.

What skills do you actually need to have as a developer?

Section 3 of the book answers this question. There was some frustration when beginning as a software developer, so put this list together in the book. - Programming language that you know - Source control understanding - Basic testing - Continuous integration and build systems - What kinds of development (web, mobile, back end) - Databases - Sequel

Were any of those surprises to you?

Maybe DevOps because today’s software developers need to, but I didn’t need to starting out. We weren’t involved in production. Today’s software developers need to understand it because they will be involved in those steps.

What do you think is the importance of learning build tools and frameworks, etc. verses learning the basics?

Build tools and frameworks need to be understood in order to understand how your piece fits into the bigger picture. It is important to understand as much as you can of what’s out there. The basics aren’t going to change so you should have an in depth knowledge of them. Problems will always be solved the same way. John wants people to have as few “unknown unknowns” as possible. That way they won’t be lost and can focus on more timeless things.

What do you think about the virtues of self-taught verses boot camp verses University?

This is the first question many developers have so it is addressed it in the book. If you can find a good coding boot camp, John personally thinks that’s the best way. He would spend money on boot camp because it is a full immersion. But while there, you need to work as hard as possible to soak up knowledge. After a boot camp, then you can go back and fill in your computer science knowledge. This could be through part time college classes or even by self-teaching.

Is the classic computer science stuff important?

John was mostly self-taught; he only went to college for a year. He realized that he needed to go back and learn computer science stuff. Doesn’t think that there is a need to have background in computer science, but that it can be a time saver.

A lot of people get into web development and learn React or Angular but don’t learn fundamentals of JavaScript. Is that a big mistake?

John believes that it is a mistake to not fully understand what you’re doing. Knowing the function first, knowing React, is a good approach. Then you can go back and learn JavaScript and understand more. He states that if you don’t learn the basics, you will be stunted and possibly solve things wrong. Joe agrees with JavaScript, but not so much with things algorithms. He states that it never helped him once he went back and learned it. John suggests the book Algorithms to Live By – teaches how to apply algorithms to real life.

Is there one question you get asked more than anything else you have the answer to in the book?

The most interesting question is regarding contract verses salary employment and how to compare them. It should all be evaluated based on monetary value. Salary jobs look good because of benefits. But when looking at pay divided by the hours of work, usually a salary job is lower paid. This is because people usually work longer hours at salary jobs without being paid for it.

What’s the best place for people to pick up the book? and it will be sold on Amazon. The book will be 99 cents on kindle – want it to be the best selling software development book ever.

Picks Joe

Wonder Woman


The Alchemist


Artificial Intelligence with Python


Algorithms to Live by: The Computer Science of Human Decisions Apple Airpods


Simple Programmer Youtube

MJS #025 Helen V. Holmes

Jul 12, 2017 29:24


MJS 025: Helen V. Holmes

This episode features a My JavaScript story with Helen V. Holmes. Helen has never before been a guest on the show. She is both a designer and front-end programmer who previously worked for Mozilla. In January, she started her own freelancing business. Listen to Charles Max Wood and Helen discuss how she got into programming, what made her decide to open a freelance business, and more!

How did you get into programming?

Helen started by making themes for herself and friends in LiveJournal using other people's CSS themes. Once she got to college she realized that although this wasn't a career, it was an aspect of a career. She then majored in graphic design, going on to do internships in both front-end development and design. Since college, she has gone back and forth between front-end development and design work.

How long ago was that?

Helen graduated college in 2013.

Did you graduate in computer science?

Helen did not even minor in computer science. At the time, she was focused on making stuff. The computer science major was too heavily focused on theory. She did take a couple of classes in it, but the graphic design major was more focused on building prototypes. Her graphic design major didn't teach her how to do anything - she said that you're on your own, and you have to figure out how to show off your ideas. The major appealed to her at the time because of that reason. Now Helen thinks majoring in computer science would have been really helpful for her career.

Charles points out that you don't have to have a computer science degree to do this work. Helen agrees; it can be wasted on you if you don't have the right enthusiasm to learn everything. Both say that you can get the education you want through self-education. Helen explains that so much of successful programming is good communication - this can be learned in college, while the specifics of how to code can be learned later.

How do you get from a graphic design major to "serious programming?"

Helen doesn't know how serious the programming she does is now. Her first real job was at Capital One as a front-end developer on their design team. She was doing prototypes and communicating between the design and production/engineering teams. She realized that nobody knew how to write JavaScript when trying to communicate between the two teams, so she decided that she should learn. A lot of the engineers came to the same realization at the same time. She started to write React as she was leaving Capital One. Everyone was trying to improve his or her JavaScript chops at the same time.

Did you get into Angular or React at Capital One?

When she first started at Capital One everyone was writing Angular. She wrote a lot of Angular in the beginning of her work. Most of the prototypes could be solved with React. Near the end of her time, she started using a lot of React.

What do you see is the difference between Angular and React?

Angular solves a lot more problems than React. It brings logic to the client side. React is only about solving visual problems. That's why it appealed to Helen. The design team she worked with was all about solving visual problems.

Why did you choose the front end?

Helen mainly chose it because she was a graphic design major. She believes that because the web is so accessible that it is the easiest thing. She also thinks the front end is fun.

How'd you wind up at Mozilla?

She met James Long through a mutual friend. Once they met, he thought she'd be a good addition to their team. He told her why it'd be a good switch for her - they were doing React work and they were looking for someone to understand problems that engineers go through.

What do they use React on?

She was on the browser team. The front-end of the developer tools was a JavaScript application that wasn't Angular. They were working on moving it to become a more documented framework. They wanted to use Redux and React. The team was converting it panel by panel.

What made you decide you were going to go freelance?

Helen had been missing things that she had done in college such as branding and illustration work. She had done some illustration work while at Firefox. She ultimately wanted to do a variety of different things instead of just product work. What gave her courage to go into freelance work was that James Long was also going freelance at the same time, so she thought that she was in good company. She also is related to a lawyer, so it wasn't as scary filing the paperwork because she had someone to ask for help during the process.

What contributions do you feel like you've made to the JavaScript community?

Helen believes that the highest impact work she has done has been on the Firefox browser. She didn't write a lot of code, but feels like what she did write is being used by a lot of people. She is most proud of the CSS grid because she says that it is exciting for people who do layout stuff on the web.

What are you working on now?

Helen started her own business at the beginning of the year. She is figuring out how she wants her skills to grow and with what kind of clients she wants to work. She has a lot of side projects, one being what she calls an art project. She is translating JPEG to Pixel art. She is taking NeoPixels, which are little programmable LEDs, and taking a matrix of values and displaying them on a sight board.

With everything that's out there in JavaScript, how do you keep current?

Helen answers that she doesn't. She tries to stay current with the tools she is using, which is React. She doesn’t try to be good at everything because she is also a designer, so she says that she has to pick and choose what she stays current on. Charles says that is what he tells people to do. There is so much out there that there is no way that anyone is going to stay current on everything. He says to keep current on what you are doing specifically.



Wonder Woman Debt: The First 5,000 Years


JavaScript Jabber Slack Room Monthly Webinars Angular Remote Conf


Helen V Holmes Twitter

JSJ 269 Reusable React and JavaScript Components with Cory House

Jul 11, 2017 57:44


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.


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

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.


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

MJS #024 Aaron Frost

Jul 5, 2017 41:28


MJS 024 Aaron Frost

This episode can double as a My JavaScript Story and a My Angular Story and features Aaron Frost. Aaron has been on both JavaScript Jabber and Adventures in Angular. He has been a principal engineer for four years and recently organized his fourth NG-Conf.

How did you get into programming?

Aaron was working as a loan officer when he decided he needed a new career. He went to work at an accounting support phone center. There he discovered he was good at Sequel. He tried out for the QA team; the UA automation made sense to him. He became a senior QA and in 2010 jumped to working in development full time. He knew JavaScript; which made everyone wanted to hire him. He learned JQuery too.

What was it about JavaScript that really got you excited about it?

In Utah when he was working for a company, he had never learned JavaScript; he was told he had to learn jQuery to do browser extensions. The first night he learned jQuery he decided he loved the language. He stuck with it for three to four months. After that, he learned actual JavaScript. He explains that it just “fits in his head,” and made him feel well equipped and powerful.

How do you get to Angular?

He worked for a big, local corporation in Utah with powerful developers. The JavaScript community was strong there. They used Backbone and one day he emailed the developers. He suggested they Angular. One of the developers asked Aaron to help with the conversion. They were writing less code in Angular than in Backbone. It saved time.

Sometime after that, his friend Kip Lawrence suggested that they go to an Angular Conference. When they looked up conferences they couldn’t find any. They decided to start their own Angular conference after that.

How do you become a GDE?

There is a GDE app where you nominate yourself. In order to be picked, you have to meet a lot of criteria. You have to answer a lot of questions. There are things they want you to have done to prove you stand out and are a leader in the community. They want more than someone who is just smart. They want people who have presented at conferences, made open source contributions, written books, etc.

What else have you done in JavaScript or Angular?

One of the very first projects Aaron did is one that he considers one of the coolest. He built a browser extension for his twin brother’s real estate website that solved a captcha. He then marketed it to other people. He believes it is one of the most fun problems to solve.

What are you working on these days?                      

Aaron has a side project, which is a remote communication app for remote workers to use. He is working on how to make the NG-Conf bigger and better each year. He is also spending time being a dad.

Is there an overarching thing you’ve learned over the last 7 or so years of programming?

The thing that keeps recurring is that there is a need for engineers to focus on solving problems for users and less on having perfect code. He has noticed that developers make decisions to try to make perfect code that can sink a company. Developers should be more business focused than tech problems. It is more responsible for making a business profitable. Solve problems for the user first and don’t try to replace a language that’s working.



Superpowers Yarn Samsung SmartThings


Nimble Bluetick Visual studio code Wade Anderson interview, Microsoft build


Twitter: GitHub:

JSJ 268 Building Microsoft Office Extensions with JavaScript with Tristan Davis and Sean Laberee

Jul 4, 2017 01:06:43


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, th