All JavaScript Podcasts by Devchat.tv

By Devchat.tv

Listen to a podcast, please open Podcast Republic app. Available on Google Play Store.


Category: Software How-To

Open in iTunes


Open RSS feed


Open Website


Rate for this podcast

Subscribers: 299
Reviews: 0

Description

All JavaScript podcasts produced by Devchat.tv: - JavaScript Jabber - My JS Story - JS Rants

Episode Date
JSJ 375: Are You Hurting the Web?
1:08:31
<h2 dir="ltr"><strong>Sponsors</strong></h2> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="http://triplebyte.com/jsjabber">Triplebyte</a> $1000 signing bonus</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://sentry.io/">Sentry</a> use code &ldquo;devchat&rdquo; for 2 months free</strong></p> </li> </ul> <h3 dir="ltr"><strong>Panel</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong>Charles Max Wood</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Aimee Knight</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Chris Ferdinandi</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Christopher Beucheler</strong></p> </li> </ul> <h3 dir="ltr"><strong>Episode Summary</strong></h3> <p dir="ltr"><strong>Today the panel discusses the effect of current development practices, such as the heavy reliance JavaScript, on the web. Chris explains why he believes that current development practices are ruining the web. The panelists discuss different situations where they see complications on the web. They discuss the advantages and disadvantages of using an enterprise scale platform like React. The panel discusses Twitter&rsquo;s move away from their legacy code base to CSS and JavaScript.&nbsp;</strong></p> <p dir="ltr"><strong>The panelists agree that the way things are built, since it&rsquo;s so JavaScript heavy, is alienating to people who work with other languages, and in turn other areas like UI are undervalued. They talk about possible reasons things ended up this way and some of the historical perception of a frontend as not a place for &lsquo;real&rsquo; development. Because the web is now a serious platform, things associated with the backend has been thrown at the frontend where it doesn&rsquo;t belong. They talk about changes in the ways programming is viewed now versus the past.&nbsp;</strong></p> <p dir="ltr"><strong>There is a discussion about how market demands that have influenced the web and if the market value CSS as highly as other languages. They mention some of the Innovations in CSS. Chris shares his solutions for the problems they&rsquo;ve been discussing, namely using less JavaScript, leaning more heavily on what the browser gives you out of the box, and avoiding dependency where possible. They talk about ways to get involved if you want to take a leaner approach to the web. Ultimately, it is important to embrace things about the past that worked, but sprinkle in new technology when it makes sense</strong></p> <p dir="ltr"><strong>Links</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/stimulusjs/stimulus">Stimulus</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://reactjs.org/">React</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://vuejs.org/">Vue</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://macosxautomation.com/applescript/firsttutorial/index.html">AppleScript</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.perl.org/">Perl</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://dotnet.microsoft.com/">.NET</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://angular.io/">Angular</a>&nbsp;</strong></p> </li> </ul> <p dir="ltr"><strong>Follow DevChat on <a href="https://www.facebook.com/DevChattv/?__tn__=%2Cd%2CP-R&amp;eid=ARDBDrBnK71PDmx_8gE_IeIEo5SnM7cyzylVBjAwfaOo1ck_6q3GXuRBfaUQZaWVvFGyEVjrhDwnS_tV">Facebook</a> and <a href="https://twitter.com/devchattv?lang=en">Twitter</a></strong></p> <h3 dir="ltr"><strong>Picks</strong></h3> <p dir="ltr"><strong>Charles Max Wood:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/Tiny-Epic-Galaxies-Space-Board/dp/B015QHVZCI?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Tiny Epic Galaxies</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://keepcurrentacademy.com/everywherejs/">EverywhereJS</a></strong></p> </li> </ul> <p dir="ltr"><strong>Aimee Knight:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://doist.com/blog/complete-guide-to-deep-work/">Complete Guide to Deep Work</a></strong></p> </li> </ul> <p dir="ltr"><strong>Chris Ferdinandi:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://infrequently.org/2018/09/the-developer-experience-bait-and-switch/">Developer Bait and Switch</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://vanillajslist.com/organizations/">Vanillajslist.com</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Chris will be speaking at <a href="https://artifactconf.com/speakers/">Artifact Conference</a></strong></p> </li> </ul> <p dir="ltr"><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.youtube.com/watch?v=N9qYF9DZPdw">Weird Al: White and Nerdy</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/Funforge-Quantum-Revised-Board-Game/dp/B00WOFWL88?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Quantum board game</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.digitalocean.com/community/tutorials/how-to-set-up-automatic-deployment-with-git-with-a-vps">Deploy Sites with Only Git and SSH</a></strong></p> </li> </ul> <p dir="ltr"><strong>Christopher Beucheler:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://material-ui.com/">Material</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://en.wikipedia.org/wiki/Monstress_(comics)">Monstress</a></strong></p> </li> </ul>
Jul 18, 2019
MJS 116: Jeremy Fairbank
37:30
<h1>Sponsors</h1> <ul> <li><a href="https://sentry.io/welcome/">Sentry&nbsp;</a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:</strong>&nbsp;Charles Max Wood</p> <p><strong>Joined By Special Guest:</strong>&nbsp;Jeremy Fairbank</p> <h2><strong>Episode Summary</strong></h2> <p>Jeremy is a Software Developer at&nbsp;<a href="https://testdouble.com/">Test Double</a>&nbsp;and the author of&nbsp;<a href="https://pragprog.com/book/jfelm/programming-elm">Programming Elm</a>&nbsp;book. Even though Jeremy majored in Chemistry in college, he was always interested in programming since middle school. After he graduated from college he went to work as a web developer at&nbsp;<a href="https://www.linkedin.com/company/plastic-industries/">Plastic Industries</a>&nbsp;and relied on blog posts and other online resources to teach himself how to code. Gradually as the company&rsquo;s needs changed, Jeremy transitioned into an application developer. He taught himself JavaScript using the book<a href="https://www.amazon.com/Professional-JavaScript-Developers-Nicholas-Zakas/dp/1118026691">&nbsp;Professional JavaScript for Web Developers</a>&nbsp;. He then attented a Coursera<a href="https://www.coursera.org/learn/programming-languages">&nbsp;class</a>to learn on principles of functional programming and gained experience with many front end frameworks and libraries, including&nbsp;<a href="https://devchat.tv/admin/elm-lang.org">Elm</a>,&nbsp;<a href="https://reactjs.org/">React,</a>&nbsp;<a href="https://redux.js.org/">Redux</a>,&nbsp;<a href="https://devchat.tv/admin/backbonejs.org/">Backbone.js</a>, and&nbsp;<a href="https://marionettejs.com/">Marionette.js</a>. Jeremy is based out of Hawaii and when he isn&#39;t coding, he spends his time playing his guitar and hiking and going to the beach with his family.</p> <h2><strong>Links</strong></h2> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-325-practical-functional-programming-in-javascript-and-languages-like-elm-with-jeremy-fairbank/">JSJ 325: Practical functional programming in JavaScript and languages like Elm with Jeremy Fairbank</a></li> <li><a href="https://github.com/jfairbank">Jeremy&rsquo;s GitHub</a></li> <li><a href="https://www.linkedin.com/in/jfairbank/">Jeremy&#39;s LinkedIn</a></li> <li><a href="https://blog.jeremyfairbank.com/">Jeremy&rsquo;s Blog</a></li> <li><a href="https://www.amazon.com/Professional-JavaScript-Developers-Nicholas-Zakas/dp/1118026691">Professional JavaScript for Web Developers</a>&nbsp;by Nicholas C. Zakas</li> <li><a href="https://www.amazon.com/Professional-JavaScript-Developers-Matt-Frisbie/dp/1119366445/ref=as_li_ss_tl?ie=UTF8&amp;linkCode=sl1&amp;tag=devchattv-20&amp;linkId=097c7fa039be3ccb023e50c06abbb6b5&amp;language=en_US">Professional JavaScript for Web Developers&nbsp;</a>by Matt Frisbie</li> <li><a href="https://knockoutjs.com/">https://knockoutjs.com/</a></li> <li><a href="https://marionettejs.com/">https://marionettejs.com/</a></li> <li><a href="https://www.coursera.org/">https://www.coursera.org/</a></li> <li><a href="https://www.coursera.org/learn/programming-languages">https://www.coursera.org/learn/programming-languages</a></li> <li><a href="https://devchat.tv/admin/elm-lang.org">elm-lang.org</a></li> <li><a href="https://www.facebook.com/javascriptjabber">https://www.facebook.com/javascriptjabber</a></li> <li><a href="https://twitter.com/JSJabber">https:/</a><a href="https://twitter.com/JSJabber">/twitter.com/JSJabber</a></li> <li><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></li> </ul> <h2>Picks</h2> <p><strong>Jeremy Fairbank:</strong></p> <ul> <li><a href="https://pragprog.com/book/jfelm/programming-elm">Programming Elm</a></li> <li><a href="https://www.netflix.com/title/80186864">The Umbrella Academy</a></li> <li><a href="https://www.beyondmeat.com/products/the-beyond-burger">Beyond Burger</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.amazon.com/gp/video/detail/B074QXP758/ref=atv_dl_rdr">Orphan Black</a></li> <li><a href="https://devchat.tv/">https://devchat.tv/</a></li> <li><a href="https://www.netlify.com/">https://www.netlify.com/</a></li> <li><a href="https://www.11ty.io/">https://www.11ty.io/</a></li> <li><a href="https://github.com/cmaxw/devchat-eleventy">https://github.com/cmaxw/devchat-eleventy</a></li> <li><a href="https://devchat.tv/js-jabber/">JavaScript Jabber - Devchat.tv</a></li> </ul>
Jul 16, 2019
JSJ 374: CosmosDB with Steve Faulkner LIVE at Microsoft BUILD
31:32
<h1>Sponsors</h1> <ul> <li><a href="https://www.datadoghq.com/">DataDog</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a>&nbsp;use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h2>Panel</h2> <p>Charles Max Wood</p> <p><strong>Joined by Special Guest:</strong>&nbsp;Steve Faulkner</p> <h2>Episode Summary</h2> <p>Coming to you live from the podcast booth at Microsoft BUILD is Charles Max Wood with&nbsp;Steve Faulkner. Steve is a Senior Software Developer for Azure Cosmos DB at Microsoft. Cosmos DB is a global distributed, multi-model noSQL database. Steve explains the Cosmos DB service and scenarios it can be used in. They discuss how Cosmos DB interacts with Azure functions and how partition keys work in Cosmos DB.</p> <p>Listen to the show for more Cosmos DB updates and to find out how Steve he got his twitter handle @southpolesteve.</p> <h2>Links</h2> <ul> <li><a href="https://github.com/southpolesteve?tab=stars">Steve&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/southpolesteve?lang=en">Steve&rsquo;s Twitter</a></li> <li><a href="https://www.linkedin.com/in/stevenfaulkner">Steve&rsquo;s LinkedIn</a></li> <li><a href="https://dev.to/southpolesteve">Steve Dev.to</a></li> <li><a href="https://www.microsoft.com/en-us/build">Microsoft Build 2019 &nbsp;</a></li> <li><a href="https://docs.microsoft.com/en-us/azure/cosmos-db/introduction">Introduction to Azure Cosmos DB</a></li> <li><a href="https://devchat.tv/adv-in-angular/aia-241-azure-functions-with-colby-tresness-live-at-microsoft-build/">AiA 241: Azure Functions with Colby Tresness LIVE at Microsoft BUILD</a></li> <li><a href="https://devchat.tv/adv-in-angular/aia-242-azure-functions-part-ii-with-jeff-hollan-live-at-microsoft-build/">AiA 242- Azure Functions Part II with Jeff Hollan LIVE at Microsoft BUILD</a></li> <li><a href="https://www.microsoft.com/en-us/build">Microsoft Learn Resource</a></li> <li><a href="https://docs.microsoft.com/en-us/azure/cosmos-db/partitioning-overview">Partitioning in Azure Cosmos DB</a></li> </ul> <h2>Picks</h2> <p><strong>Steve Faulkner:</strong></p> <ul> <li><a href="https://www.nintendo.com/games/detail/final-fantasy-x-x-2-hd-remaster-switch/">FINAL FANTASY X/X-2 HD Remaster for Nintendo Switch</a></li> <li><a href="https://store.steampowered.com/app/448510/Overcooked/">Overcooked on Steam</a></li> <li><a href="https://www.fastly.com/">Fastly</a></li> </ul>
Jul 16, 2019
JSJ 373: What Do You Need to Do to Get a Website Up?
58:43
<h2 dir="ltr"><strong>Sponsors</strong></h2> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="http://triplebyte.com/jsjabber">Triplebyte</a> $1000 signing bonus</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://sentry.io/">Sentry</a> use code &ldquo;devchat&rdquo; for 2 months free</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://linode.com/javascriptjabber">Linode</a></strong></p> </li> </ul> <h3 dir="ltr"><strong>Panel</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong>Charles Max Wood</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Aimee Knight</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Chris Ferdinandi</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Joe Eames</strong></p> </li> </ul> <h3 dir="ltr"><strong>Episode Summary</strong></h3> <p dir="ltr"><strong>Today the panel discusses what is necessary to get a website up and how complicated or simple it needs to be. They mention different tools they like for static sites and ways to manage their builds and websites. They talk about why some people choose to host their websites and at what point the heavier tools become a concern. They discuss whan it is necessary to use those heavy tools.&nbsp;</strong></p> <p dir="ltr"><strong>They caution listeners to beware of premature optimization, because sometimes businesses will take advantage of newer developers and make them think they need all these shiny bells and whistles, when there is a cheaper way to do it. It is important to keep the tools you work with simple and to learn them so that if you encounter a problem, you have some context and scope. The option of serverless website hosting is also discussed, as well as important things to know about servers.</strong></p> <p dir="ltr"><strong>The panel discusses what drives up the price of a website and if it is worth it to switch to a cheaper alternative. They discuss the pros and cons of learning the platform yourself versus hiring a developer. The importance of recording the things that you do on your website is mentioned. Several of the panelists choose to do this by blogging so that if you search for a problem you can find ones you&rsquo;ve solved in the past.</strong></p> <p dir="ltr"><strong>Links</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.heroku.com/">Heroku</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://pages.github.com/">Github Pages</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.netlify.com/">Netlify</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.11ty.io/">Eleventy</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.digitalocean.com/">DigitalOcean</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://aws.amazon.com/lightsail/">Lightsale</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://ubuntu.com/">Ubuntu</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-clone">Git clone</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.npmjs.com/package/static-server">Node static server</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://unix.stackexchange.com/questions/47695/how-to-write-startup-script-for-systemd">Systemd script</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.nginx.com/">NGinx</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.cloud66.com/">Cloud66</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://thinkster.io/">Thinkster</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.gatsbyjs.org/">Gatsby</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.docker.com/">Docker</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.gentoo.org/">Gentoo</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://gomakethings.com/how-to-schedule-posts-with-a-static-website/">How to schedule posts with a static website</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.digitalocean.com/community/tutorials/how-to-set-up-automatic-deployment-with-git-with-a-vps">How to set up automatic deployment with Git with a vps</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://gomakethings.com/automating-the-deployment-of-your-static-site-with-hugo-and-github/">Automating the deployment of your static site with Github and Hugo</a></strong></p> </li> </ul> <p dir="ltr"><strong>Follow DevChat on <a href="https://www.facebook.com/DevChattv/?__tn__=%2Cd%2CP-R&amp;eid=ARDBDrBnK71PDmx_8gE_IeIEo5SnM7cyzylVBjAwfaOo1ck_6q3GXuRBfaUQZaWVvFGyEVjrhDwnS_tV">Facebook</a> and <a href="https://twitter.com/devchattv?lang=en">Twitter</a></strong></p> <h3 dir="ltr"><strong>Picks</strong></h3> <p dir="ltr"><strong>Charles Max Wood:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.microsoft.com/en-us/build">Microsoft build</a></strong></p> </li> </ul> <p dir="ltr"><strong>Aimee Knight:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.hanselman.com/blog/SystemsThinkingAsImportantAsEverForNewCoders.aspx">Systems Thinking is as Important as Ever for New Coders</a></strong></p> </li> </ul> <p dir="ltr"><strong>Chris Ferdinandi:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.youtube.com/watch?v=VvOsegaN9Wk">Adrian Holivadi framework video</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://serverpilot.io/">Server Pilot</a></strong></p> </li> </ul> <p dir="ltr"><strong>&nbsp;</strong></p> <p dir="ltr"><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://twitter.com/codinghorror/status/1070112411326136320">Jeff Atwood tweet</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://nickcraver.com/blog/2016/02/17/stack-overflow-the-architecture-2016-edition">More on Stackflow Architecture</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/minio/minio">Minio</a></strong></p> </li> </ul> <p dir="ltr"><strong>Joe Eames:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong>Miniature painting</strong></p> </li> </ul> <p>&nbsp;</p>
Jul 11, 2019
MJS 115: Noam Rosenthal
35:46
<h1>Sponsors</h1> <ul> <li> <p><a href="https://sentry.io/welcome/">Sentry </a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</p> </li> <li> <p><a href="https://www.cachefly.com">CacheFly</a></p> </li> </ul> <p><strong>Host:</strong> Charles Max Wood</p> <p><strong>Joined By Special Guest:</strong> Noam Rosenthal</p> <h2><strong>Episode Summary</strong></h2> <p>Noam has recently started offering his services and experiences independently after 20 hands-on years in the software industry. His most recent position was as a Software Architect working on the Wix Editor at <a href="https://www.wix.com/">Wix</a>, an Israeli cloud-based web development platform.</p> <p>Noam was first introduced to programming at the age of seven when he started creating games in <a href="https://en.wikipedia.org/wiki/Pascal_(programming_language)">Pascal</a> language. He then went onto learn HTML. Charles and Noam talk about how the programming community has changed over the years and how it is a lot easier to access knowledge today. On how to improve as a developer, Noam recommends not staying in the comfort zone of the job description and doing as many volunteer projects as possible.</p> <p>Noam is also a musician and he plays base in <a href="https://www.facebook.com/pg/LostHighways1/about/?ref=page_internal">Lost Highways </a> music band. When he isn&#39;t coding he is busy producing the songs for their new upcoming album with his band.</p> <h2><strong>Links</strong></h2> <ul> <li> <p><a href="https://www.linkedin.com/in/noamrosenthal/">Noam&#39;s LinkedIn</a></p> </li> <li> <p><a href="https://twitter.com/realnoam?lang=en">Noam&#39;s Twitter</a></p> </li> <li> <p><a href="https://medium.com/@realnoam">Noam&#39;s Medium</a></p> </li> <li> <p><a href="https://vcvrack.com/">Rack</a></p> </li> <li> <p><a href="https://www.rust-lang.org">Rust Language</a></p> </li> <li> <p><a href="https://www.tensorflow.org">TensorFlow</a></p> </li> <li> <p><a href="https://www.shadertoy.com/">Shadertoy</a></p> </li> <li> <p><a href="https://www.facebook.com/pg/LostHighways1/about/?ref=page_internal">Lost Highways</a></p> </li> <li> <p><a href="https://www.ultimate-guitar.com/">Ultimate Guitar Tabs</a></p> </li> <li> <p><a href="https://www.facebook.com/javascriptjabber">https://www.facebook.com/javascriptjabber</a></p> </li> <li> <p><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></p> </li> <li> <p><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></p> </li> </ul> <h2>Picks</h2> <p><strong>Noam Rosenthal:</strong></p> <ul> <li> <p>For developers working with JavaScript - learn another language such as <a href="https://www.rust-lang.org">Rust Language</a></p> </li> <li> <p><a href="https://www.tensorflow.org">TensorFlow</a></p> </li> <li> <p><a href="https://www.shadertoy.com/">Shadertoy</a></p> </li> <li> <p>Learn to play an instrument</p> </li> <li> <p><a href="https://www.ultimate-guitar.com/">Ultimate Guitar Tabs</a></p> </li> <li> <p>Do volunteer projects and do not stay in the comfort zone of work</p> </li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li> <p><a href="https://expanse.fandom.com/wiki/Cibola_Burn">Cibola Burn </a></p> </li> <li> <p><a href="https://en.wikipedia.org/wiki/The_Seven_Principles_for_Making_Marriage_Work">The Seven Principles for Making Marriage Work Book by John M. Gottman and Nan Silver</a></p> </li> <li> <p><a href="https://obsproject.com/">OBS: Open Broadcaster Software</a></p> </li> </ul>
Jul 09, 2019
JSJ 372: Kubernetes Docker and Devops with Jessica Deen LIVE from Microsoft BUILD
40:47
<h1><strong>Sponsors</strong></h1> <ul> <li> <p><a href="https://triplebyte.com/jsjabber">Triplebyte</a> offers a $1000 signing bonus</p> </li> <li> <p><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</p> </li> <li> <p><a href="https://www.cachefly.com/">CacheFly</a></p> </li> </ul> <h2>Panel</h2> <ul> <li> <p>Charles Max Wood</p> </li> </ul> <p><strong>Joined by Special Guest:</strong> Jessica Deen</p> <h2>Episode Summary</h2> <p>Coming to you live from the podcast booth at Microsoft BUILD is Charles Max Wood with The Deen of DevOps aka<a href="https://jessicadeen.com"> Jessica Deen</a>. Jessica is a Senior Cloud Advocate at Microsoft. As an advocate she acts a liaison between developer communities and Microsoft to help understand developer pain points and road blocks especially in areas such as Linux, open-source technologies, infrastructure, Kubernetes, containers and DevOps. Jessica explains how to go about setting up a containerized application, Kubernetes and how to use Dockerfiles. Charles and Jessica then talk about how to get started with a Kubernetes cluster and the resources available for developers that don&#39;t have any infrastructure. Jessica advises that developers start with Azure DevOps Services and then go to Microsoft Learn Resource.</p> <p>Charles also encourages listeners to also check out the Views on Vue podcast<a href="https://devchat.tv/views-on-vue/vov-053-azure-devops-with-donovan-brown-live-at-microsoft-ignite/"> Azure DevOps with Donovan Brow</a>n for further references. Jessica also recommends following people on Twitter and GitHub to find out about solutions and resources.</p> <h2>Links</h2> <ul> <li> <p><a href="https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/manage-windows-dockerfile">Dockerfile and Windows Containers</a></p> </li> <li> <p><a href="https://kubernetes.io/">Kubernetes</a></p> </li> <li> <p><a href="https://github.com/jldeen">Jessica&rsquo;s GitHub</a></p> </li> <li> <p><a href="https://twitter.com/jldeen?lang=en">Jessica&rsquo;s Twitter</a></p> </li> <li> <p><a href="https://www.linkedin.com/in/jldeen/">Jessica&rsquo;s LinkedIn</a></p> </li> <li> <p><a href="https://jessicadeen.com/">Jessica&rsquo;s Website</a></p> </li> <li> <p><a href="https://www.microsoft.com/en-us/build">Microsoft Build 2019</a></p> </li> <li> <p><a href="https://partner.microsoft.com/en-us/marketing/learning-resources">Microsoft Learn Resource</a></p> </li> <li> <p><a href="https://docs.microsoft.com/en-us/azure/aks/http-application-routing">HTTP application routing</a></p> </li> <li> <p><a href="https://www.youtube.com/watch?v=aN9nVa8yeBo&amp;t=16s">Getting started with Kubernetes Ingress Controllers and TLS certificates</a></p> </li> <li> <p><a href="https://jessicadeen.com/kubernetes-ingress-controllers-and-certificates-the-walkthrough/">Kubernetes Ingress Controllers and Certificates: The Walkthrough</a></p> </li> <li> <p><a href="https://azure.microsoft.com/en-in/services/devops/">Azure DevOps Services</a></p> </li> <li> <p><a href="https://devchat.tv/views-on-vue/vov-053-azure-devops-with-donovan-brown-live-at-microsoft-ignite/">VoV 053: Azure DevOps with Donovan Brown LIVE at Microsoft Ignite</a></p> </li> <li> <p><a href="https://www.youtube.com/channel/UC-RjyheFSQPAv-MyY0STSIQ">Jessica Deen Youtube</a></p> </li> <li> <p><a href="https://www.youtube.com/watch?v=PH-2FfFD2PU">Kubernetes in 5 mins &ndash; YouTube</a></p> </li> </ul> <p>Follow Adventures in Angular on <a href="https://devchat.tv/adv-in-angular/">tv</a>, <a href="https://www.facebook.com/adventuresinangular/">Facebook </a>and <a href="https://twitter.com/angularpodcast">Twitter</a>.</p> <h2>Picks</h2> <p><strong>Jessica Deen:</strong></p> <ul> <li> <p><a href="https://twitter.com/LachlanEvenson">Lachlan Evenson</a></p> </li> <li> <p><a href="https://www.cncf.io/">Cloud Native Computing Foundation</a></p> </li> <li> <p>Kubernetes Handles on Twitter</p> </li> <li> <p><a href="https://www.amazon.com/Shoe-Dog-Memoir-Creator-Nike-ebook/dp/B0176M1A44">Shoe Dog Memoir</a></p> </li> <li> <p><a href="https://www.nikesalezone.com/air-jordan-4-fire-red-gum-singles-day-av3914-600-mens-winter-basketball-shoes-p-9506.html">Air Jordan 4 Fire Red Gum Singles Day</a></p> </li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li> <p><a href="https://johnpapa.net/tag/real-talk-javascript/">Real Talk /JavaScript Podcast</a></p> </li> <li> <p><a href="https://www.zelda.com/breath-of-the-wild/">The Legend of Zelda: Breath of the Wild</a></p> </li> </ul>
Jul 09, 2019
JSJ 371: The Benefits and Challenges of Server-Side Rendering (SSR) with Dan Shappir
01:10:07
<h1 dir="ltr"><span style="font-family:arial,helvetica,sans-serif"><strong><strong>Sponsors</strong></strong></span></h1> <ul> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://triplebyte.com/jsjabber" style="text-decoration: none;"><u>Triplebyte</u></a><span style="background-color:transparent; color:rgb(0, 0, 0)"> offers a $1000 signing bonus</span></span></span></p> </li> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://sentry.io/welcome/" style="text-decoration: none;"><u>Sentry</u></a><span style="background-color:transparent; color:rgb(34, 34, 34)"> use the code &ldquo;devchat&rdquo; for $100 credit</span></span></span></p> </li> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://www.cachefly.com/" style="text-decoration: none;"><u>CacheFly</u></a></span></span></p> </li> </ul> <h2 dir="ltr"><span style="font-family:arial,helvetica,sans-serif"><strong>Panel</strong></span></h2> <ul dir="ltr"> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(34, 34, 34)">Charles Max Wood</span></span></span></li> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(34, 34, 34)">Joe Eames</span></span></span></li> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(34, 34, 34)">Christopher Buecheler</span></span></span></li> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(34, 34, 34)">Aimee Knight</span></span></span></li> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(34, 34, 34)">AJ O&rsquo;Neal</span></span></span></li> </ul> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(34, 34, 34)">Joined by special guest: Dan Shappir</span></span></span></p> <h2><span style="font-family:arial,helvetica,sans-serif"><strong>Episode Summary</strong></span></h2> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(34, 34, 34)">In this episode of JavaScript Jabber, special guest Dan Shappir, Performance Tech Lead at Wix, kicks off the discussion by defining server-side rendering (SSR) along with giving its historical background, and touches on the differences between server rendering and server-side rendering. He helps listeners understand in detail how SSR is beneficial for the web and takes questions from the panel about how it affects web performance in cases where first-time users and returning users are involved, and how does SSR fare against technologies such as pre-rendering. He then elaborates on the pitfalls and challenges of SSR including managing and declaring variables, memory leaks, performance issues, handling SEO, and more, along with ways to mitigate them. In the end, Dan sheds some light on when should developers use SSR and how should they start working with it.</span></span></span></p> <h2 dir="ltr"><span style="font-family:arial,helvetica,sans-serif"><strong>Links</strong></span></h2> <ul dir="ltr"> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://twitter.com/DanShappir?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor" style="text-decoration: none;"><u>Dan&rsquo;s Twitter</u></a></span></span></li> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://github.com/DanShappir" style="text-decoration: none;"><u>Dan&rsquo;s GitHub</u></a></span></span></li> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://vuejs.org/v2/guide/ssr.html" style="text-decoration: none;"><u>SSR</u></a></span></span></li> <li><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap" style="text-decoration: none;"><u>WeakMap</u></a></span></span></li> </ul> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(0, 0, 0)">Follow JavaScript Jabber on </span><a href="https://devchat.tv/js-jabber/" style="text-decoration: none;"><u>Devchat.tv</u></a><span style="background-color:transparent; color:rgb(0, 0, 0)">, </span><a href="https://www.facebook.com/javascriptjabber" style="text-decoration: none;"><u>Facebook</u></a><span style="background-color:transparent; color:rgb(0, 0, 0)"> and </span><a href="https://twitter.com/JSJabber" style="text-decoration: none;"><u>Twitter</u></a><span style="background-color:transparent; color:rgb(0, 0, 0)">.</span></span></span></p> <h2 dir="ltr"><span style="font-family:arial,helvetica,sans-serif"><strong>Picks</strong></span></h2> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><strong>Christopher Buecheler:</strong></span></span></p> <ul> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(0, 0, 0)">Tip - Take some time off once in a while</span></span></span></p> </li> </ul> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><strong>Aimee Knight:</strong></span></span></p> <ul> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://www.coursera.org/learn/learning-how-to-learn" style="text-decoration: none;"><u>Learning How to Learn: Powerful mental tools to help you master tough subjects</u></a></span></span></p> </li> </ul> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><strong>AJ O&rsquo;Neal:</strong></span></span></p> <ul> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><span style="background-color:transparent; color:rgb(0, 0, 0)">Fatherhood!</span></span></span></p> </li> </ul> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><strong>Joe Eames:</strong></span></span></p> <ul> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://boardgamegeek.com/boardgame/265736/tiny-towns" style="text-decoration: none;"><u>Tiny Towns</u></a></span></span></p> </li> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://www.imdb.com/title/tt2712740/" style="text-decoration: none;"><u>The Goldbergs</u></a></span></span></p> </li> </ul> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><strong>Charles Max Wood:</strong></span></span></p> <ul> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://keepcurrentacademy.com/everywherejs/" style="text-decoration: none;"><u>EverywhereJS</u></a></span></span></p> </li> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://www.amazon.com/Christopher-Buecheler/e/B004KA4MLE/ref=as_li_ss_tl?ref=sr_ntt_srch_lnk_1&amp;qid=1559065375&amp;sr=8-1&amp;linkCode=sl2&amp;tag=devchattv-20&amp;linkId=788aa3909b6b80453b7d3f84bcba0937&amp;language=en_US" style="text-decoration: none;"><u>Christopher Buecheler&rsquo;s books</u></a></span></span></p> </li> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://leanpub.com/backdoor" style="text-decoration: none;"><u>Get a Coder Job - Publishing soon!</u></a></span></span></p> </li> </ul> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><strong>Dan Shappir:</strong></span></span></p> <ul> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://www.quora.com/" style="text-decoration: none;"><u>Quora</u></a></span></span></p> </li> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://www.wix.com/corvid" style="text-decoration: none;"><u>Corvid by Wix</u></a></span></span></p> </li> <li dir="ltr"> <p dir="ltr"><span style="font-size:14px"><span style="font-family:arial,helvetica,sans-serif"><a href="https://www.yglfconf.com/" style="text-decoration: none;"><u>You Gotta Love Frontend Conferences</u></a></span></span></p> </li> </ul>
Jul 02, 2019
MJS 114: Christian Heilmann
39:32
<h1>Sponsors</h1> <ul> <li> <p><a href="https://sentry.io/welcome/">Sentry </a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</p> </li> <li> <p><a href="https://www.cachefly.com">CacheFly</a></p> </li> </ul> <p><strong>Host:</strong> Charles Max Wood</p> <p><strong>Joined By Special Guest:</strong> Christian Heilmann</p> <h2><strong>Episode Summary</strong></h2> <p>Christian is a Principal Software Development Engineer at Microsoft, working out of Berlin, Germany.</p> <h2><strong>Links</strong></h2> <ul> <li> <p><a href="https://devchat.tv/js-jabber/jsj-332-you-learned-javascript-now-what-with-chris-heilmann/">JavaScript Jabber 332: &ldquo;You Learned JavaScript, Now What?&rdquo; with Chris Heilmann</a></p> </li> <li> <p><a href="https://christianheilmann.com/">https://christianheilmann.com/</a></p> </li> <li> <p><a href="https://twitter.com/codepo8?lang=en">Christian&#39;s Twitter</a></p> </li> <li> <p><a href="https://www.linkedin.com/in/christianheilmann/">Christian&#39;s LinkedIn</a></p> </li> <li> <p><a href="https://medium.com/@codepo8">Christian&#39;s Medium </a></p> </li> <li> <p><a href="https://github.com/codepo8">Christian&#39;s GitHub</a></p> </li> <li> <p><a href="https://www.facebook.com/javascriptjabber">https://www.facebook.com/javascriptjabber</a></p> </li> <li> <p><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></p> </li> <li> <p><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></p> </li> </ul> <h2>Picks</h2> <p><strong>Christian Heilmann:</strong></p> <ul> <li> <p><a href="https://webhint.io/">https://webhint.io/</a></p> </li> <li> <p><a href="http://csstricks.com/">http://csstricks.com/</a></p> </li> <li> <p><a href="https://dev.to/">https://dev.to/</a></p> </li> <li> <p><a href="https://codepen.io/">https://codepen.io/</a></p> </li> <li> <p><a href="https://www.microsoftedgeinsider.com/">Microsoft Edge Insider</a></p> </li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li> <p><a href="https://chrome.google.com/webstore/detail/privacy-badger/pkehgijcmpdhfbdbbnkijodmdjhbjlgp">Privacy Badger - Google Chrome</a></p> </li> <li> <p><a href="https://www.gnu.org/s/emacs/">Emacs </a></p> </li> <li> <p>Adventures in DevOps - new podcast on <a href="https://devchat.tv/">https://devchat.tv/</a></p> </li> </ul>
Jul 02, 2019
JSJ 370: Azure Functions Part II with Jeff Hollan LIVE at Microsoft BUILD
54:03
<h1>Sponsors</h1> <ul> <li> <p><a href="https://triplebyte.com/jsjabber">Triplebyte</a>&nbsp;offers a $1000 signing bonus</p> </li> <li> <p><a href="https://sentry.io/welcome/">Sentry</a>&nbsp;use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</p> </li> <li> <p><a href="https://www.cachefly.com/">CacheFly</a></p> </li> </ul> <h2>Panel</h2> <p>Charles Max Wood</p> <p><strong>Joined by Special Guest:</strong>&nbsp;Jeff Hollan</p> <h2>&nbsp;</h2> <h2>Episode Summary</h2> <p>Coming to you live from the podcast booth at Microsoft BUILD is Charles Max Wood with Jeff Hollan. Jeff is a Sr. Program Manager for the Azure Functions cloud service. Continuing from where Colby Tresness left off in&nbsp;Adventures in Angular 241: Azure Functions with Colby Tresness LIVE at Microsoft BUILD, Jeff defines what &ldquo;serverless&rdquo; really means in developer world. Jeff also talks about various scenarios where Azure functions are extremely useful and explains what&nbsp;Durable Functions&nbsp;are.</p> <p>Jeff and Charles discuss creating and running an&nbsp;Azure function inside a container and the upcoming capabilities of Azure functions they are currently working on.</p> <h2>Links</h2> <ul> <li> <p><a href="https://devchat.tv/js-jabber/jsj-369-azure-functions-with-colby-tresness-live-at-microsoft-build/">JavaScript Jabber 369: Azure Functions with Colby Tresness LIVE at Microsoft BUILD</a></p> </li> <li> <p><a href="https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview">Durable Functions</a></p> </li> <li> <p><a href="https://github.com/jeffhollan">Jeff&rsquo;s GitHub</a></p> </li> <li> <p><a href="https://twitter.com/jeffhollan">Jeff&rsquo;s Twitter</a></p> </li> <li> <p><a href="https://www.linkedin.com/in/jeffhollan">Jeff&rsquo;s LinkedIn</a></p> </li> <li> <p><a href="https://hollan.io/">Jeff&rsquo;s Website</a></p> </li> <li> <p><a href="https://medium.com/@jeffhollan">Jeff&rsquo;s Medium</a></p> </li> <li> <p>Microsoft Build 2019</p> </li> <li> <p>Follow JavaScript Jabber on&nbsp;<a href="https://devchat.tv/js-jabber/">Devchat.tv</a>,&nbsp;<a href="https://www.facebook.com/javascriptjabber">Facebook</a>&nbsp;and&nbsp;<a href="https://twitter.com/JSJabber">Twitter</a>.</p> </li> </ul> <h2>Picks</h2> <p><strong>Jeff Hollan:</strong></p> <ul> <li> <p><a href="https://www.calm.com/">Calm App</a></p> </li> <li> <p><a href="https://www.imdb.com/title/tt0944947/">Game of Thrones TV Series</a></p> </li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li> <p><a href="https://itunes.apple.com/us/app/familysearch-tree/id885982973?mt=8">Family Tree App</a></p> </li> </ul>
Jun 25, 2019
MJS 113: Sarah Dayan
35:13
<h1>Sponsors</h1> <ul> <li> <p><a href="https://sentry.io/welcome/">Sentry </a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</p> </li> <li> <p><a href="https://www.cachefly.com">CacheFly</a></p> </li> </ul> <p><strong>Host:</strong> Charles Max Wood</p> <p><strong>Joined By Special Guest:</strong> Sarah Dayan</p> <h2><strong>Episode Summary</strong></h2> <p>Sarah Dayan is a Frontend Software Engineer working for Algolia in Paris. She is also the author of Dinero.js which was the result of a <a href="https://devchat.tv/js-jabber/jsj-351-dinero-js-with-sarah-dayan/">production bug</a> they discovered in JavaScript. Sarah first got introduced to computers when she was a child. She spent hours playing on her grandmother&#39;s computer with dial-up internet. At age 15, she created her first HTML website. Sarah and Charles discuss the evolution of front-end development. Listen to the show to find out more about Sarah&#39;s journey as a front-end developer and the projects she is working on now.</p> <h2><strong>Links</strong></h2> <ul> <li> <p><a href="https://devchat.tv/js-jabber/jsj-351-dinero-js-with-sarah-dayan/">JavaScript Jabber 351: Dinero.js with Sarah Dayan</a></p> </li> <li> <p><a href="https://twitter.com/frontstuff_io?lang=en">Sarah&#39;s Twitter</a></p> </li> <li> <p><a href="https://github.com/sarahdayan">Sarah&#39;s GitHub</a></p> </li> <li> <p><a href="https://medium.com/@frontstuff">Sarah&#39;s Medium</a></p> </li> <li> <p><a href="https://sarahdayan.github.io/dinero.js/">Dinero.js</a></p> </li> <li> <p><a href="https://www.facebook.com/javascriptjabber">https://www.facebook.com/javascriptjabber</a></p> </li> <li> <p><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></p> </li> <li> <p><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></p> </li> </ul> <h2>Picks</h2> <p><strong>Sarah Dayan:</strong></p> <ul> <li> <p><a href="https://zzz.dog">Zdog Library</a></p> </li> <li> <p><a href="https://www.imdb.com/title/tt5707802">Dear White People TV Series</a></p> </li> <li> <p><a href="https://www.origin.com/usa/en-us/store/mass-effect/mass-effect-trilogy">Mass Effect Trilogy for PC</a></p> </li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li> <p><strong>Taking a roadtrip</strong></p> </li> <li> <p><a href="https://hotels.com/">Hotels.com</a></p> </li> <li> <p><a href="https://conferences.oreilly.com/velocity/vl-ca/public/cfp/690">Velocity 2019</a></p> </li> <li> <p><a href="http://foodfightshow.org/">Food Fight Show</a></p> </li> <li> <p><a href="https://www.netlify.com/products/dev/">Netlify Dev</a></p> </li> </ul>
Jun 25, 2019
MAS 082: James Daniels and Alex Okrushko
32:52
Jun 18, 2019
JSJ 369: Azure Functions with Colby Tresness LIVE at MIcrosoft BUILD
38:01
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a>&nbsp;offers a $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a>&nbsp;use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://promo.linode.com/javascriptjabber/">Linode</a>&nbsp;offers $20 credit</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Charles Max Wood</li> </ul> <p><strong>Joined by Special Guest:</strong>&nbsp;Colby Tresness</p> <h3><strong>Episode Summary</strong></h3> <p>Coming to you live from the podcast booth at Microsoft BUILD is Charles Max Wood with Colby Tresness. Colby is a Program Manager on Azure Functions at Microsoft. Azure functions are the serverless functions on Azure. Colby explains what the Azure functions premium plan entails, then talks about&nbsp;<a href="https://github.com/kedacore/keda">KEDA</a>&nbsp;&ndash; Kubernetes-based event-driven autoscaling, a Microsoft and&nbsp;<a href="https://www.redhat.com/en">Red Hat</a>&nbsp;partnered open source component to provide event-driven capabilities for any Kubernetes workload. One of the other cool features of serverless functions they talk about is the Azure serverless community&nbsp;<a href="https://www.serverlesslibrary.net/">library</a>.</p> <p>Colby and Charles discuss the best way to get started with Azure functions, as well as the non-JavaScript languages it supports.</p> <h3><strong>Links</strong></h3> <ul> <li><u><a href="https://github.com/ColbyTresness">Colby&rsquo;s GitHub</a></u></li> <li><u><a href="https://twitter.com/colbytresness?lang=en">Colby&rsquo;s Twitter</a></u></li> <li><u><a href="https://www.linkedin.com/in/colbytresness/">Colby&rsquo;s LinkedIn</a></u></li> <li><a href="https://azure.microsoft.com/id-id/blog/author/cotresne/">Colby&rsquo;s Blog</a></li> <li><a href="https://www.microsoft.com/en-us/build"><u>Microsoft Build 2019</u></a></li> <li><u><a href="https://github.com/kedacore/keda">KEDA</a></u></li> <li><a href="https://www.redhat.com/en">Red Hat</a></li> <li><u><a href="https://www.serverlesslibrary.net/">Azure Serverless Community Library</a></u></li> <li>Follow Adventures in Angular on&nbsp;<a href="https://devchat.tv/adv-in-angular/">tv</a>,&nbsp;<a href="https://www.facebook.com/adventuresinangular/">Facebook&nbsp;</a>and&nbsp;<a href="https://twitter.com/angularpodcast">Twitter</a>.</li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Colby Tresness:</strong></p> <ul> <li><a href="https://www.imdb.com/title/tt5348176/">Barry (TV Series 2018&ndash; ) &ndash; IMDb&nbsp;</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.zelda.com/breath-of-the-wild/">The Legend of Zelda: Breath of the Wild</a></li> <li><a href="https://andyfrisella.com/blogs/mfceo-project-podcast">The MFCEO Project Podcast &ndash; Andy Frisella&nbsp;</a></li> <li>Downtown Seattle</li> </ul>
Jun 18, 2019
MJS 112: Ryan McDermott
39:58
Jun 18, 2019
JSJ 368: TypeScript - Good or Bad
58:05
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a> offers a $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://promo.linode.com/javascriptjabber/">Linode</a> offers $20 credit</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li> <p>Joe Eames</p> </li> <li> <p>AJ O&rsquo;Neal</p> </li> </ul> <h3><strong>Episode Summary</strong></h3> <p>In this episode of JavaScript Jabber, Joe Eames and AJ O&rsquo;Neal talk about what TypeScript is, and their background and experiences with it. They discuss the different kinds of typed languages such as dynamic vs static, strong vs weak, implicit vs explicit casting and the reasons for selecting one type over the other. AJ shares his opinion on not preferring TypeScript in general, while Joe offers a counter perspective on liking it, and both give a number of reasons to support each argument. They talk about some final good and bad points about TypeScript and move on to picks.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.typescriptlang.org/">TypeScript</a></li> <li><a href="https://coffeescript.org/">CoffeeScript</a></li> </ul> <p>Follow JavaScript Jabber on <a href="https://devchat.tv/js-jabber/">Devchat.tv</a>, <a href="https://www.facebook.com/javascriptjabber">Facebook</a> and <a href="https://twitter.com/JSJabber">Twitter</a>.</p> <h3><strong>Picks</strong></h3> <p><strong>Joe Eames:</strong></p> <ul> <li><a href="https://www.cypress.io/">Cypress</a></li> <li><a href="https://www.youtube.com/watch?v=i01V52I56TA">What if your dev environment was a PWA? 🤯 | Eric Simons</a></li> <li><a href="https://ng8-thinkster.deployto.space/">Angular 8 Intergalactic</a></li> <li><a href="https://shop.lego.com/en-US/product/Tantive-IV-75244">Star Wars Tantive IV Lego set</a></li> </ul> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li><a href="https://www.goodreads.com/book/show/39286958-measure-what-matters">Measure What Matters</a></li> <li><a href="https://www.npmjs.com/search?q=%40root">@root on npm</a></li> <li><a href="https://www.npmjs.com/search?q=%40bluecrypt">@bluecrypt on npm</a></li> </ul> <p>&nbsp;</p>
Jun 11, 2019
MJS 111: Anatoliy Zaslavskiy
46:51
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry&nbsp;</a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Joined By Special Guest:</strong> Anatoliy Zaslavskiy</p> <h3><strong>Episode Summary</strong></h3> <p>Anatoliy Zaslavskiy has been interested in computers since he was 7 years old, and began his programming career in high school, doing web development in <a href="https://php.net/">PHP</a> for the online community for his favorite show&nbsp; <a href="https://www.imdb.com/title/tt0417299/">Avatar: The Last Airbender</a>. Anatoliy currently works for <a href="https://hover.to">Hover </a>as a Frontend developer transforming home photos into 3D models to help visualize what the final project will look like.</p> <p>Anatoliy shares his journey as a developer with bipolar disorder and tells us how he restructured his career with his employer&nbsp;so he can focus on projects that he enjoys working on. This way he performs at his best and both him and Hover can benefit from his talents. Anatoliy and Charles stress the importance for companies to talk to their developers to understand their nature as both parties benefit from open and honest dialogue.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://devchat.tv/react-round-up/rru-064-optimizing-for-performance-in-react-with-aggelos-arvanitakis/">JavaScript Jabber 358: Pickle.js, Tooling, and Developer Happiness with Anatoliy Zaslavskiy</a></li> <li><a href="https://tolicodes.com/">Anatoliy&#39;s Website</a></li> <li><a href="https://www.facebook.com/tolicodes">Anatoliy&#39;s Facebook</a></li> <li><a href="https://www.linkedin.com/in/tolicodes">Anatoliy&#39;s LinkedIn</a></li> <li><a href="https://www.facebook.com/javascriptjabber">https://www.facebook.com/javascriptjabber</a></li> <li><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></li> <li><a href="https://www.facebook.com/DevChattv/">https://www.facebook.com/DevChattv</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Anatoliy Zaslavskiy:</strong></p> <ul> <li><a href="https://xstate.js.org/">XState - JavaScript State Machines and Statecharts</a></li> <li><a href="https://github.com/Nozbe/WatermelonDB">Nozbe/WatermelonDB: High-performance reactive database</a></li> <li><a href="https://en.wikipedia.org/wiki/Monorepo">Monorepo</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.twitch.tv/">https://www.twitch.tv/</a></li> <li><a href="https://obsproject.com/">OBS: Open Broadcaster Software</a></li> </ul>
Jun 11, 2019
MJS 110: Phil Hawksworth
50:06
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry&nbsp;</a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Joined By Special Guest:</strong>&nbsp;Phil Hawksworth</p> <h3><strong>Episode Summary</strong></h3> <p>Currently the Head of Developer Relations at <a href="https://www.netlify.com/">Netlify</a>, Phil has been a developer for 20 years. Even though he was interested in computers from an early age, he started&nbsp; studying Civil Engineering in university before changing course and switching to Computer Science. Though he didn&#39;t particularly enjoy studying Computer Science, he really liked working with HTML where he didn&#39;t have to compile any code and that&#39;s when he started thinking about a career in web development.</p> <p>Phil talks about his favorite projects he has worked on using&nbsp;<a href="https://jamstack.org/">JAMstack</a> and JavaScript. He works remotely out of London, UK and as head of developer relations he spends a lot of time traveling for conferences for work. He doesn&#39;t have a &#39;typical&#39; work day, but when he is not traveling for work he enjoys catching up on conversations on Slack and Twitter about JAMstack and collaborating with the rest of is team in San Francisco.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://media.devchat.tv/my-angular-story/MAS_080_Ely%20Lucas_and_Mike_Hartington.mp3">JavaScript Jabber 347: JAMstack with Divya Sasidharan &amp; Phil Hawksworth</a></li> <li><a href="https://www.11ty.io/">Eleventy</a></li> <li><a href="https://jamstack.org/">JAMstack</a></li> <li><a href="https://medium.com/@philhawksworth">Phil&rsquo;s Medium&nbsp;&nbsp;</a></li> <li><a href="https://twitter.com/philhawksworth">Phil&#39;s Twitter</a></li> <li><a href="https://github.com/philhawksworth">Phil&#39;s GitHub</a></li> <li><a href="https://www.linkedin.com/in/philhawksworth/?originalSubdomain=uk">Phil&#39;s LinkedIn</a></li> <li><a href="https://www.hawksworx.com/">Phil&#39;s Website</a></li> <li><a href="https://www.thenewdynamic.org/">https://www.thenewdynamic.org/</a></li> <li><a href="https://www.netlify.com/">Netlify</a></li> <li><a href="https://www.facebook.com/javascriptjabber">https://www.facebook.com/javascriptjabber</a></li> <li><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></li> <li><a href="https://www.facebook.com/DevChattv/">https://www.facebook.com/DevChattv</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Phil Hawksworth:</strong></p> <ul> <li><a href="https://www.youtube.com/watch?v=AdNJ3fydeao">Rich Harris - Rethinking reactivity</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://keepcurrentacademy.com/everywherejs/">EverywhereJS JavaScript Community</a></li> </ul>
Jun 04, 2019
JSJ 367: Pair Programming
01:04:42
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a>&nbsp;offers a $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a>&nbsp;use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://promo.linode.com/javascriptjabber/">Linode</a>&nbsp;offers $20 credit</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Aimee Knight</li> <li>AJ O&rsquo;Neal</li> <li>Chris Ferdinandi</li> </ul> <h3><strong>Episode Summary</strong></h3> <p>In this episode of JavaScript Jabber, the panelists discuss each one&rsquo;s definition of the term &lsquo;pairing&rsquo; in programming, including factors like being remote or local, having different seniority levels and the various approaches of going about it in general. They talk about how valuable pairing is, in terms of benefiting the individual as well as how productive it is for the company or the overall business.</p> <p>The panel also discuss prototyping, pseudo-coding and the advantages and trade-offs involved in pair programming. They talk about their own experiences in which pairing had proven to be extremely beneficial and the ones where it went completely wrong, thereby helping listeners understand the dos and don&rsquo;ts of the technique. In the end, they elaborate on what actually happens in pairing interviews and the overall hiring process while sharing anecdotes from their own lives.</p> <h3><strong>Links</strong></h3> <p>Follow JavaScript Jabber on&nbsp;<a href="https://devchat.tv/js-jabber/">Devchat.tv</a>,&nbsp;<a href="https://www.facebook.com/javascriptjabber">Facebook</a>&nbsp;and&nbsp;<a href="https://twitter.com/JSJabber">Twitter</a>.</p> <h3><strong>Picks</strong></h3> <p><strong>Chris Ferdinandi:</strong></p> <ul> <li><a href="https://ensorings.com/">Enso Rings</a></li> <li><a href="https://vanillajsprojects.com/">Vanilla JS Projects</a></li> </ul> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li><a href="https://www.amazon.com/gp/product/B06XVYDGR7/ref=as_li_ss_tl??ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Salt and Pepper Grinder set</a></li> <li><a href="https://www.amazon.com/gp/product/B078RPV625/ref=as_li_ss_tl?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Peppercorn blend</a></li> <li><a href="https://www.amazon.com/gp/product/B004LKVRLG/ref=as_li_ss_tl?th=1%3Fie&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Pink Himalayan salt</a></li> </ul> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="https://www.enneagraminstitute.com/">Enneagram test</a></li> <li><a href="https://kittyrama.co.uk/">Kittyrama</a></li> </ul>
Jun 04, 2019
MJS 109: James Shore
46:59
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry&nbsp;</a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Joined By Special Guest:</strong>&nbsp;James Shore</p> <h3><strong>Episode Summary</strong></h3> <p>James Shore, the author of the book, &ldquo;The Art of Agile Development&rdquo; and a thought leader in the Agile software development community, talks about his journey in Agile development. James and Charles discuss how Agile has transformed software development process and the traits that a good software developer should have. James talks about his contributions to the developer community, his CSS testing tool <a href="https://github.com/jamesshore/quixote">quixote </a>and the <a href="https://www.agilefluency.org/">Agile Fluency Project.</a></p> <h3><strong>Links</strong></h3> <ul> <li><u><a href="https://devchat.tv/js-jabber/jsj-360-evolutionary-design-with-james-shore/">JavaScript Jabber 360: Evolutionary Design with James Shore</a></u></li> <li><u><a href="https://devchat.tv/js-jabber/jsj-349-agile-development-the-technical-side-with-james-shore/">JavaScript Jabber 349: Agile Development &ndash; The Technical Side with James Shore</a> </u></li> <li><u><a href="https://devchat.tv/my-angular-story/mas-061-james-shore/">My Angular Story 061: James Shore</a> </u></li> <li><a href="https://www.amazon.com/Art-Agile-Development-Pragmatic-Software-ebook/dp/B00F8QCK0E/ref=mt_kindle?_encoding=UTF8&amp;me=&amp;qid=1541462025">The Art Of Agile Development By James Shore</a></li> <li><a href="https://www.jamesshore.com/">James Shore&rsquo;s Website&nbsp;&nbsp;</a></li> <li><a href="https://twitter.com/jamesshore?lang=en">James Shore Twitter</a></li> <li><a href="https://github.com/jamesshore">James Shore&rsquo;s GitHub&nbsp;</a></li> <li><a href="https://www.agilefluency.org/">https://www.agilefluency.org/ </a></li> <li><a href="https://www.agilefluency.org/contact.php">Agile Fluency Join The Conversation</a></li> <li><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>James Shore:</strong></p> <ul> <li><a href="https://twitter.com/neil_killick">Neil Killick Twitter</a></li> <li><a href="http://vihart.com">http://vihart.com</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.ng-conf.org/">ng-conf</a></li> <li><a href="https://www.imdb.com/title/tt1677720/fullcredits">Ready Player One (2018)</a></li> </ul> <p>&nbsp;</p> <p>&nbsp;</p>
May 28, 2019
JSJ 366: npm with Mikeal Rogers
01:11:34
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a>&nbsp;offers a $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a>&nbsp;use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://promo.linode.com/javascriptjabber/">Linode</a>&nbsp;offers $20 credit</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>AJ O&rsquo;Neal</li> <li>Chris Ferdinandi</li> <li>Aimee Knight</li> <li>Charles Max Wood</li> </ul> <p>Joined by special guest: Mikeal Rogers</p> <h3><strong>Episode Summary</strong></h3> <p>This episode of JavaScript Jabber starts with Mikeal Rogers introducing himself and his work in brief. Charles clarifies that he wants to focus this show on some beginner content such as node.js basics, so Mikeal gives some historical background on the concept, elaborates on its modern usage and features and explains what &ldquo;streams&rdquo; are, for listeners who are starting to get into JavaScript. The panelists then discuss how languages like Go and Python compare to node.js in terms of growth and individual learning curves. Mikeal answers questions about alternate CLIs, package management, Pika, import maps and their effect on node.js, and on learning JavaScript in general. Chris, Charles and AJ also chip in with their experiences in teaching modern JS to new learners and its difficulty level in comparison to other frameworks. They wrap up the episode with picks.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://twitter.com/mikeal?lang=en">Mikeal on Twitter</a></li> <li><a href="https://github.com/mikeal">Mikeal on GitHub</a></li> </ul> <p>Follow JavaScript Jabber on&nbsp;<a href="https://devchat.tv/js-jabber/">Devchat.tv</a>,&nbsp;<a href="https://www.facebook.com/javascriptjabber">Facebook</a>&nbsp;and&nbsp;<a href="https://twitter.com/JSJabber">Twitter</a>.</p> <h3><strong>Picks</strong></h3> <p><strong>Chris Ferdinandi:</strong></p> <ul> <li><a href="https://www.mozilla.org/">Mozilla Firefox</a></li> <li><a href="https://artifactconf.com/">Artifact Conference</a></li> </ul> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="http://nautil.us/issue/70/variables/a-magician-explains-why-we-see-whats-not-there">A Magician Explains Why We See What&rsquo;s Not There</a></li> <li><a href="https://kevinmartinjose.com/2019/04/08/programming-doing-it-more-vs-doing-it-better/">Programming: doing it more vs doing it better</a></li> </ul> <p><strong>Mikeal Rogers:</strong></p> <ul> <li><a href="https://www.youtube.com/watch?v=83Gws-dPL8A">The Future of the Web &ndash; CascadiaJS 2018</a></li> <li><a href="https://brave.com/">Brave Browser</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://podwrench.com/">Podwrench</a></li> </ul>
May 28, 2019
MJS 108: Dan Shappir
53:12
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry </a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong> Dan Shappir</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles hosts Dan Shappir from Tel Aviv, Israel, who is a computer software developer and performance specialist at <a href="https://www.wix.com/">Wix</a>.</p> <p>Listen to Dan on the podcast JavaScript Jabber on this&nbsp;<u><a href="https://devchat.tv/js-jabber/jsj-334-web-performance-api-with-dan-shappir/">episode.</a></u></p> <p>Dan got a <a href="http://oldcomputers.net/ti994.html">TI-99/4</a> when he was very young and enjoyed programming games. He first started with Basic language. After he studied Computer Science at the Hebrew University of Jerusalem, he joined the Israel army to serve his military service. While in the military he also obtained his Masters Degree in Computer Science.</p> <p>Currently Dan is working as a Performance Tech Lead at <a href="https://www.wix.com/">Wix</a>, he works on &nbsp;speeding up the delivery and execution of 50+ million websites hosted on the Wix platform, as well as Wix own applications and services.</p> <h3><strong>Links</strong></h3> <ul> <li><u><a href="https://devchat.tv/js-jabber/jsj-334-web-performance-api-with-dan-shappir/">JavaScript Jabber 334: &ldquo;Web Performance API&rdquo; with Dan Shappir</a></u></li> <li><a href="https://twitter.com/DanShappir?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Dan Shappir&rsquo;s Twitter</a></li> <li><a href="https://il.linkedin.com/in/dshappir">Dan Shappir&rsquo;s LinkedIn</a></li> <li><a href="https://www.crunchbase.com/person/dan-shappir">Dan Shappir&rsquo;s Crunch Base</a></li> <li><a href="https://github.com/DanShappir">Dan Shappir&rsquo;s GitHub</a></li> <li><a href="https://conferences.oreilly.com/fluent/fl-ca/public/schedule/speaker/221820">Dan Shappir&rsquo;s Talk through Fluent</a></li> <li><a href="https://medium.com/@DanShappir">Dan Shappir&rsquo;s Medium</a></li> <li><a href="https://www.wix.com/">Wix</a></li> <li><a href="https://youtu.be/D-juPGb7EKY">Dan Shappir&rsquo;s YouTube Talk: JavaScript riddles for fun and profit</a></li> <li><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Dan Shappir:</strong></p> <ul> <li><a href="http://w3future.com/html/beyondJS/">Open Source Functional JavaScript Library</a></li> <li><a href="https://twitter.com/search?q=javascriptriddle">Dan&#39;s JavaScript Riddles on Twitter</a></li> <li><a href="https://www.youtube.com/watch?v=TAb0lpw7zy4">Dan&#39;s JavaScript Riddles in Conference Talk</a></li> <li><a href="https://www.wix.engineering/">Wix Engineering Blog</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://vdoto2.com/">VDOT O2</a></li> <li><a href="https://www.instagram.com/charlesmaxwood/">Charles Max Wood Instagram Account</a></li> </ul>
May 21, 2019
JSJ 365: Do You Need a Front-End Framework?
1:14:52
<h2 dir="ltr"><strong>Sponsors</strong></h2> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://sentry.io/">Sentry</a> use code &ldquo;devchat&rdquo; for 2 months free</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://triplebyte.com/jsjabber">Triplebyte</a> $1000 signing bonus</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://linode.com/javascriptjabber">Linode</a></strong></p> </li> </ul> <h3 dir="ltr"><strong>Panel</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong>Charles Max Wood</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Aimee Knight</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Chris Ferdinandi</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Joe Eames</strong></p> </li> </ul> <h3 dir="ltr"><strong>Episode Summary</strong></h3> <p dir="ltr"><strong>Today the panel discusses the necessity of a front end framework. Overall, there is a consensus that frameworks are not necessary in all situations. They discuss the downsides of using frameworks, such as being restricted by the framework when doing edge development and the time required for learning a framework. They talk about the value of frameworks for learning patterns in programming. </strong></p> <p dir="ltr"><strong>The panel delves into the pros and cons of different frameworks available. Joe shares a story about teaching someone first without a framework and then introducing them to frameworks, and the way it helped with their learning. One of the pros of frameworks is that they are better documented than manual coding. They all agree that it is not enough to just know a framework, you must continue to learn JavaScript as well. </strong></p> <p dir="ltr"><strong>They talk about the necessity for new programmers to learn a framework to get a job, and the consensus is that a knowledge of vanilla JavaScript and a general knowledge of the framework for the job is important. New programmers are advised to not be crippled by the fear of not knowing enough and to have an attitude of continual learning. In the technology industry, it is easy to get overwhelmed by all the developments and feel that one cannot possibly learn it all. Charles gives advice on how to find your place in the development world. The show concludes with the panel agreeing that frameworks are overall a good thing and are valuable tools. </strong></p> <p dir="ltr"><strong>Links</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://jwt.io/">JWT</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://angular.io/">Angular</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://vuejs.org/">Vue</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://backbonejs.org/">Backbone</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://golang.org/">GoLang</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://expressjs.com/">Express</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://reactjs.org/">React</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://redux.js.org/">Redux</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/WebReflection/hyperHTML">Hyper HTML</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://4each.cz/">4each</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://en.wikipedia.org/wiki/Pascal_(programming_language)">Pascal</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://jquery.com/">JQuery</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.npmjs.com/">Npm.js</a> </strong></p> </li> </ul> <p dir="ltr"><strong>Follow DevChat on <a href="https://www.facebook.com/DevChattv/?__tn__=%2Cd%2CP-R&amp;eid=ARDBDrBnK71PDmx_8gE_IeIEo5SnM7cyzylVBjAwfaOo1ck_6q3GXuRBfaUQZaWVvFGyEVjrhDwnS_tV">Facebook</a> and <a href="https://twitter.com/devchattv?lang=en">Twitter</a></strong></p> <h3 dir="ltr"><strong>Picks</strong></h3> <p dir="ltr"><strong>Charles Max Wood:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://podwrench.com/">Podwrench</a></strong></p> </li> </ul> <p dir="ltr"><strong>Aimee Knight:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://qz.com/work/1571065/how-to-love-your-job-and-avoid-burnout/">How to Love Your Job and Avoid Burnout</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/Good-They-Cant-Ignore-You/dp/1455509124?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">So Good They Can&rsquo;t Ignore You</a></strong></p> </li> </ul> <p dir="ltr"><strong>Chris Ferdinandi:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://vanillajstoolkit.com/">Vanilla JS toolkit</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://thinkster.io/">Thinkster</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://artifactconf.com/">Artifact Conference</a></strong></p> </li> </ul> <p dir="ltr"><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://binarycocoa.com/">Binary Cocoa</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.kickstarter.com/projects/binarycocoa/slamorama">Binary Cocoa Slamorama Kickstarter</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://binarycocoa.com/portfolio/straight-4/">Binary Cocoa Straight 4</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://git.rootprojects.org/root">Root</a></strong></p> </li> </ul>
May 21, 2019
MJS 107: Dan Fernandez
45:02
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry </a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;&nbsp;Dan Fernandez</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles hosts Dan Fernandez, Principal Group Program Manager at Microsoft.</p> <p>Listen to Dan on the podcast JavaScript Jabber on this&nbsp;<a href="https://devchat.tv/js-jabber/241-jsj-microsoft-docs-with-dan-fernandez/">episode</a>.</p> <p>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. &nbsp;Listen to the show for Dan&rsquo;s journey into programming and much more!</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://devchat.tv/js-jabber/241-jsj-microsoft-docs-with-dan-fernandez/">JavaScript Jabber 241: Microsoft Docs with Dan Fernandez </a></li> <li><a href="https://twitter.com/danielfe">Dan&rsquo;s Twitter</a></li> <li><a href="https://www.linkedin.com/in/danfernandez/">Dan&#39;s LinkedIn</a></li> <li><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></li> <li><a href="https://www.facebook.com/javascriptjabber/" rel="noopener noreferrer" target="_blank">https://www.facebook.com/javascriptjabber</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Dan Fernandez:</strong></p> <ul> <li><a href="https://www.theverge.com/2012/3/21/2890280/west-coast-customs-microsoft-ford-mustang-project-detroit">Microstang: Microsoft helps build a custom Mustang packed with Windows 8 and Kinect</a></li> <li><a href="https://devchat.tv/js-jabber/jsj-347-jamstack-with-divya-sasidharan-phil-hawksworth/">JavaScript Jabber 347: JAMstack with Divya Sasidharan &amp; Phil Hawksworth</a></li> </ul> <p>&nbsp;</p>
May 14, 2019
JSJ 364: Ember Octane with Sam Selikoff
52:39
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a> offers a $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://promo.linode.com/javascriptjabber/">Linode</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>AJ O&rsquo;Neal</li> </ul> <p>Joined by special guest: Sam Selikoff</p> <h3><strong>Episode Summary</strong></h3> <p>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&rsquo;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.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="http://www.samselikoff.com/">Sam&rsquo;s website</a></li> <li><a href="https://twitter.com/samselikoff?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor">Sam on Twitter</a></li> <li><a href="https://github.com/samselikoff">Sam on GitHub</a></li> </ul> <p>Follow JavaScript Jabber on <a href="https://devchat.tv/js-jabber/">Devchat.tv</a>, <a href="https://www.facebook.com/javascriptjabber">Facebook</a> and <a href="https://twitter.com/JSJabber">Twitter</a>.</p> <h3><strong>Picks</strong></h3> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li><a href="https://www.youtube.com/channel/UC4PooiX37Pld1T8J5SYT-SQ">Good Mythical Morning - YouTube</a></li> </ul> <p><strong>Sam Selikoff:</strong></p> <ul> <li><a href="https://www.amazon.com/Man-High-Castle-Season/dp/B00RSGIVVO">The Man In the High Castle</a> &nbsp;</li> <li><a href="https://tailwindcss.com/docs/what-is-tailwind/">Tailwind CSS</a></li> </ul>
May 14, 2019
MJS 106: Shawn Clabough
54:12
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;&nbsp;Shawn Clabough</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles hosts Shawn Clabough, Information Systems Manager and Senior Developer at Washington State University.</p> <p>Listen to Shawn on the podcast JavaScript Jabber on this&nbsp;<u><a href="https://devchat.tv/ruby-rogues/rr-314-dynamodb-rails-chandan-jhunjhunwal/">episode.</a></u></p> <p>Shawn got interested in computers in high school. His first computer was a <a href="https://en.wikipedia.org/wiki/TRS-80">TRS-80</a>. 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.</p> <h3><strong>Links</strong></h3> <ul> <li><u><a href="https://devchat.tv/js-jabber/development-in-a-public-institution-with-shawn-clabough/">JavaScript Jabber 258: Development in a Public Institution with Shawn Clabough</a></u></li> <li><a href="https://github.com/clabough">Shawn&#39;s GitHub</a></li> <li><a href="https://twitter.com/WOPR_Dev">Shawn&rsquo;s Twitter</a><a href="https://twitter.com/ulfius66?lang=en"> </a></li> <li><a href="https://www.linkedin.com/in/shawn-clabough-17589a10/">Shawn&#39;s LinkedIn </a></li> <li><a href="https://en.wikipedia.org/wiki/Pathfinder_Roleplaying_Game">Pathfinder Roleplaying Game</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> <li><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Shawn Clabough:</strong></p> <ul> <li><a href="https://slack.utahjs.com/">UtahJS Slack Group </a></li> <li><a href="https://slack.utahjs.com/">Utah .Net Slack Group </a></li> <li><a href="https://slack.utahjs.com/">Boise Code Camp </a></li> <li><a href="https://visualstudio.microsoft.com/vs2019-launch/">Visual Studio 2019 Launch Event - Visual Studio</a></li> <li><a href="https://www.imdb.com/title/tt0081633/">Time Bandits The&nbsp; Movie (1981)</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li>if you want to be a host on a podcast on <a href="https://devchat.tv/">tv</a> on any of the below topics, contact <a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood&nbsp;</a> <ul> <li>Open Source Sustainability and Maintainability</li> <li>AI &amp; Machine Learning</li> <li>Data Science</li> <li>Augmented Reality &amp; Virtual Reality &amp; Mixed Reality</li> <li>Internet of Things (IoT)</li> <li>Python</li> <li>.Net</li> </ul> </li> <li>If you are interested in becoming a sponsor for any of the above topics or the existing podcasts on <a href="https://devchat.tv/">devchat.tv</a>, contact <a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood&nbsp;</a></li> </ul> <p>&nbsp;</p> <ul> <li>If you are interested in being represented by <a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a> for a sponsorship contract for a podcast in any of the above topics, contact <a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood </a></li> </ul> <p>&nbsp;</p> <ul> <li>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 <a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a>. We would like to host these shows on <a href="https://devchat.tv/">devchat.tv</a>. Most of time time podcasts stop being recorded due to lack of time or lack of money.</li> </ul> <p>&nbsp;</p> <ul> <li>Become a Podwrench Beta User! If you would like to host a podcast but do not want to do it on <a href="https://devchat.tv/">tv</a> 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 <a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a> for more info.</li> </ul> <p>&nbsp;</p>
May 07, 2019
JSJ 363: Practical JAMstack and Serverless with Gareth McCumskey
1:10:36
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/rogues">Triplebyte</a> offers a $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="http://linode.com/javascriptjabber" rel="noopener noreferrer" target="_blank">Linode</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Charles Max Wood</li> <li>Aimee Knight</li> <li>AJ O&rsquo;Neal</li> <li>Aaron Frost</li> <li>Joe Eames</li> </ul> <p>Joined by Special Guest: Gareth McCumskey</p> <h3><strong>Summary</strong></h3> <p>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.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="http://herodev.com/">http://herodev.com/</a></li> <li><a href="https://thinkster.io/">https://thinkster.io/</a></li> <li><a href="https://jamstack.org/">https://jamstack.org/</a></li> <li><a href="https://www.mongodb.com/cloud/stitch">https://www.mongodb.com/cloud/stitch</a></li> <li><a href="https://expatexplore.com/">https://expatexplore.com/</a></li> <li><a href="https://serverless.com/">https://serverless.com/</a></li> <li><a href="https://www.cloud66.com/">https://www.cloud66.com/</a></li> <li><a href="https://aws.amazon.com/dynamodb/">https://aws.amazon.com/dynamodb/</a></li> <li><a href="https://twitter.com/garethmcc">https://twitter.com/garethmcc</a></li> <li><a href="https://www.facebook.com/javascriptjabber/">https://www.facebook.com/javascriptjabber</a></li> <li><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Charles Max Wood:</strong></p> <ul> <li>Join the mailing list</li> <li>Watch out for new podcasts</li> <li>Send me defunct podcasts you love <a href="mailto:chuck@devchat.tv">chuck@devchat.tv</a></li> </ul> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="https://www.nytimes.com/2019/03/28/smarter-living/productivity-isnt-about-time-management-its-about-attention-management.html">Productivity Isn&rsquo;t About Time Management. It&rsquo;s About Attention Management.</a></li> <li><a href="https://www.questnutrition.com/collections/protein-bars?gclid=Cj0KCQjwkIzlBRDzARIsABgXqV-XAySfLCXah7OSKcBb3aMgHmIfCWY8Rm9-eIvgTVwryC5DHItTg9AaAix6EALw_wcB">Quest Nutrition Protein Bars</a></li> </ul> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li><a href="https://www.amazon.com/Distant-Worlds-Music-Final-Fantasy/dp/B07JW8RKWH/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Distant Worlds: Music from Final Fantasy by Nobuo Uematsu</a></li> <li><a href="https://www.amazon.com/Legend-Concert-Limited-Original-Soundtrack/dp/B07L45D4S5/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Legend Of Zelda Concert 2018 Original Soundtrack by Never Land Orchestra </a>&nbsp;</li> <li><a href="https://www.amazon.com/How-Diagnose-Everything-Electronic-Second/dp/0071848290/ref=as_li_ss_tl?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">How to Diagnose and Fix Everything Electronic by Michael Jay Geier </a>&nbsp;</li> </ul> <p><strong>Aaron Frost:</strong></p> <ul> <li><a href="https://www.amazon.com/Go-Giver-Expanded-Little-Powerful-Business/dp/B0168Y6UO6/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">The Go-Giver, Expanded Edition: A Little Story About a Powerful Business Idea</a></li> </ul> <p><strong>Gareth McCumskey:</strong></p> <ul> <li><a href="https://www.finalfantasyxiv.com/">https://www.finalfantasyxiv.com/</a></li> <li><a href="https://itsfoss.com/steam-play/">Steam Play on Linux</a></li> </ul> <p><strong>Joe Eames:</strong></p> <ul> <li>Expanding your horizons</li> <li><a href="https://www.amazon.com/Seven-Languages-Weeks-Programming-Programmers/dp/193435659X/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages</a></li> <li><a href="https://www.amazon.com/Seven-More-Languages-Weeks-Shaping/dp/1941222153/ref=sr_1_2?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Seven More Languages in Seven Weeks: Languages That Are Shaping the Future</a></li> <li><a href="https://elm-lang.org/">https://elm-lang.org/</a></li> </ul>
May 07, 2019
JSJ 362: Accessibility with Chris DeMars
1:03:26
<h2 dir="ltr"><strong>Sponsors</strong></h2> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://sentry.io/">Sentry</a> use code &ldquo;devchat&rdquo; for 2 months free</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://triplebyte.com/jsjabber">Triplebyte</a> $1000 signing bonus</strong></p> </li> </ul> <h3 dir="ltr"><strong>Panel</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong>Charles Max Wood</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Aimee Knight</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Chris Ferdinandi</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Joe Eames</strong></p> </li> </ul> <p dir="ltr"><strong>Joined by Special Guest: Chris DeMars</strong></p> <h3 dir="ltr"><strong>Episode Summary</strong></h3> <p dir="ltr"><strong>Special guest Chris DeMars is from Detroit, MI. Currently, he works for <a href="https://www.tuftandneedle.com/">Tuft and Needle</a> 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. </strong></p> <p>&nbsp;</p> <p dir="ltr"><strong>Today the panel discusses web accessibility for people with disabilities. According to a <a href="https://webaim.org/projects/million/">study done by WebAIM</a>, 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. </strong></p> <p>&nbsp;</p> <p dir="ltr"><strong>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. </strong></p> <p dir="ltr"><strong>Links</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Introduction">The DOM</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://html.com/semantic-markup/">Semantic markup writings</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.w3schools.com/tags/att_img_alt.asp">Alt attribute</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.deque.com/axe/">Axe by DeQue</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>B<a href="https://github.com/topics/bootstrap">ootstrap</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques/Using_the_aria-label_attribute">Aria lable</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://webaim.org/projects/million/">WebAim study</a></strong></p> </li> </ul> <p dir="ltr"><strong>Follow DevChat on <a href="https://www.facebook.com/DevChattv/?__tn__=%2Cd%2CP-R&amp;eid=ARDBDrBnK71PDmx_8gE_IeIEo5SnM7cyzylVBjAwfaOo1ck_6q3GXuRBfaUQZaWVvFGyEVjrhDwnS_tV">Facebook</a> and <a href="https://twitter.com/devchattv?lang=en">Twitter</a></strong></p> <h3 dir="ltr"><strong>Picks</strong></h3> <p dir="ltr"><strong>Charles Max Wood:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.lootcrate.com/">LootCrate</a></strong></p> </li> </ul> <p dir="ltr"><strong>Aimee Knight:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://wyag.thb.lt/">Implementing Git in Python tutorial</a></strong></p> </li> </ul> <p dir="ltr"><strong>Chris Ferdinandi:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://ericwbailey.design/writing/2019-03-05-fighting-uphill.html">&quot;Fighting Uphill&quot; by Eric Bailey</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://ethanmarcotte.com/wrote/the-web-we-broke/">&ldquo;The Web We Broke&rdquo;</a> by Ethan Marcotte</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.allbirds.com/">AllBirds</a> sneakers</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://gomakethings.com/">Newsletter</a> </strong></p> </li> </ul> <p dir="ltr"><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/golang/go/wiki/MutexOrChannel">Golang Channel vs Mutex vs WaitGroup</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Nobuo Uematsu</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.youtube.com/watch?v=0YIT6MeaXT4">The Best Way to Tin Enameled Wire</a></strong></p> </li> </ul> <p dir="ltr"><strong>Joe Eames:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/CMON-CMNGIZ001-Gizmos-Board-Game/dp/B07C24CVK6/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Gizmos board game</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Thinkster.io accessibility course (not released yet)</strong></p> </li> </ul> <p dir="ltr"><strong>Chris DeMars:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://dixxonquality.com/">Dixxon Flannel Company</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://aquis.com/">Aquis.com</a> accessibility simulator</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://refactr.tech/">Refactr</a> accessibility workshop in June</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://chrisdemars.com/">Follow Chris </a></strong></p> </li> </ul>
Apr 30, 2019
MJS 105: Brian Woodward
26:35
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Host: Charles Max Wood</strong></h3> <h3><strong>Guest: Brian Woodward</strong></h3> <h3><strong>Summary</strong></h3> <p>Brian Woodward shares his programming story starting at 7 or 8 messing around on his dad&#39;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.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://devchat.tv/js-jabber/098-jsj-assemble-io-with-brian-woodward-and-jon-schlinkert/">https://devchat.tv/js-jabber/098-jsj-assemble-io-with-brian-woodward-and-jon-schlinkert/</a></li> <li><a href="https://github.com/enquirer/enquirer">https://github.com/enquirer/enquirer</a></li> <li><a href="https://github.com/generate/generate">https://github.com/generate/generate</a></li> <li><a href="https://github.com/assemble/assemble">https://github.com/assemble/assemble</a></li> <li><a href="https://github.com/verbose/verb">https://github.com/verbose/verb</a></li> <li><a href="https://github.com/update/update">https://github.com/update/update</a></li> <li><a href="https://twitter.com/doowb">https://twitter.com/doowb</a></li> <li><a href="https://github.com/doowb">https://github.com/doowb</a></li> <li><a href="https://doowb.com/">https://doowb.com</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Brain Woodward:</strong></p> <ul> <li><a href="https://www.cypress.io/">https://www.cypress.io/</a></li> <li><a href="https://github.com/jonschlinkert/maintainers-guide-to-staying-positive">https://github.com/jonschlinkert/maintainers-guide-to-staying-positive</a></li> <li><a href="https://github.com/jonschlinkert/idiomatic-contributing">https://github.com/jonschlinkert/idiomatic-contributing</a></li> <li><a href="https://github.com/jonschlinkert/guide-to-staying-productive">https://github.com/jonschlinkert/guide-to-staying-productive</a></li> <li><a href="http://www.toastmasters.org/">http://www.toastmasters.org/</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.instagram.com/charlesmaxwood/">https://www.instagram.com/charlesmaxwood/</a></li> <li><a href="https://problogger.com/31-days-to-build-a-better-blog-course/">https://problogger.com/31-days-to-build-a-better-blog-course/</a></li> </ul>
Apr 30, 2019
MJS 104: Ethan Brown
44:10
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry </a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly </a></li> </ul> <p><strong>Host: </strong>Charles Max Wood</p> <p><strong>Special Guest: </strong>Ethan Brown</p> <h3><strong>Summary</strong></h3> <p>Ethan Brown shares his story starting with his homeschooling days and getting into programming. He started selling commercial software through his dad&rsquo;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&#39;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.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.amazon.com/Web-Development-Node-Express-Leveraging-ebook/dp/B00LG17AGO/ref=as_li_ss_tl?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Web Development with Node and Express: Leveraging the JavaScript Stack by Ethan Brown</a></li> <li><a href="https://vms-inc.com/">https://vms-inc.com/</a></li> <li><a href="http://automerge.com/">http://automerge.com/</a></li> <li><a href="https://ant.design/">https://ant.design/</a></li> <li><a href="https://twitter.com/EthanRBrown">https://twitter.com/EthanRBrown</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://andyfrisella.com/products/the-power-list-daily-planner/">https://andyfrisella.com/products/the-power-list-daily-planner/</a></li> <li>Audiograms</li> <li><a href="https://wavve.co/">https://wavve.co/</a></li> <li><a href="https://snappa.com/">https://snappa.com/</a></li> </ul> <p><strong>Ethan Brown</strong></p> <ul> <li><a href="https://cooperpress.com/">https://cooperpress.com/</a></li> <li><a href="https://regexcrossword.com/">https://regexcrossword.com/</a></li> </ul>
Apr 23, 2019
JSJ 361: Enough with the JS Already with Nicholas Zakas
1:08:20
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/rogues">Triplebyte</a> offers a $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>AJ O&rsquo;Neal</li> <li>Joe Eames</li> <li>Aimee Knight</li> <li>Charles Max Wood</li> <li>Chris Ferdinandi</li> </ul> <p>Joined by Special guest: Nicholas Zakas</p> <h3><strong>Summary</strong></h3> <p>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.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.youtube.com/watch?v=li4Y0E_x8zE">https://www.youtube.com/watch?v=li4Y0E_x8zE</a></li> <li><a href="https://www.slideshare.net/nzakas/enough-withthejavascriptalready">https://www.slideshare.net/nzakas/enough-withthejavascriptalready</a></li> <li><a href="https://twitter.com/slicknet">https://twitter.com/slicknet</a></li> <li><a href="https://humanwhocodes.com/">https://humanwhocodes.com/</a></li> <li><a href="https://www.facebook.com/javascriptjabber/">https://www.facebook.com/javascriptjabber</a></li> <li><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Chris Ferdinandi:</strong></p> <ul> <li><a href="https://www.youtube.com/watch?v=0DAmWHxeoKw">The Umbrella Academy Official Trailer</a></li> <li><a href="https://github.com/features/actions">https://github.com/features/actions</a></li> </ul> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li>Jurassic Park</li> <li>Terminator 2</li> <li><a href="https://www.amazon.com/E6000-220011-High-Viscosity-Adhesive/dp/B0044SB3M8/ref=sr_1_5?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">E6000 adhesive</a></li> </ul> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="https://www.reebok.com/us/reebok-legacy-lifter/BD4730.html">https://www.reebok.com/us/reebok-legacy-lifter/BD4730.html</a></li> <li><a href="https://www.holloway.com/g/equity-compensation">https://www.holloway.com/g/equity-compensation</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://podfestexpo.com/">https://podfestexpo.com/</a></li> <li><a href="http://charlesmaxwood.com/">http://charlesmaxwood.com/</a></li> <li><a href="https://www.11ty.io/">https://www.11ty.io/</a></li> <li><a href="https://www.netlify.com/">https://www.netlify.com/</a></li> </ul> <p><strong>Joe Eames:</strong></p> <ul> <li><a href="https://www.mysteryscenemag.com/blog-article/5905-tom-straw-the-author-behind-castle">https://www.mysteryscenemag.com/blog-article/5905-tom-straw-the-author-behind-castle</a></li> <li>Richard Castle books</li> <li><a href="https://vanillajslist.com/">https://vanillajslist.com/</a></li> </ul> <p><strong>Nicholas Zakas:</strong></p> <ul> <li><a href="https://www.amazon.com/Power-Full-Engagement-Managing-Performance/dp/0743226755/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">The Power of Full Engagement: Managing Energy, Not Time, Is the Key to High Performance and Personal Renewal by Jim Loehr and Tony Schwartz</a></li> <li><a href="https://opencollective.com/eslint">https://opencollective.com/eslint</a></li> </ul>
Apr 23, 2019
MJS 103: Isaac Schlueter
51:43
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly&nbsp;</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;Isaac Schlueter</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles Max Wood hosts Isaac Schlueter, co-founder and Chief Product Officer at <a href="https://www.npmjs.com/">NPM</a>.</p> <p>Listen to Isaac&rsquo;s journey as a developer on the podcast&nbsp;My Java Story on this <a href="https://devchat.tv/js-jabber/mjs-004-my-js-story-isaac-schlueter/">episode</a> and on the podcast My Angular Story on this <a href="https://devchat.tv/js-jabber/mjs-004-my-js-story-isaac-schlueter/">episode</a>.</p> <p>Isaac recently switched roles from Chief Executive Officer to Chief Product Officer, he explains the reasoning behind this switch. He talks about <a href="https://www.npmjs.com/products/enterprise">NPM Enterprise </a>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<a href="https://www.npmjs.com/products/enterprise">.</a></p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://devchat.tv/js-jabber/mjs-004-my-js-story-isaac-schlueter/">My JavaScript Story Isaac Schlueter</a></li> <li><a href="https://devchat.tv/adv-in-angular/isaac-schlueter-my-angular-story/">My Angular Story Isaac Schlueter</a></li> <li><a href="https://amzn.to/2EuvatG%20-%20Startup%20Nation"><u>JavaScript Jabber Node &amp; NPM with Isaac Schlueter</u> </a></li> <li><a href="https://twitter.com/izs?lang=en">Isaac&#39;s Twitter</a></li> <li><a href="https://twitter.com/npmjs">NPM&#39;s Twitter</a></li> <li><a href="http://blog.npmjs.org/">NPM&#39;s blog</a></li> <li><a href="https://www.npmjs.com/">NPM website</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Isaac Schlueter:</strong></p> <ul> <li><a href="https://github.com/vadimdemedes/ink"><u>Ink</u></a></li> <li><u><a href="https://www.netflix.com/title/80186863">Umbrella Academy Netflix</a></u></li> <li><a href="https://play.google.com/store/apps/details?id=com.zutgames.ilovehue&amp;hl=en">I Love Hue</a></li> <li><a href="http://dobyfriday.com/">Do By Friday</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.netflix.com/gb/title/80029822"><u>The Expanse (TV Series)</u></a></li> <li><a href="https://www.netflix.com/title/8010569"><u>The Travelers (TV Series)</u></a></li> <li><a href="http://podfest.us/2018/"><u>Podfest Multimedia Expo</u></a></li> <li><u><a href="https://www.netlify.com/">Netlify</a></u></li> <li><u><a href="https://www.11ty.io/">Eleventy</a></u></li> <li><a href="https://www.werealive.com/"><u>We&#39;re Alive</u></a></li> <li><u><a href="http://charlesmaxwood.com/">Charles&rsquo; Personal Blog</a></u></li> <li>&nbsp;</li> </ul>
Apr 16, 2019
JSJ 360: Evolutionary Design with James Shore
1:02:33
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a> $1000 signing bonus</li> <li><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Aaron Frost</li> <li>AJ O&rsquo;Neal</li> <li>Joe Eames</li> <li>Aimee Knight</li> <li>Chris Ferdinandi</li> </ul> <p>Joined by special guest: James Shore</p> <h3><strong>Episode Summary</strong></h3> <p>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.</p> <p>The panelists discuss the difficulties of evolutionary design and how to keep the code manageable. &nbsp;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.</p> <p>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.</p> <p><strong>Links</strong></p> <ul> <li><a href="https://github.com/a-jie/AgileJS">Agile</a></li> <li><a href="https://github.com/angular/angular.js">Angular</a></li> <li><a href="https://github.com/topics/api">API</a></li> <li><a href="https://github.com/arkon/crcmaker">CRC cards</a> (class responsibility collaborators)</li> <li><a href="https://github.com/topics/ember">Ember</a></li> <li><a href="https://github.com/JetBrains/intellij-community">IntelliJ</a></li> <li><a href="https://github.com/topics/npm">NPM</a></li> <li><a href="https://github.com/facebook/react">React</a></li> <li><a href="https://github.com/topics/redux">Redux </a></li> <li><a href="https://www.scrum.org/">Scrum</a></li> <li><a href="https://github.com/bingdian/waterfall">Waterfall</a></li> <li><a href="https://github.com/davestewart/xjsfl">XJS</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li>Spiderman: Into the Spider-Verse</li> <li><a href="https://en.wikipedia.org/wiki/List_of_albums_with_tracks_hidden_in_the_pregap">Pre-gap tracks album list</a></li> <li>QuickChip remover alloy</li> </ul> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="https://puns.dev/">Puns.dev</a></li> <li>Bouldering</li> </ul> <p><strong>James Shore:</strong></p> <ul> <li>Spiderman: Into the Spider Verse</li> <li><a href="https://www.amazon.com/Pandemic-Legacy-Season-1-Blue/dp/B00TQ5SEAI/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Pandemic Legacy</a></li> </ul> <p><strong>Aaron Frost:</strong></p> <ul> <li>Easter Candy, especially <ul> <li><a href="https://www.amazon.com/Nerds-Covered-Chewy-Bumpy-Jelly/dp/B006VH5A1A/ref=sr_1_6??ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Nerd Jelly beans</a></li> <li><a href="https://www.amazon.com/Cadbury-Easter-Candy-Coated-Chocolate/dp/B007IW68MM/ref=sr_1_9?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Cadbury Mini Eggs</a></li> </ul> </li> <li>Fun D&amp;D moments</li> </ul> <p><strong>Joe Eames:</strong></p> <p><a href="https://www.amazon.com/Lucky-Duck-Games-Chronicles-Crime/dp/B07CN8TJDQ/ref=sr_1_fkmrnull_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Chronicles of Crime</a> board game</p>
Apr 16, 2019
JSJ 359: Productivity with Mani Vaya
1:10:42
<h3><a href="https://devchat--2000books.thrivecart.com/2x-productivity-now/">Get Mani&#39;s 2x Productivity Course</a></h3> <h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://triplebyte.com/rogues">Triplebyte</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Aaron Frost</li> <li>AJ O&rsquo;Neal</li> <li>Joe Eames</li> <li>Aimee Knight</li> <li>Charles Max Wood</li> </ul> <p>Joined by special guest: Mani Vaya</p> <h3><strong>Episode Summary</strong></h3> <p dir="ltr">Mani is the founder of a book summary business called <a href="http://www.2000books.com/" target="_blank">www.2000books.com</a></p> <p dir="ltr">At 2000 Books, Mani studies the world&rsquo;s greatest business and personal development books.</p> <p dir="ltr">Then he takes the most important ideas from each book and presents them in tight, 9- to 15-minute video summaries.</p> <p dir="ltr">You get the 4-7 most important ideas in a condensed format that&#39;s easy to absorb, easy to review, and easy to put into action immediately.</p> <p dir="ltr">To help people with productivity, Mani created an awesome course called &ldquo;10x Productivity&quot;</p> <p dir="ltr">His &ldquo;10x Productivity&quot; video course contains summaries of the 50 greatest books ever written on time management, productivity, goal setting, systems, execution, strategy and leverage.</p> <p dir="ltr">&quot;10x Productivity&quot; pack includes summaries of all the NY Times Best Sellers on Productivity &amp; Time Management, such as:</p> <ul> <li dir="ltr"> <p dir="ltr">The 7 Habits of Highly Effective People by Stephen Covey</p> </li> <li dir="ltr"> <p dir="ltr">Getting Things Done by David Allen</p> </li> <li dir="ltr"> <p dir="ltr">Deep Work by Cal Newport</p> </li> <li dir="ltr"> <p dir="ltr">The Power of Habit by Charles Duhigg</p> </li> <li dir="ltr"> <p dir="ltr">The One Thing by Gary Keller</p> </li> <li dir="ltr"> <p dir="ltr">Essentialism by Greg McKeown</p> </li> </ul> <p dir="ltr">All together, this collection includes more than 250 strategies, tips, tools &amp; techniques for:</p> <p dir="ltr">- Becoming more productive</p> <p dir="ltr">- Getting results rather than being busy, stressed out &amp; frustrated</p> <p dir="ltr">- Time Management</p> <p dir="ltr">- Defeating procrastination</p> <p dir="ltr">- Achieving big goals</p> <p dir="ltr">- Hacking your brain for high performance</p> <p dir="ltr">- Identifying the highest leverage points that lead to much faster results</p> <p dir="ltr">- Creating powerful habits</p> <p dir="ltr">- Installing execution systems that make goal achievement inevitable</p> <p dir="ltr">10x Productivity Package contains:</p> <ul> <li dir="ltr"> <p dir="ltr">Summaries of the 50 greatest books ever written on Productivity &amp; Time Management</p> </li> <li dir="ltr"> <p dir="ltr">250+ greatest ideas, tips and strategies on Time Management &amp; Productivity</p> </li> <li dir="ltr"> <p dir="ltr">10+ Hours of no-fluff solid Video Content</p> </li> <li dir="ltr"> <p dir="ltr">PDF Summaries of all 50 books</p> </li> </ul> <p dir="ltr">Since Mani is my friend and fellow mastermind member, I worked with him to get you guys an amazing discount (using discount code &ldquo;DEVCHAT&rdquo;) on the <a href="https://devchat--2000books.thrivecart.com/2x-productivity-now/" target="_blank">10x Productivity Book Summary Pack which you can find here</a></p> <p dir="ltr">Make sure to use the Coupon code &ldquo;DEVCHAT&rdquo; to get the discount.</p> <p><strong>Links</strong></p> <ul> <li><a href="https://devchat--2000books.thrivecart.com/2x-productivity-now/">Mani&rsquo;s 2x Productivity Course</a> use the code &ldquo;devchat&rdquo; for a discount</li> </ul> <h3><strong>Picks</strong></h3> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li>M. Night Shyamalan&rsquo;s <em>The Village</em></li> <li>colophony/pine sap/rosin/flux for electronics work</li> </ul> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="https://medium.com/@tammybutow/graduating-from-bootcamp-and-interested-in-becoming-a-site-reliability-engineer-b69a38ce858b">Interested In Becoming A Site Reliability Engineer?</a> blog post</li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="http://entreprogrammers.libsyn.com/episode-248-pomodoro-action">Entreprogrammers episode 248</a></li> <li><a href="https://kanbanflow.com/">Kanbonflow</a></li> <li>Physical Pomodoro timer</li> </ul> <p><strong>Mani Vaya:</strong></p> <ul> <li><a href="https://www.npr.org/podcasts/510313/how-i-built-this">NPR&rsquo;s How I Built This podcast</a></li> <li><a href="https://www.2000books.com/wp/category/podcast/">2000 Books podcast</a></li> </ul>
Apr 09, 2019
MJS 102: Gil Tayar
39:58
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry </a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly&nbsp;</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;Gil Tayar</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles Max Wood hosts Gil Tayar, a Senior Architect at&nbsp;<u><a href="https://applitools.com/">Applitools</a></u>&nbsp;from Israel.</p> <p>Listen to Gil on the podcast&nbsp;JavaScript Jabber <a href="https://devchat.tv/js-jabber/jsj-341-testing-in-javascript-with-gil-tayar/">Testing in JavaScript with Gil Tayar</a>.</p> <p>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 &nbsp;for <a href="https://www.wix.com/">Wix</a> before he went onto co-found his own startup. You can listen to Dan Shappir, another developer from <a href="https://www.wix.com/">Wix</a> that has been a guest on the podcast JavaScript Jabber on this <a href="https://devchat.tv/js-jabber/jsj-334-web-performance-api-with-dan-shappir/">episode</a>.</p> <p>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 <u>Applitools</u>. As a Senior Architect in Applitools R&amp;D, he has designed and built Applitools&#39; Rendering Service.</p> <p><strong>Links</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-341-testing-in-javascript-with-gil-tayar/">JavaScript Jabber: Testing in JavaScript with Gil Tayar</a></li> <li><a href="https://devchat.tv/js-jabber/jsj-334-web-performance-api-with-dan-shappir/">JavaScript Jabber: &ldquo;Web Performance API&rdquo; with Dan Shappir</a></li> <li><a href="https://amzn.to/2EuvatG%20-%20Startup%20Nation">Start-up Nation: The Story of Israel&#39;s Economic Miracle by Dan Senor and Saul Singer </a></li> <li><a href="https://amzn.to/2EuvatG%20-%20Startup%20Nation"><u>WIX </u></a></li> <li><a href="https://amzn.to/2EuvatG%20-%20Startup%20Nation">Gil&rsquo;s LinkedIn </a></li> <li><a href="https://twitter.com/giltayar?lang=en">Gil&rsquo;s Twitter</a></li> <li><a href="https://medium.com/@giltayar">Gil&rsquo;s Medium</a></li> <li><a href="https://applitools.com/">Applitools</a></li> <li><a href="https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/">Kubernetes</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Gil Tayar:</strong></p> <ul> <li><u><a href="https://www.youtube.com/channel/UCP1AejCL4DA7jYkZAELRhHQ">The Polish German War</a></u></li> <li><a href="https://www.youtube.com/channel/UCUcyEsEjhPEDf69RRVhRh4A">The Great War 1919 Channel</a></li> <li><a href="https://en.wikipedia.org/wiki/Peaky_Blinders_(TV_series)">Peaky Blinders</a></li> <li><a href="https://en.wikipedia.org/wiki/My_Struggle_(Knausg%C3%A5rd_novels)">My Struggle (Knausg&aring;rd novels)</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><u><a href="https://andyfrisella.com/blogs/mfceo-project-podcast">The MFCEO Project Podcast - Andy Frisella </a></u></li> <li><u><a href="https://www.garyvaynerchuk.com/the-askgaryvee-show-podcast/">The #AskGaryVee Show podcast! - Gary Vaynerchuk</a></u></li> <li><u><a href="https://www.audible.com/pd/A-Farewell-to-Arms-Audiobook/B002V5CSG6?ds_rl=1262685&amp;ds_rl=1263561&amp;ds_rl=1260658&amp;mkwid=DSAINTTitle_dc&amp;pcrid=239333741509&amp;pmt=b&amp;pkw=&amp;source_code=GO1GBSH07271690CB&amp;cvosrc=ppc%20dynamic%20search.google.634950925&amp;cvo_crid=2">A Farewell to Arms by Ernest Hemingway</a></u></li> </ul> <p>&nbsp;</p> <p>&nbsp;</p>
Apr 09, 2019
JSJ 358: Pickle.js, Tooling, and Developer Happiness with Anatoliy Zaslavskiy
1:06:30
<h2 dir="ltr"><strong>Sponsors</strong></h2> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://triplebyte.com/jsjabber">Triplebyte offers a $1000 signing bonus</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.cachefly.com/">CacheFly</a></strong></p> </li> </ul> <h3 dir="ltr"><strong>Panel</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Charles Max Wood</strong></p> </li> </ul> <p dir="ltr"><strong>Joined by Special Guest: Anatoliy Zaslavskiy</strong></p> <h3 dir="ltr"><strong>Summary</strong></h3> <p dir="ltr"><strong>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. </strong></p> <h3 dir="ltr"><strong>Links</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/storybooks/storybook">https://github.com/storybooks/storybook</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.picklejs.com/docs/getting-started">https://www.picklejs.com/docs/getting-started</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://opencv.org/">https://opencv.org/</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://itunes.apple.com/us/app/snapcrap/id1436238261">https://itunes.apple.com/us/app/snapcrap/id1436238261</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://tolicodes.com/">https://tolicodes.com/</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.facebook.com/tolicodes">https://www.facebook.com/tolicodes</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.facebook.com/javascriptjabber/">https://www.facebook.com/javascriptjabber</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://twitter.com/JSJabber">https://twitter.com/JSJabber</a></strong></p> </li> </ul> <h3 dir="ltr"><strong>Picks</strong></h3> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/Phoenix-Project-DevOps-Helping-Business/dp/0988262592/ref=as_li_ss_tl?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win by Gene Kim</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/How-Diagnose-Everything-Electronic-Second/dp/0071848290/ref=as_li_ss_tl?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">How to Diagnose and Fix Everything Electronic, Second Edition by Michael Jay Geier </a>&nbsp;</strong></p> </li> </ul> <p dir="ltr"><strong>Charles Max Wood</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://andyfrisella.com/blogs/mfceo-project-podcast">https://andyfrisella.com/blogs/mfceo-project-podcast</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.garyvaynerchuk.com/the-askgaryvee-show-podcast/">https://www.garyvaynerchuk.com/the-askgaryvee-show-podcast/</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/1-Page-Marketing-Plan-Customers-Money/dp/1989025013/ref=as_li_ss_tl?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">The 1-Page Marketing Plan: Get New Customers, Make More Money, And Stand out From The Crowd by Allan Dib</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/Skyward-Brandon-Sanderson/dp/0399555773/ref=as_li_ss_tl?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Skyward by Brandon Sanderson</a> </strong></p> </li> </ul> <p dir="ltr"><strong>Anatoliy Zaslavskiy</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong>Acro yoga</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://www.cuddleparty.com/">http://www.cuddleparty.com/</a></strong></p> </li> </ul> <ul> <li dir="ltr"> <p dir="ltr">&nbsp;</p> </li> </ul>
Apr 02, 2019
MJS 101: Chris Ferdinandi
51:01
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a>&nbsp;use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://clubhouse.io/jsstory">Clubhouse</a></li> <li><a href="https://www.cachefly.com/">CacheFly&nbsp;</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;Chris Ferdinandi</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles Max Wood hosts Chris Ferdinandi, a Senior Front-End Engineer at <a href="https://www.mashery.com/">Mashery</a>. Chris is also a panelist on the podcast <a href="s://devchat.tv/js-jabber">JavaScript Jabber</a> and runs <a href="https://gomakethings.com/">Go Make Things</a>.</p> <p>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.</p> <p>Chris authors Vanilla JavaScript Pocket Guides which are short, focused e-books and video courses made for beginners.</p> <h3><strong>Links</strong></h3> <ul> <li><u><a href="https://devchat.tv/js-jabber/jsj-299-learn-javascript-youre-not-developer-chris-ferdinandi/">JavaScript Jabber: How To Learn JavaScript When You&rsquo;re Not a Developer with Chris Ferdinandi</a></u></li> <li><u><a href="https://vanillajsguides.com/">Vanilla JavaScript Pocket Guides</a></u></li> <li><u><a href="https://gomakethings.com/">Go Make Things</a></u></li> <li><u><a href="https://github.com/cferdinandi">Chris&#39; GitHub</a></u></li> <li><u><a href="https://twitter.com/chrisferdinandi">Chris&#39; Twitter</a></u></li> <li><u><a href="https://www.linkedin.com/in/cferdinandi">Chris&#39; LinkedIn</a></u></li> <li><u><a href="https://www.mashery.com/">Mashery</a></u></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Chris Ferdinandi:</strong></p> <ul> <li><u><a href="https://www.brucelawson.co.uk/2019/accessibility-back-to-the-future/">Accessibility: Back to the Future by Bruce Lawson</a></u></li> <li><u><a href="https://movies.disney.com/ralph-breaks-the-internet-wreck-it-ralph-2">Ralph Breaks the Internet | Disney Movies</a></u></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><u>Running along San&nbsp;Francisco&nbsp;Bay</u></li> <li><u>Marriage</u></li> </ul>
Mar 28, 2019
MJS 100: Joe Eames
1:00:43
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://clubhouse.io/jsstory">Clubhouse </a></li> <li><a href="https://www.cachefly.com/">CacheFly&nbsp;</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Guest:</strong>&nbsp;Joe Eames</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles Max Wood hosts Joe Eames, CEO of Thinkster.io and organizer of many different conferences, two of which are the AngularJS conference, ng-conf, and the WordPress developer conference, LoopConf.</p> <p>Joe is a front end web developer and an educator. He has authored over 10 Pluralsight.com courses.&nbsp;He is also a panelist on the JavaScript Jabber podcast and the Adventures in Angular podcast on&nbsp;<a href="https://devchat.tv/">DevChat.TV</a>.</p> <p>Joe talks about his passion project, being on the organization team of Framework Summit, a two-day&nbsp;conference&nbsp;focused on all front end JavaScript&nbsp;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.</p> <p>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.</p> <p>Aside from organizing conferences Joe&rsquo;s second passion is education. He has started up a podcast called Dev Ed Podcast.</p> <p>Joe has recently become the CEO of Thinkster.io. Thinkster.io 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 &ldquo;generate&rdquo; solutions to problems. He explains the concept of &ldquo;interleaving&rdquo; while learning a subject which helps students retain more and learn faster.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://webflow.com/">https://webflow.com/</a></li> <li><a href="https://devchat.tv/my-angular-story/mas-049-joe-eames/">My Angular Story 049: Joe Eames</a></li> <li><a href="https://devchat.tv/my-angular-story/mas-073-joe-eames/">My Angular Story 073: Joe Eames</a></li> <li><a href="https://twitter.com/josepheames">https://twitter.com/josepheames</a></li> <li><a href="https://medium.com/@josepheames">https://medium.com/@josepheames</a></li> <li><a href="https://github.com/joeeames">https://github.com/joeeames</a></li> <li><a href="https://thinkster.io/">https://thinkster.io/</a></li> <li><a href="https://reactrally.com/">https://reactrally.com</a></li> <li><a href="https://github.com/sveltejs/svelte">https://github.com/sveltejs/svelte</a></li> <li><a href="https://github.com/stimulusjs/stimulus">https://github.com/stimulusjs/stimulus</a></li> <li><a href="https://www.ng-conf.org/">https://www.ng-conf.org/</a></li> <li><a href="https://twitter.com/loopconf?lang=en">https://twitter.com/loopconf</a></li> <li><a href="http://www.pluralsight.com/author/joe-eames">http://www.pluralsight.com/author/joe-eames</a></li> <li><a href="https://www.facebook.com/adventuresinangular">https://www.facebook.com/adventuresinangular</a></li> <li><a href="https://twitter.com/angularpodcast">https://twitter.com/angularpodcast</a></li> <li><a href="https://www.frameworksummit.com/">https://www.frameworksummit.com/</a></li> <li><a href="https://conf.reactjs.org/">https://conf.reactjs.org/</a></li> <li><a href="http://devedpodcast.com/">Dev Ed Podcast</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Joe Eames:</strong></p> <ul> <li><a href="https://www.amazon.com/CMON-CMNGIZ001-Gizmos-Board-Game/dp/B07C24CVK6/ref=sr_1_1%20?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Gizmo Board Game</a></li> <li><a href="https://www.amazon.com/Lucky-Duck-Games-Chronicles-Crime/dp/B07CN8TJDQ/ref=sr_1_1%20?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Chronicles of Crime Board Game</a></li> <li><a href="https://www.tauleadergames.com/deep-space-d6">Deep Space D-6 Board Game</a></li> <li><a href="https://boardgamegeek.com/">https://boardgamegeek.com/</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="http://www.wonderforge.com/games/disney/villainous/">Villainous Board Game</a></li> <li><a href="https://www.zmangames.com/en/products/pandemic-legacy-season-2/">Pandemic Legacy Season 2 Board Game</a></li> <li><a href="https://www.spacecowboys.fr/splendor/language:eng">Splendor Board Game</a></li> <li><a href="https://theop.games/products/game/harry-potter-hogwarts-battle-a-cooperative-deck-building-game/">Harry Potter: Hogwarts Battle Board Game</a></li> </ul>
Mar 27, 2019
JSJ 357: Event-Stream & Package Vulnerabilities with Richard Feldman and Hillel Wayne
01:10:16
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a></li> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://clubhouse.io/jsjabber">Clubhouse</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Aaron Frost</li> <li>AJ O&rsquo;Neal</li> <li>Chris Ferdinandi</li> <li>Joe Eames</li> <li>Aimee Knight</li> <li>Charles Max Wood</li> </ul> <p>Joined by special guests: Hillel Wayne and Richard Feldman</p> <p><strong>Episode Summary</strong></p> <p>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.</p> <p><strong>Links</strong></p> <ul> <li><a href="https://shemesh.larc.nasa.gov/iria03/p13-leveson.pdf">STAMP model in accident investigation</a></li> <li><a href="https://twitter.com/Hillelogram?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor">Hillel&rsquo;s Twitter</a></li> <li><a href="https://www.hillelwayne.com/about/">Hillel&rsquo;s website</a></li> <li><a href="https://twitter.com/rtfeldman?lang=en">Richard&rsquo;s Twitter</a></li> <li><a href="https://www.hillelwayne.com/post/stamping-on-eventstream/">Stamping on Event-Stream</a></li> </ul> <p><strong>Picks</strong></p> <p>Joe Eames:</p> <ul> <li><a href="https://boardgamegeek.com/boardgame/233312/stuffed-fables">Stuffed Fables</a></li> </ul> <p>Aimee Knight:</p> <ul> <li><a href="https://landing.google.com/sre/sre-book/toc/">SRE book - Google</a></li> <li><a href="https://shop.lululemon.com/p/women-pants/In-Movement-78-Tight/_/prod8760192">Lululemon leggings</a></li> <li><a href="https://open.spotify.com/artist/1QFYii9jMvldjVBUzBC9t2">DVSR - Band</a></li> </ul> <p>Aaron Frost:</p> <ul> <li><a href="https://2019.jsconf.us/">JSConf US</a></li> </ul> <p>Chris Ferdinandi:</p> <ul> <li><a href="https://pawsnewengland.com/">Paws New England</a></li> <li><a href="https://vanillajsguides.com/">Vanilla JS Guides</a></li> </ul> <p>Charles Max Wood:</p> <ul> <li><a href="https://amzn.to/2S6YiQH?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Sony Noise Cancelling Headphones</a></li> <li><a href="https://classifieds.ksl.com/">KSL Classifieds</a></li> <li><a href="https://www.upwork.com">Upwork</a></li> </ul> <p>Richard Feldman:</p> <ul> <li><a href="https://www.manning.com/books/elm-in-action">Elm in Action</a></li> <li><a href="https://boardgamegeek.com/boardgame/102652/sentinels-multiverse">Sentinels of the Multiverse</a></li> </ul> <p>Hillel Wayne:</p> <ul> <li><a href="https://www.elminthespring.org/">Elm in the Spring</a></li> <li><a href="https://www.apress.com/us/book/9781484238288">Practical TLA+</a></li> <li><a href="https://www.ninachicago.com/">Nina Chicago - Knitting</a></li> <li><a href="https://boardgamegeek.com/boardgame/214879/tomb-trader">Tomb Trader</a></li> </ul>
Mar 26, 2019
MJS 099: Christopher Buecheler
42:45
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://clubhouse.io/jsstory">Clubhouse </a></li> <li><a href="https://www.cachefly.com/">CacheFly&nbsp;</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Guest:</strong>&nbsp;Christopher Buecheler</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles hosts Christopher Buecheler, novelist, web developer and founder of CloseBrace, a JavaScript tutorial and resource site.</p> <p>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&nbsp; <a href="https://devchat.tv/js-jabber/jsj-338-its-supposed-to-hurt-get-outside-of-your-comfort-zone-to-master-your-craft-with-christopher-buecheler/">JavaScript Jabber podcast</a>.</p> <p>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.</p> <p><strong>Links</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-338-its-supposed-to-hurt-get-outside-of-your-comfort-zone-to-master-your-craft-with-christopher-buecheler/">https://devchat.tv/js-jabber/jsj-338-its-supposed-to-hurt-get-outside-of-your-comfort-zone-to-master-your-craft-with-christopher-buecheler/</a></li> <li><a href="https://closebrace.com/">CloseBrace</a></li> <li><a href="https://reactjs.org/">React.js</a></li> <li><a href="https://twitter.com/closebracejs">https://twitter.com/closebracejs</a></li> <li><a href="https://twitter.com/cwbuecheler">Christopher Buecheler&rsquo;s Twitter</a></li> <li><a href="http://cwbuecheler.com/">Christopher Buecheler&rsquo;s Website</a></li> <li><a href="https://www.linkedin.com/in/cwbuecheler">Christopher Buecheler&rsquo;s LinkedIn</a></li> <li><a href="https://github.com/cwbuecheler">Christopher Buecheler&rsquo;s GitHub</a></li> <li><a href="https://closebrace.com/categories/five-minute-react">https://closebrace.com/categories/five-minute-react</a></li> <li><a href="mailto:contact@closebrace.com">contact@closebrace.com</a></li> <li><a href="http://stitchly.io/">http://stitchly.io/</a></li> <li><a href="https://www.amazon.com/Christopher-Buecheler/e/B004KA4MLE">Christopher Buecheler&#39;s Amazon link</a></li> <li><a href="https://www.amazon.com/gp/product/B07KGNG2VX/ref=dbs_a_def_rwt_bibl_vppi_i3">Elixir by Christopher Buecheler</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> <li><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></li> <li><a href="https://www.facebook.com/javascriptjabber">https://www.facebook.com/javascriptjabber</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Christopher Buecheler:</strong></p> <ul> <li><a href="https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer">Bracket Pair Colorizer</a></li> <li><a href="https://marketplace.visualstudio.com/items?itemName=vincaslt.highlight-matching-tag">Highlight Matching Tag</a></li> <li><a href="https://gitlens.amod.io/">https://gitlens.amod.io/</a></li> <li><a href="https://www.amazon.com/Fifth-Season-Broken-Earth/dp/0316229296">Fifth Season by N. K. Jemisin</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://code.visualstudio.com/api/language-extensions/language-server-extension-guide">Language Server Extension Guide</a></li> <li><a href="https://devchat.tv/react-round-up/rru-015-visual-studio-code-with-rachel-macfarlane-and-matt-bierner-live-at-microsoft-build/">RRU 015: Visual Studio Code with Rachel MacFarlane and Matt Bierner LIVE at Microsoft Build</a></li> <li><a href="https://devchat.tv/views-on-vue/vov-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</a></li> </ul>
Mar 20, 2019
JSJ 356: Build Websites Like It's 2005 with Keith Cirkel
56:18
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://triplebyte.com/jsjabber">Triplebyte</a></li> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://clubhouse.io/jsjabber">Clubhouse</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Chris Ferdinandi</li> <li>Aimee Knight</li> <li>Aaron Frost</li> <li>AJ O&rsquo;Neal</li> </ul> <p>Joined by special guest: Keith Cirkel</p> <h3><strong>Episode Summary</strong></h3> <p>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.</p> <p>The panelists then discuss event delegation, performance considerations, Polyfill.io and web components. Keith gives some insight into accessibility and they talk about related user concerns.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.keithcirkel.co.uk/">Keith&rsquo;s website</a></li> <li><a href="https://github.com/keithamus">Keith&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/Keithamus">Keith&rsquo;s Twitter</a></li> <li><a href="https://github.blog/category/engineering/">GitHub Engineering blog</a></li> <li><a href="https://github.com/Financial-Times/polyfill-service">Financial Times &ndash; Polyfill service</a></li> <li><a href="https://github.com/github/include-fragment-element">Include fragment - element</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Aaron Frost:</strong></p> <ul> <li><a href="https://www.msnbc.com/bagman">Bag Man</a></li> <li><a href="https://medium.com/newco/what-its-like-to-be-a-woman-on-the-internet-55f7e6d5044c">What It&rsquo;s Like to Be A Woman on the Internet</a></li> </ul> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="https://cloud.google.com/kubernetes-engine/kubernetes-comic/">Smooth Sailing with Kubernetes</a></li> </ul> <p><strong>Joe Eames:</strong></p> <ul> <li><a href="https://techcrunch.com/2019/01/07/github-free-users-now-get-unlimited-private-repositories/">GitHub Free users get free unlimited private repositories</a></li> <li><a href="https://www.swignsweets.com/">Swig</a></li> <li><a href="https://overreacted.io/things-i-dont-know-as-of-2018/">Things I don&rsquo;t know as of 2018</a></li> </ul> <p><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li>Isopropyl alcohol</li> <li><a href="https://www.banggood.com/search/diy-kit.html">Bang good electronics</a></li> <li>Soldering Iron &ndash; <a href="https://amzn.to/2AQgC6u?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Hakko</a>, <a href="https://amzn.to/2RPoWNE?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">X-Tronic</a></li> </ul> <p><strong>Keith Cirkel</strong><strong>:</strong></p> <ul> <li><a href="https://github.com/about/careers">GitHub careers</a></li> <li><a href="https://www.podbean.com/podcast-detail/q3uii-7b126/Heston's-Pod--Chips-Podcast">Heston&rsquo;s Pod &amp; Chips</a></li> <li>Brexit</li> </ul> <p><strong>Chris Ferdinandi:</strong></p> <ul> <li><a href="https://medium.com/fluxx-studio-notes/52-things-i-learned-in-2018-b07fc110d8e1">52 things I learned in 2018</a></li> <li><a href="https://learnvanillajs.com/">Learn Vanilla JS</a></li> </ul>
Mar 19, 2019
MJS 098: Vitali Zaidman
37:12
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry </a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://triplebyte.com/astory">Triplebyte</a> offers a $1000 signing bonus</li> <li><a href="https://clubhouse.io/jsstory">Clubhouse</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Guest:</strong>&nbsp;Vitali Zaidman</p> <h3><strong>Episode Summary</strong></h3> <p>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: &ldquo;An Overview of JavaScript Testing in 2019&rdquo;.</p> <p>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.</p> <p>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.</p> <p>Vitali talks about projects he has worked on that he is proud of, one of which is his library at <a href="https://github.com/welldone-software/why-did-you-render">https://github.com/welldone-</a><a href="https://github.com/welldone-software/why-did-you-render">software/why-did-you-render</a></p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-331-an-overview-of-javascript-testing-in-2018-with-vitali-zaidman/">JSJ 331: An Overview of JavaScript Testing in 2018 with Vitali Zaidman</a></li> <li><a href="https://www.facebook.com/vzaidman">https://www.facebook.com/vzaidman</a></li> <li><a href="https://twitter.com/vzaidman">https://twitter.com/vzaidman</a></li> <li><a href="https://github.com/vzaidman">https://github.com/vzaidman</a></li> <li><a href="https://medium.com/@vzaidman">https://medium.com/@vzaidman</a></li> <li><a href="https://bitsrc.io/vzaidman">https://bitsrc.io/vzaidman</a></li> <li><a href="https://www.welldone-software.com/">https://www.welldone-software.com/</a></li> <li><a href="https://www.powtoon.com/home/?">https://www.powtoon.com/home/?</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Vitali Zaidman:</strong></p> <ul> <li><a href="https://www.testim.io/">https://www.testim.io/</a></li> <li><a href="https://applitools.com/">https://applitools.com/</a></li> <li><a href="ttps://medium.com/welldone-software/an-overview-of-javascript-testing-in-2019-264e19514d0a">An Overview of JavaScript Testing in 2019 by Vitali Zaidman</a></li> <li><a href="https://github.com/welldone-software/why-did-you-render">https://github.com/welldone-</a><a href="https://github.com/welldone-software/why-did-you-render">software/why-did-you-render</a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.vrbo.com/">https://www.vrbo.com/</a></li> <li><a href="https://paradehomes.com/web/">https://paradehomes.com/web/</a></li> <li><a href="https://www.tripit.com/web">https://www.tripit.com/web</a></li> <li><a href="http://dnd.wizards.com/products/tabletop-games/rpg-products/rpg_playershandbook">Player&#39;s Handbook Dungeons &amp; Dragons Core Rule Book</a></li> </ul>
Mar 13, 2019
JSJ 355: Progressive Web Apps with Aaron Gustafson LIVE at Microsoft Ignite
55:53
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/" rel="noopener noreferrer" target="_blank">Sentry</a>&nbsp;use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://triplebyte.com/jsjabber" rel="noopener noreferrer" target="_blank">Triplebyte</a></li> <li><a href="https://clubhouse.io/jsjabber" rel="noopener noreferrer" target="_blank">Clubhouse</a></li> <li><a href="https://www.cachefly.com/" rel="noopener noreferrer" target="_blank">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Charles Max Wood</li> </ul> <p>Joined by special guest: Aaron Gustafson</p> <h3><strong>Episode Summary&nbsp;</strong></h3> <p>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 &ldquo;A List Apart&rdquo;. 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.&nbsp;</p> <p>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&rsquo;s background, gender, race, health issues and so on.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.amazon.com/Creating-Enhancing-Netscape-Web-Pages/dp/0789708760??ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US" rel="noopener noreferrer" target="_blank">Creating &amp; Enhancing Netscape Web Pages</a></li> <li><a href="https://alistapart.com/">A List Apart</a></li> <li><a href="https://cloudfour.com/thinks/a-progressive-roadmap-for-your-progressive-web-app/" rel="noopener noreferrer" target="_blank">A Progressive Roadmap for your Progressive Web App</a></li> <li><a href="https://developer.microsoft.com/en-us/windows/pwa" rel="noopener noreferrer" target="_blank">Windows Dev Center - Progressive Web Apps</a></li> <li><a href="https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps" rel="noopener noreferrer" target="_blank">MDN web docs</a></li> <li><a href="https://www.pwastats.com/" rel="noopener noreferrer" target="_blank">PWA Stats</a></li> <li><a href="https://twitter.com/pwastats?lang=en" rel="noopener noreferrer" target="_blank">PWA Stats Twitter</a></li> <li><a href="https://www.aaron-gustafson.com/" rel="noopener noreferrer" target="_blank">Aaron&rsquo;s website</a></li> <li><a href="https://twitter.com/aarongustafson?lang=en" rel="noopener noreferrer" target="_blank">Aaron&rsquo;s Twitter</a></li> <li><a href="https://www.facebook.com/javascriptjabber/" rel="noopener noreferrer" target="_blank">https://www.facebook.com/javascriptjabber/</a></li> <li><a href="https://twitter.com/JSJabber" rel="noopener noreferrer" target="_blank">https://twitter.com/JSJabber</a></li> </ul> <h3><strong>Picks</strong></h3> <p>Aaron Gustafson:</p> <ul> <li><a href="https://www.goodreads.com/book/show/27071490-homegoing" rel="noopener noreferrer" target="_blank">Homegoing</a></li> <li><a href="https://www.goodreads.com/book/show/6512154-zeitoun" rel="noopener noreferrer" target="_blank">Zeitoun</a></li> </ul> <p>Charles Max Wood:</p> <ul> <li><a href="https://www.audible.com/pd/Armada-Audiobook/B00VN0Q8XY" rel="noopener noreferrer" target="_blank">Armada</a>&nbsp;</li> </ul>
Mar 12, 2019
MJS 097: Charles Lowell
56:26
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry </a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><u><a href="https://clubhouse.io/jsstory">Clubhouse</a></u></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;&nbsp;Charles Lowell</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My Ruby Story, Charles hosts Charles Lowell, founder and &nbsp;developer at <a href="https://frontside.io/">The Frontside Software</a> based in Austin, TX.</p> <p>Listen to Charles on the podcast JavaScript Jabber on this&nbsp;<a href="https://devchat.tv/js-jabber/jsj-337-microstates-js-composable-state-primitives-for-javascript-with-charles-lowell-taras-mankovski/">episode</a>.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-337-microstates-js-composable-state-primitives-for-javascript-with-charles-lowell-taras-mankovski/">JavaScript Jabber 337: Microstates.js &ndash; Composable State Primitives for JavaScript with Charles Lowell &amp; Taras Mankovski </a></li> <li><a href="https://twitter.com/cowboyd?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Charles Lowell&rsquo;s Twitter</a></li> <li><a href="https://github.com/cowboyd">Charles Lowell&rsquo;s GitHub</a></li> <li><a href="https://frontside.io/about/charles-lowell">Charles Lowell&rsquo;s Frontside Bio</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> <li><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Charles Lowell:</strong></p> <ul> <li><u><a href="https://yousician.com/">Yousician App</a></u></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><u><a href="https://paradehomes.com/">Parade of Homes - St. George, Utah </a></u></li> <li><u><a href="http://www.vrbo.com/‎">Vrbo.com</a></u></li> </ul>
Mar 06, 2019
JSJ 354: Elm with Richard Feldman
37:56
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://clubhouse.io/jsjabber">Clubhouse</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h3><strong>Panel</strong></h3> <ul> <li>Joe Eames</li> <li>Aimee Knight</li> </ul> <p>Joined by special guest: Richard Feldman</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of JavaScript Jabber, Richard Feldman, primarily known for his work in Elm, the author of &ldquo;Elm in Action&rdquo; 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 &ndash; Evan Czaplicki and the other members of the community and discusses the challenges on the way to Elm 1.0.</p> <p>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.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.manning.com/books/elm-in-action?a_aid=elm_in_action&amp;a_bid=b15edc5c">Elm in Action</a></li> <li><a href="https://frontendmasters.com/courses/intro-elm/">Frontend Masters &ndash; Introduction to Elm</a></li> <li><a href="https://frontendmasters.com/workshops/advanced-elm/">Frontend Masters &ndash; Advanced Elm</a></li> <li><a href="https://elm-lang.org/blog/small-assets-without-the-headache">Small Assets without the Headache</a></li> <li><a href="https://guide.elm-lang.org/">Elm Guide</a></li> <li><a href="https://www.bridgetroll.org/chapters/53">ElmBridge San Francisco</a></li> <li><a href="https://twitter.com/tremlab?lang=en">Renee Balmert</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Aimee Knight:</strong></p> <ul> <li><a href="https://www.raptitude.com/2012/07/most-lives-are-lived-by-default/">Most lives are lived by default</a></li> </ul> <p><strong>Joe Eames:</strong></p> <ul> <li><a href="https://thinkster.io/">Thinkster</a></li> </ul> <p><strong>Richard Feldman:</strong></p> <ul> <li><a href="https://www.youtube.com/watch?v=rSdOb0_GPEQ">Framework Summit 2018 &ndash; Keynote speech</a></li> <li><a href="https://nixos.org/nix/">Nix Package Manager</a></li> <li><a href="https://www.goodreads.com/book/show/39996759-a-philosophy-of-software-design">A Philosophy of Software Design</a></li> </ul>
Mar 05, 2019
JSJ 353: Signal R with Brady Gaster LIVE at Microsoft Ignite
51:41
<h2><strong>Sponsors:</strong></h2> <ul> <li><a href="https://www.netlify.com/">Netlify</a></li> <li><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></li> </ul> <h3><strong>Panel:</strong></h3> <p>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;Brady Gaster</p> <p>In this episode, Chuck talks with&nbsp;<a href="https://twitter.com/bradygaster">Brady Gaster</a>&nbsp;about&nbsp;<a href="https://www.asp.net/signalr">SignalR</a>&nbsp;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&rsquo;s episode where the two dive deep into SignalR topics.</p> <h3><strong>Links:</strong></h3> <ul> <li><a href="https://vuejs.org/">Vue</a></li> <li><a href="https://jquery.com/">jQuery</a></li> <li><a href="https://angular.io/">Angular</a></li> <li><a href="https://docs.microsoft.com/en-us/dotnet/csharp/">C#</a></li> <li><a href="https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chuck&rsquo;s Twitter</a></li> <li><a href="https://www.asp.net/signalr">SignalR</a></li> <li><a href="https://twitter.com/SignalR?lang=en">SignalR&rsquo;s Twitter</a></li> <li><a href="https://github.com/SignalR/SignalR">GitHub SignalR</a></li> <li><a href="https://socket.io/">Socket.io</a></li> <li><a href="https://www.npmjs.com/package/node-sass">Node-SASS</a></li> <li><a href="https://docs.microsoft.com/en-us/aspnet/signalr/overview/guide-to-the-api/hubs-api-guide-javascript-client">ASP.NET SignalR Hubs API Guide &ndash; JavaScript Client</a></li> <li><a href="http://signalr.net/">SignalR.net</a></li> <li><a href="https://realtalkjavascript.simplecast.fm/">Real Talk JavaScript</a></li> <li><a href="https://developer.android.com/reference/android/os/Parcel">Parcel</a></li> <li><a href="https://twitter.com/bradygaster">Brady Gaster&rsquo;s Twitter</a></li> <li><a href="https://github.com/bradygaster">Brady Gaster&rsquo;s GitHub</a></li> <li><a href="https://www.linkedin.com/in/bradygaster">Brady Gaster&rsquo;s LinkedIn</a></li> </ul> <h3><strong>Picks:</strong></h3> <p>Brady</p> <ul> <li>Team on General Session</li> <li><a href="https://www.korg.com/us/">Korg</a></li> <li><a href="https://www.seahawks.com/">SeaHawks</a></li> <li>Brady&rsquo;s kids</li> <li><a href="https://www.logitech.com/en-us/product/spotlight-presentation-remote">Logictech spot light</a></li> <li><a href="https://www.apple.com/airpods/">AirPods</a></li> </ul> <p>Charles</p> <ul> <li><a href="https://www.expressvpn.com/">Express VPN</a></li> <li>Hyper Drive</li> <li><a href="https://en.j5create.com/collections">J5 ports and SD card readers</a></li> <li><a href="https://podwrench.com/">Podwrench</a></li> </ul>
Feb 27, 2019
MJS 096: Bart Wood
22:14
<h2><strong>Sponsors:</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a>&ndash; use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://clubhouse.io/jsjabber">Clubhouse</a></li> </ul> <p><strong>Host: </strong>Charles Max Wood</p> <p><strong>Guest: </strong>Bart Wood</p> <p>&nbsp;</p> <h4><strong>Episode Summary</strong></h4> <p>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.&nbsp; 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.&nbsp;</p> <p>Charles delves into the past of Bart Wood who has been working with the same company, Henry Shine.&nbsp; He started studying Economics before he got into programming by chance and eventually ended up graduating with a Masters in Computer Science.&nbsp; 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.</p>
Feb 26, 2019
MJS 095: Misko Hevery
45:24
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry&nbsp;</a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://clubhouse.io/jsstory">Clubhouse</a></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h6><strong>Host: </strong>Charles Max Wood</h6> <p><strong>Special Guest:</strong>&nbsp;Mi&scaron;ko Hevery</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles hosts Mi&scaron;ko Hevery, creator of Angular and Senior Computer Scientist at Google.</p> <p>Mi&scaron;ko was introduced to computers when his father brought a Sinclair ZX Spectrum home for them to play with. When they moved to the United States from Czech Republic, Mi&scaron;ko attended Rochester Institute of Technology and studied Computer Engineering. After working for companies such as Adobe, Sun Microsystems, Intel, and Xerox, he joined Google where created the Angular framework. For more on the story of how Mi&scaron;ko created AngularJS, listen to the &lsquo;Birth of Angular&rsquo; episode on the Adventures in Angular podcast <u><a href="https://devchat.tv/adv-in-angular/001-aia-the-birth-of-angular/">here.</a> </u></p> <p>Mi&scaron;ko is currently working on Angular Ivy at Google and plans to restart a blog in the future.</p> <h3><strong>Links</strong></h3> <ul> <li><u><a href="https://devchat.tv/adv-in-angular/001-aia-the-birth-of-angular/">Adventures in Angular: The Birth of Angular</a></u></li> <li><u><a href="https://devchat.tv/js-jabber/109-jsj-dependency-injection-in-javascript-with-vojta-jina-misko-hevery/">JavaScript Jabber: Dependency Injection in JavaScript with Vojta J&iacute;na &amp; Misko Hevery</a></u></li> <li><a href="https://twitter.com/mhevery?lang=en"><u>Mi&scaron;ko&#39;s Twitter</u></a></li> <li><a href="https://github.com/mhevery">Mi&scaron;ko&#39;s GitHub</a></li> <li><a href="https://github.com/mhevery"><u>Mi&scaron;ko&#39;s Medium</u></a></li> <li><a href="https://www.linkedin.com/in/misko-hevery-3883b1"><u>Mi&scaron;ko&#39;s LinkedIn</u></a></li> <li><u><a href="https://www.bookdepository.com/How-Talk-so-Kids-Will-Listen-Listen-so-Kids-Will-Talk-Adele-Faber/9781848123090">How to Talk so Kids Will Listen and Listen so Kids Will Talk</a></u></li> <li><a href="https://devchat.tv/my-angular-story/">https://devchat.tv/my-angular-story/</a></li> </ul> <h3><strong>&nbsp;Picks</strong></h3> <p><strong>Mi&scaron;ko Hevery:</strong></p> <ul> <li><u><a href="https://www.prusa3d.com/">Prusa3D - 3D Printers from Josef Prusa</a></u></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><u><a href="https://www.amazon.com/Kingfountain-6-Book/dp/B01MU2DVWN">The Kingfountain Series by Jeff Wheeler</a></u></li> </ul>
Feb 20, 2019
JSJ 352: Caffeinated Style Sheets: Supporting High Level CSS with JavaScript with Tommy Hodgins
50:15
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a>- use the code &ldquo;devchat&rdquo; for $100 credit</li> <li><a href="https://www.netlify.com/">Netlify</a></li> <li><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p>&nbsp;</p> <h3><strong>Episode Summary&nbsp;&nbsp; </strong></h3> <p>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.</p> <p>He elaborates on dynamic styling of components, event-driven stylesheet templating, performance and timing characteristics of these techniques and describes different kinds of observers &ndash; 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.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.npmjs.com/package/jsincss">JS in CSS</a> &ndash; Event driven virtual stylesheet manager</li> <li><a href="https://github.com/tomhodgins/qaffeine">Qaffiene</a></li> <li><a href="https://github.com/tomhodgins/deqaf">Deqaf</a></li> <li><a href="https://twitter.com/innovati?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5Eauthor">Tommy&rsquo;s Twitter</a></li> <li><a href="http://staticresource.com/fizzbuzz.html">Fizzbuzz</a></li> </ul> <p>&nbsp;</p> <h3><strong>Picks</strong></h3> <p><strong>Joe</strong></p> <ul> <li><a href="https://boardgamegeek.com/boardgame/159503/captain-dead">The Captain Is Dead</a></li> </ul> <p><strong>Aimee</strong></p> <ul> <li><a href="https://henrikwarne.com/2018/12/03/developer-on-call/">Developer on Call</a></li> <li>Tip &ndash; Try to follow a low-sugar diet</li> </ul> <p><strong>Chris</strong></p> <ul> <li><a href="https://twitter.com/innovati/status/1068998114491678720">Tommy&rsquo;s snippets on Twitter &ndash; JS in CSS</a></li> <li><a href="https://bitsofco.de/">All things frontend blog</a></li> <li><a href="https://github.com/cferdinandi/gulp-boilerplate">Gulp project</a></li> </ul> <p><strong>Charles</strong></p> <ul> <li><a href="https://github.com/cmaxw/devchat-eleventy">Coaching by Charles in exchange of writing Show Notes or Tags</a></li> </ul> <p><strong>Tommy</strong></p> <ul> <li><a href="https://www.npmjs.com/package/jsincss">JS in CSS</a></li> </ul>
Feb 19, 2019
MJS 094: Lee Byron
48:45
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry </a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;&nbsp;Lee Byron</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My Ruby Story, Charles hosts Lee Byron, web engineering lead at<a href="https://robinhood.com/"> Robinhood</a>, a financial services company based in California.</p> <p>Listen to Lee on the podcast JavaScript Jabber on this&nbsp;<a href="https://devchat.tv/js-jabber/jsj-243-immutable-js-with-lee-byron/">episode</a> and on the podcast Ruby Rogues on this <a href="https://devchat.tv/ruby-rogues/231-rr-graphql-with-lee-byron/">episode</a>.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-243-immutable-js-with-lee-byron/">JavaScript Jabber 243: Immutable.js with Lee Byron </a></li> <li><a href="https://devchat.tv/ruby-rogues/231-rr-graphql-with-lee-byron/">Ruby Rogues 231: GraphQL with Lee Byron</a></li> <li><a href="https://medium.com/@leeb">Lee&rsquo;s Medium</a></li> <li><a href="https://leebyron.com/">Lee&rsquo;s Website</a></li> <li><a href="https://twitter.com/leeb?lang=en">Lee&rsquo;s Twitter </a></li> <li><a href="https://github.com/leebyron">Lee&rsquo;s GitHub</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> <li><a href="https://www.facebook.com/DevChattv">https://www.facebook.com/DevChattv</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Lee Byron:</strong></p> <ul> <li><a href="https://developer.arm.com/ip-products/processors/cortex-m/cortex-m4">The Arm Cortex-M4 processor </a></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.allrecipes.com/">allrecipes.com</a></li> <li><a href="https://www.allrecipes.com/"><u>Walmart Grocery Pick Up</u></a></li> </ul>
Feb 13, 2019
JSJ 351: Dinero.js with Sarah Dayan
1:12:08
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://www.netlify.com/">Netlify</a></li> <li><a href="http://sentry.io">Sentry</a>&nbsp;use the code &quot;devchat&quot; for $100 credit</li> <li><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></li> </ul> <h4><strong>Panel:</strong></h4> <ul> <li>Joe Eames</li> <li>Aimee Knight</li> <li>Chris Ferdinandi</li> <li>AJ O&rsquo;Neal</li> <li>Charles Max Wood</li> </ul> <p><strong>Special Guest - Sarah Dayan </strong></p> <p>In this episode of JavaScript Jabber, the panelists talk to Sarah Dayan, who is a Frontend Software Engineer working for Algolia in Paris. They about the complications in handling money in software development and ask Sarah about the journey that led to the creation of Dinero.js, it&rsquo;s implementation details, importance of maintaining good documentation, dealing with issues faced along the way, various features of Dinero and working with open source projects in general. Check it out!</p> <h4><strong>Show Topics:</strong></h4> <p>0.40 - Advertisement : <a href="https://www.netlify.com/">Netlify</a></p> <p>1:44 - Sarah introduces herself and Chris talks about his interest in learning more about Dinero and compliments Sarah on its great documentation.</p> <p>3.10 - Sarah gives some background saying that she created and published Dinero around a year ago. She goes on to explain that the Dinero library helps in handling monetary values. It comes with several methods to parse, manipulate and format these values. The reason behind creating it is that there is no consensus on representing money in software development currently. She shares the story from her previous job where her work was to maintain legacy accounting software, and along the way they realized, that since JavaScript did not have a way to natively represent decimal values, it led to adding large numbers of rounded up numbers continuously, eventually leading to wrong computations.</p> <p>6:50 - Aimee asks about ways to handle different currencies in Dinero. Sarah answers that she has followed Martin Fowler&rsquo;s money pattern where two different currencies were not allowed to be worked on directly, conversion was mandatory, just like in real life.</p> <p>7:50 - Charles talks about his old freelance work where he was overwhelmed while handling and representing money in software.</p> <p>8:25 - Aimee enquires if Dinero can be used for both frontend and backend. Sarah replies that it can be used anywhere and explains that there is no such thing as just a number when it comes to money, there must be a currency associated with it.</p> <p>9:30 - Charles asks how to figure out the direction to go to when dealing with money and to make sure that all use-cases are covered. Sarah answers that in cases such as floating-point math where the computations don&rsquo;t end up being accurate as handling is not supported, numbers can be used if treated as subunits (for e.g. 100cents = 1$). However, even then, there are issues in dividing money. She then explains the procedure of &ldquo;allocation&rdquo; from the Fowler pattern and she says that Dinero helps in doing the same in such scenarios.</p> <p>12:54 - They discuss how they did not realize how difficult it was dealing with monetary values in development. Sarah talks about the fact that there are numerous aspects involved in it, giving the example of rounding off and stating that there are even factors such as different laws in different countries that need to be considered.</p> <p>16:00 - AJ asks details about crafting the library, maintaining the centralized code and covering of edge cases and using inheritance. Sarah explains the concept of domain driven development and the importance of being an expert in the respective domains. She talks about the library structure briefly, describing that is kept very simple with a module pattern and it has allowed her to manage visibility, make it immutable, include currency converters, formatters and so on.</p> <p>19:34 - AJ asks about the internal complexity of the implementation. Sarah answers that code wise it is extremely simple and easy, anyone with a limited JavaScript experience can understand it.</p> <p>20:50 - AJ asks if it&rsquo;s open source to which Sarah answers in affirmative and says that she would like external help with implementing some features too.</p> <p>22:10 - Chris asks about Sarah&rsquo;s excellent documentation approach, how has she managed to do it in a very detailed manner and how important it is in an open source project. Sarah says that she believes that documentation is extremely important, and not having good docs is a big hindrance to developers and to anyone who is trying to learn in general. She talks about her love for writing which explains the presence of annotations and examples in the source code.</p> <p>27:50 - Charles discusses how autogenerated documentation gives an explanation about the methods and functions in the code but there is no guidance as such, so it is important to have guides. Sarah agrees by saying that searching for exact solutions is much simpler with it, leading to saving time as well.</p> <p>29:43 - Chris speaks about Vue also being quite good at having guides and links and thanks Sarah for her work on Dinero.</p> <p>30:15 - Advertisement - <a href="https://sentry.io/welcome/">Sentry</a> - Use code &ldquo;devchat&rdquo; to get two months free on Sentry&rsquo;s small plan.</p> <p>31:23 - Chris asks what the process is, for creating and running Dinero in different places. Sarah explains that she uses rollup.js which is a bundler suited for libraries, it takes in the ES module library and gives the output in any format. She states that the reason for using the ES module library is that she wanted to provide several builds for several environments with a clean and simple source and goes on to explain that these modules are native, have a terse syntax, easy to read and can be statically analyzed. She also gives the disadvantages in choosing webpack over rollup.</p> <p>36:05 - Charles asks if anyone else is using Dinero. Sarah replies that around two or three people are using it, not much, but she is happy that it is out there to help people and she enjoyed working on it.</p> <p>37:50 - Joe asks if there are any interesting stories about issues such as involving weird currency. Sarah answers in affirmative and gives the example of the method &ldquo;hasCents&rdquo;. She explains that she had to deprecate it because the unit &ldquo;cents&rdquo; does not have any value in non-Western currencies, and has created &ldquo;hasSubUnits&rdquo; method instead. She explains some problems like dealing with currencies that don&rsquo;t support the ISO 4217 standard.</p> <p>42:30 - Joe asks if social and political upheavals that affect the currencies have any effect on the library too. Sarah gives the example of Chinese and Japanese currencies where there are no sub-units and states that it is important to be flexible in developing stuff in an ever-changing domain like money. She also says that she does not include any third-party dependency in the library.</p> <p>46:00 - AJ says that BigInts have arrived in JavaScript but there is no way to convert between typed arrays, hexadecimal or other storage formats. But later (1:10:55), he corrects that statement saying that BigInts in fact, does have support for hexadecimals. Sarah talks about wanting to keep the code simple and keep developer experience great.</p> <p>49:08 - Charles asks about the features in Dinero. Sarah elaborates on wanting to work more on detecting currencies, improve the way it is built, provide better support for type libraries and get much better at documentation.</p> <p>52:32 - Charles says that it is good that Sarah is thinking about adopting Dinero to fit people&rsquo;s needs and requirements and asks about different forms of outreach. Sarah says that she blogs a lot, is active on Twitter and attends conferences as well. Her goal is not popularity per se but to help people and keep on improving the product.</p> <p>55:47 - Chris talks about the flip side that as the product grows and becomes popular, the number of support requests increases too. Sarah agrees that open source projects tend to eat up a lot of time and that doing such projects comes with a lot of responsibility but can also help in getting jobs.</p> <p>59:47 - Sarah says that she is available online on her blog - <a href="https://frontstuff.io/">frontstuff</a>, on Twitter as Sarah Dayan and on GitHub as sarahdayan.</p> <p>1:00:06 - Advertisement - <a href="https://clubhouse.io/">Clubhouse</a></p> <p>1:01:01 - Picks!</p> <p>1:11:42&nbsp; - END - Advertisement - <a href="https://www.cachefly.com/">CacheFly!</a></p> <h4><strong>Picks:</strong></h4> <p><strong>Sarah</strong></p> <ul> <li><a href="https://community.algolia.com/docsearch/">DocSearch - Algolia</a></li> </ul> <p><strong>AJ O&rsquo;Neal</strong></p> <ul> <li><a href="https://en.wikipedia.org/wiki/The_Legendary_Profile">The Legendary Profile by Modern Jazz Quartet</a></li> <li><a href="https://www.amazon.com/Computer-Prevention-Ultra-Thin-Thinkpad-Protection/dp/B06XZMXPR7">Webcam Cover by Dcreate</a></li> <li><a href="https://www.amazon.com/How-Music-Works-David-Byrne/dp/1936365537">How Music Works - David Byrne</a></li> </ul> <p><strong>Chris</strong></p> <ul> <li><a href="https://twitter.com/innovati/status/1068998114491678720">Tommy Hodgins Code Series</a></li> <li><a href="https://www.youtube.com/channel/UCBa659QWEk1AI4Tg--mrJ2A">Tom Scott - YouTube</a></li> <li><a href="https://www.youtube.com/watch?v=OyJTF9z4-6Y">Future Man</a></li> </ul> <p><strong>Joe</strong></p> <ul> <li><a href="https://www.imdb.com/title/tt5511582/">Timeless</a></li> <li><a href="https://www.audible.com.au/pd/A-Christmas-Carol-Simon-Schuster-Edition-Audiobook/B00FOAGW6C?qid=1550084054&amp;sr=1-3&amp;ref=a_search_c3_lProduct_1_3&amp;pf_rd_p=771c6463-05d7-4981-9b47-920dc34a70f1&amp;pf_rd_r=6TKJBDDQ91SAC5Y36FT7&amp;">A Christmas Carol narrated by Patrick Stewart</a></li> </ul> <p><strong>Aimee</strong></p> <ul> <li><a href="https://news.ycombinator.com/item?id=18554272">Hacker News thread on working with Legacy Codebases</a></li> </ul> <p><strong>Charles</strong></p> <ul> <li><a href="https://www.stgeorgemarathon.com/">George Marathon</a></li> <li><a href="https://buy.garmin.com/en-US/US/p/529988">Garmin Forerunner 235</a></li> </ul> <ul> <li>&nbsp;</li> </ul>
Feb 12, 2019
MJS 093: Ben Lesh
53:19
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io">Sentry</a>&nbsp;use the code &quot;devchat&quot; for $100 credit</li> <li><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></li> <li><a href="https://www.cachefly.com/">CacheFly&nbsp;</a></li> </ul> <p><strong>​</strong><strong>Episode Summary</strong></p> <p>In this episode of My JavaScript Story, Charles Max Wood hosts Ben Lesh, RxJS&nbsp;Lead and senior software engineer at Google.</p> <p>Ben studied to be an illustrator in Columbus College of Art &amp; Design, but upon graduation he realized he wanted to work in web development. Ben thinks having an interest in problem solving was a key factor on his journey in becoming a developer.</p> <p>For his first programming job, he applied to a position and when he didn&rsquo;t hear back he kept calling them until they gave him an opportunity. He then worked as a consultant at several other positions before he was offered a job at Netflix where he became the development lead for RxJS 5. Ben then switched over to Google&rsquo;s Angular team. He is currently working on Angular Ivy at Google.</p> <p>Ben then talks about the projects he has worked on that he is proud of. In his journey as a developer, Ben believes that the take-away lesson is asking lots of questions. He himself had no formal programming training and he got to where he is today by asking sometimes embarrassingly simple questions.</p> <h3><strong>Links</strong></h3> <ul> <li><u><a href="https://devchat.tv/js-jabber/jsj-248-reactive-programming-and-rxjs-with-ben-lesh/">JSJ 248 Reactive Programming and RxJS with Ben Lesh</a></u></li> <li><u><a href="https://devchat.tv/views-on-vue/vov-020-reactive-programming-with-vue-with-tracy-lee/">VoV 020: Reactive Programming with Vue with Tracy Lee, Ben Lesh, and Jay Phelps</a></u></li> <li><u><a href="https://devchat.tv/adv-in-angular/aia-199-rxjs-with-ben-lesh-tracy-lee-and-jay-phelps/">AiA 199: RxJS with Ben Lesh, Tracy Lee, and Jay Phelps</a></u></li> <li><u><a href="https://www.linkedin.com/in/blesh/">Ben&#39;s LinkedIN</a></u></li> <li><u><a href="https://twitter.com/benlesh?lang=en">Ben&#39;s Twitter</a></u></li> <li><a href="https://github.com/benlesh"><u>Ben&#39;s GitHub</u></a></li> <li><u><a href="http://refactr.tech/">http://refactr.tech/</a></u></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> <li> <h3><strong>Picks</strong></h3> <p><strong>Ben Lesh:</strong></p> </li> <li><u>Angular Ivy</u></li> <li><u><a href="https://reactive.how/">reactive.how</a></u></li> <li><u><a href="https://www.thisdot.co/rx-workshop">Ben&#39;s Workshop</a></u></li> <li><u><a href="http://refactr.tech/">http://refactr.tech/</a></u></li> <li> <p><strong>Charles Max Wood:</strong></p> </li> <li><a href="https://twitter.com/cmaxw">Charles&#39; Twitter</a></li> </ul>
Feb 06, 2019
JSJ 350: JavaScript Jabber Celebrates Episode 350!
1:06:43
<ul> </ul> <h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://www.netlify.com/">Netlify</a></li> <li><a href="http://sentry.io">Sentry</a>&nbsp;use the code &quot;devchat&quot; for $100 credit</li> <li><a href="https://clubhouse.io/jsjabber">Clubhouse</a></li> </ul> <p><strong>Panel:</strong></p> <ul> <li>Charles Max Wood</li> <li>AJ O&rsquo;Neal</li> <li>Aimee Knight</li> <li>Aaron Frost</li> <li>Chris Ferdinandi</li> <li>Joe Eames</li> <li>Tim Caswell</li> </ul> <p><strong>Notes:</strong></p> <p>This episode of JavaScript Jabber has the panelists reminiscing on the past. First, they discuss the projects they&rsquo;re working on. Tim has joined <a href="https://www.magicleap.com/">MagicLeap</a> doing JavaScript and C++. Aaron Frost is one of the founders of <a href="https://herodevs.com/">HeroDevs</a>. AJ works at <a href="https://www.bigsquid.com/">Big Squid,</a> a company that takes spreadsheets and turns them into business actions, and is expecting a daughter. Aimee has been exploring developer advocacy, but wants to focus primarily on engineering. She is currently working at MPM. Joe has taken over the CEO position for <a href="https://thinkster.io/">thinkster.io</a>, a company for learning web development online. Chris switched from being a general web developer specializing in JavaScript and has started blogging daily rather than once a week, and has seen an increase in sales of his vanilla JavaScript educational products. Charles discusses his long term goal for Devchat.tv. He wants to help people feel free in programming, and help people find opportunities though the Devchat.tv through empowering content.</p> <p>Next, the panelists discuss their favorite episodes. Some of the most highly recommended episodes are</p> <p><a href="https://devchat.tv/js-jabber/124-jsj-the-origin-of-javascript-with-brendan-eich/">JSJ 124: The Origin of Javascript with Brendan Eich</a> (1:44:07)</p> <p><a href="https://devchat.tv/js-jabber/161-jsj-rust-with-david-herman/">JSJ 161: Rust with David Herman</a> (1:05:05)</p> <p><a href="https://devchat.tv/js-jabber/jsj-336-the-origin-of-eslint-with-nicholas-zakas/">JSJ 336: &ldquo;The Origin of ESLint with Nicholas Zakas&rdquo;</a> (1:08:01)</p> <p><a href="https://devchat.tv/js-jabber/jsj-338-its-supposed-to-hurt-get-outside-of-your-comfort-zone-to-master-your-craft-with-christopher-buecheler/">JSJ 338: It&rsquo;s Supposed To Hurt, Get Outside of Your Comfort Zone to Master Your Craft with Christopher Buecheler</a> (43:36)</p> <p><a href="https://devchat.tv/js-jabber/218-jsj-ember-js-with-yehuda-katz/">JSJ 218: Ember.js with Yehuda Katz</a> (42:47)</p> <p>Last, the panelists discuss what they do to unwind. Activities include working out, reading, playing Zelda and Mario Kart, studying other sciences like physics, painting miniatures, and Dungeons and Dragons.</p> <p><strong>Picks:</strong></p> <p>Charles Max Wood</p> <ul> <li><a href="https://www.amazon.com/Wonder-Forge-Disney-Villainous-Strategy/dp/B07DLGD9K6/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Villainous Board Game</a></li> </ul> <p>Joe Eames</p> <ul> <li><a href="https://www.amazon.com/Azul-Stained-Glass-of-Sintra/dp/B07KKQ8ZBT/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Azul Stained Glass Board Game</a></li> </ul> <p>AJ O&rsquo;Neal</p> <ul> <li><a href="https://www.digikey.com/">https://www.digikey.com/</a></li> <li><a href="https://www.amazon.com/s/ref=nb_sb_noss?url=search-alias%3Daps&amp;field-keywords=magnetic+hourglass" rel="noopener noreferrer" target="_blank">Magnetic Hourglass: Amazon&nbsp;</a>|&nbsp;<a href="https://www.hobbylobby.com/Home-Decor-Frames/Decor-Pillows/Accent-Pieces/Hourglass-with-Magnetic-Wood-Base/p/MJ7444-80767805" rel="noopener noreferrer" target="_blank">Hobby Lobby $6&nbsp;</a></li> </ul> <p>Aimee Knight</p> <ul> <li><a href="https://www.nytimes.com/2018/12/24/well/mind/work-schedule-hours-sleep-productivity-chronotype-night-owls.html">https://www.nytimes.com/2018/12/24/well/mind/work-schedule-hours-sleep-productivity-chronotype-night-owls.html</a></li> </ul> <p>Aaron Frost</p> <ul> <li><a href="https://www.powerwatch.com/">Matrix PowerWatch</a></li> <li><a href="https://twitter.com/ChloeCondon">https://twitter.com/ChloeCondon</a></li> </ul> <p>Chris Ferdinandi</p> <ul> <li><a href="https://learnvanillajs.com/">https://learnvanillajs.com/</a></li> </ul> <p>Tim Caswell</p> <ul> <li><a href="https://www.magicleap.com/">https://www.magicleap.com/</a></li> <li><a href="https://textonascreen.rocks/">https://textonascreen.rocks/</a></li> <li><a href="https://history.lds.org/saints">https://history.lds.org/saints</a></li> </ul>
Feb 05, 2019
MJS 092: Shashank Shekhar
19:01
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io/">Sentry</a>use the code &ldquo;devchat&rdquo; for 2 months free on Sentry small plan</li> <li><u><a href="https://clubhouse.io/jsjabber">Clubhouse</a></u></li> <li><a href="https://www.cachefly.com/">CacheFly&nbsp;</a></li> </ul> <p><strong>Host:&nbsp;</strong>Charles Max Wood</p> <p><strong>Special Guest:</strong>&nbsp;Shashank Shekhar</p> <h3><strong>Episode Summary</strong></h3> <p>In this episode of My JavaScript Story, Charles Max Wood hosts Shashank Shekhar, a product developer at Localtrip from India.</p> <p>Shashank was introduced to programming when he was in school with Logo language. He then attended <a href="https://www.freecodecamp.org/">freeCodeCamp</a> and learned JavaScript. Shashank talks about his journey as a developer and the projects he is working on now at Localtrip.</p> <h3><strong>Links</strong></h3> <ul> <li><a href="https://www.linkedin.com/in/ashwamegh/">Shashank&#39;s LinkedIN</a></li> <li><a href="https://www.freecodecamp.org/">freeCodeCamp</a></li> <li><a href="https://devchat.tv/my-javascript-story/">https://devchat.tv/my-javascript-story/</a></li> </ul> <h3><strong>Picks</strong></h3> <p><strong>Shashank Shekhar:</strong></p> <ul> <li><u>Do what you love</u></li> </ul> <p><strong>Charles Max Wood:</strong></p> <ul> <li><a href="https://www.youtube.com/watch?v=MBiNhHYs0Q4&amp;list=PLJesql-aSfX5-cTN7Em0rZNFcF10h5HpX">Dev Rev</a></li> </ul>
Jan 31, 2019
JSJ 349: Agile Development - The Technical Side with James Shore
59:46
<h2 dir="ltr"><strong>Sponsors</strong></h2> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">KendoUI</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></p> </li> </ul> <h3 dir="ltr"><strong>Panel</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Aimee Knight</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Joe Eames</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Charles Max Wood</strong></p> </li> </ul> <p dir="ltr"><strong>Special Guest: James Shore</strong></p> <h3 dir="ltr"><strong>Episode Summary</strong></h3> <p dir="ltr"><strong>James Shore is a developer who specializing in extreme programming, an Agile method. He also used to host a screencast called <a href="https://www.letscodejavascript.com/">Let&rsquo;s Code Test-Driven JavaScript</a>. They begin by discussing the core of Agile development, which James believes is being responsive to customers and business partners in a way that&rsquo;s sustainable and humane for the programmers involved. It prioritizes individuals and interactions over processes and tools. More can be found in <a href="https://agilemanifesto.org/">The Agile Manifesto</a>.</strong></p> <p dir="ltr"><strong>James delves into the historical context of the immersion of Agile and how things have changed from the 90&rsquo;s. Now, the name Agile is everywhere, but the ideals of agile are not as common. There is a tendency to either take Agile buzzwords and apply them to the way it was done long ago, or it&rsquo;s absolute chaos. James talks about ways to implement Agile in the workplace. He believes that the best way to learn Agile is work with someone who knows Agile, or read a book on it and then apply it. James recommends his book <a href="https://www.amazon.com/Art-Agile-Development-Pragmatic-Software/dp/0596527675/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">The Art of Agile Development: Pragmatic Guide to Agile Software Development</a> for people who want to started with Agile development. The panelists talk about where people often get stuck with implementing Agile. The hosts talk about their own processes in their company. </strong></p> <p dir="ltr"><strong>They discuss how people involved in the early days of Agile are disappointed in how commercial it has become.They agree that what&rsquo;s really the most important is the results. If you can respond to a request to change direction in less than two weeks and you don&rsquo;t have to spend months and months preparing something, and you do that in a way where the people on the team feel like their contributing, then you&rsquo;re doing Agile. James thinks that the true genius of Agile is in the way the actual work is done rather than in the way your organize the work. </strong></p> <p dir="ltr"><strong>Links</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/a-jie/AgileJS">Agile</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.scrum.org/">Scrum</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/bingdian/waterfall">Waterfall</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://agilemodeling.com/essays/fdd.htm">Feature Driven Development</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://www.extremeprogramming.org/">Extreme Programming (XP)</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.atlassian.com/software/jira">Jira</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/thoughtbot/bamboo">Bamboo</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.atlassian.com/software/confluence">Confluence</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.atlassian.com/enterprise/stack">Atlassian stack</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://searchsoftwarequality.techtarget.com/definition/cowboy-coding">Cowboy</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.agilealliance.org/glossary/mocks/">Mock objects</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://growsmethod.com/">Grows Method </a>by Andy Hunt</strong></p> </li> </ul> <h3 dir="ltr"><strong>Picks</strong></h3> <h3 dir="ltr"><strong>AJ O&rsquo;Neal:</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.amazon.com/Origin-Robert-Langdon-Dan-Brown/dp/0525563709/ref=sr_1_1?ie=UTF8&amp;qid=1548462018&amp;sr=8-1&amp;linkCode=ll1&amp;tag=devchattv-20&amp;linkId=f06bfe7482dca8bb751ed6d7cc86e2ab&amp;language=en_US">Origin</a> by Dan Brown </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.imdb.com/title/tt7668870/">Searching</a></strong></p> </li> </ul> <p dir="ltr"><strong>Aimee Knight:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://news.ycombinator.com/item?id=13701311">Hacker News Interview Questions Thread.</a></strong></p> </li> </ul> <p dir="ltr"><strong>Joe Eames:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong>The Ballad of Buster Scruggs on Netflix</strong></p> </li> </ul> <p dir="ltr"><strong>Charles Max Wood:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong>Getting up early</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>John Sonmez Kanbanflow <a href="https://www.youtube.com/watch?v=W9k0OhJkjQ0">video</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.drip.com/">Drip</a></strong></p> </li> </ul> <p dir="ltr"><strong>James Shore:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong>Lost in Space on Netflix</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://robertsspaceindustries.com/star-citizen">Star Citizen</a> PC game</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Jame&rsquo;s Agile book <a href="https://www.jamesshore.com/Agile-Book/">online</a></strong></p> </li> </ul>
Jan 30, 2019
MJS 091: Jamund Ferguson
39:52
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="http://sentry.io">Sentry</a>&nbsp;use the code &quot;devchat&quot; for $100 credit</li> <li><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></li> </ul>
Jan 24, 2019
JSJ 348: EnactJS with Ryan Duffy
44:08
<h2><strong>Sponsors</strong></h2> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">KendoUI</a></li> <li><a href="http://sentry.io">Sentry</a>&nbsp;use the code &quot;devchat&quot; for $100 credit</li> <li><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></li> <li><a href="https://www.cachefly.com/">CacheFly</a></li> </ul> <h4><strong>Panel</strong></h4> <p>Aimee Knight</p> <p>Aaron Frost</p> <p>Chris Ferdinandi</p> <p>Joe Eames</p> <p><strong>Special Guest: Ryan Duffy&nbsp; </strong></p> <p>In this episode of JavaScript Jabber, the panelists talk with Ryan Duffy who works on the EnactJS framework at LG Electronics. Ryan explains the framework in depth and answers all the questions about its design and implementation from the panelists and discusses some challenges faced along the way. Check it out!</p> <p>&nbsp;</p> <h4><strong>Show Notes:</strong></h4> <p>00:28 &ndash; Advertisement - <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">KendoUI</a></p> <p>1:08 - Ryan introduces himself and explains a bit about the EnactJS framework. While giving some background, he says that it is the 3rd generation of web frameworks that supports apps on webOS and they started building Enact on top of React about two years ago.</p> <p>2:00 - Aimee asks what exactly does webOS mean. Ryan answers that webOS was created by Palm for phones and related devices and it has several instances of chromium running on device with some service layer stuff.</p> <p>2:36 - Aaron mentions that webOS was big when other operating systems were still coming up, and Ryan agrees saying that it didn&rsquo;t get the adoption needed to make it successful later.</p> <p>3:00 - Ryan says that he always loved building apps for webOS phones given the flexibility and ease coming from a web development background.</p> <p>3:53 - Aaron asks on which other applications is webOS running other than TV. Ryan answers that TV is one of the major consumptions, and it also runs on certain robots such as the concierge ones, watches to some extent and a lot of projects internally, not yet released in the market.</p> <p>4:50 - Aaron asks if the Enact framework is big internally at LG. Ryan replies that it is the primary framework used for apps running on webOS.</p> <p>5:03 - Aaron enquires about the nature of adoption of Enact for third party or non-LG people, to which Ryan states that Enact remains the standard framework for people who are building apps.</p> <p>5:32 - Joe joins in the conversation.</p> <p>6:25 - Aaron remarks that given that webOS is used in latest robots, televisions, watches and other such apps, it sounds like they are heavily investing into it. Ryan affirms by saying that the webOS journey goes from Palm phones to HP tablets to finally coming to LG. He goes on to explain their team structure, stating that there are two major teams in play right now - the R&amp;D team is in the US and the implementation team is in Korea.</p> <p>8:00 - Aaron asks about the role their team plays in the app development. Ryan replies that his team is the stack team that forms the foundation for the apps and they take decisions on what the components should look like and similar tasks. The app teams based in Korea decide their menu based on those decisions.</p> <p>8:35 - Aaron asks what exactly is meant by the Blink team. Ryan answers that the it&rsquo;s the team that works with an LG customized version of chromium.</p> <p>9:10 &ndash; Aaron then asks about his individual role in the team. Ryan says that he is one of the managers of the stack team and he&rsquo;s been on the team for little more than 4 years.</p> <p>9:30 - Aaron asks about the evolution of the framework over time. Ryan describes the historical background by saying that in the initial Enyo design the team built, was component based, and every tool needed to build single page apps had to be developed from scratch. He says that they felt the need to move on to an improved framework as they wanted to take advantage of the robust ecosystem that existed, so they ported component libraries of Enyo using the React toolset to form Enact.</p> <p>11:43 - Aaron asks if Enyo then ceased to exist to which Ryan states that it is still around to some extent.</p> <p>12:20 - Aaron asks if the team has something like &ldquo;create Enact app&rdquo; to create a new app internally, like React. Ryan mentions that Jason - a tooling and automation expert from their team has built a feature called V8 snapshot - which loads JavaScript into memory and takes a snapshot - can in turn be loaded by the TV to launch the app in order to achieve a faster load time. He says that their long-term goal is to increase compatibility with the ecosystem.</p> <p>14:40 - Aaron asks if he can use the React CLI to create something for TV as a third-party developer. Ryan elaborates that CLI can be used to build, compile and bundle apps and there is another tool- SDK to bundle it for delivery to the TV. The app is tested fully in chrome, bundled and deployed to the TV.</p> <p>15:25 - Aaron asks if choosing React was a natural decision for the team. Ryan explains that they researched on some component-based frameworks that were available at that time and found that React was the best choice.</p> <p>17:30 - Aimee asks the reason for open sourcing the framework. Ryan mentions that Enyo always has been open source. He also remarks that the team does not get a lot of input from the community and would like to get more information about what&rsquo;s working and what&rsquo;s not and how they can contribute back.</p> <p>19:40 - Aaron asks about the kind of apps can be built by using Enact except for TV. Ryan says that any kind can be built but the hesitation is that the UI library is specially designed for TV, so they may look different for other spaces like phones or other devices.</p> <p>20:35 &ndash; Advertisement &ndash; <a href="https://sentry.io/welcome/">Sentry</a> &ndash; Use the code &ldquo;devchat&rdquo; to get two months free on Sentry&rsquo;s small plan.</p> <p>21:30 - Aaron asks what decisions around making apps are made by Enact for the developers. Ryan explains that the architectural pattern they have chosen is higher order components, and there is a lot of attention on render props that can be easily plugged into the apps.</p> <p>22:48 - Aaron asks if the state part was built by the team on their own. Ryan answers in affirmative that everything in Enact is completely built by the team, no external states are used within the framework. No decisions are made in the data space yet. He mentions that they had tried to limit their Enact development effort in cases where the solution was already available unless they had a new perspective on the problem.</p> <p>24:30 - Aaron remarks the idea of Enact being something like a webpack is becoming clearer for him and asks Ryan if his team is spending most of their time in building component libraries. Ryan affirms by explaining that Enact is designed in layers. He goes on to explain that focus management is a difficult problem to solve where the ability to navigate an application intuitively such as in the case of remote control is handled by a certain component. Also, as LG ships TVs all over the world, there are significant internationalization requirements. He then elucidates the TV centric moonstone library in detail and states that they took all the base capabilities from it and formed a UI layer.</p> <p>27:26 - Aaron asks if moonstone is theme-able. Ryan says that it&rsquo;s not and the UI layer in not styled.</p> <p>28:40 - Chris asks, as someone who manages open source projects and builds tools, about the process of making decisions on the kind of components to include and challenges Ryan and his team faced in the open source space.</p> <p>29:45 &ndash; Ryan says that they haven&rsquo;t had the ideal open source experience yet. They do have a lot of discussions on API design and components but it&rsquo;s a struggle to what to include and what to not.</p> <p>31:25 - Chris shares his own experience while stating that finding a common ground is always hard especially when there is internal resistance in convincing people to use new software. Ryan says that internally their biggest struggle is that a group of people use the Qt platform and there is chunk of webOS that is built on it and not on Enact. Trying to convince people to do the migration from Enyo to Enact was difficult but they have had most success in trying to eliminate friction and it was easier in the sense that there weren&rsquo;t any required parameters for things.</p> <p>36:05 &ndash; Aaron states that all his questions are answered and his understanding of Enact is clear.</p> <p>36:21 &ndash; Advertisement &nbsp;- <a href="https://clubhouse.io/?utm_source=invite&amp;utm_medium=link&amp;utm_campaign=saasquatch&amp;rsCode=JSJABBER&amp;rsShareMedium=UNKNOWN&amp;rsEngagementMedium=UNKNOWN">Clubhouse</a></p> <p>37:10 &ndash; Picks!</p> <p>43:41- END &ndash; Advertisement - <a href="https://www.cachefly.com/">CacheFly!</a></p> <p>&nbsp;</p> <h4><strong>Picks</strong></h4> <p>Joe</p> <ul> <li><a href="https://www.kickstarter.com/projects/1875657065/monsters-of-feyland-for-5th-edition">Monsters of Feyland</a></li> </ul> <p>Chris</p> <ul> <li>Presentation by Eric Bailey on Accessibility - <a href="https://noti.st/ericwbailey/TcMJFP/if-it-s-interactive-it-needs-a-focus-style">If its interactive, it needs a focus style</a></li> <li><a href="https://ubtrobot.com/collections/jimu-robots">Jimu Robots</a></li> <li><a href="https://www.imdb.com/title/tt0910970/">Wall-E</a></li> </ul> <p>Aimee</p> <ul> <li>Coworkers at NPM</li> </ul> <p>Aaron</p> <ul> <li><a href="https://en.wikipedia.org/wiki/Pierogi">Pierogi</a></li> <li><a href="https://en.wikipedia.org/wiki/Harry_Potter_and_the_Cursed_Child">The Cursed Child</a></li> </ul> <p>Ryan</p> <ul> <li><a href="https://enactjs.com/">EnactJS</a></li> <li><a href="https://en.wikipedia.org/wiki/Thinking,_Fast_and_Slow">Thinking, Fast and Slow</a></li> <li><a href="https://developer.mozilla.org/son/docs/Tools">Firefox DevTools</a></li> </ul>
Jan 22, 2019
JSJ 347: JAMstack with Divya Sasidharan & Phil Hawksworth
1:21:54
<h2 dir="ltr"><strong>Sponsors</strong></h2> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">KendoUI</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="http://sentry.io/">Sentry</a> use the code &ldquo;devchat&rdquo; for $100 credit</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></p> </li> </ul> <h3 dir="ltr"><strong>Panel</strong></h3> <ul> <li dir="ltr"> <p dir="ltr"><strong>AJ O&rsquo;Neal</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Chris Ferdinandi</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Charles Max Wood</strong></p> </li> </ul> <p dir="ltr"><strong>Joined by special guest: Phil Hawksworth and Divya Sasidharan</strong></p> <h3 dir="ltr"><strong>Episode Summary</strong></h3> <p dir="ltr"><strong>This episode features special guests Philip Hawksworth and Divya Sasidharan. Phil lives just outside of London and Divya lives in Chicago, and both of them work for Netlify. Divya is also a regular on the Devchat show Views on Vue. The panelists begin by discussing what JAMstack is. JAM stands for JavaScript, API, and Markup. It used to be known as the new name for static sites, but it&rsquo;s much more than that. Phil talks about how dynamic &lsquo;static&rsquo; sites really are. JAMstack sites range from very simple to very complex, Static is actually a misnomer. JAMstack makes making, deploying, and publishing as simple as possible.</strong></p> <p dir="ltr"><strong>The panelists discuss the differences between building your own API and JAMstack and how JavaScript fits into the JAMstack ecosystem. They talk about keys and secrets in APIs and the best way to handle credentials in a static site. There are multiple ways to handle it, but Netlify has some built in solutions. All you have to do is write your logic for what you want your function to do and what packages you want included in it, they do all the rest. Every deployment you make stays there, so you can always roll back to a previous version. </strong></p> <p dir="ltr"><strong>Charles asks about how to convert a website that&rsquo;s built on a CMS to a static site and some of the tools available on Netlify. They finish by discussing different hangups on migrating platforms for things like Devchat (which is built on WordPress) and the benefits of switching servers. </strong></p> <p dir="ltr"><strong>Links</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/topics/api">API</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/facebook/react">React</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/jamstack/jamstack.org">JAMstack</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>CMS (content management system)</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>CDM (Customer Data Management)</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://softwareengineering.stackexchange.com/questions/241104/programming-language-vs-markup-language-vs-scripting-language">Markup</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>UI (User Interface)</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://jekyllrb.com/">Jekyll</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://medium.freecodecamp.org/what-is-progressive-enhancement-and-why-it-matters-e80c7aaf834a">Progressive Enhancement</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/11ty/eleventy">11ty</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://gohugo.io/">Hugo</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/nozzle/react-static">React Static</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.gatsbyjs.org/">Gatsby</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://vuejs.org/">Vue</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://aws.amazon.com/">AWS</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://aws.amazon.com/lambda/">AWS Lambda</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://azure.microsoft.com/en-us/">Azure</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/topics/markdown">Markdown</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/topics/wordpress">WordPress</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/zapier/zapier-platform-cli">Zapier</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Stefan Baumgartner <a href="https://www.smashingmagazine.com/2016/08/using-a-static-site-generator-at-scale-lessons-learned/">article</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.copyblogger.com/what-the-heck-is-rss/">RSS feed</a></strong></p> </li> </ul> <h3 dir="ltr"><strong>Picks</strong></h3> <p dir="ltr"><strong>AJ O&rsquo;Neal:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong>Prince Ali Ababwa (Aladdin)</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://nodejs.org/es/blog/release/v10.12.0/">Node v.10.12</a></strong></p> </li> </ul> <p dir="ltr"><strong>Chris Ferdinandi:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://github.com/cferdinandi/bouncer">Bouncer</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://philipmorganconsulting.com/">Philip Morgan Consulting</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://jonathanstark.com/">Jonathan Stark Consulting</a></strong></p> </li> </ul> <p dir="ltr"><strong>Charles Max Wood:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://mastodon.social/">Mastadon Social</a> </strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong>Thanksgiving turkey</strong></p> </li> </ul> <p dir="ltr"><strong>Phil Hawksworth:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong>Dripping (solidified meat drippings spread on toast)</strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.imdb.com/title/tt7905466/">They Shall Not Grow Old</a></strong></p> </li> </ul> <p dir="ltr"><strong>Divya Sasidharan:</strong></p> <ul> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.reaktor.com/blog/fear-trust-and-javascript/">Fear, Trust, and JavaScript</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://pudding.cool/2018/08/pockets/">Women&rsquo;s Pockets Are Inferior</a></strong></p> </li> <li dir="ltr"> <p dir="ltr"><strong><a href="https://www.wealthsimple.com/magazine/money-diary-couple-debt-us">Debt: A Love Story</a></strong></p> </li> </ul>
Jan 15, 2019
JSJ 346: Azure Pipelines with Ed Thomson LIVE at Microsoft Ignite
43:19
<p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">KendoUI</a></li> <li><a href="http://sentry.io">Sentry</a>&nbsp;use the code &quot;devchat&quot; for $100 credit</li> <li><strong><a href="https://clubhouse.io/jsjabber">Clubhouse</a></strong></li> </ul> <p><strong>Panel: </strong></p> <p><a href="https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Charles Max Wood</a></p> <p><strong>Special Guests:</strong> <a href="https://twitter.com/ethomson?lang=en">Ed Thomson</a></p> <p>In this episode, the Charles speaks with <a href="https://uk.linkedin.com/in/ethomson">Ed Thomson</a> 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&rsquo;s episode to hear its new features and other exciting news!</p> <p><strong>Show Topics:</strong></p> <p>0:59 &ndash; Live at Microsoft Ignite</p> <p>1:03 &ndash; Ed: Hi! I am a Program Manager at <a href="https://azure.microsoft.com/en-us/services/devops/pipelines/">Azure.</a></p> <p>1:28 &ndash; Rewind 2 episodes to hear more about Azure DevOps!</p> <p>1:51 &ndash; Ed: One of the moves from Pipelines to DevOps &ndash; they could still adopt Pipelines. Now that they are separate services &ndash; it&rsquo;s great.</p> <p>2:38 &ndash; Chuck talks about features he does and doesn&rsquo;t use.</p> <p>2:54 &ndash; Ed.</p> <p>3:00 &ndash; Chuck: Repos and Pipelines. I am going to dive right in. Let&rsquo;s talk about Repos. Microsoft just acquired GitHub.</p> <p>3:18 &ndash; Ed: Technically we have not officially acquired GitHub.</p> <p>3:34 &ndash; Chuck: It&rsquo;s not done. It&rsquo;s the end of September now.</p> <p>3:55 &ndash; Ed: They will remain the same thing for a while. GitHub is the home for open source. Repos &ndash; 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...</p> <p>Ed continues to talk about this topic. He is talking about One Drive and these repositories.</p> <p>6:28 &ndash; Ed: We aren&rsquo;t going to be mixing and matching. I used to work through GitHub. It&rsquo;s exciting to see those people work close to me.</p> <p>6:54 &ndash; Chuck.</p> <p>6:59 &ndash; Ed: It has come a long way.</p> <p>7:07 &ndash; Chuck: Beyond the FSF are we talking about other features or?</p> <p>7:21 &ndash; 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.</p> <p>8:17 &ndash; Chuck.</p> <p>8:37 &ndash; Ed: You just can&rsquo;t set it up with Apache. You have to figure it out.</p> <p>8:51 &ndash; Chuck: The method of pushing and pulling.</p> <p>9:06 &ndash; 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.</p> <p>9:38 &ndash; Ed and Chuck continue to talk.</p> <p>9:50 &ndash; Ed: Pipelines is the most interesting thing we are working on. We have revamped the entire experience. Build and release. It&rsquo;s easy to get started. We have a visual designer. Super helpful &ndash; super straightforward. Releases once your code is built &ndash; get it out to production say for example Azure. It&rsquo;s the important thing to get your code out there.</p> <p>10:55 &ndash; Chuck: How can someone start with this?</p> <p>11:00 &ndash; Ed: Depends on where your repository is. It will look at your code. &ldquo;Oh, I know what that is, I know how to build that!&rdquo; Maybe everyone isn&rsquo;t doing everything with JavaScript. If you are using DotNet then it will know.</p> <p>12:05 &ndash; Chuck: What if I am using both a backend and a frontend?</p> <p>12:11 &ndash; Ed: One repository? That&rsquo;s when you will have to do a little hand packing on the...</p> <p>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&rsquo;s an open source project; there&rsquo;s 2 &ndash; what are you going to do with the other 8? You&rsquo;d be surprised &ndash; people try to sneak that in there.</p> <p>13:30 &ndash; Chuck: It seems like continuous integration isn&rsquo;t a whole lot complicated.</p> <p>13:39 &ndash; Ed: I am a simple guy that&rsquo;s how I do it. You can do advanced stuff, though. The Cake Build system &ndash; they are doing some crazy things. We have got Windows, Lennox, and others. Are you building for Raspberries Pies, then okay, do this...</p> <p>It&rsquo;s not just running a script.</p> <p>15:00 &ndash; Chuck: People do get pretty complicated if they want. It can get complicated. Who knows?</p> <p>15:26 &ndash; Chuck:&nbsp; How much work do you have to do to set-up a Pipeline like that?</p> <p>15:37 &ndash; Ed answers the question in detail.</p> <p>16:03 &ndash; Chuck asks a question.</p> <p>16:12 &ndash; Ed: Now this is where it gets contentious. If one fails...</p> <p>Our default task out of the box...</p> <p>16:56 &ndash; Chuck: If you want 2 steps you can (like me who is crazy).</p> <p>17:05 &ndash; Ed: Yes, I want to see if it failed.</p> <p>17:17 &ndash; Chuck: Dude, writing code is hard. Once you have it built and tested &ndash; continuous deployment.</p> <p>17:33 &ndash; Ed: It&rsquo;s very easy. It&rsquo;s super straightforward, it doesn&rsquo;t have to be <a href="https://azure.microsoft.com/en-us/free/search/?&amp;OCID=AID719825_SEM_fNqQIgDa&amp;lnkd=Google_Azure_Brand&amp;gclid=EAIaIQobChMI4pTVroeH3gIVkrrACh3N8A_jEAAYASAAEgKhmPD_BwE&amp;dclid=CPuwl7CHh94CFUyvTwod64QINA">Azure</a> (although I hope it is!).</p> <p>Ed continues this conversation.</p> <p>18:43 &ndash; Chuck: And it just pulls it?</p> <p>18:49 &ndash; Ed: Don&rsquo;t poke holes into your firewall. We do give you a lot of flexibility</p> <p>19:04 &ndash; Chuck: VPN credentials?</p> <p>19:10 &ndash; Ed: Just run the...</p> <p>19:25 &ndash; Chuck comments.</p> <p>19:36 &ndash; Ed: ...Take that Zip...</p> <p>20:02 &ndash; Ed: Once the planets are finely aligned then...it will just pull from it.</p> <p>20:25 &ndash; Chuck: I host my stuff on Digital Ocean.</p> <p>20:46 &ndash; Ed: It&rsquo;s been awhile since I played with...</p> <p>20:55 &ndash; Chuck.</p> <p>20:59 &ndash; Ed and Chuck go back and forth with different situations and hypothetical situations.</p> <p>21:10 &ndash; Ed: What is Phoenix?</p> <p>21:20 &ndash; Chuck explains it.</p> <p>21:25 &ndash; Ed: Here is what we probably don&rsquo;t have is a lot of <a href="http://www.erlang.org/community">ERLANG</a> support.</p> <p>22:41 &ndash; Advertisement.</p> <p>23:31 &ndash; Chuck: Let&rsquo;s just say it&rsquo;s a possibility. We took the strip down node and...</p> <p>23:49 &ndash; Ed: I think it&rsquo;s going to happen.</p> <p>23:55 &ndash; Ed: Exactly.</p> <p>24:02 &ndash; Chuck: Testing against Azure services. So, it&rsquo;s one thing to run on my machine but it&rsquo;s another thing when other things connect nicely with an Azure set-up. Does it connect natively once it&rsquo;s in the Azure cloud?</p> <p>24:35 &ndash; Ed: It should, but there are so many services, so I don&rsquo;t want to say that everything is identical. We will say yes with an asterisk.</p> <p>25:07 &ndash; Chuck: With continuous deployment...</p> <p>25:41 &ndash; Ed: As an example: I have a CD Pipeline for my website. Every time I merge into master...</p> <p>Ed continues this hypothetical situation with full details. Check it out!</p> <p>27:03 &ndash; Chuck: You probably can do just about anything &ndash; deploy by Tweet!</p> <p>27:15 &ndash; Ed: You can stop the deployment if people on Twitter start complaining.</p> <p>27:40 &ndash; Chuck: That is awesome! IF it is something you care about &ndash; and if it&rsquo;s worth the time &ndash; then why not? If you don&rsquo;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?</p> <p>That&rsquo;s the thing &ndash; 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&rsquo;s the power of this &ndash; because it catches the bug before I have to catch it &ndash; then that saves me time.</p> <p>30:08 &ndash; Ed: That&rsquo;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.</p> <p>31:03 &ndash; Chuck: Then you can use time for coding style and other things.</p> <p>I can take mental shortcuts.</p> <p>31:37 &ndash; Ed: The other thing you can do is avoiding security problems. If a static code analysis tool catches an integer overflow then...</p> <p>32:30 &ndash; Chuck adds his comments.</p> <p>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?</p> <p>33:00 &ndash; Ed: Yep. My favorite is <a href="https://www.whitesourcesoftware.com/how-does-it-work/">WhiteSource.</a> It knows all of the open source and third-party tools. It can scan your code and...</p> <p>34:05 &ndash; Chuck: It works with a lot of languages.</p> <p>34:14 &ndash; Ed.</p> <p>34:25 &ndash; 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...</p> <p>35:04 &ndash; Ed: Let&rsquo;s throw out Blackberry builds. We will ignore it.</p> <p>Mac OS dies a fine job. That&rsquo;s why we have all of those.</p> <p>35:29 &ndash; Chuck: But I want to run my tests, too!</p> <p>35:36 &ndash; Ed: I really like to use App Center. It is ultimately incredible to see all the tests you can run.</p> <p>36:29 &ndash; Chuck: The deployment is different, though, right?</p> <p>36:40 &ndash; Ed: I have a friend who clicks a button in...</p> <p>Azure DevOps.</p> <p>37:00 &ndash; Chuck: I like to remind people that this isn&rsquo;t a new product.</p> <p>37:15 &ndash; Ed: Yes, <a href="https://azure.microsoft.com/en-us/blog/introducing-azure-devops/">Azure DevOps.</a></p> <p>37:24 &ndash; Chuck: Any new features that are coming out?</p> <p>37:27 &ndash; Ed: We took a little break, but...</p> <p>37:47 &ndash; 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.</p> <p>39:07 &ndash; Chuck: What is the interplay between <a href="https://azure.microsoft.com/en-us/blog/introducing-azure-devops/">Azure DevOps</a> and Visual Studio Code? Because they have plugins for freaking everything. I am sure there is something there that...</p> <p>39:30 &ndash; Ed: I am a VI guy and I&rsquo;m like 90% sure there is something there.</p> <p>You are an eMac&rsquo;s guy?</p> <p>The way I think about it is through Git right out of the box.</p> <p>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.</p> <p>40:45 &ndash; Chuck: Yes, people can look for extensions and see what the capabilities are.</p> <p>Chuck talks about code editor and tools.&nbsp;</p> <p>41:28 &ndash; Ed: ... we have been pulling that out as quickly as possible.</p> <p>We do have IE extensions, I am sure there is something for VS Code &ndash; but it&rsquo;s not where I want to spend my time.</p> <p>42:02 &ndash; Chuck: Yes, sure.</p> <p>42:07 &ndash; Ed: But everyone is different &ndash; they won&rsquo;t work the way that I work. So there&rsquo;s that.</p> <p>42:30 &ndash; Ed: That Chuck.</p> <p>42:36 &ndash; Chuck: Where do people get news?</p> <p>42:42 &ndash; Ed: <a href="https://azure.microsoft.com/en-us/services/devops/?nav=min">Go to here!</a></p> <p>42:54 &ndash; Chuck: Where do people find you?</p> <p>43:00 &ndash; Ed: <a href="https://twitter.com/ethomson?lang=en">Twitter!</a></p> <p>43:07 &ndash; Chuck: Let&rsquo;s do Picks!</p> <p>43:20 &ndash; <a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=r%252F+%257Efreshbooks&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696557&amp;kwid=kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=284685866051&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI--6zho6H3gIVjsVkCh2wsQx6EAAYASAAEgL9B_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CO7qmoiOh94CFUnHwAodiCQBUA">Advertisement &ndash; Fresh Books!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://github.com">GitHub</a></li> <li><a href="https://azure.microsoft.com/en-us/free/search/?&amp;OCID=AID719825_SEM_fNqQIgDa&amp;lnkd=Google_Azure_Brand&amp;gclid=EAIaIQobChMI4pTVroeH3gIVkrrACh3N8A_jEAAYASAAEgKhmPD_BwE&amp;dclid=CPuwl7CHh94CFUyvTwod64QINA">Microsoft&rsquo;s Azure</a></li> <li><a href="https://azure.microsoft.com/en-us/services/devops/pipelines/">Microsoft&rsquo;s Pipeline</a></li> <li><a href="https://azure.microsoft.com/en-us/services/devops/?nav=min">Azure DevOps</a></li> <li><a href="http://www.erlang.org/community">Erlang</a></li> <li><a href="https://www.whitesourcesoftware.com/how-does-it-work/">WhiteSource</a></li> <li><a href="https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chuck&rsquo;s Twitter</a></li> <li><a href="https://twitter.com/ethomson?lang=en">Ed Thomson&rsquo;s Twitter</a></li> <li><a href="https://github.com/ethomson">Ed Thomson&rsquo;s GitHub</a></li> <li><a href="https://www.edwardthomson.com">Ed Thomson&rsquo;s Website</a></li> <li><a href="https://uk.linkedin.com/in/ethomson">Ed Thomson&rsquo;s LinkedIn</a></li> </ul> <p><strong>Picks:</strong></p> <p>Ed</p> <ul> <li><a href="https://www.allthingsgit.com/">Podcast - All Things Git</a></li> </ul>
Jan 08, 2019
JSJ 345: Azure Devops with Donovan Brown LIVE at Microsoft Ignite
57:32
<p><strong>Panel: </strong></p> <p>Charles Max Woods</p> <p><strong>Special Guests:</strong> <a href="http://donovanbrown.com">Donovan Brown</a></p> <p>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&rsquo;s fastest growing online registration sites for motorsports events <a href="http://www.dlbracing.com">DLBRACING.com</a>. When he is not writing software, he races cars for fun. Listen to today&rsquo;s episode where Chuck and Donovan talk about DevOps, Azure, Python, Angular, React, Vue, and much, much more!</p> <p><strong>Show Topics:</strong></p> <p>1:41 &ndash; 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&rsquo;t want to do, like fix bugs, etc. How does Microsoft DevOps to choose what they want to do?</p> <p>2:37 &ndash; 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.</p> <p>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.</p> <p>4:15 &ndash; Chuck: What has changed?</p> <p>4:19 &ndash; Guest: The branding changed. The name wasn&rsquo;t the most favorite among the people. The word &ldquo;visual&rdquo; 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.</p> <p>People didn&rsquo;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&rsquo;t have a heart attack. Maybe you are using us for some features not all of them &ndash; cool.</p> <p>7:40 &ndash; Chuck: With deployments and other things &ndash; we don&rsquo;t talk about the process for development a lot.</p> <p>8:00 &ndash; Guest talks about the things that can help out with that.</p> <p>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&rsquo;s brilliant stuff. There are 3 different templates. The templates actually change over the language. You don&rsquo;t have to do mental math.</p> <p>9:57 &ndash; Chuck: Just talking about the process. Which of these things we work on next when I&rsquo;ve got a bug, or a ...</p> <p>10:20 &ndash; 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!</p> <p>11:54 &ndash; Chuck comments.</p> <p>12:26 &ndash; Chuck: Back to the feature. Creating the user stories is a different process than X.</p> <p>12:44 &ndash; Guest &ndash; 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...</p> <p>These are actual tasks that I can run.</p> <p>13:52 &ndash; Chuck: Once you have those tests written can you pull those into your CI?</p> <p>14:00 &ndash; Guest: &ldquo;Manual tests x0.&rdquo;</p> <p><em>Guest dives into the question. </em></p> <p>14:47 &ndash; I expect my team to write those test cases. The answer to your question is yes and no.</p> <p>We got so good at it that we found something that didn&rsquo;t even exist, yet.</p> <p>16:19 &ndash; Guest: As a developer it might be mind</p> <p>16:29 &ndash; Chuck: I fixed this bug 4x, I wished I had CI to help me.</p> <p>16:46 &ndash; Guest: You get a bug, then you fix a code, etc., etc. You don&rsquo;t know that this original bug just came back. Fix it again. Am I in Groundhog Day?</p> <p>They are related to each other. You don&rsquo;t have a unit test to tell you. When you get that very first bug &ndash; 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&rsquo;s the beauty in it.</p> <p>18:33 &ndash; Chuck: 90% of the unit tests I write &ndash; even 95% of the time they pass. It&rsquo;s the 5% you would have no idea that it&rsquo;s related. I can remember broad strokes of the code that I wrote, but 3 months down the road I can&rsquo;t remember.</p> <p>19:14 &ndash; Guest: If you are in a time crunch &ndash; I don&rsquo;t have time for this unit test.</p> <p>Guest gives us a hypothetical situation to show how unit tests really can help.</p> <p>20:25 &ndash; Make it muscle memory to unit test. I am a faster developer with the unit tests.</p> <p>20:45 &ndash; Chuck: In the beginning it took forever. Now it&rsquo;s just how I write software now.</p> <p>It guides my thought process.</p> <p>21:06 &ndash; Guest: Yes! I agree.</p> <p>22:00 &ndash; Guest: Don&rsquo;t do the unit tests</p> <p>22:10 &ndash; Chuck: Other place is when you write a new feature,...go through the process. Write unit tests for the things that you&rsquo;ve touched. Expand your level of comfort.</p> <p>DevOps &ndash; 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?</p> <p>23:13 &ndash; Guest: Azure DevOps Projects. <a href="http://donovanbrown.com/post/yo-TFS">YoTeam.</a></p> <p>Note.js, Java and others are mentioned by the Guest.</p> <p>25:00 &ndash; Code Badges&rsquo; Advertisement</p> <p>25:48 &ndash; Chuck: I am curious &ndash; 2 test sweets for Angular or React or Vue. How does that work?</p> <p>26:05 &ndash; Guest: So that is Jasmine or Mocha? So it really doesn&rsquo;t matter. I&rsquo;m a big fan of Mocha. It tests itself. I install local to my project alone &ndash; I can do it on any CI system in the world. <a href="http://donovanbrown.com/post/yo-TFS">YoTeam</a> is not used in your pipeline. Install 2 parts &ndash; Yo and Generator &ndash; Team. Answer the questions and it&rsquo;s awesome. I&rsquo;ve done conferences in New Zealand.</p> <p>28:37 &ndash; Chuck: Why would I go anywhere else?</p> <p>28:44 &ndash; Guest: <a href="http://donovanbrown.com/post/yo-TFS">YoTeam</a>&nbsp; was the idea of...</p> <p>28:57 &ndash; Check out Guest</p> <p>29:02 &ndash; Guest: I want Donovan in a box. If I weren&rsquo;t there then the show wouldn&rsquo;t exist today.</p> <p>29:40 &ndash; Chuck: Asks a question.</p> <p>29:46 &ndash; Guest: 5 different verticals.</p> <p>Check out this timestamp to see what <a href="https://twitter.com/DonovanBrown?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Donovan</a> says the 5 different verticals are. Pipelines is 1 of the 5.</p> <p>30:55 &ndash; Chuck: Yep &ndash; it works on my Mac.</p> <p>31:04 &ndash; Guest: We also have Test Plant and Artifacts.</p> <p>31:42 &ndash; Chuck: Can you resolve that on your developer machine?</p> <p>31:46 &ndash; Guest: Yes, absolutely! There is my private repository and...</p> <p>33:14 &ndash; Guest: *People not included in box.*</p> <p>33:33 &ndash; Guest: It&rsquo;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</p> <p>33:59 &ndash; 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?</p> <p>34:27 &ndash; <a href="https://azure.microsoft.com/en-us/services/devops/?nav=min">Azure.com/devops</a> &ndash; that is a great landing page.</p> <p>How can I get a demo going? You can say here is my account &ndash; 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&rsquo;s your job to do this, because it will make you more efficient. You need me to be using these tools.</p> <p>36:11 &ndash; Chuck comments.</p> <p>36:17 &ndash; Guest: Say you are on a team of developers and love <a href="https://github.com">GitHub</a> and things that integration is stupid, but how many people would disagree about...</p> <p>38:02 &ndash; The reports prove it for themselves.</p> <p>38:20 &ndash; Chuck: You can get started for free &ndash; so when do you have to start paying for it?</p> <p>38:31 &ndash; Guest: Get 4 of your buddies and then need more people it&rsquo;s $6 a month.</p> <p>39:33 &ndash; Chuck adds in comments. If this is free?</p> <p>39:43 &ndash; Guest goes into the details about plans and such for this tool.&nbsp;</p> <p>40:17 &ndash; Chuck: How easy it is to migrate away from it?</p> <p>40:22 &ndash; Guest: It&rsquo;s <a href="https://github.com">GITHub</a>.</p> <p>40:30 &ndash; Chuck: People are looing data on their CI.</p> <p>40:40 &ndash; Guest: You can comb that information there over the past 4 years but I don&rsquo;t know if any system would let you export that history.</p> <p>41:08 &ndash; Chuck: Yeah, you are right.</p> <p>41:16 &ndash; Guest adds more into this topic.</p> <p>41:25 &ndash; Chuck: Yeah it&rsquo;s all into the machine.</p> <p>41:38 &ndash; Chuck: Good deal.</p> <p>41:43 &ndash; Guest: It&rsquo;s like a drug. I would never leave it. I was using TFS before Microsoft.</p> <p>42:08 &ndash; Chuck: Other question: continuous deployment.</p> <p>42:56 &ndash; When I say every platform, I mean every platform: mobile devices, AWS, Azure, etc.</p> <p>Anything you can do from a command line you can do from our build and release system.</p> <p><a href="https://docs.microsoft.com/en-us/powershell/developer/windows-powershell">PowerShell</a> you don&rsquo;t have to abandon it.</p> <p>45:20 &ndash; Guest: I can&rsquo;t remember what that tool is called!</p> <p>45:33 &ndash; Guest: Anything you can do from a command line. Before firewall. Anything you want.</p> <p>45:52 &ndash; Guest: I love my job because I get to help developers.</p> <p>46:03 &ndash; Chuck: What do you think the biggest mistake people are doing?</p> <p>46:12 &ndash; Guest: They are trying to do it all at once. Fix that one little thing.</p> <p>It&rsquo;s instant value with no risks whatsoever. Go setup and it takes 15 minutes total. Now that we have this continuous build, now let&rsquo;s go and deploy it. Don&rsquo;t dream up what you think your pipeline should look like. Do one thing at a time. What hurts the most that it&rsquo;s &ldquo;buggy.&rdquo; Let&rsquo;s add that to the pipeline.</p> <p>It&rsquo;s in your pipeline today, what hurts the most, and don&rsquo;t do it all at once.</p> <p>49:14 &ndash; Chuck: I thought you&rsquo;d say: I don&rsquo;t have the time.</p> <p>49:25 &ndash; Guest: Say you work on it 15 minutes a day. 3 days in &ndash; 45 minutes in you have a CSI system that works forever. Yes I agree because people think they don&rsquo;t &ldquo;have the time.&rdquo;</p> <p>50:18 &ndash; Guest continues this conversation.</p> <p>How do you not have CI? Just install it &ndash; don&rsquo;t ask. Just do the right thing.</p> <p>50:40 &ndash; 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 &ndash; hey this hurts and now we know. Either we are going to have pain or not have pain.</p> <p>51:41 &ndash; Guest continues this conversation.</p> <p>Have pain &ndash; we should only have pain once or twice a year.</p> <p>Rollback.</p> <p>If you only have it every 6 months, that&rsquo;s not too bad.</p> <p>The pain will motivate you.</p> <p>52:40 &ndash; <a href="https://azure.microsoft.com/en-us/services/devops/?nav=min">Azure.com/devops.</a></p> <p><a href="https://twitter.com/azuredevops?lang=en">Azure DevOps&rsquo; Twitter</a></p> <p>53:22 &ndash; Picks!</p> <p>53:30 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement &ndash; Get a Coder Job</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://github.com/DarqueWarrior">Donovan Brown&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/DonovanBrown?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Donovan Brown&rsquo;s Twitter</a></li> <li><a href="http://donovanbrown.com">Donovan Brown</a></li> <li><a href="https://channel9.msdn.com/Events/Speakers/donovan-brown">Donovan Brown &ndash; Channel 9</a></li> <li><a href="https://developer.microsoft.com/en-us/advocates/donovan-brown">Donovan Brown &ndash; Microsoft</a></li> <li><a href="https://azure.microsoft.com/en-us/free/search/?&amp;OCID=AID719825_SEM_nLUGHrbQ&amp;lnkd=Google_Azure_Brand&amp;gclid=EAIaIQobChMInYG5oonk3QIVDoxpCh3XjAl7EAAYASAAEgLdh_D_BwE&amp;dclid=CLj7g6SJ5N0CFZUGfQodq7gGrA">Azure</a></li> <li><a href="http://donovanbrown.com/post/yo-TFS">YoTeam</a></li> <li><a href="https://azure.microsoft.com/en-us/services/devops/?nav=min">Azure.com/devops</a></li> <li><a href="https://github.com">GitHub</a></li> <li><a href="https://twitter.com/azuredevops?lang=en">Azure DevOps&rsquo; Twitter</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://angularbootcamp.com/">Angular Boot Camp</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean </a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get a Coder Job course</a></li> </ul> <p><strong>Picks:</strong></p> <p><strong>Charles </strong></p> <ul> <li><a href="https://www.jetblue.com"><strong>Jet Blue</strong></a></li> <li>Beta Testers</li> </ul> <p><strong>Donovan </strong></p> <ul> <li><a href="http://donovanbrown.com/post/yo-Team">YoTeam</a></li> <li><a href="http://donovanbrown.com/post/PowerShell-I-would-like-you-to-meet-TFS-and-VSTS">VSTeam Powershell Module</a></li> </ul>
Dec 25, 2018
MJS 090: AJ O’Neal
51:22
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://twitter.com/coolaj86">A.J. O&rsquo;Neal</a></p> <p>This week on My JavaScript Story, <a href="https://twitter.com/cmaxw?lang=en">Charles</a> talks with <a href="https://twitter.com/coolaj86">A.J. O&rsquo;Neal</a> who is a panelist on My JavaScript Jabber usually, but today he is a guest! The guys talk about AJ&rsquo;s background and past/current projects. Today&rsquo;s topics include: JavaScript, Ruby, jQuery, Rails, Node, Python, and more.</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>0:00 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>1:23 &ndash; Chuck: Introduce yourself, please.</p> <p>1:27 &ndash; 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.</p> <p>2:00 &ndash; Chuck: Where do you work now?</p> <p>2:02 &ndash; AJ: I work in UTAH at Big Squid!</p> <p>3:29 &ndash; AJ: I have my own company, too!</p> <p>3:41 &ndash; Chuck: Yeah we&rsquo;ve talked about that before. Where can we go?</p> <p>3:54: AJ: We have 2 products that are both Node. <a href="https://www.npmjs.com/package/greenlock">Greenlock for Node.js</a> is one of them! The other one is <a href="https://www.npmjs.com/package/telebit">Telebit.</a></p> <p>5:44 &ndash; Chuck: This interview is all about your background. How did you get into programming?</p> <p>6:04 &ndash; 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.</p> <p>The guest talks about his background in more detail.</p> <p>15:21 &ndash; Chuck: No it&rsquo;s interesting! I&rsquo;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&rsquo;s interesting to see the similarities!</p> <p>16:00 &ndash; AJ: Yep that&rsquo;s pretty much how I got into it! I went on a church service mission to Albania and really didn&rsquo;t do any computer work during those 2 years.</p> <p>19:39 &ndash; 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&rsquo;s how we met was through Ruby!</p> <p>20:25 &ndash; AJ: Yep that&rsquo;s it. Then that&rsquo;s when I learned about Node, too. There was a guy with a funny hate &ndash; do you remember that? (No.)</p> <p>21:03 &ndash; Chuck: Maybe?</p> <p>21:07 &ndash; AJ continues.</p> <p>27:53 &ndash; Chuck: What made you make the transition? People come into and out of different technologies all the time.</p> <p>28:18 &ndash; AJ: Yeah it started with me with jQuery!</p> <p>Rails has layers upon layers upon layers.</p> <p>AJ talks about different technologies their similarities/differences and mentions: JavaScript, Rails, Python, Node, Ruby, and much more.</p> <p>31:05 &ndash; Chuck: Node went out of their way on certain platforms that Rails didn&rsquo;t prioritize.</p> <p>31:11 &ndash; AJ continues to talk about different technologies and platforms.</p> <p>33:00 &ndash; 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?</p> <p>33:33 &ndash; AJ: It&rsquo;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?</p> <p>39:57 &ndash; Chuck.</p> <p>40:01 &ndash; AJ continues and talks about libraries and certificate standards.</p> <p>42:00 &ndash; AJ continues with the topic: certificates.</p> <p>42:44 &ndash; Chuck: I am going to go to PICKS! Where can people find you?</p> <p>42:55 &ndash; AJ: <a href="https://twitter.com/coolaj86?lang=en">Twitter!</a> <a href="https://coolaj86.com">Blog!</a> <a href="https://github.com/coolaj86">GitHub!</a> Anywhere!</p> <p>43:55 &ndash; Chuck: Picks!</p> <p>43:58 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p>END &ndash; <a href="https://www.cachefly.com">Cache Fly</a></p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://webpack.js.org">Webpack.js</a></li> <li><a href="https://serverless.com">Serverless</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li><a href="https://twitter.com/coolaj86">AJ&rsquo;s Twitter</a></li> <li><a href="https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chuck&rsquo;s Twitter</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p>A.J.</p> <ul> <li><a href="https://www.jcpenney.com">JC Penny!</a></li> <li><a href="https://www.jcpenney.com/p/stafford-travel-easy-care-broadcloth-long-sleeve-dress-shirt/ppr5007531708?pTmplType=regular&amp;country=US&amp;currency=USD&amp;selectedSKUId=53133760109&amp;selectedLotId=5313376&amp;fromBag=true&amp;quantity=1&amp;utm_medium=cse&amp;utm_source=google&amp;utm_campaign=dress%2520shirts&amp;utm_content=53133760109&amp;cid=cse%257Cgoogle%257C002%2520%252d%2520mens%257Cdress%2520shirts_53133760109&amp;gclid=EAIaIQobChMIgYW4sJWq3wIVWFuGCh382QlbEAQYASABEgJ-9_D_BwE">Stafford Shirts</a></li> <li><a href="https://www.express.com/mens-clothing">Express for Men</a></li> <li><a href="https://gomakethings.com">Chris Ferdinandi&rsquo;s GOMAKETHINGS. COM</a></li> </ul> <p>Chuck</p> <ul> <li>Wordpress &ndash; <a href="http://wordpress.kingsumo.com/apps/giveaways/">Plugin KingSumo</a></li> <li><a href="https://www.drip.com">Getdrip.com</a></li> <li><a href="https://www.softcover.io">Softcover.io</a></li> </ul>
Dec 19, 2018
JSJ 344: Inclusive Components with Heydon Pickering
1:10:37
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>Aimee Knight</li> <li>Chris Ferdinandi</li> <li>Joe Eames</li> </ul> <p><strong>Special Guest:</strong><strong> </strong><a href="https://github.com/Heydon">Heydon Pickering </a></p> <p>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&rsquo;s show: inclusive components. Check out Heydon&rsquo;s <a href="https://twitter.com/heydonworks">Twitter</a>, <a href="http://www.heydonworks.com/about">Website</a>, <a href="https://github.com/Heydon">GitHub,</a> and <a href="https://mastodon.social/@heydon">Mastodon</a> social accounts to learn more about him. To purchase the book &ndash; <a href="https://shop.smashingmagazine.com/products/inclusive-design-patterns">go here!</a></p> <p><strong>Show Topics:</strong></p> <p>0:00 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>0:38 &ndash; Chuck: Aimee, Chris, Joe, and myself &ndash; we are today&rsquo;s panel. My show the <a href="http://thedevrev.com">DevRev</a> is available online to check it out.</p> <p>1:30 &ndash; Guest: Plain ice cream would be frozen milk and that would be terrible. So I am lemon and candy JavaScript!</p> <p>2:13 &ndash; Chuck: We are talking today about...?</p> <p>2:22 &ndash; Chris: He&rsquo;s talking about &ldquo;inclusive components&rdquo; today!</p> <p>2:41 &ndash; Guest: Traveling is very stressful and I wanted something to do on the plane. I&rsquo;ve done this book, <a href="https://shop.smashingmagazine.com/products/inclusive-design-patterns">&ldquo;Inclusive Design Patterns.&rdquo;</a></p> <p>If you don&rsquo;t want to buy the book you can go to the blog. I have been talking with Smashing Magazine.</p> <p>5:40 &ndash; Panel.</p> <p>5:47 &ndash; Guest: I approached Smashing Magazine initially. They didn&rsquo;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: &ldquo;it was quite good!&rdquo; We skimmed it but came back to it now and now the content was more relevant in their eyes. I didn&rsquo;t want to do the same book but I wanted to do it around &ldquo;patterns.&rdquo; Rewriting components is what I do all the time. I use Vanilla JavaScript. <a href="http://backbonejs.org">Backbone.js</a> is the trendy one.</p> <p>9:52 &ndash; Panel: The hard book did it get published?</p> <p>10:02 &ndash; Guest: We are in the works and it&rsquo;s all in the final stages right now. It has to go through a different process for the print version.</p> <p>11:54 &ndash; Panel.</p> <p>11:58 &ndash; (<em>Guest continues about the editorial process.) </em></p> <p>12:09 &ndash; Panel: They probably switched to <a href="https://visualstudio.microsoft.com/tfs/">TFS &ndash; it&rsquo;s Microsoft&rsquo;s.</a></p> <p>12:23 &ndash; Guest: There was this argument on Twitter about the different processors.</p> <p>13:35 &ndash; Chris: What are the ways that people are breaking accessibility with their code through JavaScript?&nbsp;</p> <p>13:59 &ndash; Guest: The whole premise is that there aren&rsquo;t a ton of different components that we use. Generally, speaking. Most things we do through JavaScript &ndash; it&rsquo;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.</p> <p>18:37 &ndash; Chris: I have some specialty friends where they tell me where I&rsquo;ve screwed up my code. For example Eric Bailey and Scott O&rsquo;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.</p> <p>19:18 &ndash; Guest: You have accessibility and inclusive design. People think of accessibility as a check-list and that&rsquo;s okay but there could be problems with this.</p> <p>26:00 &ndash; Panel: That&rsquo;s a great guideline.</p> <p>26:05 &ndash; Chris: You talked about ARIA roles and it can be confusing. One side is: I don&rsquo;t know when to use these and the other side is: I don&rsquo;t know when NOT to use these so I&rsquo;m going to use them for EVERYTHING! I guess both can be detrimental. What&rsquo;s your advice on this topic?</p> <p>27:00 &ndash; Guest: Scott is great and I would trust him to the end of the Earth about what he says.</p> <p>Guest mentions <a href="https://tink.uk">L&eacute;onie Watson</a> and her talks about this topic.</p> <p>29:26 &ndash; (<em>Guest continues.)</em></p> <p>29:36 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry.io</a></p> <p>30:31 &ndash; Chris.</p> <p>30:40 &ndash; Guest: There is a lot of pressure, though, right? People wouldn&rsquo;t blog about this if it wasn&rsquo;t worthwhile. It doesn&rsquo;t matter what the style is or what the syntax is.</p> <p><em>The guest talks about not throwing ARIA onto everything.</em></p> <p>36:34 &ndash; Aimee: Is this something that was mentioned in the book: people with disabilities and accessibility.</p> <p>37:28 &ndash; Guest: Yes, of course. I think it&rsquo;s important to make your interfaces flexible and robust to think and include people with disabilities.</p> <p>39:00 &ndash; <em>Guest mentions larger buttons.</em></p> <p>40:52 &ndash; <em>Panelists and Guest talk back-and-forth.</em></p> <p>42:22 &ndash; Chris: It&rsquo;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&rsquo;t load or just accordion options?</p> <p>43:50 &ndash; Guest: It&rsquo;s the progressive enhancement element.</p> <p>44:05 &ndash; Guest: I think it&rsquo;s worth noting. I think these things dovetail really nicely.</p> <p>46:29 &ndash; Chris: Did you do a video interview, Aimee, talking about CSS? Is CSS better than JavaScript in some ways I don&rsquo;t know if this is related or not?</p> <p>47:03 &ndash; Aimee: When I talk about JavaScript vs. CSS...the browser optimizes those.</p> <p>47:27 &ndash; 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.</p> <p>47:29 &ndash; Guest: I am the other way around &ndash; interesting.</p> <p>52:50 &ndash; Chuck: Picks!</p> <p>52:55 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement &ndash; Get A Coder Job!</a></p> <p>END &ndash; <a href="https://www.cachefly.com">Advertisement: CacheFly!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="http://backbonejs.org">Backbone.js</a></li> <li><a href="https://visualstudio.microsoft.com/tfs/">Microsoft&rsquo;s TFS</a></li> <li><a href="https://tink.uk">L&eacute;onie Watson</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li>Ember.js</li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="https://golang.org/project/">GO</a></li> <li><a href="http://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li><a href="https://github.com/GoogleChrome/puppeteer">Puppeteer</a></li> <li><a href="https://www.cypress.io">Cypress</a></li> <li><a href="https://github.com/Heydon">Heydon&rsquo;s GitHub</a></li> <li><a href="https://mastodon.social/@heydon">Heydon&rsquo;s Mastodon</a></li> <li><a href="https://shop.smashingmagazine.com/products/inclusive-design-patterns">Heydon&rsquo;s Book</a></li> <li><a href="https://codeburst.io/heydon-pickering-accessibility-responsibility-and-inclusive-design-6fd8ae9883b8">Medium Article on Heydon</a></li> <li><a href="http://www.heydonworks.com">Heydon&rsquo;s Website</a></li> <li><a href="https://twitter.com/heydonworks">Heydon&rsquo;s Twitter</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://devlifts.io">DevLifts</a></li> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">CacheFly</a></li> </ul> <p><strong>Picks:</strong></p> <p>Joe</p> <ul> <li><a href="https://gomakethings.com/">Chris Ferdinandi&#39;s Blog</a></li> <li><a href="https://boardgamegeek.com/boardgame/245643/luxor">Luxur board game </a></li> <li><a href="http://cypress.io/">Cypress.io</a></li> </ul> <p>Aimee</p> <ul> <li><a href="https://threader.app/thread/1058433116002381824">Blog about interviewing </a></li> <li><a href="https://www.amazon.com/dp/B0764FYSNF?aaxitk=2FWeizqoAJkDZQs18ygELQ&amp;pd_rd_i=B0764FYSNF&amp;pf_rd_p=3ff6092e-8451-438b-8278-7e94064b4d42&amp;hsa_cr_id=7362091710401&amp;sb-ci-n=asinImage&amp;sb-ci-v=https%253A%252F%252Fimages-na.ssl-images-amazon.com%252Fimages%252FI%252F41DNdyq2%252B-L.jpg&amp;sb-ci-a=B0764FYSNF">Birthday Cake Quest Bar </a></li> </ul> <p>Chris</p> <ul> <li>Web Dev Career Guide:&nbsp;<a href="https://gomakethings.com/career-guide/">https://gomakethings.com/career-guide/</a></li> <li>Use FREECAREER at checkout to get it for free</li> <li><a href="https://hood.com/products/classic-trio/">Neapolitan Ice Cream&nbsp;</a></li> <li><a href="https://medium.com/dev-channel/a-netflix-web-performance-case-study-c0bcde26a9d9">Netflix Web Performance case study</a></li> </ul> <p>Charles</p> <ul> <li><a href="https://play.google.com/store/apps/details?id=com.perblue.disneyheroes&amp;hl=en_US">Disney Heroes Battle Mode</a></li> <li><a href="https://andyfrisella.com/blogs/mfceo-project-podcast">MFCEO Project Podcast </a></li> <li><a href="http://itunes.apple.com/us/podcast/the-askgaryvee-show/id928159684?mt=2">Gary Lee Audio Experience </a></li> <li><a href="https://devchat.tv/js-jabber-topics/">Suggestions for JavaScript Jabber</a></li> </ul> <p>Heydon</p> <ul> <li><a href="https://github.com/Heydon/bruck">Bruck</a></li> <li><a href="https://laurakalbag.com/what-is-mastodon-and-why-should-i-use-it/">What is Mastodon and why should I use it? </a></li> </ul>
Dec 18, 2018
MJS 089: Gareth McCumskey
27:07
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://gareth.mccumskey.com">Gareth McCumskey</a></p> <p>This week on My JavaScript Story, Charles talks with <a href="https://twitter.com/garethmcc?lang=en">Gareth McCumskey</a> who is a senior web developer for <a href="https://twitter.com/runwaysale">RunwaySale!</a> They talk about Gareth&rsquo;s background, current projects and his family. Check out today&rsquo;s episode to hear all about it and much more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>0:00 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>0:53 &ndash; Chuck: Hey everyone! Welcome! We are talking today with Gareth McCumseky!</p> <p>1:05 &ndash; Gareth: Hi!</p> <p>1:22 &ndash; Chuck: Are you from Cape Town, Africa? (Guest: Yes!)</p> <p>1:35 &ndash; <em>Gareth and Chuck talk about his name, Gareth, and why it&rsquo;s popular.</em>&nbsp;</p> <p>1:49 &ndash; Chuck: I am in my late 40&rsquo;s. You were here for <a href="https://devchat.tv/js-jabber/jsj-291-serverless-javascript-gareth-mccumskey/">JSJ&rsquo;s Episode 291!</a> It&rsquo;s still a hot topic and probably should revisit that topic.</p> <p>2:20 &ndash; Guest: Yes!</p> <p>2:30 &ndash; Chuck: It&rsquo;s interesting. We had a long talk about it and people should go listen to it!</p> <p>2:45 &ndash; Guest: I am a backend developer for the most part.</p> <p>3:03 &ndash; Chuck: Yeah I started off as an ops guy. It probably hurt me.</p> <p>3:21 &ndash; Guest: Yeah, if you poke it a certain way.</p> <p>3:29 &ndash; Chuck: Let&rsquo;s talk about YOU! How did you get into programming?</p> <p>3:39 &ndash; 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 &ndash; played around with it during the weekend &ndash; and put it back into his office Monday morning. This was way before the Internet. I was fiddling with it for sure.</p> <p><em>The guest talks about BASIC.</em></p> <p>6:20 &ndash; Chuck: How did you transfer from building BASIC apps to JavaScript apps?</p> <p>6:30 &ndash; <a href="https://github.com/garethmcc">Guest</a>: Yeah that&rsquo;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.</p> <p><em>The guest goes into-detail about his background!</em></p> <p>9:26 &ndash; Chuck: Yeah, jQuery was so awesome!</p> <p>9:34 &ndash; Guest: Yeah today I am working on an app that uses jQuery! You get used to it, and it&rsquo;s pretty powerful (jQuery) for what it is/what it does! It has neat tricks.</p> <p>10:11 &ndash; Chuck: I&rsquo;ve started a site with it b/c it was easy.</p> <p>10:19 &ndash; Guest: Sometimes you don&rsquo;t need the full out thing. Maybe you just need to load a page here and there, and that&rsquo;s it.</p> <p>10:39 &ndash; Chuck: It&rsquo;s a different world &ndash; definitely!</p> <p>10:48 &ndash; 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&rsquo;s where we wanted to be to raise her.</p> <p>Guest: We use <a href="https://webpack.js.org">webpack.js</a> now. It opened my eyes to see how powerful JavaScript is!</p> <p>12:10 &ndash; <em>Chuck talks about </em><a href="https://nodejs.org/en/"><em>Node.js.</em></a></p> <p>12:21 &ndash; <a href="https://github.com/garethmcc">Guest:</a> Even today, I got into <a href="https://aws.amazon.com/cognito/?sc_channel=PS&amp;sc_campaign=acquisition_US&amp;sc_publisher=google&amp;sc_medium=ACQ-P%257CPS-GO%257CBrand%257CDesktop%257CSU%257CSecurity%257CCognito%257CUS%257CEN%257CText&amp;sc_content=cognito_e&amp;sc_detail=aws%2520cognito&amp;sc_category=Security&amp;sc_segment=293648597516&amp;sc_matchtype=e&amp;sc_country=US&amp;s_kwcid=AL!4422!3!293648597516!e!!g!!aws%2520cognito&amp;ef_id=EAIaIQobChMI6_XKj_eY3wIVCA1pCh3jaQOOEAAYASAAEgL8iPD_BwE:G:s">AWS Cognito!</a></p> <p>13:45 &ndash; Chuck: You say that your problems are unique &ndash; and from the business end I want something that I can resolve quickly. Your solution sounds good. I don&rsquo;t like messing around with the headaches from Node and others.</p> <p>14:22 &ndash; Guest: Yeah that&rsquo;s the biggest selling point that I&rsquo;ve had.</p> <p>15:47 &ndash; Chuck: How did you get into <a href="https://serverless.com">serverless?</a></p> <p>15:49 &ndash; Guest: Funny experience. I am not the expert and I only write the backend stuff.</p> <p>Guest: At the time, we wanted to improve the reliability of the machine and the site itself. He said to try <a href="https://serverless.com">serverless.com.</a> At the time I wasn&rsquo;t impressed but then when he suggested it &ndash; I took the recommendation more seriously. My company that I work for now...</p> <p>17:39 &ndash; Chuck: What else are you working on?</p> <p>17:45 &ndash; Guest: Some local projects &ndash; dining service that refunds you. You pay for a subscription, but find a cheaper way to spend money when you are eating out. It&rsquo;s called: GOING OUT.</p> <p>Guest: My 3-year-old daughter and my wife is expecting our second child.</p> <p>18:56 &ndash; <em>Chuck and Gareth talk about family and their children. </em></p> <p>22:17 &ndash; Chuck: Picks!</p> <p>22:29 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p>END &ndash; <a href="https://www.cachefly.com">Cache Fly</a></p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://webpack.js.org">Webpack.js</a></li> <li><a href="https://serverless.com">Serverless</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li><a href="https://aws.amazon.com/cognito/?sc_channel=PS&amp;sc_campaign=acquisition_US&amp;sc_publisher=google&amp;sc_medium=ACQ-P%257CPS-GO%257CBrand%257CDesktop%257CSU%257CSecurity%257CCognito%257CUS%257CEN%257CText&amp;sc_content=cognito_e&amp;sc_detail=aws%2520cognito&amp;sc_category=Security&amp;sc_segment=293648597516&amp;sc_matchtype=e&amp;sc_country=US&amp;s_kwcid=AL!4422!3!293648597516!e!!g!!aws%2520cognito&amp;ef_id=EAIaIQobChMI6_XKj_eY3wIVCA1pCh3jaQOOEAAYASAAEgL8iPD_BwE:G:s">AWS Cognito</a></li> <li><a href="https://gareth.mccumskey.com">Gareth&rsquo;s Website</a></li> <li><a href="https://github.com/garethmcc">Gareth&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/garethmcc?lang=en">Gareth&rsquo;s Twitter</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles Max Wood</p> <ul> <li>Podcasts: <a href="https://andyfrisella.com/blogs/mfceo-project-podcast">MFCEO Project</a> &amp; <a href="https://www.garyvaynerchuk.com/podcast/">Gary Vaynerchuk</a></li> <li><a href="https://twitter.com/hashtag/PokemonGO?src=hash">Pok&eacute;mon Go!</a></li> </ul> <p>Gareth McCumskey</p> <ul> <li><a href="https://serverless.com">Serverless.com</a></li> <li><a href="https://play.google.com/store/apps/details?id=com.nianticproject.ingress&amp;hl=en_US">Ingress Prime</a></li> </ul>
Dec 12, 2018
JSJ 343: The Power of Progressive Enhancement with Andy Bell
1:05:17
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>Aimee Knight</li> <li>Chris Ferdinandi</li> <li>AJ O&rsquo;Neal</li> </ul> <p><strong>Special Guest:</strong><strong> </strong>Andy Bell</p> <p>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!</p> <p><strong>Show Topics:</strong></p> <p>0:00 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>0:34 &ndash; Chuck: Hi! Our panel is AJ, Aimee, Chris, myself and my new show is coming out in a few weeks, which is called the <a href="http://thedevrev.com">DevRev!</a> It helps you with developer&rsquo;s freedom! I am super excited. Our guest is Andy Bell. Introduce yourself, please.</p> <p>2:00 &ndash; Guest: I am an independent designer and developer out in the U.K.</p> <p>2:17 &ndash; Chuck: You wrote things about Vanilla.js. I am foreshadowing a few things and let&rsquo;s talk about the power and progressive enhancement.</p> <p>2:43 &ndash; <em>The guest gives us definitions of power and progressive enhancements. He describes how it works.</em></p> <p>3:10 &ndash; Chuck: I&rsquo;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&rsquo;s more than that?</p> <p>3:28 &ndash; <em>The guest talks about JavaScript, dependencies, among other things.</em></p> <p>4:40 &ndash; Chuck: Your post did make that very clear I think. I am thinking I don&rsquo;t even know where to start with this. Are people using the 6<sup>th</sup> version? How far back or what are we talking about here?</p> <p>5:09 &ndash; Guest: You can go really far back and make it work w/o CSS.</p> <p>5:49 &ndash; Chris: I am a big advocate of progressive enhancement &ndash; 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?</p> <p>6:48 &ndash; Guest.</p> <p>8:05 &ndash; Panel: My family lives out in the boonies. I am aware of 50% of American don&rsquo;t have fast Internet. People don&rsquo;t have access to fast browsers but I don&rsquo;t think they are key metric users.</p> <p>8:47 &ndash; Guest: It totally depends on what you need it for. It doesn&rsquo;t matter if these people are paying or not.</p> <p>9:31 &ndash; Chris: Assuming I have a commute on the trail and it goes through a spotty section. In a scenario that it&rsquo;s dependent on the JS...are we talking about 2 different things here?</p> <p>10:14 &ndash; <em>Panelist chimes-in.</em></p> <p>10:36 &ndash; Chris: I can take advantage of it even if I cannot afford a new machine.</p> <p>10:55 &ndash; Panel: Where would this really matter to you?</p> <p>11:05 &ndash; Chris: I do have a nice new laptop.</p> <p>11:12 &ndash; 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&rsquo;s not the norm but it can happen.</p> <p>11:37 &ndash; Chris: Or how about the All Trails app when I am on the trail.</p> <p>11:52 &ndash; Guest.</p> <p>12:40 &ndash; Chris: I can remember at the time that the desktop sites it was popular to have...</p> <p>Chris: Most of those sites were inaccessible to me.</p> <p>13:17 &ndash; Guest.</p> <p>13:51 &ndash; Chuck: First-world countries will have a good connection and it&rsquo;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 &ndash; what would you suggest? What are the things that you&rsquo;d make sure is accessible to them.</p> <p>14:31 &ndash; Guest: I like to pick on the minimum viable experience? I think to read the transcript is important than the audio (MP3).</p> <p>15:47 &ndash; Chuck.</p> <p>15:52 &ndash; Guest: It&rsquo;s a lot easier with Vue b/c you don&rsquo;t&rsquo; have to set aside rendering.</p> <p>17:13 &ndash; 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.</p> <p>17:49 &ndash; Guest: It&rsquo;s much easier if you start that way and if you enhance the feature itself.</p> <p>18:38 &ndash; AJ: Let me ask: what are the situations where I wouldn&rsquo;t / shouldn&rsquo;t worry about progressive enhancements?</p> <p>18:57 <em>&ndash; Guest answers the question.</em></p> <p>19:42 &ndash; AJ: I want people to feel motivated in a place WHERE to start. Something like a blog needs Java for comments.</p> <p><a href="https://vtldesign.com/web-strategy/website-design-development/hamburger-icon-flyout-menu-website-navigation/"><em>Hamburger menu</em></a><em> is mentioned, too. </em></p> <p>20:20 &ndash; Guest.</p> <p>21:05 &ndash; Chris: Can we talk about code?</p> <p>21:16 &ndash; Aimee: This is the direction I wanted to go. What do you mean by that &ndash; building your applications progressively?</p> <p><a href="https://andy-bell.design/writing/"><em>Aimee refers to his blog.</em></a></p> <p>21:44 &ndash; Guest.</p> <p>22:13 &ndash; Chuck: I use stock overflow!</p> <p>22:20 &ndash; Guest.</p> <p>22:24 &ndash; Chuck: I mean that&rsquo;s what Chris uses!</p> <p>22:33 &ndash; Guest (continues).</p> <p>23:42 &ndash; Aimee.</p> <p>23:54 &ndash; Chris.</p> <p>24:09 &ndash; Chris</p> <p>24:16 &ndash; Chris: Andy what do you think about that?</p> <p>24:22 &ndash; Guest: Yes, that&rsquo;s good.</p> <p>24:35 &ndash; Chris: Where it falls apart is the resistance to progressive enhancements that it means that your approach has to be boring?</p> <p>25:03 &ndash; <em>Guest answers the question.</em></p> <p><em>The guest mentions modern CSS and modern JavaScript are mentioned along with tooling.</em></p> <p>25:50 &ndash; 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?</p> <p>26:57 &ndash; Guest: If it&rsquo;s feasible do it and then set a timeline up.</p> <p>27:42 &ndash; Chuck: You are saying yes do it a layer at a time &ndash; but my question is HOW? What parts can I pair back? Are there guidelines to say: do this first and then how to test?</p> <p>28:18 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry.io</a></p> <p>29:20 &ndash; 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?</p> <p>30:31 &ndash; 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?</p> <p>30:50 &ndash; <em>Guest answers the question.</em></p> <p>31:03 &ndash; Guest: You can pick out the big things.</p> <p>31:30 &ndash; Chuck: I am using this feature in the browser...</p> <p>31:41 &ndash; Guest.</p> <p>31:46 &ndash; Chris: I think this differently than you Andy &ndash; I&rsquo;ve stopped caring if a browser supports something new. I am fine using CSS grid and if your browser doesn&rsquo;t support it then I don&rsquo;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 &ndash; what should they be able to do?</p> <p><em>Note: &ldquo;Cutting the Mustard Test&rdquo; is mentioned. </em></p> <p>33:37 &ndash; Guest.</p> <p>33:44 &ndash; Chuck: Knowing your users and if it becomes a problem then I will figure it out.</p> <p>34:00 &ndash; Chris: I couldn&rsquo;t spare the time to make it happen right now b/c I am a one-man shop.</p> <p>34:20 &ndash; <em>Chuck and Chris go back-and-forth.</em></p> <p>34:36 &ndash;Chris: Check out links below for my product.</p> <p>34:54 &ndash; AJ: A lot of these things are in the name: <em>progressive.</em></p> <p>36:20 &ndash; <a href="https://andy-bell.design">Guest.</a></p> <p>38:51 &ndash; Chris: Say that they haven&rsquo;t looked at it all before. Do you mind talking about these things and what the heck is a web component?</p> <p>39:14 &ndash; <em>The guest gives us his definition of what a web component is. </em></p> <p>40:02 &ndash; Chuck: Most recent episode in Angular about web components, but that was a few years ago. See links below for that episode.</p> <p>40:25 &ndash; Aimee.</p> <p>40:31 &ndash; Guest: Yes, it&rsquo;s a lot like working in Vue and web components. The concepts are very similar.</p> <p>41:22 &ndash; Chris: Can someone please give us an example? A literal slideshow example?</p> <p>41:45 &ndash; <em>Guest answers the question. </em></p> <p>45:07 &ndash; Chris.</p> <p>45:12 &ndash; Guest: It&rsquo;s a framework that just happens to use web components and stuff to help.</p> <p>45:54 &ndash; 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?</p> <p>46:39 &ndash; Chuck: Where do they go to learn more?</p> <p>46:49 &ndash; Guest: <a href="https://webcomponents.club">Check out the Club!</a> And my Twitter! (See links below.)</p> <p>47:33 &ndash; Chuck: I want to shout-out about <a href="https://devlifts.io">DevLifts</a> that has $19 a month to help you with physical goals. Or you can get the premium slot! It&rsquo;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!</p> <p>49:16 &ndash; Aimee: <a href="http://podcast.devlifts.io">Yeah, I&rsquo;m on their podcast soon!</a></p> <p>49:30 &ndash; Chuck: Picks!</p> <p>END &ndash; <a href="https://www.cachefly.com">Advertisement: CacheFly!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li>Ember.js</li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="https://golang.org/project/">GO</a></li> <li><a href="http://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li><a href="https://github.com/GoogleChrome/puppeteer">Puppeteer</a></li> <li><a href="https://www.cypress.io">Cypress</a></li> <li><a href="https://devchat.tv/adv-in-angular/115-aia-polymer-and-web-components-with-angular-2-with-rob-dodson/">Past episode: AiA 115</a></li> <li><a href="https://devchat.tv/js-jabber/120-jsj-google-polymer-with-rob-dodson-and-eric-bidelman/">Past episode: JSJ 120</a></li> <li><a href="https://vuejs.org/v2/guide/components-slots.html">Vue.js &ndash; Slots</a></li> <li><a href="https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_templates_and_slots">Using templates and slots &ndash; Article</a></li> <li><a href="https://webcomponents.club">Web Components Club</a></li> <li><a href="https://github.com/Polymer/pwa-starter-kit">GitHub: Pwa &ndash; Starter &ndash; Kit</a></li> <li><a href="https://codepen.io/hankchizljaw/project/editor/ZvGEar">Progressively Enhanced Toggle Panel</a></li> <li><a href="https://coolaj86.com/articles/time-ago-in-under-50-lines-of-javascript/">Time Ago in under 50 lines of JavaScript</a></li> <li><a href="https://github.com/cferdinandi/ebook-boilerplate">GitHub: ebook-boilerplate</a></li> <li><a href="https://gomakethings.com">Chris Ferdinandi&rsquo;s Go Make Things Site</a></li> <li><a href="https://music.gamechops.com/album/arcade-attack">Game Chops</a></li> <li><a href="https://www.cnbc.com/2018/05/30/trump-signs-right-to-try-legislation-on-experimental-medicines.html?fbclid=IwAR3EJlxT7PP510g7BtEu3bYg-PPDeGoEjguUkz9iOqh1S8LwcsVCA2oIkvU">CNBC &ndash; Trump Article</a></li> <li><a href="https://coolaj86.com/articles/new-in-node-native-rsa-ec-and-dsa-support/">New in Node v10.12</a></li> <li><a href="http://quotes.cat-v.org/programming/">Quotes Archive</a></li> <li><a href="https://www.igorkromin.net/index.php/2018/11/04/my-amazon-interview-horror-story/">My Amazon Interview Horror Story</a></li> <li><a href="https://devpal.io">DevPal.io</a></li> <li><a href="https://honest.work">Honest Work</a></li> <li><a href="https://relativepaths.uk">Relative Paths</a></li> <li><a href="https://devlifts.io">DevLifts</a></li> <li><a href="https://twitter.com/hankchizljaw">Andy Bell&rsquo;s Twitter</a></li> <li><a href="https://andy-bell.design">Andy&rsquo;s Website</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://devlifts.io">DevLifts</a></li> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">CacheFly</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li><a href="http://quotes.cat-v.org/programming/">Hacker News&nbsp; -&nbsp; Programming Quotes </a></li> <li><a href="https://www.igorkromin.net/index.php/2018/11/04/my-amazon-interview-horror-story/">My Amazon Interview Horror Story</a></li> </ul> <p>Chris</p> <ul> <li><a href="https://coolaj86.com/articles/time-ago-in-under-50-lines-of-javascript/">Time Ago in Under 50 Lines of JavaScript</a></li> <li><a href="https://github.com/cferdinandi/ebook-boilerplate">E-Book Boiler Plate</a></li> <li>JSJABBER at&nbsp;<a href="http://gomakethings.com/">gomakethings.com</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://www.cnbc.com/2018/05/30/trump-signs-right-to-try-legislation-on-experimental-medicines.html?fbclid=IwAR3EJlxT7PP510g7BtEu3bYg-PPDeGoEjguUkz9iOqh1S8LwcsVCA2oIkvU">Experimental Drugs Bill</a></li> <li><a href="https://mybrowser.fyi">My Browers FYI</a></li> <li><a href="https://coolaj86.com/articles/new-in-node-native-rsa-ec-and-dsa-support/">New In Node,10.12</a></li> <li><a href="https://music.gamechops.com/album/arcade-attack">Arcade Attack </a></li> </ul> <p>Charles</p> <ul> <li>Getacoderjob.com</li> <li><a href="https://self-publishingschool.com/">Self-Publishing School</a></li> <li><a href="https://andyfrisella.com/blogs/mfceo-project-podcast">MF CEO podcast</a></li> </ul> <p>Andy</p> <ul> <li><a href="http://devpal.io">Devpay.io</a></li> <li><a href="https://honest.work">Honest.work</a></li> <li><a href="https://relativepaths.uk">Relativepath.uk </a></li> </ul>
Dec 11, 2018
MJS 088: Nicholas Zakas
46:10
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> Nicholas Zakas</p> <p>This week on My JavaScript Story, Charles talks with Nicholas Zakas who is a blogger, author, and software engineer. Nicholas&rsquo; website is titled, <a href="https://humanwhocodes.com">Human Who Codes</a> &ndash; check it out! You can find him on <a href="https://twitter.com/slicknet">Twitter,</a> <a href="https://github.com/nzakas/">GitHub</a>, and <a href="https://www.linkedin.com/in/nzakas">LinkedIn</a> among other social media platforms. Today, Nicholas and Chuck talk about Nicholas&rsquo; background, <a href="https://www.javascript.com">JavaScript</a>, and current projects.</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>0:00 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>1:00 &ndash; Chuck: Welcome! Give us a background, please, Nicholas!</p> <p>1:14 &ndash; Guest: I am probably best known for making <a href="https://eslint.org">ESLint</a> and I have written a bunch of books, too! (See links below.)</p> <p>1:36 &ndash; Chuck: <a href="https://player.fm/series/all-javascript-podcasts-by-devchattv/jsj-336-the-origin-of-eslint-with-nicholas-zakas">JSJ 336</a> and <a href="https://devchat.tv/js-jabber/075-jsj-maintainable-javascript-with-nicholas-zakas/">JSJ 075</a> episodes are the two past episodes we&rsquo;ve had you on! (See links below.) Let&rsquo;s go back and how did you get into programming?</p> <p>1:58 &ndash; 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.</p> <p>4:02 &ndash; Chuck: Was it all in BASIC or something else?</p> <p>4:13 &ndash; Guest: Just BASIC, but then transferred to something else when we got our first PC.</p> <p>5:13 &ndash; Chuck: How did you get to use <a href="https://www.javascript.com">JavaScript?</a></p> <p>5:18 &ndash; 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.</p> <p>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).</p> <p>On the &lt;a tag&gt; you could do...</p> <p>8:35 &ndash; Chuck: You get into <a href="https://www.javascript.com">JavaScript</a> and at what point did you become a prolific operator and author?</p> <p>8:52 &ndash; 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!</p> <p>10:03 &ndash; 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.</p> <p>12:32 &ndash; Guest (continues): I got so deep into <a href="https://www.javascript.com">JavaScript!</a></p> <p>13:30 &ndash; Guest (continued): They couldn&rsquo;t figure out what I had done. That&rsquo;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 &ndash; 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 <a href="http://www.devx.com">DevX</a> or <a href="http://webreference.com">WebReference.</a></p> <p>18:03 &ndash; 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&rsquo;t know what the book was going to be, and I decided to start writing. Once I&rsquo;ve had enough content I would take a step back and see what it was about. (Check out Nicholas&rsquo; books <a href="https://www.amazon.com/Nicholas-C.-Zakas/e/B001IGUTOC">here!)</a></p> <p>19:01 &ndash; Chuck: Oh you can turn this into a book!</p> <p>19:10 &ndash; 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!</p> <p>19:37 &ndash; Chuck: That&rsquo;s how I felt about podcasting &ndash; it fell into my lap/life!</p> <p>19:50 &ndash; Chuck: Listeners &ndash; check out the past episodes with Nicholas, please. Nicholas, what are you proud of?</p> <p>20:10 &ndash; Guest: In 2006, I was at <a href="https://www.yahoo.com">Yahoo</a> 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.</p> <p>26:21 &ndash; Chuck: Can you talk about your health issues? People would definitely benefit from your example and your story.</p> <p>26:44 &ndash; Guest: I think it is something important for people to understand.</p> <p><em>The guest talks about </em><a href="https://www.cdc.gov/lyme/signs_symptoms/index.html"><em>Lyme Disease.</em></a><em> </em></p> <p>35:49 &ndash; Chuck: Yep taking care of yourself is important!</p> <p>36:00 &ndash; 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&rsquo;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! <a href="https://www.amazon.com/s/?ie=UTF8&amp;keywords=adult+coloring+books%2527&amp;tag=googhydr-20&amp;index=aps&amp;hvadid=241617461232&amp;hvpos=1t1&amp;hvnetw=g&amp;hvrand=11884020101243677847&amp;hvpone=&amp;hvptwo=&amp;hvqmt=e&amp;hvdev=c&amp;hvdvcmdl=&amp;hvlocint=&amp;hvlocphy=9027276&amp;hvtargid=kwd-78351604748&amp;ref=pd_sl_65it5fsqxk_e">I love these adult coloring books that they have!</a></p> <p>38:07 &ndash; Chuck: I love to take a drive up the canyon.</p> <p>38:12 &ndash; Guest.</p> <p>38:24 &ndash; Chuck: Yeah to focus on ourselves is important.</p> <p>38:36 &ndash; 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&rsquo;t want your body to stay in that state.</p> <p>New parents get sick frequently with newborns, because they aren&rsquo;t getting enough sleep.</p> <p>41:08 &ndash; Guest: Get some R&amp;R!</p> <p>41:20 &ndash; Chuck: This is great, but I have another call! Let&rsquo;s do some Picks!</p> <p>41:35 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p>END &ndash; <a href="https://www.cachefly.com">Cache Fly</a></p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://vuejs.org">Vue.js</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.emberjs.com">Ember</a></li> <li><a href="https://guide.elm-lang.org">Elm</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li><a href="http://www.devx.com/welcomead?_qstu=%252F">DevX</a></li> <li><a href="http://webreference.com/index.html">WebReference</a></li> <li><a href="https://www.amazon.com/Nicholas-C.-Zakas/e/B001IGUTOC/ref=as_li_ss_tl?qid=1542055961&amp;sr=8-2-ent&amp;linkCode=sl2&amp;tag=devchattv-20&amp;linkId=969561db0412012a35dceae4aab88341&amp;language=en_US">Nicholas C. Zakas&rsquo; Books</a></li> <li><a href="https://eslint.org">ESLint</a></li> <li><a href="https://www.npmjs.com/package/eslint">NPM &ndash; ESLint</a></li> <li><a href="https://www.cdc.gov/lyme/signs_symptoms/index.html">Signs and Symptoms of Untreated Lyme Disease</a></li> <li><a href="https://www.cdc.gov/lyme/index.html">Lyme Disease</a></li> <li><a href="https://twitter.com/slicknet">Nicholas&rsquo; Twitter</a></li> <li><a href="https://devchat.tv/js-jabber/jsj-336-the-origin-of-eslint-with-nicholas-zakas/">JSJ 336 Episode with Zakas</a></li> <li><a href="https://devchat.tv/js-jabber/075-jsj-maintainable-javascript-with-nicholas-zakas/">JSJ 075 Episode with Zakas</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles Max Wood</p> <ul> <li>Wall Calendars &ndash; 6 ft. x3 ft.</li> </ul> <p>Nicholas Zakas</p> <ul> <li><a href="https://www.amazon.com/Better-Angels-Our-Nature-Violence/dp/0143122010">Book: The Better Angels of Our Nature: Why Violence Has Declined by Steven Pinker</a></li> <li><a href="https://www.amazon.com/s/?ie=UTF8&amp;keywords=adult+coloring+books%2527&amp;tag=googhydr-20&amp;index=aps&amp;hvadid=241617461232&amp;hvpos=1t1&amp;hvnetw=g&amp;hvrand=14487536312039750124&amp;hvpone=&amp;hvptwo=&amp;hvqmt=e&amp;hvdev=c&amp;hvdvcmdl=&amp;hvlocint=&amp;hvlocphy=9027276&amp;hvtargid=kwd-78351604748&amp;ref=pd_sl_65it5fsqxk_e">Adult Coloring Books</a></li> </ul>
Dec 05, 2018
JSJ 342: Aurelia in Action with Sean Hunter
1:00:10
<p><strong>Panel: </strong></p> <ul> <li><em>AJ O&rsquo;Neal</em></li> <li><em>Joe Eames</em></li> <li><em>Jesse Sanders</em></li> </ul> <p><strong>Special Guest:</strong><strong> </strong><a href="https://github.com/freshcutdevelopment">Sean Hunter</a></p> <p>In this episode, the panel talks with <a href="https://github.com/freshcutdevelopment">Sean Hunter</a> who is a software developer, speaker, rock climber, and author of <a href="https://www.manning.com/books/aurelia-in-action">&ldquo;Aurelia in Action&rdquo; published by Manning Publications</a>! Today, the panelists and Sean talk about <a href="https://aurelia.io">Aurelia</a> and other frameworks. Check it out!</p> <p><strong>Show Topics:</strong></p> <p>0:00 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>0:38 &ndash; Joe: Hello! Our panelists are AJ, Jesse, myself, and our special guest is <a href="https://github.com/freshcutdevelopment">Sean Hunter</a> (from Australia)! What have you been doing with your life and what is your favorite movie?</p> <p>1:45 &ndash; <em>Guest talks about </em><a href="https://en.wikipedia.org/wiki/Vegemite"><em>Vegemite!</em></a></p> <p>2:20 &ndash; Guest: I was in the UK and started using <a href="https://aurelia.io">Aurelia</a>, 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&rsquo;s been a busy year. Writing a book and being a new parent has been hard.</p> <p>3:22 &ndash; Panel: Tell us the history of <a href="https://aurelia.io">Aurelia</a>, please?</p> <p>3:31 &ndash; Panel: Is it like <a href="http://jquery.com">jQuery</a>, <a href="https://reactjs.org">React,</a> <a href="https://vuejs.org">Vue</a> or what?</p> <p>3:44 &ndash; Guest: Elevator pitch &ndash; Aurelia is a single-page app framework! It&rsquo;s most similar to Vue out of those frameworks; also, similarities to <a href="https://www.emberjs.com">Ember.js.</a></p> <p>4:30 &ndash; <em>Guest goes into detail about Aurelia.</em></p> <p>6:15 &ndash; Panel: It sounds like convention over configuration.</p> <p>6:42 &ndash; Guest: Yes that is correct.</p> <p>7:21 &ndash; Panel: Sounds like there is a build-step to it.</p> <p>7:39 &ndash; Guest: There is a build-step you are correct. You will use <a href="https://webpack.js.org">Webpack</a> in the background.</p> <p>9:57 &ndash; <em>The guest talks about data binding among other things.</em></p> <p>10:30 &ndash; Guest: You will have your app component and other levels, too.</p> <p>10:37 &ndash; Panel: I am new to <a href="https://aurelia.io">Aurelia</a> and so I&rsquo;m fresh to this. Why Aurelia over the other frameworks? Is there a CLI to help?</p> <p>11:29 &ndash; Guest: Let me start with WHY <a href="https://aurelia.io">Aurelia</a> 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&rsquo;s almost a wizard process! You guys have any questions about the CLI?</p> <p>14:43 &ndash; Panel: Thanks! I was wondering what is actually occurring there?</p> <p>15:25 &ndash; Guest: Good question. Basically it&rsquo;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...</p> <p>17:46 &ndash; Panel: I think that for people who are familiar with one or more framework then where on that spectrum would Aurelia fall?</p> <p>18:20 &ndash; Guest: It&rsquo;s not that opinionated as Ember.js.</p> <p>19:09 &ndash; Panel: Talking about being opinionated &ndash; 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?&nbsp;</p> <p>19:38 &ndash; Guest: The main conventions are what I&rsquo;ve talked about already. I can&rsquo;t think of more conventions off the top of my head. There are more examples in my book.</p> <p>20:02 &ndash; Panel: Your book?</p> <p>20:10 &ndash; Guest: Yep.</p> <p>20:13 &ndash; Panel.</p> <p>20:20 &ndash; Guest.&nbsp;</p> <p>21:58 &ndash; Panel: Why would I NOT pick Aurelia?</p> <p>22:19 &ndash; 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&rsquo;t for you.</p> <p><em>The guest goes into more reasons why or why not one would or wouldn&rsquo;t want to use Aurelia.</em></p> <p>24:24 &ndash; Panel: I think the best sell point is the downplay!</p> <p>24:34 &ndash; Guest: Good point. What does the roadmap look like for Aurelia&rsquo;s team?</p> <p>25:00 &ndash; 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&rsquo;s proposed to be out for release next year.</p> <p>26:36 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry.io</a></p> <p>27:34 &ndash; 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.</p> <p>28:06 &ndash; Guest: What you would do is specify the project name that you are trying to create and that should create it for you.&nbsp;</p> <p>28:40 &ndash; Panel.</p> <p>28:45 &ndash; Panel.</p> <p>28:50 &ndash; Panel: Stand up on your desk and say: does anyone know anything about computers?!</p> <p>29:05 &ndash; <em>Panelists go back-and-forth.</em></p> <p>29:13 &ndash; Panel: What frameworks have you used in the past?</p> <p>29:17 &ndash; Guest: I was using single-paged apps back in 2010.</p> <p>31:10 &ndash; Panel: Tell us about the performance of Aurelia?</p> <p>31:17 &ndash; 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.</p> <p><em>The guest talks about a dashboard screen that 20 charts or something like that. He didn&rsquo;t notice any delays getting to the client. </em></p> <p>33:29 &ndash; Panel: I heard you say the word &ldquo;observables.&rdquo;</p> <p>33:39 &ndash; <em>Guest answers the question.</em></p> <p>35:30 &ndash; Guest: I am not a <a href="https://redux.js.org">Redux</a> expert, so I really can&rsquo;t say. It has similar actions like <a href="https://redux.js.org">Redux</a> but the differences I really can&rsquo;t say.</p> <p>36:11 &ndash; Panel: We really want experts in everything! (Laughs.)</p> <p>36:25 &ndash; Panelist talks about a colleagues&rsquo; 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...</p> <p>What are your thoughts of having multiple SPAs?</p> <p>37:17 &ndash; Guest.</p> <p>39:08 &ndash; Guest: I wonder what your opinions are? What about the splitting approach?</p> <p>39:22 &ndash; Panel: I haven&rsquo;t looked at it, yet. I am curious, though. I have been developing in <a href="https://golang.org">GO</a> lately.</p> <p>40:20 &ndash; Guest: I think people can go too far and making it too complex. You don&rsquo;t want to make the code that complex.</p> <p>40:45 &ndash; Panel: Yeah when the code is &ldquo;clean&rdquo; but difficult to discover that&rsquo;s not good.</p> <p>41:15 &ndash; Guest: I agree when you start repeating yourself then it makes it more difficult.</p> <p>41:35 &ndash; 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.&nbsp;</p> <p>42:48 &ndash; Joe: I like my frameworks and I think you are crazy!</p> <p>43:05 &ndash; Panel.</p> <p>43:11 &ndash; Joe: I have a love affair with all frameworks.</p> <p>43:19 &ndash; Panel: I think I am somewhere in the middle.</p> <p>43:49 &ndash; Panel: I don&rsquo;t think frameworks are all bad but I want to say that it&rsquo;s smart to not make it too complex upfront. Learn and grow.</p> <p>44:28 &ndash; Guest: I think a good example of that is <a href="http://jquery.com">jQuery,</a> right?</p> <p>45:10 &ndash; <em>Panelist talks about C++, jQuery, among other things. </em></p> <p>45:34 &ndash; Guest: Frameworks kind of push the limits.</p> <p>46:08 &ndash; Panelist talks about JavaScript, frameworks, and others.</p> <p>47:04 &ndash; Panel: It seems simple to setup routes &ndash; anything to help with the lazy way to setup?</p> <p>47:35 &ndash; <em>Guest answers question.</em></p> <p>48:37 &ndash; Panel: How do we manage complexity and how does messaging work between components?</p> <p>48:54 &ndash; Guest: The simple scenario is that you can follow a simple pattern, which is (came out of Ember community) and that is...Data Down &amp; Actions Up!</p> <p>50:45 &ndash; <em>Guest mentions that </em><a href="https://aurelia.io"><em>Aurelia website!</em></a></p> <p>51:00 &ndash; Panel: That sounds great! Sounds like the pattern can be plugged in easily into Aurelia.</p> <p>51:17 &ndash; Picks!</p> <p>51:20 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>END &ndash; <a href="https://www.cachefly.com">Advertisement: CacheFly!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://redux.js.org">Redux</a></li> <li><a href="https://webpack.js.org">Webpack</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li>Ember.js</li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="https://golang.org/project/">GO</a></li> <li><a href="http://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li><a href="https://github.com/GoogleChrome/puppeteer">Puppeteer</a></li> <li><a href="https://www.cypress.io">Cypress</a></li> <li><a href="https://www.youtube.com/watch?v=4DlTzn0Iogs">Utah JS 2018 &ndash; Justin McMurdie&rsquo;s Talk</a></li> <li><a href="https://aurelia.io">Aurelia</a></li> <li><a href="https://www.manning.com/books/aurelia-in-action">Sean Hunter&rsquo;s Book!</a></li> <li><a href="https://twitter.com/mr_sean_hunter?lang=en">Sean Hunter&rsquo;s Twitter</a></li> <li><a href="https://sean-hunter.io">Sean Hunter&rsquo;s Website</a></li> <li><a href="https://github.com/freshcutdevelopment">Sean Hunter&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">CacheFly</a></li> </ul> <p><strong>Picks:</strong></p> <p>Joe</p> <ul> <li><a href="https://conf.reactjs.org/">React Conf. </a></li> <li><a href="https://www.amazon.com/gp/bookseries/B00CJDICGA/ref=dp_st_093569692X">Endless Quest </a></li> </ul> <p>AJ</p> <ul> <li><a href="https://www.amazon.com/Extreme-Ownership-U-S-Navy-SEALs-ebook/dp/B00VE4Y0Z2">Extreme Ownership</a></li> <li><a href="https://golang.org">GO Language </a></li> <li><a href="http://fortune.com/2018/10/16/harrys-labs-flamingo-hair-care-shaving-grooming/">Harry&rsquo;s and Flamingo </a></li> </ul> <p>Jesse Sanders</p> <ul> <li><a href="https://www.amazon.com/s/?ie=UTF8&amp;keywords=the+miracle+morning&amp;tag=googhydr-20&amp;index=aps&amp;hvadid=174214892066&amp;hvpos=1t2&amp;hvnetw=g&amp;hvrand=424214226587897073&amp;hvpone=&amp;hvptwo=&amp;hvqmt=e&amp;hvdev=c&amp;hvdvcmdl=&amp;hvlocint=&amp;hvlocphy=9027276&amp;hvtargid=kwd-55212260755&amp;ref=pd_sl_5b4yxwsvgo_e">The Miracle Morning </a></li> <li><a href="https://reactjs.org/docs/hooks-intro.html">React Hooks</a></li> <li><a href="https://www.apple.com/">Apple Products </a></li> </ul> <p>Sean</p> <ul> <li><a href="https://www.amazon.com/Doesnt-Have-Be-Crazy-Work/dp/0062874780">Doesn&rsquo;t Have to Be Crazy at Work</a></li> <li><a href="https://www.manning.com/books/aurelia-in-action">Discount Code for Aurelia in Action&nbsp;</a>-&nbsp;&nbsp;<strong>hunterpc</strong>&nbsp;(40% off Aurelia in Action, all formats)</li> <li><a href="https://www.apple.com/watch/">Apple Watch </a></li> </ul>
Dec 04, 2018
MJS 087: Rob Eisenberg
45:43
<p><strong>Panel:</strong><strong> </strong>Charles Max Wood</p> <p><strong>Guest:</strong> <a href="https://twitter.com/eisenbergeffect?lang=en">Rob Eisenberg</a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://twitter.com/eisenbergeffect?lang=en">Rob Eisenberg</a> who is a principal software engineer at InVision, and is the creator of Caliburn.Micro, Durandal, and Aurelia. Today, they talk about Rob&rsquo;s past and current projects among other things.</p> <p><strong>In particular, we dive pretty deep on: </strong></p> <p>1:40 &ndash; Chuck: Our special guest is <a href="https://twitter.com/EisenbergEffect?lang=en">Rob Eisenberg</a>. We&rsquo;ve had you on Adventures on Angular (<a href="https://devchat.tv/adv-in-angular/009-aia-ng-2-0-with-rob-eisenberg/">09</a> and <a href="https://devchat.tv/adv-in-angular/080-aia-aurelia-with-rob-eisenberg/">80</a>), JavaScript Jabber, and others like <a href="https://devchat.tv/js-jabber/203-jsj-aurelia-with-rob-eisenberg/">Episode 203.</a></p> <p>2:36 &ndash; Rob: That was over the period of 4 years all of those podcasts. I am getting older.</p> <p>2:50 &ndash; Chuck: Anything that you&rsquo;ve done that you want to talk about?</p> <p>3:04 &ndash; Rob: I am known for opensource work over the years. Maybe we can talk about my progression through that over the years.</p> <p>3:25 &ndash; Chuck: How did you get into this field?</p> <p>3:29 &ndash; 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&rsquo;d buy the disk drive and the keyboard looking unit. You could by a monitor, we didn&rsquo;t, but we used a black and white TV for our monitor. Later we bought the colored monitor and printer. That&rsquo;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.</p> <p>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&rsquo;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&rsquo;t the Internet, yet. There were 3 books about C and read it and re-read it. I didn&rsquo;t have any connections nor a compiler. When I first learned C I didn&rsquo;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&rsquo;s when I moved on <a href="http://www.cplusplus.com">C++</a> and printed out my source code! It&rsquo;s so crazy to talk about it but at the time that&rsquo;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.</p> <p>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.</p> <p>I did 2 degrees in music and then started my Master&rsquo;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 <a href="https://www.tutorialspoint.com/csharp/">C#!</a> I don&rsquo;t know cause...how can you get any better than <a href="http://www.cplusplus.com">C++?!</a></p> <p>In 2003 &ndash; I saw a book: teach yourself <a href="https://www.tutorialspoint.com/csharp/">C#</a> 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.</p> <p>17:00 &ndash; Chuck: You start making this transition to web? What roped you in?</p> <p>17:25 &ndash; Rob: I realized the power of this, not completely roped in just, yet. Microsoft was working (around this time) with...</p> <p>19:45 &ndash; (Continued from Rob): When Silver Light died that&rsquo;s when I looked at the web. I said forget this native platform. I came back to JavaScript for the 2<sup>nd</sup> time &ndash; and said I am going to learn this language with the same intensity as I learned C++ and <a href="https://www.tutorialspoint.com/csharp/">C#.</a> I started working with Durandal.</p> <p>21:45 &ndash; Charles: Yeah, I remember when you worked with the router and stuff like that. You were on the core team.</p> <p>21:53 &ndash; Rob: The work I did on that was inspired by screen activation patterns.</p> <p>23:41 &ndash; Rob (continued): I work with <a href="https://www.invisionapp.com">InVision</a> now.</p> <p>24:14 &ndash; Charles: I remember you were on the Angular team and then you transitioned &ndash; what was that like?</p> <p>24:33 &ndash; Rob comments.</p> <p>25:28 &ndash; 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&rsquo;s a marathon not a sprint.</p> <p>These libraries are huge assets. Thank God I didn&rsquo;t go bankrupt but became very close.</p> <p>The more popular something if there are more varieties and people not everyone is so pleasant. It&rsquo;s okay to disagree. Now what are the different opinions and what works well for your team and project? It&rsquo;s important to stay to your core and vision. Why would you pick THIS over THAT?</p> <p>It&rsquo;s a fun and exciting time if you are</p> <p>28:41 &ndash; Charles: What are you</p> <p>28:47 &ndash; Rob: InVision and InVision studio. It&rsquo;s a tool for designing screens. I work on that during the day and during the night I work on Aurelia.</p> <p>30:43 &ndash; Chuck: I am pretty sure that we have had people from InVision on a show before.</p> <p>31:03 &ndash; Rob comments.</p> <p>Rob: How we all work together.</p> <p>31:20 &ndash; What is coming in with <a href="https://twitter.com/AureliaEffect">Aurelia</a> next?</p> <p>31:24 &ndash; Rob: We are trying to work with as much backwards compatibility as we can. So you don&rsquo;t see a lot of the framework code in your app code. It&rsquo;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&rsquo;t learn anything new. You don&rsquo;t have new things to learn. But how it&rsquo;s implemented it&rsquo;s smaller, faster, and more efficient. We have made the framework more pluggable to the compiler-level. It&rsquo;s fully supported and super accessible.</p> <p>Frameworks will come and go &ndash; 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.&nbsp;</p> <p>We&rsquo;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&rsquo;s coming along swimmingly so I am really excited. We&rsquo;ve already got 90% test coverage and over 40,000 tests.</p> <p>37:33 &ndash; Chuck: Let&rsquo;s get you on JavaScript Jabber!</p> <p>38:19 &ndash; Chuck: Where can people find you?</p> <p>38:22 &ndash; Twitter, and everywhere else. <a href="https://aurelia.io/blog/">Blog!</a></p> <p>39:17 &ndash; Chuck: Picks?</p> <p>39:23 &ndash; Rob dives in!</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://www.google.com/search?client=safari&amp;rls=en&amp;q=javascript&amp;ie=UTF-8&amp;oe=UTF-8">JavaScript</a></li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="http://www.cplusplus.com">C++</a></li> <li><a href="https://www.tutorialspoint.com/csharp/">C#</a></li> <li><a href="https://www.invisionapp.com">InVision</a></li> <li><a href="https://twitter.com/AureliaEffect">Aurelia</a></li> <li><a href="https://aurelia.io/blog/">Aurelia Blog by Rob</a></li> <li><a href="https://twitter.com/eisenbergeffect?lang=en">Rob Eisenberg&rsquo;s Twitter</a></li> <li><a href="http://robeisenberg.com">Rob&rsquo;s Website</a></li> <li><a href="https://www.linkedin.com/in/robeisenberg">Rob&rsquo;s LinkedIn</a></li> <li><a href="https://github.com/EisenbergEffect">Rob&rsquo;s GitHub</a></li> <li><a href="https://devchat.tv/adv-in-angular/009-aia-ng-2-0-with-rob-eisenberg/">Rob&rsquo;s Episode 9</a></li> <li><a href="https://devchat.tv/adv-in-angular/080-aia-aurelia-with-rob-eisenberg/">Rob&rsquo;s Episode 80</a></li> <li>Rob&rsquo;s Episode 203</li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://devchat.tv/get-a-coder-job/"><strong>Get A Coder Job</strong></a></li> <li><a href="https://www.freshbooks.com">Fresh Books</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> </ul> <p><strong>Picks:</strong></p> <p><strong>Rob</strong></p> <ul> <li><a href="https://github.com/orbitdb/orbit-db">Database: Orbit DB</a></li> <li><a href="https://boardgamegeek.com/boardgame/203215/robit-riddle-storybook-adventures">Robit Riddle</a></li> <li><a href="http://wingfeathersaga.com">The Wingfeather Saga</a></li> </ul> <p><strong>Charles</strong></p> <ul> <li>Used to play: <a href="http://dnd.wizards.com">Dungeons and Dragons</a></li> <li><a href="https://www.crafty-games.com/shop/little-wizards/">Little Wizards</a></li> <li><a href="https://www.parkcity.org">Park City, UT</a></li> <li><a href="https://www.vrbo.com/?k_clickid=EAIaIQobChMIgarx5M6L3gIVh7rACh3XtAdsEAAYAiAAEgKcHfD_BwE&amp;ds_kids=p26840931628&amp;ds_kid=43700026840931628&amp;ksprof_id=700000001561967&amp;ksdevice=c&amp;ktarget=kwd-304548565435&amp;kloct=&amp;klocf=9027224&amp;gclid=EAIaIQobChMIgarx5M6L3gIVh7rACh3XtAdsEAAYAiAAEgKcHfD_BwE&amp;gclsrc=aw.ds">VRBO</a></li> </ul>
Nov 28, 2018
JSJ 341: Testing in JavaScript with Gil Tayar
1:02:49
<p><strong>Panel: </strong></p> <ul> <li>Aimee Knight</li> <li>AJ O&rsquo;Neal</li> <li>Charles Max Wood</li> </ul> <p><strong>Special Guest:</strong><strong> </strong><a href="https://twitter.com/giltayar?lang=en">Gil Tayar</a></p> <p>In this episode, the panel talks with <a href="https://twitter.com/giltayar?lang=en">Gil Tayar</a> who is currently residing in Tel Aviv and is a software engineer. He is currently the Senior Architect at <a href="https://applitools.com">Applitools</a> 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!</p> <p><strong>Show Topics:</strong></p> <p>0:00 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>0:35 &ndash; Chuck: Our panel is AJ, Aimee, myself &ndash; and our special guest is Gil Tayar. Tell us why you are famous!</p> <p>1:13 &ndash; <a href="https://twitter.com/giltayar?lang=en"><em>Gil</em></a><em> talks about where he resides and his background.</em>&nbsp;</p> <p>2:27 &ndash; Chuck: What is the landscape like now with testing and testing tools now?</p> <p>2:39 &ndash; 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.&nbsp; We can do frontend testing that wasn&rsquo;t possible 5 years ago. The major change was React.</p> <p><em>The guest talks about Node, React, tools, and more!</em></p> <p>4:17 &ndash; Aimee: I advocate for tests and testing. There is a grey area though...how do you treat that? If you have to get something into production, but it&rsquo;s not THE thing to get into production, does that fall into product or...what?</p> <p>5:02 &ndash; Guest: We decided to test everything in the beginning. We actually cam through and did that and since then I don&rsquo;t think I can use the right code without testing. There are a lot of different situations, though, to consider.</p> <p><em>The guest gives hypothetical situations that people could face. </em></p> <p>6:27 &ndash; Aimee.</p> <p>6:32 &ndash; Guest: The horror to changing code without tests, I don&rsquo;t know, I haven&rsquo;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&rsquo;t write those tests, but...</p> <p>7:22 &ndash; Aimee: I totally agree and I could go on and on and on.</p> <p>7:42 &ndash; Panel: I want to do tests when I know they will create value. I don&rsquo;t want to do it b/c it&rsquo;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.</p> <p>I guess I just need advice in this area, I guess.</p> <p>8:55 &ndash; Guest gives advice to panelist&rsquo;s question. He mentions how there are two schools of thought.</p> <p>10:20 &ndash; Guest: Don&rsquo;t mock too much.</p> <p>10:54 &ndash; 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.</p> <p>11:18 &ndash; Guest: Exactly! Most of our test is glue &ndash; gluing together a bunch of different stuff! Those are best tested as a medium-sized integration suite.</p> <p>12:39 &ndash; Panel: That seems like a lot of work, though! I loathe the database stuff b/c they don&rsquo;t map cleanly. I hate this database stuff.</p> <p>13:06 &ndash; Guest: I agree, but don&rsquo;t knock the database, but knock the level above the database.</p> <p>13:49 &ndash; 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&rsquo;s smooth sailing.</p> <p>14:17 &ndash; Panel: I guess I can see that. I like to do the dumb-way the first time. I am not clear on the transition.</p> <p>14:47 &ndash; Guest: Write the code, and then write the tests.</p> <p><em>The guest gives a hypothetical situation on how/when to test in a certain situation. </em></p> <p>16:25 &ndash; Panel: Can you talk about that more, please?</p> <p>16:50 &ndash; Guest: Don&rsquo;t have the same unit &ndash; do browser and business logic stuff separated. The real business logic stuff needs to be above that level. First principle is separation of concerns.</p> <p>18:04 &ndash; <em>Panel talks about dependency interjection and asks a question. </em></p> <p>18:27 &ndash; Guest: What I am talking about very, very light inter-dependency interjection.</p> <p>19:19 &ndash; 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.</p> <p>19:44 &ndash; Guest: I only do it when it&rsquo;s necessary; it&rsquo;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.</p> <p>20:09 &ndash; Panel.</p> <p>20:19 &ndash; Guest: It&rsquo;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.</p> <p>20:53 &ndash; 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?</p> <p>21:39 &ndash; <em>Guest answers the question and mentions </em><a href="https://www.seleniumhq.org"><em>Selenium!</em></a></p> <p>24:27 &ndash; Panel: I like that approach.</p> <p>24:35 &ndash; Chuck: When you say integration test what do you mean?</p> <p>24:44 &ndash; Guest: Integration tests aren&rsquo;t usually talked about. For most people it&rsquo;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 the...so they can run in millisecond time.</p> <p>26:54 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry.io</a></p> <p>27:52 &ndash; Chuck: How much do the tools matter?</p> <p>28:01 &ndash; Guest: The revolutions matter. Whether you use Jasmine or Mocha or whatever I don&rsquo;t think it matters. The tests matter not the tools.</p> <p>28:39 &ndash; Aimee: Yes and no. I think some tools are outdated.</p> <p>28:50 &ndash; Guest: I got a lot of flack about <a href="https://applitools.com/blog/cypress-vs-selenium-webdriver-better-or-just-different">my blog</a> where I talk about <a href="https://www.cypress.io">Cypress</a> versus <a href="https://www.seleniumhq.org">Selenium</a>. I will never use Jasmine. In the end it&rsquo;s the</p> <p>29:29 &ndash; Aimee: I am curious would you be willing to expand on what the <a href="https://www.seleniumhq.org">Selenium</a> folks were saying about Puppeteer and others may not provide?</p> <p>29:54 &ndash; Guest: <a href="https://www.cypress.io">Cypress</a> was built for frontend developers. They don&rsquo;t care about cross browser, and they tested in Chrome. Most browsers are typically the same. <a href="https://www.seleniumhq.org">Selenium</a> was built with the QA mindset &ndash; end to end tests that we need to do cross browser.</p> <p><em>The guest continues with this topic.</em></p> <p>30:54 &ndash; <em>Aimee mentions </em><a href="https://www.cypress.io"><em>Cypress.</em></a></p> <p>31:08 &ndash; Guest: My guessing is that their priority is not there. I kind of agree with them.</p> <p>31:21 &ndash; Aimee: I think they are focusing on mobile more.</p> <p>31:24 &ndash; Guest: I think cross browser testing is less of an issue now. There is one area that is important it&rsquo;s the visual area! It&rsquo;s important to test visually across these different browsers.</p> <p>32:32 &ndash; Guest: <a href="https://www.seleniumhq.org">Selenium</a> is a Swiss knife &ndash; it can do everything.</p> <p>33:32 &ndash; Chuck: I am thinking about different topics to talk about. I haven&rsquo;t used Puppeteer. What&rsquo;s that about?</p> <p>33:49 &ndash; Guest: <a href="https://github.com/GoogleChrome/puppeteer">Puppeteer</a> is much more like <a href="https://www.seleniumhq.org">Selenium</a>. The reason why it&rsquo;s great is b/c <a href="https://github.com/GoogleChrome/puppeteer">Puppeteer</a> will always be <a href="https://www.google.com/chrome/">Google Chrome.</a></p> <p>35:42 &ndash; 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?</p> <p>36:06 &ndash; Guest.</p> <p>38:30 &ndash; Chuck: You run tests against production?</p> <p>38:45 &ndash; Guest: Don&rsquo;t run tests against production...let me clarify!</p> <p>39:14 &ndash; Chuck.</p> <p>39:21 &ndash; Guest: When I am talking about integration testing in the backend...</p> <p>40:37 &ndash; <em>Chuck asks a question.</em></p> <p>40:47 &ndash; Guest: I am constantly running between frontend and backend.</p> <p>I didn&rsquo;t know how to run tests for frontend. I had to invent a new thing and I &ldquo;invented&rdquo; the package JS DONG. It&rsquo;s an implementation of Dong in Node. I found out that I wasn&rsquo;t the only one and that there were others out there, too.</p> <p>43:14 &ndash; 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?</p> <p>43:25 &ndash; 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...</p> <p>44:40 &ndash; Guest: Frontend is so visual.</p> <p>45:12 &ndash; Chuck: What are you working on now?</p> <p>45:16 &ndash; Guest: I am working with <a href="https://applitools.com">Applitools</a> and I was impressed with what they were doing.</p> <p><em>The guest goes into further detail.</em></p> <p>46:08 &ndash; Guest: Those screenshots are never the same.</p> <p>48:36 &ndash; Panel: It&rsquo;s...comparing the output to the static site to the...</p> <p>48:50 &ndash; Guest: Yes, that static site &ndash; if you have 30 pages in your app &ndash; most of those are the same. We have this trick where we don&rsquo;t upload it again and again. Uploading the whole static site is usually very quick. The second thing is we don&rsquo;t wait for the results. We don&rsquo;t wait for the whole rendering and we continue with the tests.</p> <p>50:28 &ndash; Guest: I am working mostly (right now) in backend.</p> <p>50:40 &ndash; Chuck: Anything else? Picks!</p> <p>50:57 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>END &ndash; <a href="https://www.cachefly.com">Advertisement: CacheFly!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li><a href="https://github.com/GoogleChrome/puppeteer">Puppeteer</a></li> <li><a href="https://www.cypress.io">Cypress</a></li> <li><a href="https://www.seleniumhq.org">SeleniumHQ</a></li> <li><a href="https://ideas.ted.com/how-showing-vulnerability-helps-build-a-stronger-team/">Article &ndash; Ideas.Ted.Com</a></li> <li><a href="https://www.amazon.com/Never-Split-Difference-Negotiating-Depended/dp/1847941494/ref=as_li_ss_tl?ie=UTF8&amp;qid=1540326875&amp;sr=8-1&amp;keywords=never+split+the+difference&amp;dpID=5119RQ4ZRlL&amp;preST=_SY344_BO1,204,203,200_QL70_&amp;dpSrc=srch&amp;linkCode=sl1&amp;tag=co0dcd-20&amp;linkId=8f1be5a9753630f03a868b6f119dc664&amp;language=en_US">Book: Never Split the Difference</a></li> <li><a href="https://applitools.com">Applitools</a></li> <li><a href="https://applitools.com/blog/cypress-vs-selenium-webdriver-better-or-just-different">Guest&rsquo;s Blog Article about Cypress vs. Selenium</a></li> <li><a href="https://twitter.com/giltayar?lang=en">Gil&rsquo;s Twitter</a></li> <li><a href="https://medium.com/@giltayar">Gil&rsquo;s Medium</a></li> <li><a href="https://il.linkedin.com/in/giltayar">Gil&rsquo;s LinkedIn</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">CacheFly</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li><a href="https://ideas.ted.com/how-showing-vulnerability-helps-build-a-stronger-team/">How Showing Vulnerability Helps Build a Stronger Team </a></li> </ul> <p>AJ</p> <ul> <li><a href="https://www.amazon.com/Never-Split-Difference-Negotiating-Depended-ebook/dp/B014DUR7L2">Never Split the Difference </a></li> <li><a href="https://telebit.cloud">Project - TeleBit </a></li> </ul> <p>Charles</p> <ul> <li><a href="https://www.amazon.com/Monster-Hunter-International-Hunters-Book-ebook/dp/B00APAH7PQ">Monster Hunter International </a></li> <li><a href="https://www.metabase.com/">Metabase</a></li> </ul> <p>Gil</p> <ul> <li><a href="https://www.amazon.com/Cat-Zero-Jennifer-Rohn/dp/1938463668">Cat Zero</a></li> <li><a href="http://www.julianjaynes.org/bicameralmind.php">The Origin of Consciousness in the Breakdown of the Bicameral Mind</a></li> </ul>
Nov 27, 2018
MJS 086: James Adams
32:07
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://twitter.com/jamesadams0">James Adams</a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://twitter.com/jamesadams0">James Adams</a> who is a web and a full stack developer who currently resides in Melbourne, Australia. Chuck and James talk about James&rsquo; background, current projects, JavaScript, Ruby, Meetups, and much more! Check out today&rsquo;s episode to hear all of the details.</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>0:00 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>0:55 &ndash; Chuck: Welcome to My Java Script story! You are the 4<sup>th</sup> 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.</p> <p>1:39 &ndash; Guest: I am in Australia!</p> <p>1:48 &ndash; 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.</p> <p>2:20 &ndash; Guest.</p> <p>2:26 &ndash; Chuck: Introduce yourself, please!</p> <p>2:33 &ndash; 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.</p> <p>3:24 &ndash; Chuck: What was it &ndash; why did you change from mathematics to programming?</p> <p>3:38 &ndash; Guest: I like solving problems and that has been true my whole life.</p> <p>4:25 &ndash; Chuck: I identify with that &ndash; you&rsquo;re right &ndash; for me, it&rsquo;s more tangible and it&rsquo;s neat to see something being built.</p> <p>White line on a black floor is mentioned.</p> <p>5:30 &ndash; Guest: I had a great education, but seems like the education in the U.S. is more fun. We didn&rsquo;t get to program and stuff like that.</p> <p>5:51 &ndash; Chuck: My experience was that I got to do really interesting things in High School.</p> <p>6:20 &ndash; Guest: I think you reap benefits by diving into one topic.</p> <p>6:36 &ndash; 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?</p> <p>7:01 &ndash; Guest: We didn&rsquo;t touch JavaScript until my 3<sup>rd</sup> year. I went to a school in Jerusalem for a while.</p> <p>9:05 &ndash; Chuck: How did you get your first programming job?</p> <p>9:10 &ndash; Guest: I wasn&rsquo;t really applying &ndash; I thought I would travel for a year or so. It was weird I didn&rsquo;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.</p> <p>10:18 &ndash; Chuck: First few jobs I got were through the &ldquo;spray-and-pray&rdquo; method. The best jobs I got are because I KNEW somebody.</p> <p>10:30 &ndash; <em>Guest and Chuck go back-and-forth.</em></p> <p>11:31 &ndash; <em>Guest mentions networking.</em></p> <p>11:41 &ndash; Chuck: What have you done with JavaScript that you are especially proud of?</p> <p>11:45 &ndash; Guest.</p> <p>13:43 &ndash; Chuck: I didn&rsquo;t know that honestly. I never really thought of integrating React Native into a native app.</p> <p>14:00 &ndash; Guest: Yeah, it&rsquo;s really cool. I didn&rsquo;t think about it before either!</p> <p>14:24 &ndash; Chuck: What are you working on now?</p> <p>14:28 &ndash; Guest: Actually, I am working on some integration with different parties. Now we are routing everything back to the backend.</p> <p>15:46 &ndash; Chuck: I think I have heard of Pro...</p> <p>15:52 &ndash; Guest: Yeah, they are located in the U.S.</p> <p>16:01 &ndash; Chuck: Every community/country is different, but what is it like to be a programmer in Melbourne, Australia?</p> <p>16:16 &ndash; Guest: It&rsquo;s cool and I think it has a way to go. We have a React Meetup.</p> <p>16:55 &ndash; 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.</p> <p>17:30 &ndash; Guest: Do you spend more time online?</p> <p>17:50 &ndash; Chuck: Yeah, I don&rsquo;t know. I live in Utah. It is hard because there is a community North in Logan, UT.</p> <p>18:13 &ndash; Guest: You have 5-6 main cities in Australia. We don&rsquo;t have medium-sized cities. In the U.S. you have a mixture out there.</p> <p>18:42 &ndash; Chuck talks about the population throughout Utah.</p> <p>19:03 &ndash; <em>Guest asks a question to Chuck.</em></p> <p>19:09 &ndash; 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.</p> <p>19:49 &ndash; Chuck: We are fairly large land wise. We can spread-out more.</p> <p>20:07 &ndash; Guest talks about the population density in Australia vs. U.S.</p> <p>20:20 &ndash; Chuck: It&rsquo;s interesting to see what the differences are.</p> <p>If you are in a community that HAS a tech community you are set.</p> <p>20:39 &ndash; Guest: I find it really interesting.</p> <p>21:25 &ndash; Guest: Humans are a funny species &ndash; you can put out your hand, shake it, and you start talking.</p> <p>21:45 &ndash; <em>Chuck talks about the tech hubs in Fort Lauderdale, Florida in U.S.</em></p> <p>22:17 &ndash; Guest: Yeah, if you aren&rsquo;t interested than you aren&rsquo;t interested.</p> <p>22:28 &ndash; Chuck.</p> <p>22:37 &ndash; Guest.</p> <p>22:53 &ndash; Chuck: Join the mailing list, get involved and there are online groups, too.</p> <p>23:11 &ndash; Guest: I really didn&rsquo;t get into functional programming at first. I got to talk about this at a React Meetup.</p> <p>24:25 &ndash; Chuck: The logic is the same.</p> <p>24:32 &ndash; Guest: You put these functions together and there you go!</p> <p>24:40 &ndash; Chuck: Go ahead.</p> <p>24:48 &ndash; <em>The guest is talking about React&rsquo;s integrations. </em></p> <p>24:56 &ndash; Chuck: Anything that is shared and put in some functional component, hook it up, and that&rsquo;s it. Picks!</p> <p>25:09 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p>END &ndash; <a href="https://www.cachefly.com">Cache Fly</a></p> <p>29:55 &ndash; Guest: Shout-out to my mentors. I am really blessed to have these mentors in my life and I wouldn&rsquo;t be here today if it wasn&rsquo;t for them. Lucas is one of them who work with Prettier.</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://vuejs.org">Vue.js</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.emberjs.com">Ember</a></li> <li><a href="https://guide.elm-lang.org">Elm</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li><a href="https://tweetmashup.com">Tweet Mash Up</a></li> <li><a href="https://twitter.com/jamesadams0">Guest&rsquo;s Twitter</a></li> <li><a href="https://www.meetup.com/React-Melbourne/?_cookie-check=efCZDdbJtA8K7KUQ">React Melbourne</a></li> <li><a href="https://www.meetup.com/topics/reactjs/au/melbourne/">ReactJS Melbourne</a></li> <li><a href="https://www.meetup.com/topics/javascript/au/melbourne/">JavaScript Meetups in Melbourne</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p>Chuck</p> <ul> <li>Presser switch for my Furnace &ndash; Goggle Search</li> </ul> <p>James</p> <ul> <li><a href="https://tweetmashup.com">Tweet Mash Up</a></li> </ul>
Nov 21, 2018
JSJ 340: JavaScript Docker with Julian Fahrer
58:15
<p><strong>Panel: </strong></p> <ul> <li>Aimee Knight</li> <li>AJ O&rsquo;Neal</li> <li>Joe Eames</li> <li>Charles Max Wood</li> <li>Chris Ferdinandi</li> </ul> <p><strong>Special Guest:</strong><strong> </strong><a href="https://www.linkedin.com/in/julian-fahrer/">Julian Fahrer</a></p> <p>In this episode, the panel talks with <a href="https://www.linkedin.com/in/julian-fahrer/">Julian Fahrer</a> who is an online educator and software engineer in San Francisco, California (USA). The panel and the guest talk about containers, tooling, Docker, <a href="https://kubernetes.io">Kubernetes</a>, and more. Check out today&rsquo;s episode!</p> <p><strong>Show Topics:</strong></p> <p>0:00 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>1:00 &ndash; Chuck: We have today Julian. Julian, please tell us why you are famous?</p> <p>1:10 &ndash; <a href="https://www.linkedin.com/in/julian-fahrer/">Julian (Guest):</a> I am a software engineer in San Francisco.</p> <p>1:35 &ndash; Chuck: <a href="https://devchat.tv/elixir-mix/emx-010-docker-with-julian-fahrer/">We had you on Elixir Mix before</a> &ndash; so here you are! Give us a brief introduction &ndash; tell us about the</p> <p>1:56 &ndash; Julian: About 11 hours. You can get it done in about 1 week. It&rsquo;s a lot to learn. It&rsquo;s a new paradigm, and I think that&rsquo;s why people like it.</p> <p>2:22 &ndash; Aimee: How did you dive into Docker? I feel that is like backend space?</p> <p>2:35 &ndash; Julian: I am a full stack engineer and I have been in backend, too.</p> <p>3:10 &ndash; Aimee: I know that someone has been in-charge of our Dev Ops process until the first job I&rsquo;ve had. When there is a problem in the deployment, I want to unblock myself and not wait for someone else. I think it&rsquo;s a valuable topic. Why Docker over the other options?</p> <p>3:58 &ndash; Julian: Let&rsquo;s talk about what Docker is first?</p> <p>4:12 &ndash; Chuck.</p> <p>4:23 &ndash; Julian: Containers are a technology for us to run applications in isolation from each other.</p> <p><em>Julian talks in-detail about what contains are, what they do, he gives examples, and more. Check it out here!</em></p> <p>5:27 &ndash; Chuck: Makes sense to me. I think it&rsquo;s interesting that you are talking about the dependencies. Because of the way the Docker works it&rsquo;s consistent across all of your applications.</p> <p>5:59 &ndash; Julian. Yes, exactly.</p> <p><em>Julian talks about containers some more!</em></p> <p>6:56 &ndash; Chuck asks a question about the container, Docker, and others.</p> <p>7:03 &ndash; Guest: You don&rsquo;t have to worry about your company&rsquo;s running operating system, and what you want to use &ndash; basically everything runs in the container...</p> <p>7:30 &ndash; Chuck: This short-circuits a lot of it.</p> <p>7:46 &ndash; Guest.</p> <p>8:00 &ndash; Chuck: People will use Docker if your employer mandates it. Is there a learning curve and how do you adapt it within the person&rsquo;s company?</p> <p>8:25 &ndash; Guest.</p> <p>8:52 &ndash; Aimee: We are using it, too.</p> <p>8:57 &ndash; Guest: Awesome!</p> <p>9:03 &ndash; Aimee: The only downfall is that if you have people who are NOT familiar with it &ndash; then it&rsquo;s a black box for us. We can&rsquo;t troubleshoot it ourselves. I want to be able to unblock from our end w/o having to go to someone else. That&rsquo;s my only issue I&rsquo;ve been having.</p> <p>10:03 &ndash; Guest: I want to see that tooling to be honest.</p> <p>10:12 &ndash; Aimee: Can you talk about how Civil and Docker work together?</p> <p>10:19 &ndash; Guest: Yes!</p> <p><em>Julian answers the question.</em></p> <p>10:56 &ndash; Chuck: How much work it is to get a Docker file to get up and running? How much work would it take?</p> <p>11:18 &ndash; Guest: For the development side in about an hour or two &ndash; this is if you understand it already. Putting it into production that&rsquo;s a different story b/c there is a million different ways to do it. It&rsquo;s hard to put a time on that.</p> <p>12:24 &ndash; Chuck: Let&rsquo;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?</p> <p>12:47 &ndash; Guest: If you have touched Docker then you can do it in a day; if never then not really.</p> <p>13:02 &ndash; Guest: There might be some stones you will fall over.</p> <p>13:39 &ndash; Panel: The part of the learning curve would be...</p> <p>13:52 &ndash; 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&rsquo;s fresh and clean.</p> <p><em>Guest continues with his answer.</em></p> <p>15:20 &ndash; Chuck: I have seen people do this with their database engine. If you need to upgrade your database then they grab their container...</p> <p>15:55 &ndash; Guest: You don&rsquo;t have to worry about setting it up - its provided in the container and...</p> <p>16:09 &ndash; <em>Chuck asks a question.</em></p> <p>16:17 &ndash; Guest: For production, I would go with a hosted database like RJS, Azure, or other options.</p> <p><em>Guest continues. </em></p> <p>17:13 &ndash; Chuck.</p> <p>17:20 &ndash; Guest: If it dies then you need to...</p> <p>17:30 &ndash; Chuck: We talked about an idea of these containers being something you can hand around in your development team.</p> <p><em>Chuck asks a question. </em></p> <p>17:50 &ndash; <em>Guest answers the question. He talks about tooling, containers, web frontend, and more. </em></p> <p>18:48 &ndash; Guest asks Aimee a question: Are you using Compost?</p> <p>18:50 &ndash; Aimee: I don&rsquo;t know b/c that is a black box for us. I don&rsquo;t know much about our Docker setup.</p> <p>19:00 &ndash; Guest to Aimee: Can I ask you some questions?</p> <p>19:14 &ndash; <em>Guest is giving Aimee some hypothetical situations and asks what their process is like. </em></p> <p>19:32 &ndash; <em>Aimee answers the question.</em></p> <p>20:11 &ndash; Guest: You have customizing tooling to be able to do x, y, and z.</p> <p>20:25 &ndash; Aimee: They have hit a wall, but it&rsquo;s frustrating. Our frontend and our backend are different. We are getting 500&rsquo;s and it&rsquo;s a black box for us. It&rsquo;s the way that ops have it setup. I hate having to go to them for them to unblock us.</p> <p>21:07 &ndash; Chuck: I have been hearing about <a href="https://kubernetes.io">Kubernetes</a>. When will you start to see that it pays off to use it?</p> <p>21:20 &ndash; <em>Guest answers the question.</em></p> <p>22:17 &ndash; If I have a simple app on a few different machines and front end and job servers I may not need <a href="https://kubernetes.io">Kubernetes.</a> But if I have a lot of things that it depends on then I will need it?</p> <p>22:35 &ndash; Guest: Yes.</p> <p>22:40 &ndash; Chuck: What are the steps to using it?</p> <p>22:45 &ndash; Guest: Step #1 you install it.</p> <p><em>The guest goes through the different steps to use Docker. </em></p> <p>25:23 &ndash; Aimee: It makes sense that your UI and your database don&rsquo;t live in the same container, but what about your API and your database should that be separate?</p> <p>25:40 &ndash; Guest: Yes they should be separate.</p> <p>26:09 &ndash; Chuck: What has your experience been with Docker &ndash; AJ or Chris?</p> <p>26:17 &ndash; Panel: I have used a little bit at work and so far it&rsquo;s been a black box for me. I like the IDEA of it, but I probably need to take Julian&rsquo;s course to learn more about it! (Aimee agrees!)</p> <p>One thing I would love (from your perspective, Julian) &ndash; if I wanted to get started with this (and say I have not worked with containers before) where would I start?</p> <p>28:22 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry.io</a></p> <p>29:20 &ndash; Guest: Good question. You don&rsquo;t have to be an expert (to use Docker), but you have to be comfortable with the command line, though.</p> <p>30:17 &ndash; Panel: Is there a dummy practice within your course?</p> <p>30:27 &ndash; Julian: We run our own web server and...</p> <p>30:44 &ndash; Panel: I need to check out your course!</p> <p>31:04 &ndash; Guest: It is some time investment, but it&rsquo;s saved me so much time already so it makes it really worth it.</p> <p>31:38 &ndash; Panel: You are a version behind on Ruby.</p> <p>31:46 &ndash; Guest: ...I just want to make code and not worry about that.</p> <p>32:04 &ndash; Chuck: Updating your server &ndash; you would update Ruby and reinstall your gems and hope that they were all up-to-date. Now you don&rsquo;t have to do it that way anymore.</p> <p>32:37 &ndash; Guest: You know it will behave the same way.</p> <p>32:48 &ndash; 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...</p> <p>35:06 &ndash; Chuck.</p> <p>35:12 &ndash; Panel: We need someone to come up with...</p> <p>35:40 &ndash; Panel: It&rsquo;s not standard JavaScript.</p> <p>35:51 &ndash; Chuck: One question: How do you setup multiple stages of Docker?</p> <p>36:12 &ndash; Guest: The recommended way is to have the same Docker file used in the development sate and through to production. So that way it&rsquo;s the same image.</p> <p>37:00 &ndash; Panel: ...you must do your entire configuration via the environmental variables.</p> <p>37:29 &ndash; Chuck asks a question.</p> <p>37:36 &ndash; Panel: If you are using <a href="https://devcenter.heroku.com">Heroku</a> or <a href="https://circleci.com">Circle CI</a>...there is a page...</p> <p>38:11 &ndash; Guest and Chuck go back-and-forth.</p> <p>39:17 &ndash; Chuck: Gottcha.</p> <p>39:18 &ndash; Guest.</p> <p>39:52 &ndash; Chuck: I have seen systems that have hyberized things like using Chef Solo and...</p> <p>You do your basic setup then use Chef Solo &ndash; that doesn&rsquo;t&rsquo; make sense to me. Have you seen people use this setup before?</p> <p>40:20 &ndash; Guest: I guess I wouldn&rsquo;t do it.</p> <p>40:30 &ndash; Chuck.</p> <p>40:36 &ndash; 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.</p> <p>41:14 &ndash; Chuck: Docker Hub &ndash; I want to mention that. How robust is that? Can you put private images up there?</p> <p>41:38 &ndash; Guest: You can go TOTALLY nuts with it. You could have private and public images. Also, your own version. Under the hood it&rsquo;s called container registry. Yeah, you can change images, too.</p> <p>42:22 &ndash; Chuck: Should I use container registry or a CI system to build the Docker system and use it somewhere else?</p> <p>42:35 &ndash; Guest.</p> <p>43:24 &ndash; Chuck: Where can people find your Docker course?</p> <p>43:30 &ndash; Guest: <a href="https://learndocker.online">LEARN DOCKER ONLINE!</a> We are restructuring the prices. Make sure to check it out.</p> <p>44:05 &ndash; Chuck: Picks! Where can people find you online?</p> <p>44:14 &ndash; Guest: <a href="https://twitter.com/jufahr">Twitter!</a> eBook &ndash; Rails and Docker! Code Tails IO!</p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="http://elm-lang.org">Elm</a></li> <li><a href="https://blog.closebrace.com">Vue</a></li> <li><a href="https://eslint.org">ESLint</a></li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li><a href="https://circleci.com">Circle CI</a></li> <li><a href="https://twitter.com/circleci?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Twitter &ndash; Circle CI</a></li> <li><a href="https://devcenter.heroku.com">Heroku</a></li> <li><a href="https://surge.sh">Surge.sh</a></li> <li><a href="https://kubernetes.io">Kubernetes.io</a></li> <li><a href="http://bergdesign.com/brightness/">Berg Design</a></li> <li><a href="https://rianrietveld.com/2018/10/09/i-have-resigned-the-wordpress-accessibility-team/">Rian Rietveld</a></li> <li><a href="https://www.picklejs.com">PickleJS</a></li> <li><a href="https://www.softcover.io">Soft Cover.io</a></li> <li><a href="https://github.com/cferdinandi/ebook-boilerplate">Ebook &ndash; boilerplate</a></li> <li><a href="https://devchat.tv/elixir-mix/emx-010-docker-with-julian-fahrer/">EMx 010 Episode with Julian Fahrer</a></li> <li><a href="https://learndocker.online">Learn Docker</a></li> <li><a href="https://www.indiehackers.com/jfahrer">Indie Hacker &ndash; Julian Fahrer</a></li> <li><a href="https://www.linkedin.com/in/julian-fahrer/">LinkedIn &ndash; Julian Fahrer</a></li> <li><a href="https://github.com/jfahrer">GitHub &ndash; Julian Fahrer</a></li> <li><a href="https://twitter.com/jufahr">Twitter &ndash; Julian Fahrer</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li>&nbsp;</li> </ul> <p><strong>Picks:</strong></p> <p>AJ</p> <ul> <li><a href="https://zermattresort.com/">Zermatt Resort </a></li> <li>Heber Area</li> </ul> <p>Aimee</p> <ul> <li><a href="https://surge.sh/">Surge.sh</a></li> </ul> <p>Chris</p> <ul> <li><a href="http://bergdesign.com/brightness/">BergDesign</a></li> <li><a href="https://rianrietveld.com/2018/10/09/i-have-resigned-the-wordpress-accessibility-team/">React, WP, and a11y</a></li> <li><a href="https://gomakethings.com/">gomakethings.com</a></li> </ul> <p>Joe</p> <ul> <li><a href="https://www.youtube.com/watch?v=cLT7eUWKZpg">Docker Videos by Dan Wahlin</a></li> <li>Rock Climbing/Indoor Rock Climbing</li> </ul> <p>Charles</p> <ul> <li><a href="https://www.amazon.com/Extreme-Ownership-U-S-Navy-SEALs-ebook/dp/B00VE4Y0Z2">Extreme Ownership - Book</a></li> <li>Playing DND</li> </ul> <p>Julian</p> <ul> <li><a href="https://www.picklejs.com/">PickleJS</a></li> <li><a href="https://www.amazon.com/Positive-Intelligence-Individuals-Achieve-Potential/dp/1608322785">Postive Intelligence </a></li> </ul>
Nov 20, 2018
MJS 085: Chris McKnight
35:57
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://github.com/cmckni3?tab=overview&amp;from=2014-12-01&amp;to=2014-12-31">Chris McKnight</a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://github.com/cmckni3?tab=overview&amp;from=2014-12-01&amp;to=2014-12-31">Chris McKnight</a> 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&rsquo; background, past/current projects, among other things. Check out today&rsquo;s episode to hear the panel talk about JavaScript, Angular, C and C++, Node, React, and much more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>0:00 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>1:12 &ndash; Chuck: Hello! Introduce yourself, please!</p> <p>1:15 &ndash; Guest: I am a software engineer outside of Nashville, Tennessee. I work for a medium consultancy company. I know <a href="https://www.javascript.com">JavaScript</a>, <a href="https://angular.io">Angular</a>, <a href="https://www.nativescript.org">NativeScript</a>, and JS, too.</p> <p>1:41 &ndash; Chuck: Cool! Tell us your story and how you got into programming?</p> <p>2:00 &ndash; 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.</p> <p>4:47 &ndash; Chuck: You got started and you said you used C and C++, why those languages?</p> <p>5:05 &ndash; Guest: I did a little bit of Java, but it was the &ldquo;new kid on the block.&rdquo; I wanted to get into a program that was user-friendlier.</p> <p>6:21 &ndash; Chuck: I took C and C++ classes in college. Eventually I did Ruby on Rails. I totally understand why you went that way.</p> <p>6:44 &ndash; 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.</p> <p>7:31 &ndash; Chuck: When did you start taking JavaScript seriously?</p> <p>7:40 &ndash; 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...</p> <p>9:18 &ndash; Chuck: It sounds like it was more out of necessity.</p> <p>9:30 &ndash; 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.</p> <p>10:03 &ndash; Chuck: ...it has a process running with it.</p> <p>10:13 &ndash; Guest: Catching a lot of those easy mistakes (bugs) and it&rsquo;s a 5-10 minute fix. It takes a lot of that away. Sometimes you can say: I want to ignore it.</p> <p>Or it doesn&rsquo;t give you runtime guarantees.</p> <p>Some other libraries out there have been on the forefront of fixing those problems. REST TYPE is an example of that.</p> <p>11:39 &ndash; 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 <a href="https://nodejs.org/en/">Node</a> or React &ndash; I fell in love with the language. Your reasons for starting JavaScript are because &ldquo;I hated running into these problems.&rdquo; Did you start loving to work in JavaScript?</p> <p>12:11 &ndash; 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.</p> <p>Another thing that bothers me is FILTER. What does it return? It&rsquo;s actually <a href="https://github.com/wesbos/es6-articles/blob/master/26%2520-%2520Array.%2520find()%2520and%2520.findIndex().md">FIND and FIND INDEX</a> and you use the pattern of filter and run this expression and give me index zero.</p> <p>14:16 &ndash; Chuck: What work have you done that you are proud of?</p> <p>14:20 &ndash; 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.&nbsp;</p> <p>16:55 &ndash; Chuck: How did you get into <a href="https://angular.io">Angular?</a></p> <p>17:00 &ndash; Guest: Interesting story. October of 2016 &ndash; at this time I was all against Angular. However someone came to me and said we have to...</p> <p>At the time I wasn&rsquo;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 <a href="https://angular.io">Angular</a> applications pretty quickly, and it made sense to me.</p> <p>20:53 &ndash; Chuck: I am a fan of the CLI b/c that&rsquo;s what we have in Rails. It&rsquo;s really nice. What are you working on these days?</p> <p>21:13 &ndash; 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.</p> <p>23:07 &ndash; Chuck: Any part of your experience that could help people?</p> <p>23:17 &ndash; Guest: Learn what&rsquo;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 &ndash; such as <a href="https://github.com/prettier/prettier">Prettier</a> and <a href="http://www.javascriptlint.com">Lint</a> &ndash; they will tell me &ldquo;you don&rsquo;t want to do this.&rdquo; Use the tooling and learn the fundamentals. Also, use <a href="https://babeljs.io">Babel!</a> Those are my tips of advice.</p> <p>25:55 &ndash; Chuck: That&rsquo;s solid. Yes, the fundamentals and the poly-fills will fill in the gaps. So now it&rsquo;s: what do I want to stack on top of this? Once you know the fundamentals.</p> <p>26:55 &ndash; Guest: Learn what the frameworks and libraries are doing.</p> <p>Don&rsquo;t get overwhelmed. That&rsquo;s my advice.</p> <p>28:16 &ndash; Chuck: Where can people find you?</p> <p>28:24 &ndash; Guest: <a href="https://github.com/cmckni3">GitHub</a> and <a href="https://twitter.com/cmckni3?lang=en">Twitter.</a> I&rsquo;ve been working on a website, but not ready, yet.</p> <p>29:08 &ndash; Chuck: Picks!</p> <p>29:15 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p>35:45 &ndash; <a href="https://www.cachefly.com">Cache Fly</a></p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://vuejs.org">Vue.js</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.emberjs.com">Ember</a></li> <li><a href="https://guide.elm-lang.org">Elm</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li><a href="https://github.com/wesbos/es6-articles/blob/master/26%2520-%2520Array.%2520find()%2520and%2520.findIndex().md">Find and Find Index</a></li> <li><a href="https://www.nativescript.org">NativeScript</a></li> <li><a href="http://www.javascriptlint.com">Lint</a></li> <li><a href="https://babeljs.io">Babel</a></li> <li><a href="https://github.com/prettier/prettier">Prettier</a></li> <li><a href="https://github.com/cmckni3">Christopher&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/cmckni3?lang=en">Christopher&rsquo;s Twitter</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p>Chris</p> <ul> <li><a href="https://marketplace.visualstudio.com/items?itemName=carlowenig.angular-explorer">Angular Explorer</a></li> <li><a href="https://code.visualstudio.com">VS Code</a></li> <li><a href="https://swish.com">Finance &ndash; Staying out of Debt &ndash; Swish App</a></li> </ul> <p>Chuck</p> <ul> <li><a href="https://discordapp.com">Discord</a></li> <li><a href="https://play.google.com/store/apps/details?id=com.nexonm.dominations.adk&amp;hl=en_US">DomiNations</a></li> </ul>
Nov 14, 2018
JSJ 339: Node.js In Motion Live Video Course from Manning with PJ Evans
49:32
<p><strong>Panel: </strong></p> <ul> <li>Aimee Knight</li> <li>AJ O&rsquo;Neal</li> <li>Charles Max Wood</li> </ul> <p><strong>Special Guest:</strong><strong> </strong>PJ Evans</p> <p>In this episode, the panel talks with PJ Evans who is a course developer and an instructor through Manning&rsquo;s course titled, &ldquo;Node.js in Motion.&rdquo; This course is great to learn the fundamentals of Node, which you can check out <a href="https://www.manning.com/livevideo/nodejs-in-motion">here!</a> The panel and PJ talk about this course, his background, and current projects that PJ is working on. Check out today&rsquo;s episode to hear more!</p> <p><strong>Show Topics:</strong></p> <p>0:00 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>0:36 &ndash; 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! <a href="https://www.manning.com/livevideo/nodejs-in-motion"><em>NODE JS in Motion</em></a> is the title of the course. Can you tell us more?</p> <p>1:29 &ndash; PJ: <a href="https://www.manning.com/livevideo/nodejs-in-motion">It&rsquo;s a fantastic course.</a></p> <p>2:25 &ndash; Chuck: You built this <a href="https://www.manning.com/livevideo/nodejs-in-motion">course</a> and there is a lot to talk about.</p> <p>2:36 &ndash; Aimee: Let&rsquo;s talk about Node and the current state.&nbsp;</p> <p>2:50 &ndash; Chuck: Here&rsquo;s the latest features, but let&rsquo;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?</p> <p>3:20 &ndash; Aimee.</p> <p>3:24 &ndash; <em>PJ talks about Node and his course!</em></p> <p>4:02 &ndash; PJ: The biggest headache with Node is the...</p> <p>4:13 &ndash; Chuck.</p> <p>4:19 &ndash; PJ: I am sure a lot of the listeners are familiar with callback hell.</p> <p>4:50 &ndash; Aimee: Let&rsquo;s talk about the complexities of module support in Node!</p> <p>5:10 &ndash; PJ: It&rsquo;s a horrible mess.</p> <p>5:17 &ndash; Aimee: Maybe not the tech details but let&rsquo;s talk about WHAT the problem is?</p> <p>5:31 &ndash; PJ: You are talking about Proper Native ES6 right?</p> <p>They are arguing about how to implement it.&nbsp;</p> <p>6:11 &ndash; PJ: My advice is (if you are a professional) is to stick with the LT6 program. No matter how tensing those new features are!</p> <p>6:46 &ndash; 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.</p> <p>7:06 &ndash; PJ: They haven&rsquo;t found an elegant way to do it.</p> <p>7:15 &ndash; Panel: If it&rsquo;s a standard why talk about it?</p> <p>Seriously &ndash; if this is a standard why not implement THE standard?</p> <p>7:38 &ndash; PJ.</p> <p>8:11 &ndash; Panel.</p> <p>8:17 &ndash; Aimee: I would love to talk about this, though!</p> <p>8:24 &ndash; Chuck: I want to talk about the course, please.</p> <p>8:30 &ndash; PJ.</p> <p>8:54 &ndash; Chuck: We will keep an eye on it.</p> <p>9:05 &ndash; PJ.</p> <p>9:16 &ndash; PJ: How is it on the browser-side?</p> <p>9:33 &ndash; Aimee: I don&rsquo;t want to misspeak.</p> <p>9:41 &ndash; Chuck: I don&rsquo;t know how complete the forms are.</p> <p>9:49 &ndash; Aimee: I don&rsquo;t want to misspeak.</p> <p>9:56 &ndash; 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...</p> <p>Some people think it&rsquo;s FINE and others think that it&rsquo;s a TERRIBLE idea.</p> <p>10:42 &ndash; Chuck: &ldquo;It sounds like it&rsquo;s a real <em>THRILLER!&rdquo;</em></p> <p>10:52 &ndash; Panel.</p> <p>11:25 &ndash; Panel: When you start calling things the Michael Jackson Solution you know things aren&rsquo;t well.</p> <p>11:44 &ndash; Aimee: Just to clarify for users...</p> <p>11:57 &ndash; Chuck: I want to point us towards the course: NODE.JS.</p> <p><em>Chuck asks two questions. </em></p> <p>12:34 &ndash; PJ: The concepts aren&rsquo;t changing, but the information is changing incredibly fast. The fundamentals are fairly settled.</p> <p>13:22 &ndash; Chuck: What are those things?</p> <p>13:28 &ndash; <em>PJ talks about how he structured the course and he talks about the specifics. </em></p> <p>15:33 &ndash; Chuck: Most of my backend stuff is done in Ruby. Aimee and AJ do more Java then I do.</p> <p>15:55 &ndash; 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&rsquo;s good for people to know about this space.</p> <p>16:34 &ndash; 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&rsquo;s the core and the nature of NODE.</p> <p>17:21 &ndash; PJ: Yes, absolutely. Understanding the event loop and that&rsquo;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.</p> <p>18:08 &ndash; Aimee: You can do more than just create APIs.</p> <p><em>Aimee mentions </em><a href="https://stackoverflow.com/questions/41786986/vanilla-node-vs-express"><em>Vanilla Node.</em></a></p> <p>18:50 &ndash; PJ: To get into frameworks we do a 3-line server. We cover express, and also <a href="https://www.pluralsight.com/courses/sequelize-orm-nodejs-introduction?gclid=EAIaIQobChMIoMKk7b7N3gIVArvsCh2-iQpYEAAYASAAEgL1BfD_BwE&amp;ef_id=W@i67QAABdGIR-5m:20181111232741:s&amp;s_kwcid=AL!5668!3!277727472944!b!!g!!&amp;aid=701j0000001heIoAAI&amp;promo=&amp;oid=&amp;utm_source=non_branded&amp;utm_medium=digital_paid_search_google&amp;utm_campaign=US_Dynamic&amp;utm_content=">Sequelize ORM.</a></p> <p>19:45 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry.io</a></p> <p>20:43 &ndash; Chuck: I never used Pug.</p> <p>20:45 &ndash; PJ: <a href="https://github.com/pugjs/pug/issues/2184">PUG used to be called JADE.</a></p> <p>20:56 &ndash; Aimee.</p> <p>21:14 &ndash; 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.</p> <p>22:05 &ndash; Aimee: That&rsquo;s what I liked about it. No offense, Chuck, but for me I didn&rsquo;t like NOT knowing a lot of what was not happening under the hood. I didn&rsquo;t want to reinvent the wheel, but I wanted to build at a lower level.</p> <p>22:40 &ndash; PJ: I had the same experience. I wanted to figure out why something wasn&rsquo;t working.</p> <p>23:24 &ndash; 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.</p> <p>24:05 &ndash; Aimee: I feel like if you want to learn JavaScript then Node might be easier on the frontend.</p> <p>24:21 &ndash; Chuck: No pun intended.</p> <p>No, but I agree. I like about Rails is that you had well-understood patterns. But the flipside is that you have abstractions...</p> <p>To a certain degree: what did I do wrong? And you didn&rsquo;t follow the pattern properly.</p> <p>25:57 &ndash; Panel: With Node you get a little bit of both. To me it&rsquo;s a more simple approach, but the downside is that you have 100&rsquo;s of 1,000&rsquo;s of modules that almost identical things. When you start reaching out to NPM that...</p> <p>26:29 &ndash; PJ: Yes the module system of NPM is the best/worst thing about NODE. I don&rsquo;t have an answer, honestly.</p> <p>There is a great article written that made me turn white. <a href="https://hackernoon.com/im-harvesting-credit-card-numbers-and-passwords-from-your-site-here-s-how-9a8cb347c5b5">Here is the article!</a></p> <p>28:12 &ndash; Panel: The same thing happened with the <a href="https://eslint.org">ESLint</a>. That was the very problem that he was describing in the article.</p> <p>28:50 &ndash; PJ: Yep, I put that in the chat there &ndash; go ahead and read it! It&rsquo;s not a problem that&rsquo;s specific to Node, there are others. It&rsquo;s the way we do things now.</p> <p>29:23 &ndash; Chuck: We have the NODE Security project. A lot of stuff go into NPM everyday.</p> <p>29:43 &ndash; PJ: We cover those things in the course.</p> <p>29:53 &ndash; Chuck: It&rsquo;s the reality. Is there a place that people get stuck?</p> <p>30:00 &ndash; PJ answers the question.</p> <p>30:23 &ndash; Aimee.</p> <p>30:55 &ndash; PJ: I am coding very similar to my PHP days.</p> <p>31:20 &ndash; Aimee.</p> <p>32:02 &ndash; PJ: To finish off my point, I hope people don&rsquo;t loose sight.</p> <p>32:18 &ndash; Aimee.</p> <p>32:20 &ndash; PJ: I am working on a project that has thousands of requests for...</p> <p>32:53 &ndash; Chuck: Anything you WANTED to put into the course, but didn&rsquo;t have time to?</p> <p>33:05 &ndash; PJ: You can get pretty technical. It&rsquo;s not an advanced course, and it won&rsquo;t turn you into a rock star. This is all about confidence building. It&rsquo;s to understand the fundamentals.</p> <p>It&rsquo;s a runtime of 6 hours and 40 minutes &ndash; you aren&rsquo;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 &ndash; so it&rsquo;s a very interactive course.</p> <p>34:26 &ndash; Chuck: You get people over the hump. What do you think people need to know to be successful with Node?</p> <p>34:38 &ndash; <em>PJ answers the question.</em></p> <p>PJ: I think it&rsquo;s a lot of practice and the student to go off and be curious on their own terms.</p> <p>35:13 &ndash; Chuck: You talked about callbacks &ndash; I am thinking that one is there to manage the other?</p> <p>35:31 &ndash; <em>PJ answers the question.</em></p> <p>PJ: You do what works for you &ndash; pick your style &ndash; do it as long as people can follow you. Take the analogy of building a bridge.</p> <p>36:53 &ndash; Chuck: What are you working on now?</p> <p>37:00 &ndash; PJ: Educational tool called SCHOOL PLANNER launched in Ireland, so teachers can do their lesson planning for the year and being built with Express.</p> <p>Google Classroom and Google Calendar.</p> <p>39:01 <em>&ndash; PJ talks about Pi and 4wd. See links below.</em></p> <p>40:09 &ndash; Node can be used all over the place!</p> <p>40:16&nbsp; - Chuck: Yes, the same can be said for other languages. Yes, Node is in the same space.</p> <p>40:31 &ndash; PJ: Yep!</p> <p>40:33 &ndash; Chuck: If people want to find you online where can they find you?</p> <p>40:45 &ndash; PJ: <a href="https://twitter.com/MrPJEvans?lang=en">Twitter!</a> <a href="https://mrpjevans.com/bio/">Blog!</a></p> <p>41:04 &ndash; Picks!</p> <p>41:05 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement &ndash; eBook: Get a coder job!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="http://elm-lang.org">Elm</a></li> <li><a href="https://blog.closebrace.com">Vue</a></li> <li><a href="https://eslint.org">ESLint</a></li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li><a href="https://github.com/nodesecurity/nsp">Node Security Project</a></li> <li><a href="https://medium.com/node-security">Node Security Project - Medium</a></li> <li><a href="https://www.manning.com/livevideo/nodejs-in-motion">Manning Publications: Course by PJ Evans</a></li> <li><a href="https://pugjs.org/api/getting-started.html">PUG</a></li> <li><a href="https://www.youtube.com/watch?v=8aGhZQkoFbQ&amp;vl=en">JSConf EU &ndash; talk with Philip Roberts</a></li> <li><a href="https://hackernoon.com/im-harvesting-credit-card-numbers-and-passwords-from-your-site-here-s-how-9a8cb347c5b5">Medium Article by David Gilbertson</a></li> <li><a href="https://www.hackster.io/bestd25/pi-car-016e66">Hackster.io &ndash; Pi Car</a></li> <li><a href="https://shop.pimoroni.com/products/coretec-tiny-4wd-robot-rover">Pi Moroni</a></li> <li><a href="http://paulgraham.com/head.html">Holding a Program in One&rsquo;s Head</a></li> <li><a href="https://twitter.com/mrpjevans?lang=en">PJ Evans&rsquo; Twitter</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get a Coder Job</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li><a href="http://paulgraham.com/head.html">Paul Graham - Blog</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://www.rust-lang.org/en-US/">Rust </a></li> </ul> <p>Charles</p> <ul> <li><a href="https://tweetmashup.com/">Tweet Mash-up </a></li> <li><a href="https://www.amazon.com/Diabetes-Code-Prevent-Reverse-Naturally/dp/B07BR3LZW7/ref=sr_1_1?ie=UTF8&amp;qid=1541799663&amp;sr=8-1&amp;keywords=the+diabetic+code">The Diabetes Code </a></li> </ul> <p>PJ</p> <ul> <li><a href="https://www.maxrichtermusic.com/">Music - Max Richter</a></li> </ul>
Nov 13, 2018
MJS 084: Henry Zhu
27:35
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://twitter.com/left_pad?lang=en">Henry Zhu</a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://twitter.com/left_pad?lang=en">Henry Zhu</a> who is working full-time on <a href="https://babeljs.io">Babel!</a> They discuss Henry&rsquo;s background, past/current projects, <a href="https://babeljs.io">Babel</a>, and Henry&rsquo;s new podcast. Check-out today&rsquo;s episode to hear more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>0:00 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement: Get A Coder Job!</a></p> <p>1:00 &ndash; Chuck: Today we are talking with Henry Zhu! You are the maintainer of Babel &ndash; and we have had you on the show before. Anything else?</p> <p>1:25 &ndash; Henry: I used to work with Adobe and now live in NY.</p> <p>1:44 &ndash; Chuck: Episode 321 we talked to you and you released Babel 7. Tell us about Babel, please.</p> <p>2:01 &ndash; Henry: It&rsquo;s a translator for programming languages and it&rsquo;s a compiler. It only translates JavaScript to JavaScript. You would do this because you don&rsquo;t know what your users&rsquo; are using. It&rsquo;s an accessibility thing as well.</p> <p>3:08 &ndash; Chuck: Later, we will dive into this some more. Let&rsquo;s back-up: how did you get into programming?</p> <p>3:22 &ndash; 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.</p> <p>4:07 &ndash; Chuck: How did you get into Java?</p> <p>4:11 &ndash; Henry: I made some games and made a Chinese card game. Then in college I went to a bunch of <a href="https://en.wikipedia.org/wiki/Hackathon">Hackathons</a>. In college I didn&rsquo;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.</p> <p>5:12 &ndash; Chuck: How did you settle on JavaScript?</p> <p>5:28 &ndash; Henry: It was my experience &ndash; you don&rsquo;t have to download anything. You can just open things up in the console and it&rsquo;s easy to share. I think I like the visual part of it and their UI.</p> <p>6;07 &ndash; Chuck: At some point you ran across Babel &ndash; how did you get into that?</p> <p>6:17 &ndash; 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&rsquo;s how I found about Babel.</p> <p>9:24 &ndash; Chuck: Was Sebastian still running the project at the time?</p> <p>9:33 &ndash; Henry.</p> <p>10:53 &ndash; Chuck: It seems like when I talk with people that you are the LEAD on Babel?</p> <p>11:07 &ndash; 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.</p> <p>11:45 &ndash; Chuck: Sebastian didn&rsquo;t say: this is the guy that is the lead now. But how did that crystalize?</p> <p>12:12 &ndash; 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.</p> <p>It&rsquo;s hard when you know that the person before had gotten burnt-out.</p> <p>14:28 &ndash; Chuck: What is it like to go fulltime on an open source project and how do you go about it?</p> <p>14:34 &ndash; Henry: I don&rsquo;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&rsquo;t want to do that.</p> <p>I think people want to do open source fulltime, but there are a lot of things to take into consideration.</p> <p>16:38 &ndash; Chuck.</p> <p>16:50 &ndash; Guest.</p> <p>16:53 &ndash; Henry.</p> <p>16:55 &ndash; Chuck: How do you pay the bills?</p> <p>17:00 &ndash; Henry: Unlike Kickstarter, <a href="https://www.patreon.com/henryzhu">Patreon</a> is to help donate money to people who are contributing content.</p> <p>If you want to donate a lot then we can tweak it.</p> <p>19:06 &ndash; Chuck: Is there something in particular that you&rsquo;re proud of?</p> <p>19:16 &ndash; Henry: I worked on JS ES &ndash; 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.</p> <p>Something that I have been thinking about...</p> <p>20:53 &ndash; Chuck: What are you working on now?</p> <p>20:58 &ndash; Henry: We released 7 a while ago and 7.1. Not sure what we are going to do next. Trying to figure out what&rsquo;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&rsquo;t want to put fires out all day. Trying to prioritize is important.</p> <p>23:17 &ndash; Chuck.</p> <p>23:2 &ndash; Henry: Twitter and other platforms.</p> <p>23:37 &ndash; Chuck: Picks!</p> <p>23:38 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p>24:45 &ndash; Picks.</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://vuejs.org">Vue.js</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.emberjs.com">Ember</a></li> <li><a href="https://guide.elm-lang.org">Elm</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://twitter.com/left_pad?lang=en">Henry Zhu&rsquo;s Twitter</a></li> <li><a href="https://github.com/hzoo">Henry Zhu&rsquo;s GitHub</a></li> <li><a href="https://www.henryzoo.com">Henry Zhu&rsquo;s Website</a></li> <li><a href="https://www.patreon.com/henryzhu">Patreon to Donate Towards Babel</a></li> <li><a href="https://twitter.com/babeljs">Babel</a></li> <li><a href="https://babeljs.io">Babel JS</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p>Henry</p> <ul> <li><a href="https://hopeinsource.com">My own podcast</a> &ndash; releasing it next week</li> <li>Podcast about Faith and Open Source</li> </ul> <p>Charles</p> <ul> <li>Ruby Rogues&rsquo; cohost + myself &ndash; Data Podcast &ndash; <a href="https://devchat.tv">DevChat.Tv</a></li> <li>Reworking e-mails</li> </ul>
Nov 07, 2018
JSJ 338: It’s Supposed To Hurt, Get Outside of Your Comfort Zone to Master Your Craft with Christopher Buecheler
43:37
<p><strong>Panel: </strong></p> <ul> <li><a href="http://www.aimeemarieknight.com">Aimee Knight</a></li> <li>AJ O&rsquo;Neal</li> <li>Aaron Frost</li> <li><a href="https://2013.boston.wordcamp.org/speakers/">Christopher Ferdinandi</a></li> </ul> <p><strong>Special Guests:</strong> <a href="https://www.linkedin.com/in/cwbuecheler">Christopher Buecheler</a></p> <p>In this episode, the panel talks with <a href="https://www.linkedin.com/in/cwbuecheler">Christopher Buecheler</a> 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&rsquo;s episode to learn more!</p> <p><strong>Show Topics:</strong></p> <p>0:00 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>1:08 &ndash; Aimee: Our guest is Christopher Buecheler &ndash; tell us about yourself and what you do.</p> <p>1:22 &ndash; <a href="https://www.linkedin.com/in/cwbuecheler">Guest:</a> I run a site and help mid-career developers. I put out a weekly newsletter, too.</p> <p>2:01 &ndash; Aimee: It says that you are a fan of &ldquo;getting comfortable being uncomfortable&rdquo;?</p> <p>2:15 &ndash; 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&rsquo;t having that experience then you aren&rsquo;t learning as much as you could be.</p> <p>3:26 &ndash; Aimee: I borrow lessons that I learned from ice-skating to programming.</p> <p>3:49 &ndash; 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&rsquo;s apart of the run. It&rsquo;s an interesting comparison to coding. It&rsquo;s this idea of pushing through.</p> <p>5:01 &ndash; Aimee: If you are comfortable you probably aren&rsquo;t growing that much. In our industry you always have to be learning because things change so much!</p> <p>5:25 &ndash; Guest: Yes, exactly. If you are not careful you can miss opportunities.</p> <p>6:33 &ndash; Panel: You have some ideas about frameworks and libraries &ndash; one thing that I am always anxious about is being able to make sense of &ldquo;what are some new trends that I should pay attention to?&rdquo; 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&rsquo;t pay attention to?</p> <p>7:47 &ndash; Guest: It is a super exhausting thing to keep up with &ndash; 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&rsquo;t going anywhere, anytime soon. The other thing I would look at is how ACTIVE is the community around it?</p> <p>9:15 &ndash; 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?</p> <p>10:00 &ndash; Guest: I am trying to always communicate better to my newsletter audience. Also, a good approach, too, is what are people hiring for?&nbsp;</p> <p>11:06 &ndash; Aimee: Again, I would say: focus on learning.</p> <p>11:30 &ndash; Panel: And I agree with Aimee &ndash; &ldquo;learn it and learn it well!&rdquo;</p> <p>12:01 &ndash; Panel: I want to ask Chris &ndash; what is <a href="https://blog.closebrace.com">CloseBrace?</a></p> <p>12:17 &ndash; Guest: I founded it in November 2016, and started work on it back in 2013.</p> <p>14:20 &ndash; Panel: It was filled with a bunch of buzz worthy words/title.</p> <p>14:32 &ndash; Guest continues his thoughts/comments on <a href="https://blog.closebrace.com">CloseBrace.</a></p> <p>16:54 &ndash; Panel: How is the growth going?</p> <p>17:00 &ndash; Guest: It is growing very well. I put out a massive, massive tutorial course &ndash; I wouldn&rsquo;t necessarily advice that people do this b/c it can be overwhelming. However, growth this year I have focused on marketing. I haven&rsquo;t shared numbers or anything but it&rsquo;s increased 500%, and I am happy about it.</p> <p>18:05 &ndash; Panel: Are you keeping in-house?</p> <p>18:13 &ndash; Guest: I think it would be cool to expand, but now it is in-house. I don&rsquo;t want to borrow Egg Head&rsquo;s setup. I would love to cover MORE topics, though.</p> <p>19:05 &ndash; Panel: You are only one person.</p> <p>19:08 &ndash; Guest: If I can get the site creating more revenue than I can hire someone to do video editing, etc.</p> <p>19:35 &ndash; Panel: I think you are overthinking it.</p> <p>19:45 &ndash; Guest.</p> <p>19:47 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry.io</a></p> <p>20:47 &ndash; Guest.</p> <p>21:30 &ndash; Aimee: There are SO many resources out there right now. Where do you think you fit into this landscape?</p> <p>21:44 &ndash; The landscape is cluttered, but I feel that I am different b/c of my thoroughness. I don&rsquo;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.</p> <p>23:25 &ndash; 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&rsquo;t have the time to get through ALL of your content, because it&rsquo;s a lot. For me, that&rsquo;s what I love about your content.</p> <p>24:46 &ndash; Christopher: Yeah, it was intentional.</p> <p>25:36 &ndash; Panel: Good for you.</p> <p>25:49 &ndash; <a href="https://www.linkedin.com/in/cwbuecheler">Guest:</a> I am super device agnostic: Android, Mac, PC, etc. I have a lot of people from India that are more Microsoft-base.</p> <p>26:28 &ndash; Aimee: I think Egghead is pretty good about this...do you cover testing at all with these things that you are doing? It&rsquo;s good to do a &ldquo;Hello World&rdquo; but most of these sites don&rsquo;t get into MORE complex pieces. I think that&rsquo;s where you can get into trouble. It&rsquo;s nice to have some boiler point testing, too.</p> <p>27:18 &ndash; <em>Guest answers Aimee&rsquo;s question.</em></p> <p>28:43 &ndash; Aimee: We work with a consultancy and I asked them to write tests for the things that we work with. That&rsquo;s the value of the testing. It&rsquo;s the code that comes out.</p> <p>29:10 &ndash; Panel: Can you explain this to me. Why do I need to write tests? It&rsquo;s always working (my code) so why do I have to write a test?</p> <p>29:39 &ndash; Guest: When working with AWS I was writing...</p> <p>31:01 &ndash; Aimee: My biggest thing is that I have seen enough that the people don&rsquo;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.</p> <p>33:00 &ndash; Panel: Aimee / Chris do you have a preferred tool? I have done testing before, but not as much as I should be doing.</p> <p>33:25 &ndash; Aimee: I like <a href="https://jestjs.io">JEST</a> and <a href="https://github.com/smooth-code/jest-puppeteer">PUPPETEER.</a></p> <p>33:58 &ndash; Guest: I like <a href="https://jestjs.io">JEST</a>, too.</p> <p>34:20 &ndash; Aimee: Let&rsquo;s go to PICKS!</p> <p>34:35 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement &ndash; eBook: Get a coder job!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="http://elm-lang.org">Elm</a></li> <li><a href="http://closebrace.com">Vue</a></li> <li><a href="https://jestjs.io">JEST</a></li> <li><a href="https://github.com/smooth-code/jest-puppeteer">Puppeteer</a></li> <li><a href="https://podflix.app">Podflix</a></li> <li><a href="https://github.com/wting/autojump">Autojump</a></li> <li><a href="https://brutalist-web.design">Brutalist Web Design</a></li> <li><a href="https://www.youtube.com/watch?v=QrR_gm6RqCo">YouTube: Mac Miller</a></li> <li><a href="https://balloonfiesta.com">Balloon Fiesta</a></li> <li><a href="https://www.docz.site">DocZ</a></li> <li><a href="http://closebrace.com">CloseBrace</a></li> <li><a href="http://cwbuecheler.com">Christopher Buecheler&rsquo;s Website</a></li> <li><a href="https://www.linkedin.com/in/cwbuecheler">Christopher Buecheler&rsquo;s LinkedIn</a></li> <li><a href="https://github.com/cwbuecheler">Christopher Buecheler&rsquo;s GitHub</a></li> <li><a href="https://gomakethings.com">Go Learn Things &ndash; Chris Ferdinandi</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get a Coder Job</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li><a href="https://podflix.app">Podflix</a></li> </ul> <p>Chris F.</p> <ul> <li><a href="https://github.com/wting/autojump">AutoJump&nbsp;</a></li> <li><a href="https://brutalist-web.design/">Brutalist Web Design </a></li> <li><a href="https://www.youtube.com/watch?v=QrR_gm6RqCo">Mac Miller</a> Tiny Desk Concert</li> </ul> <p>AJ</p> <ul> <li><a href="https://www.target.com/p/canada-dry-ginger-ale-and-lemonade-2-l-bottle/-/A-52896906">Canada Dry with Lemonade </a></li> </ul> <p>Aaron</p> <ul> <li><a href="https://www.balloonfiesta.com">ABQ Ballon Festival </a></li> <li>Joe Eames DND Recording Channel</li> </ul> <p>Christopher</p> <ul> <li><a href="https://www.docz.site/">Docz</a></li> <li><a href="https://www.amazon.com/Area-Southern-Annihilation-Authority-Acceptance/dp/0374261172">South Reach Trilogy </a></li> <li><a href="http://www.jeffvandermeer.com/">Jeff Vandermeer </a></li> </ul>
Nov 06, 2018
MJS 083: Christine Legge
34:03
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://ca.linkedin.com/in/christinelegge">Christine Legge </a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://ca.linkedin.com/in/christinelegge">Christine Legge</a> 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.</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>1:07 &ndash; Hello!</p> <p>1:10 &ndash; Chuck: You were on <a href="https://devchat.tv/js-jabber/jsj-328-functional-programming-with-ramda-with-christine-legge/">Episode 328</a> in the past. Tell us about yourself!</p> <p>1:24 &ndash; Christine: I started working with Google about 2 weeks ago. In the past I worked in Vancouver, Canada.</p> <p>2:05 &ndash; Chuck: Let&rsquo;s start with how you got into programming?</p> <p>2:14 &ndash; Christine: When I was in HS I wasn&rsquo;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 1<sup>st</sup> 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&rsquo;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.</p> <p>5:37 &ndash; Chuck: What did you like about it?</p> <p>5:43 &ndash; Christine: I liked the problem solving part of it. I like how you can break things down. The technology doesn&rsquo;t interest me that much, but I like the problem-solving aspect. The guy wasn&rsquo;t that up-to-date with the newest technologies either.</p> <p>6:53 &ndash; Chuck: You have a 4-year degree in computer science.</p> <p>7:05 &ndash; Yes that and statistics, too.</p> <p>7:13 &ndash; Chuck: I was going to say &ldquo;nerd.&rdquo;</p> <p>How do you go from desktop applications to web apps?</p> <p>7:25 &ndash; Christine: I worked with a company part-time and fulltime depending on the year/season.</p> <p>I didn&rsquo;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&rsquo;s what I was lacking. I basically got thrown into it. I didn&rsquo;t understand anything at all. It took me to write one line of CSS and it took 4 hours.</p> <p>10:35 &ndash; Why did JavaScript attract you more so than C# or other languages that you&rsquo;ve used?</p> <p>10:43 &ndash; It&rsquo;s simpler and you don&rsquo;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&rsquo;t constrained.</p> <p>12:00 &ndash; Chuck: You get in, you work through JavaScript, were you only doing backend?</p> <p>12:14 &ndash; Christine: Yep, backend.</p> <p>13:00 &ndash;Chuck: I know you talked at the conference, and what are you most proud of?</p> <p>13:14 &ndash; Christine: To be honest, no. My mentor (Pablo) at the last company &ndash; 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&rsquo;t have anything new that I&rsquo;ve been working on. It&rsquo;s a goal for me within the next couple of months.</p> <p>15:30 &ndash; Chuck: I understand that.</p> <p>15:36 &ndash; Christine: I haven&rsquo;t found that balance, yet. When I gave that talk during Developer Week I was moving and stressed out. &ldquo;I am NEVER doing this again!&rdquo; It was over and it was very rewarding. People gave good feedback, and I would like to do that again.</p> <p>16:56 &ndash; Chuck: People have different experience with that kind of stuff. People are interested in different things. So you&rsquo;ve been working on moving and all that stuff right? What would you like to dive back into?</p> <p>17:32 &ndash; 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.</p> <p>19:24 &ndash; Chuck: Have you looked at resources?</p> <p>19:39 &ndash; Christine: I read the documentation so far. Like for React I just read the documentation but I haven&rsquo;t found a central source just, yet. Not a single source. The docs are okay to get started but I haven&rsquo;t found that they were enough.</p> <p>20:50 &ndash; Chuck: This is about your story. I worked through the Tour of Heroes, and that helped me with Angular. It&rsquo;s in the Angular Documentation.</p> <p>21:23 &ndash; Christine: When you are starting at a new job I want to make sure I&rsquo;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.</p> <p>22:27 &ndash; Chuck: People are usually very approachable.</p> <p>22:34 &ndash; Christine: Yes, I agree. To be apart of the communities people want you to use their stuff.</p> <p>22:48 &ndash; Chuck: Do you have another talk in mind when you are ready to give your next talk?</p> <p>22:59 &ndash; Christine: Not sure. I have one thing on my list right now and that&rsquo;s it.</p> <p>23:42 &ndash; Chuck: I haven&rsquo;t looked at RJX documentation but I think it&rsquo;s pretty easy to pick-up. Ben who is the main developer RJX joined the team last year.</p> <p>24:04 &ndash; Christine: It&rsquo;s a lot of promises. When I figure it out that&rsquo;s how something would work if it were a promise then I can usually get there.</p> <p>24:25 &ndash; Chuck: Yeah.</p> <p>24:38 &ndash; Christine: I kind of want to make connections in the office rather than me trying to do myself. I don&rsquo;t want to waste time. Working on those connections would be good.</p> <p>25:20 &ndash; Chuck: Let&rsquo;s do some picks!</p> <p>25:30 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://vuejs.org">Vue.js</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.emberjs.com">Ember</a></li> <li><a href="https://guide.elm-lang.org">Elm</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://ca.linkedin.com/in/christinelegge">Christine Legge&rsquo;s LinkedIn</a></li> <li><a href="https://twitter.com/leggechr?lang=en">Christine Legge&rsquo;s Twitter</a></li> <li><a href="https://github.com/leggechr">Christine Legge&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p><a href="https://twitter.com/cmaxw?lang=en">Charles</a></p> <ul> <li>My Calendar Software &ndash; <a href="https://www.busymac.com/busycal/">BusyCal</a> and <a href="https://twitter.com/googlecalendar?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Google Calendar</a></li> <li>Google Calendar just started appointment slots</li> </ul> <p>Christine</p> <ul> <li><a href="https://www.gimletmedia.com/the-pitch">Podcast: The Pitch</a></li> <li><a href="https://www.npr.org/podcasts/510313/how-i-built-this">Podcast: How I Built This</a></li> </ul>
Oct 31, 2018
JSJ 337: Microstates.js – Composable State Primitives for JavaScript with Charles Lowell & Taras Mankovski
1:18:15
<p><strong>Panel: </strong></p> <ul> <li>Aimee Knight</li> <li>Charles Max Wood</li> <li>Joe Eames</li> <li>AJ O&rsquo;Neil</li> <li>Chris Ferdinandi&nbsp;</li> </ul> <p><strong>Special Guests:</strong> <a href="https://twitter.com/cowboyd?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Charles Lowell</a> (New Mexico) &amp; <a href="https://twitter.com/tarasm?lang=en">Taras Mankovski</a> (Toronto)</p> <p>In this episode, the panel talks with two special guests <a href="https://twitter.com/cowboyd?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Charles</a> and <a href="https://twitter.com/tarasm?lang=en">Taras.</a> Charles Lowell is a principle engineer at <a href="https://frontside.io">Frontside</a>, and he loves to code. Taras works with Charles and joined <a href="https://frontside.io">Frontside</a>, because of Charles&rsquo; love for coding. There are great personalities at <a href="https://frontside.io">Frontside</a>, which are quite diverse. Check out this episode to hear about<a href="https://github.com/microstates/microstates.js"> microstates,</a> <a href="https://github.com/microstates/react">microstates with react</a>, <a href="https://redux.js.org">Redux</a>, and much more!</p> <p><strong>Show Topics:</strong></p> <p>1:20 &ndash; Chuck: Let&rsquo;s talk about microstates &ndash; what is that?</p> <p>1:32 &ndash; Guest: My mind is focused on the <strong>how</strong> and not the <strong>what</strong>. I will zoom my mind out and let&rsquo;s talk about the purposes of microstates. It means a few things. 1.) It&rsquo;s going to work no matter what framework you are using. 2.) You shouldn&rsquo;t have to be constantly reinventing the wheel. React Roundup &ndash; I talked about it there at this conference.&nbsp;</p> <p>Finally, it really needs to feel JavaScript. We didn&rsquo;t want you to feel like you weren&rsquo;t using JavaScript. It uses computer properties off of those models. It doesn&rsquo;t feel like there is anything special that you are doing. There are just a few simple rules. You can&rsquo;t mutate the state in place. If you work with JavaScript you can use it very easily. Is that a high-level view?</p> <p>7:13 &ndash; 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.</p> <p>7:42 &ndash; Panel: We wanted it to fell like JavaScript &ndash; that&rsquo;s what I heard.</p> <p>7:49 &ndash; Aimee: I heard that, too.</p> <p>7:59 &ndash; Guest.</p> <p>8:15 &ndash; Aimee: <a href="https://redux.js.org">Redux</a> feels like JavaScript to me.</p> <p>8:25 &ndash; Guest: It&rsquo;s actually &ndash; a tool &ndash; that it feels natural so it&rsquo;s not contrived. It&rsquo;s all JavaScript.</p> <p>8:49 &ndash; Panel.</p> <p>9:28 &ndash; Guest: Idiomatic Ember for example. Idiomatic in the sense that it gives you object for you to work with, which are simple objects.</p> <p>10:12 &ndash; Guest: You have your reducers and your...we could do those things but ultimately it&rsquo;s powerful &ndash; and not action names &ndash; we use method names; the name of the method.</p> <p>11:20 &ndash; Panel: I was digging through docs, and it feels like NORMAL JavaScript. It doesn&rsquo;t seem like it&rsquo;s tied to a certain framework or library platform?</p> <p>11:45 &ndash; 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.</p> <p><em>(Guest continues to talk about WHY they created microstates.)</em></p> <p>Guest: We wanted to scale very well what you need when your needs to change.</p> <p>13:39 &ndash; 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 &ndash; and that makes sense to do less is more.</p> <p>14:17 &ndash; Guest: To define these microstates and build them up incrementally...building smaller microstates out of larger ones.</p> <p>Guest continued: Will we be able to people can distribute React components a sweet array of components ready for me to use &ndash; 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?</p> <p>16:15 &ndash; Panel: I understand that this is tiny &ndash; but why wouldn&rsquo;t I just use the native features in specific the immutability component to it?</p> <p>16:42 &ndash; Guest: I&rsquo;m glad you asked that question. We wanted to answer the question...</p> <p>Guest: With microstates you can have strict control and it gives you the benefit of doing sophisticated things very easily.</p> <p>18:33 &ndash; Guest: You mentioned immutability that&rsquo;s good that you did. It&rsquo;s important to capture &ndash; and capturing the naturalness of JavaScript. It&rsquo;s easy to build complex structures &ndash; and there is an appeal to that. We are building these graphs and these building up these trees. You brought up immutability &ndash; why through it away b/c it&rsquo;s the essence of being a developer. If you have 3-4-5 levels of nesting you have to de-structure &ndash; get to the piece of data &ndash; change it &ndash; and in your state transition 80% of your code is navigating to the change and only 20% to actually make the change. You don&rsquo;t have to make that tradeoff.</p> <p>21:25 &ndash; Aimee: The one thing I like about the immutability b/c of the way you test it.</p> <p>21:45 &ndash; Guest: There a few things you can test.&nbsp;</p> <p>23:01 &ndash; Aimee: You did a good job of explaining it.</p> <p>23:15 &ndash; 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&rsquo;t have a way to have a way to navigate to clarity. That&rsquo;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...</p> <p>25:29 &ndash; Guest: The only constant is change no matter what framework you are working on.</p> <p>24:46 &ndash; Chuck: We are talking about the benefits and philosophy. What if I have an app &ndash; and I realize I need state management &ndash; how do I put microstates into my app? It&rsquo;s using Angular or React &ndash; how do I get my data into microstates?</p> <p>26:35 &ndash; 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.</p> <p><em>(The Guest continues diving into his answer.)</em></p> <p>28:18 &ndash; Guest: That story is very similar to Redux, basically an event emitter. The state changes on the store.</p> <p>Maybe this is a good time to talk about the stability benefits and the lazy benefits because microstates is both of those things.</p> <p>Stability &ndash; if I invoke a transition and the result is unchanged &ndash; same microstate &ndash; it doesn&rsquo;t emit an event. It recognizes it internally. It will recognize that it&rsquo;s the same item. Using that in Ember or Redux you&rsquo;d have to be doing thousands of actions and doing all that computation, but stability at that level.</p> <p>Also, stability in the sense of a tree. If I change one object then that changes it won&rsquo;t change an element that it doesn&rsquo;t need to change.</p> <p>31:33 &ndash; Advertisement: Sentry.io</p> <p>32:29 &ndash; Guest: I want to go back to your question, Chuck. Did we answer it?</p> <p>32:40 &ndash; Chuck: Kind of.</p> <p>32:50 &ndash; Guest.</p> <p>32:59 &ndash; Guest: In Angular for example you can essentially turn a microstate...</p> <p>33:51 &ndash; Guest: You could implement a connect, too. Because the primitive is small &ndash; there is no limit.</p> <p>34:18 &ndash; Chuck summarizes their answers into his own words.</p> <p>34:42 &ndash; Guest: If you were using a vanilla React component &ndash; this dot &ndash; 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.</p> <p>35:55 &ndash; 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.</p> <p>36:16 &ndash; Guest: Every framework helps you in each way.</p> <p>Microstates let&rsquo;s you do a few things: the quality of your data all in one place and you can share.</p> <p>38:12 &ndash; Guest: He made and integrated Microstates with Redux tools.</p> <p>38:28 &ndash; Guest talks about paths, microstates to trees.</p> <p>39:22 &ndash; Chuck.</p> <p>39:25 &ndash; 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?</p> <p>40:23 &ndash; Guest: Absolutely. We have <a href="https://www.bigtestjs.io">BIG TEST</a> and it has a Vue component.</p> <p>41:15 &ndash; Guest: when you create a microstate from a type you are creating an object that you can work with.</p> <p>42:11 &ndash; Guest: Joe, I know you have experience with Angular I would love to get your insight.</p> <p>42:33 &ndash; 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&rsquo;t been doing Flux pattern and I hear this podcast. I think this is a great solution &ndash; where do I get started? The official documents? Or is it the right solution to that person?</p> <p>43:50 &ndash; 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&rsquo;s a rope process. The arrow corresponds to the method, and...</p> <p>44:49 &ndash; Panel: It reminds me back in the day of rational rows.</p> <p>44:56 &ndash; Guest: My first job we were using rational rows.</p> <p>45:22 &ndash; Panelist: Think through the state transitions &ndash; interesting that you are saying that. What about that I am in the middle &ndash; do you stop and think through it or no?</p> <p>46:06 &ndash; Guest: I think it&rsquo;s a Trojan horse in some ways. I think what&rsquo;s interesting you start to realize how you implement your state transitions.</p> <p>48:00 &ndash; (<em>Guest continues.)</em></p> <p>48:45 &ndash; Panel: That&rsquo;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?</p> <p>49:05 &ndash; Guest: I talked about this back in 2016. I outlined that process. When this project was in the Ember community.</p> <p>49:16 &ndash; Guest: The next step for us is to make this information accessible. We&rsquo;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.</p> <p>50:00 &ndash; Chuck: What&rsquo;s the future look like?</p> <p>50:03 &ndash; Guest: We are working on performance profiling.</p> <p>Essentially you can hook up microstates to a fire hose.</p> <p>The next thing is settling on a pattern for modeling side effects inside microstates. Microstates are STATE and it&rsquo;s immutable.</p> <p>52:12 &ndash; Guest: Getting documentation. We have good README but we need traditional docs, too.</p> <p>52:20 &ndash; Chuck: Anything else?</p> <p>52:28 &ndash; Guest: If you need help email us and gives us a shot-out.</p> <p>53:03 &ndash; Chuck: Let&rsquo;s do some picks!</p> <p>53:05 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement for Charles Max Wood&rsquo;s course!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://frontside.io">Frontside</a></li> <li><a href="https://redux.js.org">Redux</a></li> <li><a href="https://github.com/microstates/microstates.js">Microstates</a></li> <li><a href="https://github.com/microstates/react">Microstates with React</a></li> <li><a href="https://twitter.com/tarasm?lang=en">Taras Mankovski&rsquo;s Twitter</a></li> <li><a href="https://github.com/taras">Taras Mankovski&rsquo;s GitHub</a></li> <li><a href="https://www.linkedin.com/in/tarasm/?originalSubdomain=ca">Taras Mankovski&rsquo;s LinkedIn</a></li> <li><a href="https://frontside.io/about/taras-mankovski">Taras Mankovski&rsquo;s Frontside Bio</a></li> <li><a href="https://twitter.com/cowboyd?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Charles Lowell&rsquo;s Twitter</a></li> <li><a href="https://github.com/cowboyd">Charles Lowell&rsquo;s GitHub</a></li> <li><a href="https://frontside.io/about/charles-lowell">Charles Lowell&rsquo;s Frontside Bio</a></li> <li><a href="https://meetme.so/js-jabber">Schedule Once</a></li> <li><a href="https://rubyonrails.org">Ruby on Rails</a></li> <li><a href="https://angular.io/guide/quickstart">Angular</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.youtube.com/playlist?list=PLuVqdWOQ-PNn_lDYUVgcA4e91qxJzipva">YouTube Talks</a></li> <li>Email: <a href="mailto:cowboyd@frontside.io">cowboyd@frontside.io</a></li> <li><a href="https://shoptalkshow.com/episodes/327-working-state-machines/">Working with State Machines</a></li> <li><a href="https://www.twitch.tv/c0wb0yd/">Twitch TV</a></li> <li><a href="https://www.bigtestjs.io">BigTest</a></li> <li><a href="https://closebrace.com">Close Brace</a></li> <li><a href="https://github.com/cferdinandi/reef">REEF</a></li> <li><a href="https://infrequently.org/2018/09/the-developer-experience-bait-and-switch/?mc_cid=796f819484&amp;mc_eid=925d8efdf6">The Developer Experience</a></li> <li><a href="https://youtu.be/E1Q2MWGCADo">YouTube Video</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry.io &ndash; 2 months free &ndash; DEVCHAT/code</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li><a href="https://shoptalkshow.com/episodes/327-working-state-machines/">ShopTalk Episode 327</a></li> <li><a href="https://www.amazon.com/Professional-JavaScript-Developers-Nicholas-Zakas/dp/1118026691">Professional JavaScript for Web Developers </a></li> <li>Technical Debt</li> <li><a href="https://stripe.com/files/reports/the-developer-coefficient.pdf">Stripe </a></li> </ul> <p>Taras</p> <ul> <li><a href="https://www.twitch.tv/c0wb0yd/">Twitch Channel</a></li> <li><a href="https://bigtestjs.io">Big Test</a></li> <li><a href="https://www.linkedin.com/company/the-frontside">Frontside </a></li> </ul> <p>Charles Lowell</p> <ul> <li>Chalkboards</li> <li><a href="http://sargentart.com/dustless-chalk/http://sargentart.com/dustless-chalk/">Sargent Art Chalk </a></li> </ul> <p>Chris</p> <ul> <li><a href="https://closebrace.com/">Close Brace</a></li> <li><a href="https://www.lacroixwater.com/">LaCroix Water</a></li> <li><a href="https://github.com/cferdinandi/reef">Chris&rsquo;s Git Hub</a></li> </ul> <p>Joe</p> <ul> <li><a href="https://infrequently.org/2018/09/the-developer-experience-bait-and-switch/?mc_cid=796f819484&amp;mc_eid=925d8efdf6">The Developer Experience Bait and Switch</a></li> <li><a href="https://hackernoon.com/goodbye-redux-26e6a27b3a0b">Good Bye Redux </a></li> <li>Recording Dungeon and Dragons</li> </ul> <p>AJ</p> <ul> <li><a href="https://conf.utahjs.com/">UtahJS Conf</a></li> <li><a href="https://startwithwhy.com/">Start with Why</a></li> <li><a href="https://doc.rust-lang.org/book/">The Rust Book</a></li> <li><a href="https://shoptalkshow.com/episodes/274-vanilla-js-chris-ferdinandi/">VanillaJS w/ Chris</a></li> <li><a href="https://www.amazon.com/Zero-One-Notes-Startups-Future/dp/0804139296">Zero to One</a></li> </ul> <p>Charles</p> <ul> <li>Podwrench.com -&nbsp; beta</li> <li>getacoderjob.com</li> </ul>
Oct 30, 2018
MJS 082: Benjamin Hong
22:26
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://www.bencodezen.io">Benjamin Hong</a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://www.bencodezen.io">Benjamin Hong</a> who is a Senior UI Developer at <a href="https://www.politico.com">Politico</a> where he lives in the Washington, D.C. area. He has worked with other companies including Treehouse, <a href="https://www.element84.com">Element 84</a>, and <a href="https://www.udacity.com">Udacity</a>. Charles and Benjamin talk about his past and current projects, and how it&rsquo;s different working for the government vs. working for a business. Check it out!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>1:06 &ndash; Chuck: Tell us a brief introduction, please.</p> <p>1:23 &ndash; Ben: I am a lead frontend developer at <a href="https://www.politico.com">Politico.</a></p> <p>1:43 &ndash; Chuck: It&rsquo;s an area that can affect everyone. How did you get into developing?</p> <p>1:52: Ben: I had everything you can think of to develop at first.</p> <p>2:10 &ndash; Chuck: For me it was a TI90 calculator!</p> <p>2:18 &ndash; Chuck: Was it somebody or something that pushed you towards this area?</p> <p>2:32 &ndash; Ben: I wanted to change something with the theme, Googled it, and it went from there, and the Marquis Tag.</p> <p>2:51 &ndash; Chuck: And the Blink Tag! The goodies. So you got the he HTML book &ndash; and what website did you build that was your first big project?</p> <p>3:07 &ndash; Ben: It was fiddling around, but it was fortune cookie universe.</p> <p>3:20 &ndash; Chuck: You will have to recreate it!</p> <p>3:27 &ndash; Ben: I think this was 1993/1995 timeframe.</p> <p>3:40 &ndash; Chuck: Yep, me too same time frame. If you had something <em>move</em> on your website it was so cool. You went to building...</p> <p>4:02 &ndash; Ben: JavaScript was a roadblock for me. There was nobody to correct me. I had a JavaScript book and it was a massive failure.</p> <p>4:33 &ndash; Chuck: You took a break and you came back?</p> <p>4:40 &ndash; Ben: Oh &ndash; people will PAY you to do this?!</p> <p>4:54 &ndash; Chuck: Did you go to college?</p> <p>5:01 &ndash; Ben: Yes, I have a Master&rsquo;s in a different field. I was always a tech junkie. I just wanted to put things together.</p> <p>5:20 &ndash; Chuck: Take us through your journey through JS?</p> <p>5:30 &ndash; 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.</p> <p>6:19 &ndash; Chuck: Did you play with Backbone, Knockout, or Ember?</p> <p>6:32 &ndash; Ben: I did do SOME Ember and some Knockout. Those were my first interactions.</p> <p>6:49 &ndash; Chuck: What got you into the profession? How did you get from your Master&rsquo;s to being a tech guy?</p> <p>7:14 &ndash; Ben: From the Master&rsquo;s field I learned a lot about human experience, and anted to breed the two together. Also, consulting and helping to build things, too.</p> <p>7:44 &ndash; Charles: What was the career change like?</p> <p>7:53 &ndash; Ben: I went to the federal government at first around the recession &ndash; 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.</p> <p>8:30 &ndash; Ben: I was working on Medicare.gov and then later...</p> <p>8:46 &ndash; Charles: We won&rsquo;t use the word &ldquo;disaster&rdquo;!</p> <p>What is it like to work for the government?</p> <p>9:20 &ndash; 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.</p> <p>10:31 &ndash; Chuck: Have you been there from the beginning?</p> <p>10:39 &ndash; Ben answers the question.</p> <p>Ben: They were looking for frontend developers</p> <p>10:54 &ndash; Chuck: You are the lead there now. What was that like with the transition?</p> <p>11:08 &ndash; Ben talks about the beginnings stages of his time with Politico and the current situation. He talks about the different problems, challenges, and etc.</p> <p>11:36 &ndash; Chuck: Do you consider yourself a news organization or?</p> <p>11:47 &ndash; 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.</p> <p>12:25 &ndash; Chuck: Do they pain themselves as leaning one way or another or nonpartisan?</p> <p>12:38 &ndash; Ben: We are objective and nonpartisan.</p> <p>12:51 &ndash; Chuck: I know, I was hesitant to ask. What&rsquo;s the mission of the company and into what you do?</p> <p>13:09 &ndash; 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.</p> <p>13:48 &ndash; Chuck: What&rsquo;s your tech stack?</p> <p>13:55 &ndash; Ben: JavaScript and <a href="https://vuejs.org">Vue.js.</a> We are experimenting with other software, too.</p> <p>14:16 &ndash; Chuck: We should get you talking about <a href="https://vuejs.org">Vue</a> on the other show!</p> <p>Are you working at home?</p> <p>14:32 &ndash; Ben answers the question.</p> <p>Ben: One thing I am helping with Meetup. Community outreach is important and I&rsquo;m apart of that.</p> <p>15:09 &ndash; Chuck: Yep, it&rsquo;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&rsquo;s interesting to see the different perspectives. How little it is for someone to be able to dive-in right away.</p> <p>What are you working on?</p> <p>16:09 &ndash; Ben: <a href="https://www.meetup.com">Meetup</a> population and helping with the work at <a href="https://www.politico.com">Politico.</a></p> <p>16:27 &ndash; Chuck: Reusable components. Are those opensource or only internal?</p> <p>16:41 &ndash; Ben: They are now opensource but we are seeing which portions can be opensource or not.</p> <p>17:01 &ndash; Chuck: Different companies have come out and offered their opensource.</p> <p>Where do they find you?</p> <p>17:20 &ndash; <a href="https://www.bencodezen.io">BenCodeZen!</a> They are more than welcome to message me.</p> <p>17:36 &ndash; Chuck: Any advice on newbies to this field?</p> <p>17:46 &ndash; Ben: Attending those meetings and making those connections.</p> <p>18:18 &ndash; Chuck: I have been writing a book on HOW to get a job as a coder. That&rsquo;s the same advice that I am giving, too.</p> <p>18:46 &ndash; Chuck: Picks!</p> <p>18:51 &ndash; <a href="https://www.freshbooks.com">Advertisement &ndash; Fresh Books! 30-Day Trial!</a></p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://vuejs.org">Vue.js</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.emberjs.com">Ember</a></li> <li><a href="https://guide.elm-lang.org">Elm</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://www.bencodezen.io">BenCodeZen</a></li> <li><a href="https://www.linkedin.com/in/hongb1">Ben&rsquo;s LinkedIn</a></li> <li><a href="https://www.crunchbase.com/person/benjamin-hong-00b5">Ben&rsquo;s Crunch Base</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.freshbooks.com/?ref=ppc-na-fb&amp;camp=US%2528SEM%2529Branded%257CEXM&amp;ag=freshbooks+%252Bx&amp;kw=freshbooks&amp;campaignid=717543354&amp;adgroupid=51893696397&amp;kwid=aud-156768853724:kwd-298507762065&amp;dv=c&amp;ntwk=g&amp;crid=289640536553&amp;source=GOOGLE&amp;gclid=EAIaIQobChMI6cT5gtmT3gIViobACh1xBQgvEAAYASAAEgLnB_D_BwE&amp;gclsrc=aw.ds&amp;dclid=CLPSqoTZk94CFVa6TwodIkkF7w">Fresh Books</a></li> </ul> <p><strong>Picks:</strong></p> <p><a href="https://twitter.com/cmaxw?lang=en">Charles</a></p> <ul> <li><a href="https://www.frameworksummit.com">Framework Summit &ndash; UT</a> (Ember, Elm, and tons more!)</li> <li><a href="https://www.microsoft.com/en-us/ignite">Microsoft Ignite</a></li> <li><a href="http://codebadge.org/">Code Badge</a></li> </ul> <p><a href="https://www.linkedin.com/in/hongb1">Ben</a></p> <ul> <li><a href="https://confs.tech">Conference in Toronto</a></li> <li><a href="https://tickets.connectevents.io/events/connect2018/">Conference in Atlanta, GA (Connect Tech)</a></li> <li><a href="https://confs.tech">Conference in London &ndash; Vue</a></li> </ul>
Oct 24, 2018
JSJ 336: “The Origin of ESLint” with Nicholas Zakas
1:08:01
<p><strong>Panel: </strong></p> <ul> <li><a href="http://www.aimeemarieknight.com">Aimee Knight</a></li> <li><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a> (DevChat TV)</li> <li><a href="https://2013.boston.wordcamp.org/speakers/">Christopher Ferdinandi (Boston)</a></li> <li><a href="https://twitter.com/housecor">Cory House (Kansas City)</a></li> <li><a href="https://twitter.com/josepheames">Joe Eames</a></li> </ul> <p><strong>Special Guests:</strong> <a href="https://twitter.com/slicknet">Nicholas Zakas</a></p> <p>In this episode, the panel talks with <a href="https://twitter.com/slicknet">Nicholas Zakas</a> who writes on his site, Human Who Codes. He is the creator of <a href="https://twitter.com/geteslint">ESLint</a>, 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!&nbsp;</p> <p><strong>Show Topics:</strong></p> <p>0:05 &ndash; <a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Advertisement: KENDO UI</a></p> <p>0:37 &ndash; Hello! The panel is...(Chuck introduces everyone).</p> <p>1:04 &ndash; Nicholas who are you?</p> <p>1:17 &ndash; Nicholas: Yeah it&rsquo;s been about 5 years and then you invited me again, but I couldn&rsquo;t come on to talk about ESLint back then. That&rsquo;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.</p> <p>1:58 &ndash; Chuck: What is it?</p> <p>2:04 &ndash; It&rsquo;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&rsquo;ve created it. It can help with bugs and enforcing style guides and other things.</p> <p>2:53 &ndash; Where did it come from?</p> <p>2:57 &ndash; 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...</p> <p>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&rsquo;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...</p> <p>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.</p> <p>I am not comfortable using normal expressions to write code for this. You could be matching in side of a string and it&rsquo;s not a good way to be checking code for problems. I wanted to find a better way.</p> <p>6:04 &ndash; Why did you choose to create a product vs. using other options out there?</p> <p>6:15 &ndash; Guest: Both of those weren&rsquo;t around. JSHint was pretty much the defector tool that everyone was using. My first thought was if JSHint could help with this problem?</p> <p>I went back to look at JSHint and I saw that on their roadmap you could create your own rules, and I thought that&rsquo;s what we need. Why would I build something new? I didn&rsquo;t see anything on GitHub and didn&rsquo;t see the status of that. I wanted to see what the plan was, and they weren&rsquo;t going to get to it. I said that I really needed this tool and I thought it would be helpful to others, too.</p> <p>8:04 &ndash; My history was only back when it was customizable.</p> <p>8:13 &ndash; Aimee: It&rsquo;s interesting to see that they are basing it on regular expressions.</p> <p>8:32 &ndash; Guest: Interesting thing at Box was that there was...I am not sure but one of the engineers at Box wrote...</p> <p>9:03 &ndash; Aimee: I was going to ask in your opinion what do you think ES Lint is the standard now?</p> <p>9:16 &ndash; Guest: How easy it is to plug things in. That was always my goal because I wanted the tool not to be boxed in &ndash; in anyway.</p> <p><em>The guest continues to talk about how pluggable ESLint is and the other features of this tool.</em></p> <p>13:41 &ndash; 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?</p> <p>14:24 &ndash; Guest: How do you start introducing new things to a team that is running at full capacity? That is something that I&rsquo;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&rsquo;t a god way to share that information within a team in a non-confrontational way. It&rsquo;s better to get angry at a tool rather than a person.</p> <p><em>Guest goes into what this can teach people.</em></p> <p>18:07 &ndash; Panelist: I am not surprised. Is there a best practice to get a team to start with ESLint?</p> <p>Do you get the whole team in a room and show them the options or take the best guess and turn it on?</p> <p>18:34 &ndash; 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...</p> <p>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...</p> <p>Using those ESLint rules will clean up a lot of problems that you didn&rsquo;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&rsquo;t feel like when they were committing to a file why should I be...</p> <p>The idea with the different scenario levels you don&rsquo;t&rsquo; want to turn off rules so people don&rsquo;t know there is a problem. There can be a rule on so people will know that there is a problem, but...</p> <p>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.</p> <p>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 &ndash; it doesn&rsquo;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.</p> <p>24:36 &ndash; 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?</p> <p>25:30 &ndash; 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...</p> <p>But my favorite rules I tend to lean towards the ones that saved me.</p> <p><em>The Guest goes through his favorite rules with ESLint. Check it out!</em></p> <p>26:51 &ndash; Guest mentions his second favorite rule, here!</p> <p>28:24 &ndash; Guest mentions his third favorite rule, here!</p> <p>29:03 &ndash; Guest mentions the rule that makes him giggle a lot, here!</p> <p>30:07 &ndash; <a href="https://sentry.io/welcome/">Advertisement &ndash; Sentry!</a></p> <p>31:22 &ndash; What is your take on running Fix? Does it make sense to run Fix?</p> <p>32:00 &ndash; 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&rsquo;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...</p> <p>As a pre-commit hook it could be to fix things and part of the built system you wouldn&rsquo;t want...</p> <p>People are probably wondering: Why doesn&rsquo;t ESLint doesn&rsquo;t fix all the time?</p> <p>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...</p> <p>35:16 &ndash; Do you run Premier?</p> <p>35:20 &ndash; Guest: No I don&rsquo;t. I don&rsquo;t have anything against <a href="https://github.com/Premier">Premier</a> but I think <a href="https://github.com/prettier/prettier">Prettier</a> uses a very interesting space.</p> <p>37:50 &ndash; Chuck: What is next for ESLint and what is next for you?</p> <p>37:55 &ndash; Guest: Well, to be honest I am not sure what is next for ESLint. I haven&rsquo;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&rsquo;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.</p> <p>For myself, and the future, I haven&rsquo;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&rsquo;s why, too, I wasn&rsquo;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.</p> <p>There is interesting stuff that we are doing and I love it, but make sure you take care of yourself! If you don&rsquo;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&rsquo;t an off-switch. I would like to encourage people to examine their life and their time.</p> <p>When you take time to turn off your analytic brain, and work on your creative brain then the pathways will connect better.</p> <p>Please save your money!</p> <p>Lyme disease is spread through tick bites.</p> <p>44:30 &ndash; Aimee: Thank you for sharing that!</p> <p>44:38 &ndash; Chuck: It&rsquo;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&rsquo;t always count on things going the way you want it to go.</p> <p>45:19 &ndash; 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&rsquo;t get out of bed. That started this whole period where I stopped leaving the house completely. That&rsquo;s how quickly things can change for you. I harp on people a lot to save their money. If I didn&rsquo;t have savings there would be a very different end to my story. I want to encourage people to save.</p> <p>46:33 &ndash; Chuck: I think on that note let&rsquo;s go to picks. Where can people find you?</p> <p>46:45 &ndash; Guest: My blog is <a href="https://humanwhocodes.com">Human Who Codes.</a></p> <p>47:10 &ndash; Chuck: Anything people can do to help you? <a href="https://www.amazon.com/Nicholas-C.-Zakas/e/B001IGUTOC">Check out his books you won&rsquo;t regret it!</a></p> <p>47:33 &ndash; Guest: Buying books is always helpful. I would say that if you can spend some time contributing to <a href="https://eslint.org">ESLint</a> 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&rsquo;s stories of how they have overcome past diseases or illnesses. If you want to send monetary gifts &ndash; donate to a wonderful <a href="https://lymelightfoundation.org">organization</a> that helps children with <a href="https://lymelightfoundation.org">Lyme disease</a>. I would encourage you to support if you feel inclined.</p> <p>50:49 &ndash; Chuck: We appreciate it, and I appreciate you being so open about your personal story.</p> <p>51:11 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement &ndash; eBook: Get a coder job!</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="http://elm-lang.org">Elm</a></li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="https://github.com/prettier/prettier">GitHub &ndash; Prettier</a></li> <li><a href="https://github.com/Premier">GitHub &ndash; Premier</a></li> <li><a href="https://lymelightfoundation.org">Lyme Light Foundation</a></li> <li><a href="https://inclusive-components.design">Inclusive Components</a></li> <li><a href="https://eslint.org/docs/rules/no-restricted-imports">ESLint &ndash; Disallow Specific Imports</a></li> <li><a href="https://stateofjs.com">State of JS</a></li> <li><a href="https://gomakethings.com/resources/">Learn JavaScript</a></li> <li><a href="https://www.amazon.com/Total-Recall-Unbelievably-True-Story-ebook/dp/B006VGGAC4">Book: Total Recall</a></li> <li><a href="https://hackernoon.com/goodbye-redux-26e6a27b3a0b">Goodbye Redux</a></li> <li><a href="https://www.youtube.com/channel/UCi7l9chXMljpUft67vw78qw">YouTube Channel &ndash; Sideways</a></li> <li><a href="https://humanwhocodes.com">Human Who Codes &ndash; Nicholas Zakas</a></li> <li><a href="https://www.amazon.com/s/ref=as_li_ss_tl?url=search-alias=aps&amp;field-keywords=nicholas+zakas&amp;linkCode=sl2&amp;tag=devchattv-20&amp;linkId=3eaa2ae8a34b5d0bf1d2fbed49f57e87&amp;language=en_US">Nicholas&rsquo; Books</a></li> <li><a href="https://twitter.com/slicknet">Nicholas&rsquo; Twitter</a></li> <li><a href="https://github.com/nzakas/">Nicholas&rsquo; GitHub</a></li> <li><a href="https://www.linkedin.com/in/nzakas">Nicholas&rsquo; LinkedIn</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get a Coder Job</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li><a href="https://hackernoon.com/there-are-3-main-types-of-technical-debt-heres-how-to-manage-them-4a3328a4c50c">Technical debt </a></li> <li><a href="https://www.amazon.com/Professional-JavaScript-Developers-Nicholas-Zakas/dp/1118026691/ref=sr_1_3?ie=UTF8&amp;qid=1540162058&amp;sr=8-3&amp;keywords=nicholas+zakas">Professional JavaScript for Web Developers </a></li> </ul> <p>Chris</p> <ul> <li><a href="https://inclusive-components.design/">Inclusive Components Blog</a></li> <li><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Cascade">CSS Cascade</a></li> <li>JS Jabber - code</li> </ul> <p>Cory</p> <ul> <li><a href="https://eslint.org/docs/rules/no-restricted-imports">No Restricted Imports </a></li> <li><a href="https://stateofjs.com/">State of JS</a></li> <li><a href="https://www.amazon.com/Total-Recall-Unbelievably-True-Story-ebook/dp/B006VGGAC4">Total Recall</a></li> </ul> <p>Charles</p> <ul> <li>My JavaScript Story</li> </ul> <p>Joe</p> <ul> <li>Thought bubbles...</li> <li><a href="https://hackernoon.com/goodbye-redux-26e6a27b3a0b">Goodbye Redux</a></li> <li><a href="https://www.youtube.com/channel/UCi7l9chXMljpUft67vw78qw">Sideways Channel</a></li> </ul> <p>Nicholas</p> <ul> <li><a href="https://www.amazon.com/Brain-That-Changes-Itself-Frontiers-ebook/dp/B000QCTNIW/ref=sr_1_1?ie=UTF8&amp;qid=1540162755&amp;sr=8-1&amp;keywords=the+brain+that+changes+itself">The Brain that Changes Its Self</a></li> <li><a href="https://www.amazon.com/Ghost-Boy-Miraculous-Misdiagnosed-Trapped-ebook/dp/B00C5QA94O/ref=sr_1_1?s=digital-text&amp;ie=UTF8&amp;qid=1540162815&amp;sr=1-1&amp;keywords=Ghost+Boy">Ghost Boy</a></li> <li>Tip - Turn off your Wi-Fi before Bed</li> </ul>
Oct 23, 2018
MJS 081: Christiané Heiligers
19:20
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://www.researchgate.net/profile/Christiane_Heiligers2">Christian&eacute; Heiligers</a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://www.researchgate.net/profile/Christiane_Heiligers2">Dr. Christian&eacute; Heiligers</a> who is new to the industry. Her background is in physics where she has her Ph.D. in the field. Listen to today&rsquo;s episode to hear her background, experience with the different programs/languages, and much more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>Beginning &ndash; Advertisement: Code Badges!</p> <p>1:07 &ndash; Christian&eacute;: Hello!</p> <p>1:17 &ndash; Chuck: I like hearing people&rsquo;s stories from our community. Tell us where you come from and who you are?</p> <p>1:33 &ndash; Christian&eacute;: 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&rsquo;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.</p> <p>I snagged a job a week before I graduated!</p> <p>4:36 &ndash; Chuck: your journey, thus far. You said that you couldn&rsquo;t be idle &ndash; so why code?</p> <p>4:53 &ndash; Guest: The UK is cold you don&rsquo;t want to do anything outside! From South American I couldn&rsquo;t stand the cold. I kept busy indoors &ndash; hint the code. You can&rsquo;t get bored &ndash; frontend or backend.</p> <p>5:28 &ndash; Chuck: Can you give us background on the <a href="https://www.gracehopper.com">Grace Hopper Academy.</a></p> <p>5:40 &ndash; Guest: Sure! It&rsquo;s based in NY City.</p> <p>6:26 &ndash; Chuck: Did you move somewhere or was it remote?</p> <p>6:30 &ndash; Guest: I had to live somewhere e</p> <p>6:51 &ndash; Chuck: Where did you</p> <p>6:55 &ndash; Guest: NY City. There were 16 of us in the course.</p> <p>7:14 &ndash; Chuck: Why did you feel like you had to go to coding school?</p> <p>7:25 &ndash; Guest: I am impatient with myself. The home-life you ask yourself: &ldquo;Am I doing the right thing? Am I going in the right direction?&rdquo; I wanted to go and pick up some skills.</p> <p>7:56 &ndash; Chuck: You go through Grace Hopper &ndash; is this how you got into JavaScript?</p> <p>8:11 &ndash; Guest: I didn&rsquo;t know a line of JavaScript.</p> <p>I did my application code line in Ruby.</p> <p>My husband has been in software development my whole life.</p> <p>9:16 &ndash; Chuck: What have you done with JavaScript since learning it?</p> <p>9:24 &ndash; Guest: Some card playing games for my nieces in South Africa.</p> <p>10:50 &ndash; Guest: Stack Overflow is wonderful.</p> <p>11:05 &ndash; Chuck.</p> <p>11:11 &ndash; Guest: I wasn&rsquo;t actively contributing, but I did...</p> <p>11:30 &ndash; Chuck: What is it like being a prof</p> <p>11:37 &ndash; Guest: It&rsquo;s addictive. When I am writing code in the frontend / backend side. It&rsquo;s always learning.</p> <p>12:11 &ndash; Chuck: What&rsquo;s next for you?</p> <p>12:18 &ndash; Guest: I would love to continue this journey. Maybe into the DevOps, but my passion happens with React. The Hapi Framework.</p> <p>13:10 &ndash; Guest: The community is wonderful to work with &ndash; everyone is very helpful.</p> <p>13:22 &ndash; Chuck: People are usually talking about Express and not Hapi.js.</p> <p>13:35 &ndash; Guest: I have some contact names you can call.</p> <p>13:43 &ndash; Guest: I am working on a few small projects right now. Some Angular sites that need assistance. Helping out where I can. It&rsquo;s a small team that I am working with. There is only a few of us.</p> <p>14:31 &ndash; Chuck: Usually people stick with one. What&rsquo;s your experience using the different frameworks?</p> <p>14:40 &ndash; Guest: It&rsquo;s an eye-opener! React vs. Angular.</p> <p>15:07 &ndash; Chuck: How can people find you?</p> <p>15:14 &ndash; Guest: LinkedIn, Twitter, <a href="https://tallwave.com/about">Tallwave</a>, etc.</p> <p>15:37 &ndash; Chuck: Picks!</p> <p>15:40 &ndash; Advertisement!</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://www.gracehopper.com">Grace Hopper Academy</a></li> <li><a href="https://www.instagram.com/christianeheiligers/">Christian&eacute;&rsquo;s Instagram</a></li> <li><a href="https://www.facebook.com/christiane.heiligers">Christian&eacute;&rsquo;s Facebook</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="http://codebadge.org/">Code Badge</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> </ul> <p><strong>Picks:</strong></p> <p><a href="https://twitter.com/cmaxw?lang=en">Charles</a></p> <ul> <li>Podcasts that Chuck listens to: <ul> <li><a href="https://www.codenewbie.org">Code Newbie</a></li> <li><a href="https://devchat.tv">Our podcasts through DevChat</a></li> </ul> </li> <li><a href="http://2ketodudes.com">Food &ndash; Kedo Diet &ndash; 2 Keto Dudes</a></li> </ul> <p>Christian&eacute; Heiligers</p> <ul> <li><a href="https://hapijs.com">Hapi Framework</a></li> <li><a href="https://github.com/hapijs/hapi">Hapi Slack Channel &ndash; Hapi.js</a></li> </ul>
Oct 17, 2018
JSJ 335: “CanJS 4.0” with Justin Meyer
54:04
<p><strong>Panel: </strong></p> <ul> <li><a href="http://www.aimeemarieknight.com">Aimee Knight</a></li> <li><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a> (DevChat TV)</li> <li><a href="https://2013.boston.wordcamp.org/speakers/">Christopher Ferdinandi (Boston)</a></li> <li><a href="https://twitter.com/josepheames">Joe Eames</a></li> </ul> <p><strong>Special Guests:</strong> <a href="https://twitter.com/justinbmeyer?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Justin Meyer </a></p> <p>In this episode, the panel talks with <a href="https://twitter.com/justinbmeyer?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Justin Meyer</a> who is a co-author of DoneJS, CanJS, jQueryPP, StealJS, and DocumentJS. Justin currently works for <a href="https://www.bitovi.com/about">Bitovi</a> and is their Director of R&amp;D. He is also a fan of basketball and Michael Jackson. The panel and Justin talk about CanJS in-detail &ndash; check it out!</p> <p><strong>Show Topics:</strong></p> <p>0:58 &ndash; <a href="https://radiopublic.com/all-javascript-podcasts-by-devcha-WwEoX8/ep/s1!3b9d2">We had you on Episode 202.</a></p> <p>1:14 &ndash; Chuck: Can you tell everyone who you are?</p> <p>1:20 &ndash; Justin tells us his background.</p> <p>1:50 &ndash; Chuck.</p> <p>1:58 &ndash; Justin.</p> <p>2:06 &ndash; Chuck: Can you give us an introduction to what CanJS 4.0?</p> <p>2:11 &ndash; Justin: It is a JavaScript framework and is similar to Vue. It adds a very model layer, and uses Real Time very well.</p> <p>2:44 &ndash; Panelist.</p> <p>2:49 &ndash; Justin.</p> <p>2:55 &ndash; Panelist: What is the current...</p> <p>3:09 &ndash; Justin: Compatibility is very important to us. A lot of the same tools are still available. It has over 80 different repositories.</p> <p>Justin continues to talk about the differences/similarities between the different versions.</p> <p>4:55 &ndash; Panelist: Angular, React, and Vue are dominating, so I have 2 questions.</p> <p>1.) Where is the core strength of JS and its user base?</p> <p>2.) What is like to be the CanJS when everyone is talking about the other programs?</p> <p>5:31 &ndash; Justin: We have dealt with this for the past 10 years. Emotionally it&rsquo;s not great, I wished it was more popular, but our priority is keeping our user-based happy. We&rsquo;ve had big companies use it.</p> <p>Justin answers the second question.</p> <p>8:44 &ndash; Panelist: You mentioned two things.</p> <p>9:22 &ndash; Aimee: I think everything has trade-offs. I would use something because it was the right tool for the job. I wouldn&rsquo;t want to make something that was &ldquo;cool.&rdquo; I would want to make it super accessible in a network.</p> <p>10:10 &ndash; Justin: That is a great marketing angle. We are trying to remove the worst parts of the program.</p> <p>10:26 &ndash; Now I am intrigued.</p> <p>10:32 &ndash; Justin: You have this mutable state and you aren&rsquo;t sure. At least for <a href="https://twitter.com/canjs?lang=en">CanJS</a> I don&rsquo;t see that occurring too often.</p> <p>10:54 &ndash; Aimee.</p> <p>10:58 &ndash; Justin: Deep inheritance is definitely a problem and it can create...</p> <p>11:13 &ndash; Aimee.</p> <p>11:19 &ndash; Justin: We have changed strategies a lot, and I think it&rsquo;s helped <a href="https://twitter.com/canjs?lang=en">CanJS</a> grow; like 60% since January. We are doing a lot of user studies now. I run Meetups, etc. That being said inheritance schemes aren&rsquo;t something that people will encounter. This is something that they won&rsquo;t encounter months down the road.</p> <p>13:00 &ndash; Aimee.</p> <p>13:05 &ndash; Panelist: I would like to dig deeper into state-management. Everyone is doing Flux, talk about that with CanJS.</p> <p>13:20 &ndash; 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.)...</p> <p>If you look at React&rsquo;s statistics &ndash; more than 50% doesn&rsquo;t use any state management.</p> <p>16:15 &ndash; Panelist: I think it&rsquo;s interesting that there are people that aren&rsquo;t &ldquo;oh my gosh...&rdquo;</p> <p>16:43 &ndash; Justin: The last coolest thing I&rsquo;ve done is...</p> <p>18:02 &ndash; Justin continues.</p> <p>18:16 &ndash; 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...</p> <p>18:56 &ndash; It depends on how complex your app is and our ability to work through those problems. I think that&rsquo;s a generic answer, but hopefully that helps. I don&rsquo;t think you really can&rsquo;t live without.</p> <p>19:49 &ndash; Panelist: I think that&rsquo;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&rsquo;s experience? Where do you draw the line?</p> <p>21:11 &ndash; Justin: It depends. I don&rsquo;t know what the parallel is &ndash; it&rsquo;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.</p> <p>22:41 &ndash; Panelist: Playing devil&rsquo;s advocate, though. But isn&rsquo;t there some danger in kind of suggesting that you focus on performance WHEN it&rsquo;s a business issue? Maybe there is there a lack of empathy among developers. I worry that advice is hurting us.</p> <p>23:53 &ndash; 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 &ndash; you can just use native HTML, and native methods and build that one widget and as easy and fast as possible.</p> <p>24:50 &ndash; 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.</p> <p>25:38 &ndash; 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...</p> <p>26:37 &ndash; Panelist: Because you care about performance...</p> <p>26:54 &ndash; <a href="https://sentry.io/welcome/">Advertisement</a></p> <p>27:53 &ndash; Justin: I don&rsquo;t think that the run time of <a href="https://twitter.com/canjs?lang=en">CanJS</a> is going to be a critical performance path for anybody. Is there a responsibility? This is the oldest question. It&rsquo;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.</p> <p>You need someone using your product or it doesn&rsquo;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.</p> <p>30:48 &ndash; Panelist: I think that&rsquo;s fair.</p> <p>31:00 &ndash; Aimee: I have a question. You got into consultancy when do you recommend using CanJS or something else?</p> <p>31:15 &ndash; Justin: I always suggest people using CanJS.</p> <p>31:53 &ndash; Aimee: What do these people do when their contract is over? I have used an older version of Can, and...</p> <p>32:20 &ndash; Justin: Are you on <a href="https://github.com/gitterHQ">Gitter</a>?</p> <p>Aimee: No, I am not.</p> <p>32:25 &ndash; Justin: We do offer promote job posting to help them find somebody. We try our best to help people in any way we can.</p> <p>33:05 &ndash; Aimee: That&rsquo;s helpful. Another question.</p> <p>33:28 &ndash; Justin: DoneJS is that. It uses the full kitchen sink. That&rsquo;s what DoneJS is.</p> <p>33:50 &ndash; Panelist: Let&rsquo;s talk about CanJS in the mark-up. Do you think it&rsquo;s better now or worse than 2012? Less space or more space?</p> <p>34:13 &ndash; Justin: It&rsquo;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.</p> <p>35:16 &ndash; Panelist: Is the space getting more welcoming or less?</p> <p>35:31 &ndash; It depends on what framework you are. It&rsquo;s very hard to compete if you are the exact same thing as...</p> <p>The market is so dense and there are so many ideas, so it&rsquo;s getting harder and harder. What helps people break-through? Is it the technology or the framework?</p> <p>36:36 &ndash; Panelist: I appreciate the richness of the field, as it exists right now. There aren&rsquo;t a few things SMELT and ELM</p> <p>37:10 &ndash; Justin: Elm for sure. I don&rsquo;t have a lot of experience with SMELT.</p> <p>37:23 &ndash; Panelist continues the talk.</p> <p>37:54 &ndash; Chuck.</p> <p>38:00 &ndash; Justin: I think it spreads by word-of-mouth. I used to think it was &ldquo;technology&rdquo; or... all that really matters is &ldquo;can you deliver&rdquo; and the person have a good experience.</p> <p>Usability is the most important to me. We will see how this turns out. I will be either right or wrong.</p> <p>39:18 &ndash; Panelist: Can we talk about the long-term future of Can JS?</p> <p>39:28 &ndash; Justin: We are connecting to our user-base and making them happy. If I had it my way (which I don&rsquo;t anymore) I think <a href="https://reactjs.org/docs/jsx-in-depth.html">JSX</a> is the best template language. We have been building integrations between JSX and...</p> <p>I am putting out proposals where most people don&rsquo;t like them.</p> <p><em>Justin continues this conversation.</em></p> <p>44:24 &ndash; Picks!</p> <p>44:28 -<a href="https://devchat.tv/get-a-coder-job/"> Advertisement</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="http://elm-lang.org">Elm</a></li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="https://polyfill.io/v2/docs/">Polyfill.io</a></li> <li><a href="https://sarahdayan.github.io/dinero.js/">Dinero.js</a></li> <li><a href="https://vanillajstoolkit.com">Vanilla JS Toolkit</a></li> <li><a href="https://canjs.com">CanJS&rsquo; Website</a></li> <li><a href="https://github.com/canjs">CanJS&rsquo; GitHub</a></li> <li><a href="https://twitter.com/canjs?lang=en">CanJS&rsquo; Twitter</a></li> <li><a href="https://reactjs.org/docs/jsx-in-depth.html">JSX</a></li> <li><a href="https://www.npmjs.com/package/jsx-templates">JSX- NPM</a></li> <li><a href="https://github.com/justinbmeyer">Justin Meyer&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/justinbmeyer?lang=en">Justin Meyer&rsquo;s Twitter</a></li> <li><a href="https://radiopublic.com/all-javascript-podcasts-by-devcha-WwEoX8/ep/s1!3b9d2">Past Episode with Justin Meyer</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get a Coder Job</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li>Taking a walk for creativity</li> <li><a href="https://ohshitgit.com">https://ohshitgit.com</a></li> </ul> <p>Chris</p> <ul> <li><a href="https://polyfill.io/">PolyFill.io</a></li> <li><a href="https://sarahdayan.github.io/dinero.js/">Dinero.js</a></li> <li><a href="https://vanillajstoolkit.com/">https://vanillajstoolkit.com/</a></li> </ul> <p>Joe</p> <ul> <li><a href="https://www.youtube.com/user/ScreenRant">Pitch Meeting</a></li> <li><a href="https://www.imdb.com/title/tt3778644/">Solo</a></li> </ul> <p>Charles</p> <ul> <li><a href="https://phoenixframework.org">Phoenix Framework</a></li> <li><a href="https://www.amazon.com/Queens-Poisoner-Kingfountain-Book-ebook/dp/B013UVNZ2K">The Queens Poisoner </a></li> <li><a href="https://www.amazon.com/A-View-from-the-Top/dp/B01H0M78R8/ref=sr_1_1?ie=UTF8&amp;qid=1539282756&amp;sr=8-1&amp;keywords=A+View+From+The+Top+zig">A View From The Top </a></li> </ul> <p>Justin</p> <ul> <li>The Killing of H2Push</li> <li>Browser Contributor Days</li> <li><a href="https://devchat.tv/js-jabber/jsj-326-conversation-with-ember-co-creator-tom-dale-on-ember-3-0-and-the-future-of-ember/">JSJ Episode 326 with Tom Dale</a></li> </ul>
Oct 16, 2018
MJS 080: Ely Lucas
35:40
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest: </strong><a href="https://twitter.com/brooks_forsyth">Ely Lucas</a></p> <p>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&rsquo;s listen to today&rsquo;s episode where Chuck and Ely talk about Ionic, Angular, React and many other topics! Check it out!</p> <p>In particular, we dive pretty deep on:</p> <p>1:33 &ndash; Hello!</p> <p>1:40 Chuck: Give us a background on who you are, and tell us how famous you are!</p> <p>2:31 &ndash; Chuck: What do you do with <a href="https://ionicframework.com/developers">Ionic</a>?</p> <p>2:40 &ndash; Ely answers the question.</p> <p>3:51 &ndash; Chuck: How did you get into your field?</p> <p>3:55 &ndash; 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.</p> <p>Ely goes into detail about how his passion for developing began and developed.</p> <p>6:30 &ndash; Chuck: Yeah, I&rsquo;ve talked with people who have gotten into video games, then got into software development.</p> <p>7:01 &ndash; Ely: Someday I would like to develop games.</p> <p>7:12 &ndash; Chuck: Yes, web developing is awesome.</p> <p>Chuck asks Ely another question.</p> <p>7:25 &ndash; Ely answers the question and mentions web controls.</p> <p>9:17 &ndash; Ely: I thought Ajax was easier.</p> <p>9:38 &ndash; Chuck: When I got into web development jQuery was sort of new. It made things a lot easier.</p> <p>9:58 &ndash; Ely: A lot of people like to sneer at jQuery now, but back in the day it was IT.</p> <p>10:28 &ndash; Chuck: How did you get into Ionic?</p> <p>10:43 &ndash; Ely: I got a fulltime gig working on Ionic; I like the framework. I saw a job application and sent in my r&eacute;sum&eacute;. Two days later I got a callback and was amazed. They were hiring remotely. The team liked me and started over a year ago.</p> <p>11:46 &ndash; Chuck asks a question.</p> <p>11:54 &ndash; Ely answers the question.</p> <p>13:20 &ndash; Chuck: Why Ionic?</p> <p>13:35 &ndash; Ely: It was based off of Angular.</p> <p>15:17 &ndash; Chuck: You mentioned...what has the transition been like?</p> <p>15:32 &ndash; Ely talks about past programs he has worked with. He taught React in the early React days.</p> <p>16:37 &ndash; Ely: I have a deep appreciation on<a href="https://reactjs.org"> React</a> now.</p> <p>17:09 &ndash; Chuck: I like seeing the process that people go through.</p> <p>17:24 &ndash; Ely continues the conversation.</p> <p>Ely: It is interesting to see the learning process that people go through to arrive in the same place.</p> <p>18:18 &ndash; Chuck: Redux is a good example of this. Anyway, this is near the end of our time.</p> <p>18:39 &ndash; Chuck: Anything else you want to talk about?</p> <p>18:48 &ndash; Ely: Yes, I have been involved in the Denver community. Check us out.</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://ionicframework.com/developers">Ionic</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://www.google.com/search?client=safari&amp;rls=en&amp;q=javascript&amp;ie=UTF-8&amp;oe=UTF-8">JavaScript</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://twitter.com/elylucas?lang=en">Ely Lucas&rsquo; Twitter</a></li> <li><a href="https://www.linkedin.com/in/elylucas">Ely Lucas&rsquo; LinkedIn</a></li> <li><a href="http://angulardenver.com/speakers/ely-lucas">Ely Lucas</a></li> <li><a href="https://github.com/elylucas">Ely Lucas&rsquo; GitHub</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://devchat.tv/get-a-coder-job/"><strong>Get A Coder Job</strong></a></li> <li>Code Badges</li> <li>Digital Ocean</li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.audible.com/ep/2book?source_code=GO1GB12606261890I9&amp;device=d&amp;cvosrc=ppc.google.audible&amp;cvo_campaign=1530879010&amp;cvo_crid=290595887404&amp;Matchtype=e&amp;gclid=EAIaIQobChMI3K2Y56jS3QIVErbACh2qugONEAAYASAAEgKBMvD_BwE&amp;gclsrc=aw.ds">Audible</a></li> <li><a href="https://www.amazon.com/Scale-Seven-Proven-Principles-Business/dp/1591847249">Book: Seven Proven Principles...</a></li> <li><a href="https://www.amazon.com/Unshakeable-Your-Guide-Financial-Freedom/dp/1471164934">Tony Robbins&rsquo; Book: Unshakeable</a></li> </ul> <p>Ely</p> <ul> <li><a href="https://www.barnesandnoble.com/w/the-shadow-of-what-was-lost-james-islington/1120140256#/">Fantasy Novel: Shadow of what was lost.</a></li> <li>Ionic</li> </ul>
Oct 10, 2018
JSJ 334: “Web Performance API” with Dan Shappir
1:07:58
<p><strong>Panel: </strong></p> <ul> <li><a href="http://www.aimeemarieknight.com">Aimee Knight</a></li> <li><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></li> <li><a href="https://2013.boston.wordcamp.org/speakers/">Christopher Ferdinandi (Boston)</a></li> </ul> <p><strong>Special Guests:</strong> <a href="https://twitter.com/DanShappir?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Dan Shappir </a>(Tel Aviv)</p> <p>In this episode, the panel talks with <a href="https://twitter.com/DanShappir?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Dan Shappir</a> who is a computer software developer and performance specialist at Wix.com. 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!</p> <p><strong>Show Topics:</strong></p> <p>1:29 &ndash; Charles: Let us know who you are and why you&rsquo;re famous!</p> <p>1:39 &ndash; &ldquo;Hello!&rdquo; from Dan Shappir.</p> <p>2:25 &ndash; Charles: You should say that you go to EACH site EVERY day out of the millions of sites out there.</p> <p>2:53 &ndash; Charles: My mom mentioned Wix to me at first. My mom teaches High School Math.</p> <p>3:16 &ndash; Dan: Yes that is our mission statement. That everyone can get a website without the knowledge of how to build a website.</p> <p>3:52 &ndash; Aimee makes her comments.</p> <p>3:59 &ndash; 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.</p> <p>4:40 &ndash; 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?</p> <p>4:58 &ndash; 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&rsquo;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.&nbsp;</p> <p>6:54 &ndash; 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.</p> <p>7:15 &ndash; 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, &ldquo;stop&rdquo; if it will</p> <p>7:57 &ndash; Chuck: We are talking about performance, but what does that mean? What measures are there?</p> <p>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.</p> <p>9:58 &ndash; Chuck: People do talk about load time. People have different definitions of it.</p> <p>10:12: Dan: Excellent question. When you look at the different sites through Wix. Different people who build sites &ndash; load time can mean something else to everybody. It can mean when you see the MAIN text or the MAIN image. If it&rsquo;s on an ECON site then how soon can they purchase or on a booking site, how long can the person book X product.</p> <p>I heard someone at a conference say that load time is when: HERO TEXT And HERO IMAGE are displayed.</p> <p>12:14 &ndash; Chuck: What is faster <a href="https://reactjs.org">React</a> or <a href="https://vuejs.org">Vue</a>?</p> <p>12:21 &ndash; NEW HOST: Not sure. It all depends.</p> <p>12:34 &ndash; 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.</p> <p>13:27 &ndash; Christopher asks Dan a question.</p> <p>14:16 &ndash; 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...</p> <p>Dan: We are 100% server-side rendered now. Some things we are still using JavaScript. We have another project going on now and it&rsquo;s fully CSS, and little JavaScript as possible. What you might want to do with that site is...</p> <p>You might get in a few months every Wix site will be visible even if JavaScript is disabled.</p> <p>16:26 &ndash; Aimee adds in her comments and observations to this topic.</p> <p>16:55 &ndash; Dan: We don&rsquo;t want things displayed incorrectly before it lays out. We hide the content while it&rsquo;s downloading then make it visible. They lay-outing are done faster, because...</p> <p>17:44 &ndash; Christopher asks Dan a question.</p> <p>18:04 &ndash; Dan: I got into API...</p> <p>Either you are moving forward or are you moving back. AKA &ndash; You are either progressing or regressing.</p> <p>Different stages:</p> <p>1.) Development stage</p> <p>2.) Pre-Production (automated tools that check the performance with specific use cases)</p> <p>3.) Check it out!</p> <p>It&rsquo;s beneficial to use these APIs.</p> <p>21:11 &ndash; Christopher: What is performance APIs?</p> <p>21:38 &ndash; Dan: There is a working group &ndash; 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.&nbsp; 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&rsquo;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.</p> <p>Dan continues explaining this topic in detail.</p> <p>25:55 &ndash; Dan: You have this internal buffer...</p> <p>28:45 &ndash; Advertisement &ndash; Sentry &ndash; They support opensource.</p> <p>29:39 &ndash; Christopher: everything you are saying seems that I can use this or that tab right now...</p> <p>Why would I prefer the API to something visual, hypothetically?</p> <p>30:03 &ndash; Dan: Three Different Stages. (See above.)</p> <p>This information is very, very helpful during the developmental stage. Say you got a link from someone...</p> <p>Dan mentions: <a href="https://developer.mozilla.org/en-US/docs/Web/API/Performance/mark">Performance.mark</a></p> <p>34:04 &ndash; Aimee: When you were talking about resource-ends. Many people don&rsquo;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?</p> <p>34:41 &ndash; Dan: This might want to be a topic for its own podcast show.</p> <p>Dan gives a definition of what a resource-end means.</p> <p>Go back to fonts as an example.</p> <p>Pre-connect for example, too.</p> <p>39:03 &ndash; Dan: Like I said, it&rsquo;s a huge topic.</p> <p>You have to exercise some care. Bandwidth is limited. Make sure you aren&rsquo;t blocking other resources that you do need right now.</p> <p>40:02 &ndash; Aimee: Sounds like a lot of great things to tap into. Another question I have is about bundling.</p> <p>40:27 &ndash; 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.</p> <p><em>Dan continues to go in-depth about this topic. </em></p> <p>Dan: What we have found is that you want to strive to bundle resources together.</p> <p>44:10 &ndash; Aimee: Makes sense.</p> <p>44:15 &ndash; Dan continues talking about this topic.</p> <p>45:23 &ndash; Chuck asks two questions. (First question is now and second question is at 51:32.)</p> <p>2 Questions:</p> <p>1. You gather information from web performance AI - What system is that?</p> <p>45:42 &ndash; Dan: I am not the expert in that. I will try not to give misleading information. Actually let me phrase it different. There are 3<sup>rd</sup> 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.</p> <p>At a conference I talked with a vendor and we talked about...</p> <p>51:32 &ndash; 2<sup>nd</sup> Question from Charles to Dan: Now you&rsquo;ve gathered this information now what to you do? What patterns? What do you look for? And how do you decide to optimize things?</p> <p>54:23 &ndash; Chuck: Back to that question, Dan. How should they react to it and what are they looking for</p> <p>54:41 &ndash; Dan: Three main ways: 1.) Generate alerts 2.) See trends over long period of time 3.) Looking at real-time graphs.</p> <p>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...</p> <p>57:31 &ndash; Advertisement &ndash; Get a Coder Job!</p> <p>58:10 &ndash; Picks!</p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="http://elm-lang.org">Elm</a></li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="https://www.wix.com">Wix</a></li> <li><a href="https://developer.mozilla.org/en-US/docs/Web/API/Window/performance">Window Performance</a></li> <li><a href="https://www.w3.org/webperf/">Web Performance</a></li> <li><a href="https://itunes.apple.com/us/app/terragenesis-space-colony/id1039841501?mt=8">Terra Genesis</a></li> <li><a href="https://play.google.com/store/apps/details?id=com.alexanderwinn.TerraGenesis&amp;hl=en_US">Terra Genesis: Space Colony</a></li> <li><a href="https://www.amazon.com/ONE-Thing-Surprisingly-Extraordinary-Results/dp/1885167776/ref=as_li_ss_tl?ie=UTF8&amp;qid=1535488914&amp;sr=8-1&amp;keywords=the+one+thing&amp;dpID=31bLXJwHXlL&amp;preST=_SY291_BO1,204,203,200_QL40_&amp;dpSrc=srch&amp;linkCode=sl1&amp;tag=devchattv-20&amp;linkId=48a970a5c61e9d72b797162776c7052f&amp;language=en_US">The One Thing</a></li> <li><a href="https://www.youtube.com/c/devchattv">DevChat TV &ndash; YouTube</a></li> <li><a href="https://github.com/toomuchdesign/offside">GitHub: Off Side</a></li> <li><a href="https://www.hbo.com/insecure">HBO: Insecure</a></li> <li><a href="https://www.wix.engineering">Wix: Engineering</a></li> <li><a href="https://twitter.com/hashtag/JavaScriptRiddle">JavaScript Riddle</a></li> <li><a href="https://fwdays.com/en/event/frontend-fwdays-17/review/javascript-riddles">JavaScript Riddles for Fun and for Profit</a></li> <li><a href="https://twitter.com/DanShappir?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Dan Shappir&rsquo;s Twitter</a></li> <li><a href="https://il.linkedin.com/in/dshappir">Dan Shappir&rsquo;s LinkedIn</a></li> <li><a href="https://www.crunchbase.com/person/dan-shappir">Dan Shappir&rsquo;s Crunch Base</a></li> <li><a href="https://github.com/DanShappir">Dan Shappir&rsquo;s GitHub</a></li> <li><a href="https://conferences.oreilly.com/fluent/fl-ca/public/schedule/speaker/221820">Dan Shappir&rsquo;s Talk through Fluent</a></li> <li><a href="https://medium.com/@DanShappir">Dan Shappir&rsquo;s Medium</a></li> <li><a href="https://youtu.be/D-juPGb7EKY">Dan Shappir&rsquo;s YouTube Talk: JavaScript riddles for fun and profit</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="http://codebadge.org">Code Badges</a></li> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Digital Ocean</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li>&nbsp;</li> </ul> <p><strong>Picks:</strong></p> <p><a href="http://www.aimeemarieknight.com">Aimee:</a></p> <ul> <li>Waking up early!</li> <li><a href="https://jrsinclair.com/articles/2018/how-to-deal-with-dirty-side-effects-in-your-pure-functional-javascript/">How to Deal with Dirty Side Effects in Your Pure Functional JavaScript </a></li> </ul> <p><a href="https://2013.boston.wordcamp.org/speakers/">Chris</a>:</p> <ul> <li><a href="https://github.com/toomuchdesign/offside">Offside - Toomuchdesign</a></li> <li><a href="https://www.hbo.com/insecure">Insecure TV Show </a></li> </ul> <p><a href="https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Charles:</a></p> <ul> <li><a href="https://play.google.com/store/apps/details?id=com.alexanderwinn.TerraGenesis&amp;hl=en_US">Terraform - Game </a></li> <li><a href="https://www.amazon.com/ONE-Thing-Surprisingly-Extraordinary-Results/dp/1885167776/ref=as_li_ss_tl?ie=UTF8&amp;qid=1535488914&amp;sr=8-1&amp;keywords=the+one+thing&amp;dpID=31bLXJwHXlL&amp;preST=_SY291_BO1,204,203,200_QL40_&amp;dpSrc=srch&amp;linkCode=sl1&amp;tag=devchattv-20&amp;linkId=48a970a5c61e9d72b797162776c7052f&amp;language=en_US">&ldquo;The One Thing&quot;</a></li> <li><a href="http://codebadge.org/">Code Badge</a></li> <li><a href="https://www.youtube.com/c/devchattv">DevChat on YouTube</a></li> </ul> <p><a href="https://twitter.com/DanShappir?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Dan</a></p> <ul> <li><a href="https://www.wix.engineering/">Wix Engineering </a></li> <li><a href="https://twitter.com/hashtag/JavaScriptRiddle">JavaScript Riddle</a></li> </ul>
Oct 09, 2018
MJS 079: Michael Garrigan
33:31
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="http://michaelgarrigan.com">Michael Garrigan </a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="http://michaelgarrigan.com">http://michaelgarrigan.com</a> who is one of the podcast&rsquo;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&rsquo;s episode to hear <a href="http://michaelgarrigan.com">Michael&rsquo;s</a> unique experience with programming and JavaScript.</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>1:18 &ndash; 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.</p> <p>2:25 &ndash; Michael&rsquo;s background! His experience is a mid-career change. To see the things that are intimidating and exciting.</p> <p>3:16 &ndash; How did you get into programming?</p> <p>3:23 &ndash; Michael: How do people talk to machines? What are the different computer languages out there? What do people prefer to use? The <a href="https://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=as_li_ss_tl?ie=UTF8&amp;linkCode=sl1&amp;tag=devchattv-20&amp;linkId=ebc17265e34bf70ada8a866f2588f1a7&amp;language=en_US">C programming language</a>, I saw as the &ldquo;grandfather&rdquo; program. That&rsquo;s the first thing I looked at. Then I was like, &ldquo;what is going on?&rdquo; I got a copy of the original <a href="https://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=as_li_ss_tl?ie=UTF8&amp;linkCode=sl1&amp;tag=devchattv-20&amp;linkId=ebc17265e34bf70ada8a866f2588f1a7&amp;language=en_US">K&amp;R book</a> and worked through that.</p> <p>4:58 &ndash; 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?</p> <p>5:26 &ndash; 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&rsquo;s a great entry point. We started building things in React and how fun that is. I enjoy <a href="https://www.javascript.com">JavaScript</a> in general.</p> <p>6:11 &ndash; Chuck: What is your career transition?</p> <p>6:18 &ndash; 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&rsquo;s how I got into it. That was the gateway to something that was scary to something that made programs.</p> <p>8:24 &ndash; 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?</p> <p>9:01 &ndash; 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.</p> <p>9:52 &ndash; Chuck: At what point do you say I want to do a boot camp?</p> <p>10:04 &ndash; 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.</p> <p>10:51 &ndash; Chuck: Who did you talk to who got you started?</p> <p>10:57 &ndash; 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.</p> <p>12:13 &ndash; Chuck: In NY city? It&rsquo;s pricy to live there.</p> <p>12:33 &ndash; Guest: Cost of living is much greater.</p> <p>12:42 &ndash; Chuck: What was it like to go to a boot camp?</p> <p>12:50 &ndash; Guest answers question.</p> <p>14:30 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement &ndash; Get a Coder Job</a></p> <p>15:11 &ndash; Chuck: What different projects have you worked on?</p> <p>15:19 &ndash; Guest talks about his many different projects. Like senses.gov.</p> <p>18:11 &ndash; Michael: Working on getting a job. I put together a portfolio and just graduated this past week.</p> <p>19:38 &ndash; Charles: Anything that has been a huge challenge for you?</p> <p>19:47 &ndash; Not really just one. I&rsquo;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&rsquo;t think that will really affect me.</p> <p>20:25 &ndash; Chuck: Yeah, it&rsquo;s rally not age-bias.</p> <p>20:55 &ndash; Michael: &ldquo;Making your bones&rdquo; 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...</p> <p>21:43 &ndash; Chuck: Anything else?</p> <p>21:51 &ndash; Guest: <a href="https://www.meetup.com">Meetups.</a></p> <p>22:40 &ndash; Chuck: I have been putting time into making this book.</p> <p>22:53 &ndash; Guest puts in his last comments.</p> <p>24:00 &ndash; Chuck: Thinking about what I want DevChat TV to be. I have been thinking and writing the mission statement for DevChat TV.</p> <p>25:14 &ndash; Chuck: It&rsquo;s a big deal to get out of debt. My wife and I will be at the end of the year.</p> <p>25:37 &ndash; Guest: Discipline not to spend money, and peer pressure.</p> <p>25:48 &ndash; Picks!</p> <p>25:57 &ndash; Advertisement for Digital Ocean!</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://www.daveramsey.com">Book</a></li> <li><a href="https://www.daveramsey.com">Dave Ramsey: Introducing Our Brand-New Book!</a></li> <li><a href="https://www.hackreactor.com">Hack Reactor</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.meetup.com">Meetup</a></li> <li><a href="http://michaelgarrigan.com">Michaelgarrigan.com &ndash; website</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="http://codebadge.org/">Code Badge</a></li> <li>Digital Ocean</li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> </ul> <p><strong>Picks:</strong></p> <p><a href="https://twitter.com/cmaxw?lang=en">Charles</a></p> <ul> <li><a href="https://www.tntdrama.com/shows/the-last-ship">TNT &ndash; The Last Ship</a></li> <li><a href="https://boardgamegeek.com/boardgame/161936/pandemic-legacy-season-1">Board game &ndash; Pandemic Legacy</a></li> <li>Kickstarter &ndash; <a href="http://codebadge.org/">Code Badges</a></li> </ul> <p><a href="http://michaelgarrigan.com">Michael Garrigan</a></p> <ul> <li>Brad&rsquo;s YouTube channel - &frac12; million subscribers</li> <li><a href="http://michaelgarrigan.com">Michaelgarrigan.com &ndash; website</a></li> </ul>
Oct 03, 2018
JSJ 333: “JavaScript 2018: Things You Need to Know, and a Few You Can Skip” with Ethan Brown
1:12:33
<p><strong>Panel: </strong></p> <ul> <li><a href="http://www.aimeemarieknight.com">Aimee Knight</a></li> <li><a href="https://twitter.com/josepheames?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Joe Eames</a></li> <li><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></li> </ul> <p><strong>Special Guests:</strong> <a href="https://twitter.com/ethanrbrown?lang=en">Ethan Brown</a></p> <p>In this episode, the panel talks with <a href="https://twitter.com/ethanrbrown?lang=en">Ethan Brown</a> 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!</p> <p><strong>Show Topics:</strong></p> <p>2:38 &ndash; Chuck: We are here to talk about the software side of things.</p> <p>Let&rsquo;s dive into what you are looking at mid-year what we need to know for 2018. You wrote this.</p> <p>3:25 &ndash; <a href="https://twitter.com/ethanrbrown?lang=en">Ethan</a>: I start off saying that doing this podcast now, how quickly things change. One thing I didn&rsquo;t think people needed to know was symbols, and now that&rsquo;s changed. I had a hard time with bundling and other things. I didn&rsquo;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&rsquo;ve had problems in the past. They said: are you crazy?!</p> <p>It&rsquo;s funny to see how I things have changed.</p> <p>4:47 &ndash; Panel: Could you talk about symbols?</p> <p>4:58 &ndash; Aimee: Are they comparable to Ruby?</p> <p>5:05 &ndash; Ethan talks about what symbols are and what they do!</p> <p>5:52 &ndash; Chuck: That&rsquo;s pretty close to how that&rsquo;s used in Ruby, too.</p> <p>6:04 &ndash; Aimee: I haven&rsquo;t used them in JavaScript, yet. When have you used them recently?</p> <p>6:15 &ndash; Ethan answers the question.</p> <p>7:17 &ndash; Panelist chimes in.</p> <p>7:27 &ndash; Ethan continues his answer. The topic of &ldquo;symbols&rdquo; continues. Ethan talks about <a href="https://github.com/automerge/automerge">Automerge.</a></p> <p>11:18 &ndash; Chuck: I want to dive-into what you SHOULD know in 2018 &ndash; does this come from your experience? Or how did you drive this list?</p> <p>11:40 &ndash; 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.</p> <p>12:25 &ndash; Chuck: Most of these things are what people are talking.</p> <p>12:47 &ndash; Aimee: Web Assembly. Why is this on the list?</p> <p>12:58 &ndash; 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 &ndash; I would</p> <p>14:23 &ndash; Would you put block chain on there? And AI?</p> <p>14:34 &ndash; Panel: I think it&rsquo;s something you should be aware of in regards to web assembly. I think it will be aware of. I don&rsquo;t know if there is anything functional that I could use it with.</p> <p>15:18 &ndash; Chuck: I haven&rsquo;t really played with it...</p> <p>15:27 &ndash; Panel: If you wrote this today would you put machine learning on there?</p> <p>15:37 &ndash; Ethan: Machine Learning...</p> <p>16:44 &ndash; Chuck: Back to Web Assembly. I don&rsquo;t think you were wrong, I think you were early. Web Assembly isn&rsquo;t design just to be a ... It&rsquo;s designed to be highly optimized for...</p> <p>17:45 &ndash; Ethan: Well-said. Most of the work I do today we are hardly taxing the devices we are using on.</p> <p>18:18 &ndash; Chuck and panel chime in.</p> <p>18:39 &ndash; Chuck: I did think the next two you have on here makes sense.</p> <p>18:54 &ndash; Panel: Functional programming?</p> <p>19:02 &ndash; Ethan: I have a lot of thoughts on functional programming and they are mixed. I was exposed to this in the late 90&rsquo;s. It was around by 20-30 years. These aren&rsquo;t new. I do credit JavaScript to bring these to the masses. It&rsquo;s the first language I see the masses clinging to. 10 years ago you didn&rsquo;t see that. I think that&rsquo;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.)</p> <p>Ethan: I love <a href="http://elm-lang.org">Elm.</a></p> <p>21:49 &ndash; Panelists talks about <a href="http://elm-lang.org">Elm.</a></p> <p>*The topic diverts slightly.</p> <p>22:23 &ndash; Panel: Here&rsquo;s a counter-argument. <em>Want to stir the pot a little bit.</em></p> <p>I want to take the side of someone who does NOT like functional programming.</p> <p>24:08 &ndash; Ethan: I don&rsquo;t disagree with you. There are some things I agree with and things I do disagree with. Let&rsquo;s talk about Data Structures. I feel like I use this everyday. Maybe it&rsquo;s the common ones. The computer science background definitely helps out.</p> <p>If there was one data structure, it would be <a href="https://course.ccs.neu.edu/cs2510/lab10.html">TREES</a>. I think <a href="https://course.ccs.neu.edu/cs2510/lab10.html">STACKS and QUEUES</a> are important, too. Don&rsquo;t use 200-300 hours, but here are the most important ones. For algorithms that maybe you should know and bust out by heart.</p> <p>27:48 &ndash; Advertisement for Chuck&rsquo;s E-book Course: Get A Coder Job</p> <p>28:30 &ndash; Chuck: Functional programming &ndash; people talk bout why they hate it, and people go all the way down and they say: You have to do it this way....</p> <p>What pay things will pay off for me, and which things won&rsquo;t pay off for me? For a lot of the easy wins it has already been discussed. I can&rsquo;t remember all the principles behind it. You are looking at real tradeoffs.&nbsp; 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.</p> <p>30:18 &ndash; Ethan: Having the right tools in your toolbox.</p> <p>30:45 &ndash; Panel: I agree with everything you said, I was on board, until you said: Get Merge Conflicts.</p> <p>I think as developers we are being dragged in...</p> <p>33:55 &ndash; Panelist: Is this the RIGHT tool to use in this situation?</p> <p>34:06 &ndash; Aimee: If you are ever feeling super imposed about something then make sure you give it a fair shot, first.</p> <p>34:28 &ndash; That&rsquo;s the only reason why I keep watching DC movies.</p> <p>34:41 &ndash; Chuck: Functional programming and...</p> <p>I see people react because of the hype cycle. It doesn&rsquo;t fit into my current paradigm. Is it super popular for a few months or...?</p> <p>35:10 &ndash; Aimee: I would love for someone to point out a way those pure functions that wouldn&rsquo;t make their code more testable.</p> <p>35:42 &ndash; 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 &ndash; don&rsquo;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&rsquo;t at first. At the time we went with <a href="https://vuejs.org">Vue</a> (old dog like me). I cost us 80,000 lines of code and how many man hours because I wasn&rsquo;t keeping an open-mind?</p> <p>37:54 &ndash; Chuck: We can all say that with someone we&rsquo;ve done.</p> <p>38:04 &ndash; Panel shares a personal story.</p> <p>38:32 &ndash; 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!</p> <p>39:12 &ndash; <a href="https://twitter.com/ethanrbrown?lang=en">Ethan</a>: Why should you do automated testing? Here is why...</p> <p>You have to not be afraid of testing. Not afraid of breaking things and getting messy.</p> <p>39:51 &ndash; Panel: Immutability?</p> <p>40:00 &ndash; Ethan talks about this topic.</p> <p>42:58 &ndash; Chuck: You have summed up my experience with it.</p> <p>43:10 &ndash; Panel: Yep. I agree. This is stupid why would I make a copy of a huge structure, when...</p> <p>44:03 &ndash; Chuck: To Joe&rsquo;s point &ndash; but it wasn&rsquo;t just &ldquo;this was a dumb way&rdquo; &ndash; it was also trivial, too. I am doing all of these operations and look my memory doesn&rsquo;t go through the roof. They you see it pay off. If you don&rsquo;t see how it&rsquo;s saving you effort, at first, then you really understand later.</p> <p>44:58 &ndash; 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.</p> <p>As I am working in a system that is NOT a pleasure.</p> <p>45:31 &ndash; Chuck: It&rsquo;s called legacy code...</p> <p>45:38 &ndash; What is the code year? What constitutes a legacy application?</p> <p>45:55 &ndash; Panel: 7 times &ndash; good rule.</p> <p>46:10 &ndash; Aimee: I am not trolling. Serious conversation I was having with them this year.</p> <p>46:27 &ndash; Just like cars.</p> <p>46:34 &ndash; Chuck chimes in with his rule of thumb.</p> <p>46:244 &ndash; Panel and Chuck go back-and-forth with this topic.</p> <p>47:14 &ndash; <a href="https://goo.gl/images/zYphSJ">Dilbert cartoons &ndash; check it out.</a></p> <p>47:55 &ndash; GREAT QUOTE about life lessons.</p> <p>48:09 &ndash; Chuck: I wish I knew then what I know now.</p> <p>Data binding. <a href="https://www.fullstackreact.com/p/intro-to-flux-and-redux/">Flux and Redux</a>. 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?</p> <p>48:51 &ndash; <a href="https://twitter.com/ethanrbrown?lang=en">Ethan</a> answers question.</p> <p>51:17 &ndash; Panel chimes in.</p> <p>52:01 &ndash; Picks!</p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> <li><a href="http://elm-lang.org">Elm</a></li> <li><a href="https://vuejs.org">Vue</a></li> <li><a href="https://github.com/automerge/automerge">Automerge - GITHUB</a></li> <li><a href="https://leanpub.com/fljs">Functional &ndash; Light JavaScript</a></li> <li><a href="https://comicbook.com/starwars/2018/08/21/lego-betrayal-at-cloud-city-star-wars-set/">Lego&rsquo;s Massive Cloud City Star Wars</a></li> <li><a href="https://shop.lego.com/en-US/Betrayal-at-Cloud-City-75222?CMP=EMC-VIP2018_08_21_Cloud_City_Announcement_EN+_US&amp;HQS=Hero_A_CTA_NA_EN&amp;RMID=VIP_2018_08_21_Cloud_City_Announcement_NA&amp;RRID=982003962">Lego Shop</a></li> <li><a href="https://www.amazon.com/s/ref=as_li_ss_tl?url=search-alias=aps&amp;field-keywords=the+travelers+gift+by+andy+andrews&amp;sprefix=the+travelers+gift,aps,168&amp;crid=3LUZO4J5UR0RK&amp;linkCode=sl2&amp;tag=devchattv-20&amp;linkId=5075904966a764dd4773d721263b0607&amp;language=en_US">The Traveler&rsquo;s Gift &ndash; Book</a></li> <li><a href="https://www.nytimes.com/2018/08/11/opinion/sunday/nerds-lebron-james-elon-musk.html">Jocks Rule, Nerds Drool by Jennifer Wright</a></li> <li><a href="http://2ality.com">2ality &ndash; JavaScript and more</a></li> <li><a href="https://cooperpress.com">Cooper Press</a></li> <li><a href="https://www.amazon.com/Learning-JavaScript-Essentials-Application-Development/dp/1491914912/ref=sr_1_4?s=books&amp;ie=UTF8&amp;qid=1538323189&amp;sr=1-4">Book &ndash; Ethan Brown</a></li> <li><a href="https://www.oreilly.com/pub/au/6091">O&rsquo;Reilly Community &ndash; Ethan Brown&rsquo;s Bio</a></li> <li><a href="https://twitter.com/ethanrbrown?lang=en">Ethan Brown&rsquo;s Twitter</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Digital Ocean</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li>&nbsp;</li> </ul> <p><strong>Picks:</strong></p> <p><strong>Aimee</strong></p> <ul> <li><a href="https://www.npmjs.com/package/pettier">Pettier </a></li> </ul> <p><strong>Joe </strong></p> <ul> <li><a href="https://shop.lego.com/en-US/Betrayal-at-Cloud-City-75222?CMP=EMC-VIP2018_08_21_Cloud_City_Announcement_EN+_US&amp;HQS=Hero_A_CTA_NA_EN&amp;RMID=VIP_2018_08_21_Cloud_City_Announcement_NA&amp;RRID=982003962">Lego - Star Wars Betrayal at Cloud City </a></li> <li><a href="https://leanpub.com/fljs">Functional-Light JavaScript</a></li> </ul> <p><strong>Charles </strong></p> <ul> <li><a href="https://amzn.to/2OWGN01">The Traveler&rsquo;s Gift</a></li> <li><a href="https://www.amazon.com/Shack-Where-Tragedy-Confronts-Eternity/dp/0964729237/ref=as_li_ss_tl?ie=UTF8&amp;qid=1534884426&amp;sr=8-2&amp;keywords=The+shack&amp;linkCode=sl1&amp;tag=devchattv-20&amp;linkId=bfa7b13077bd7269e3ade9385424a5cf&amp;language=en_US">The Shack</a></li> <li><a href="https://www.amazon.com/Dulcinea/dp/B018BZ3SCM/ref=sr_1_1?ie=UTF8&amp;qid=1538068171&amp;sr=8-1&amp;keywords=the+expanse">The Expanse </a></li> </ul> <p><strong>Ethan</strong></p> <ul> <li><a href="https://www.nytimes.com/2018/08/11/opinion/sunday/nerds-lebron-james-elon-musk.html">Jocks Rule, Nerd Drool</a></li> <li><a href="http://2ality.com/">JavaScipt Blog by Dr. Axel Rauschmayer</a></li> <li><a href="https://cooperpress.com/">Cooper Press</a></li> </ul>
Oct 02, 2018
MJS 078: Steve Edwards
39:09
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://twitter.com/wonder95">Steve Edwards</a></p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://twitter.com/wonder95">Steve Edwards</a> who is a website developer and lives in Portland, OR. He is a senior developer at an international corporation called, <a href="https://www.fluke.com">Fluke</a>. Today&rsquo;s main topic of conversation is <a href="https://www.drupal.org">Drupal</a>. Check out the episode to hear about this and much more!&nbsp;</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>1:05 &ndash; Chuck: Welcome! I appreciate your contributions with hooking me up with some people.</p> <p>2:22 &ndash; Started in IT in 1995.</p> <p>2:38 &ndash; Chuck: How did you get into software development?</p> <p>2:46 &ndash; Steve: In high school not much courses on it. Then in college did some programming there. After college, I was supposed to get married. I was thinking finance. Never nailed down what I wanted to do. Called Bank of America in 1991 &ndash; called them. He said let me put in touch with someone. One of the things I got to put classes on &ldquo;how does this system work.&rdquo; I got into the banking job and realized not for me. Did realize that I do like teaching. Got software support for another bank. My banking software experience got me the job. We did interfaces &ndash; data from PC base to main systems like IBM, etc. I dealt with the source. Same time, I was a diehard racket ball player; on the board state organization. Someone organizing a website for group through Front Page. Hey do you want to take this over? Got to know Front Page. It&rsquo;s painful to think about it. Same time a position opened up. I got PHP books, and created a new website for our racket ball organization. Off-time learning this. At work I used other tools for the job. That&rsquo;s where I got into programming and developing. I was an analyst and wanted to program. I created a website from nothing in 2004 for a mountain bike shop. Learned a lot about PHB &ndash; and learned that I never want to build anything from scratch ever again. 2006 I start looing for a CMS and I got into some evaluations and got into <a href="https://www.drupal.org">Drupal</a>. Now I got to do fulltime <a href="https://www.drupal.org">Drupal</a>. Some guys left the company and got to do <a href="https://www.drupal.org">Drupal</a>, also. There&rsquo;s a book on basic <a href="https://www.javascript.com">JavaScript</a>, and haven&rsquo;t gotten into it. It&rsquo;s nice because since 2009 I have been working from home. 3-4 years ago I heard about <a href="https://angular.io">Angular</a> and how it was used in <a href="https://www.drupal.org">Drupal</a>. Weather.com &ndash; they did things with Angular. I started diving into <a href="https://angular.io">Angular</a>. Then a small project &ndash; worked with Travis then we started with our new ideas/projects. Then I went and took some <a href="https://angular.io">Angular</a> classes, and I was working on my project. I had these questions. They said that this was used for a one-time use. Okay, I had to figure it out. Travis one day asked: What are you doing? I showed him with the calendar and integrated with... Travis asked if I wanted to go to work with him. Then the past few years I have been working with <a href="https://vuejs.org">Vue.js</a>.</p> <p>12:41 &ndash; Chuck: In 2006 I got into Ruby on Rails. I got into <a href="https://jquery.com">jQuery</a> and did some backbone and progressed the same way you did. Worked with <a href="https://angular.io">Angular</a> and Vue. There is a lot going on there. Interesting to see how this has all progressed. At what point did you decide &ndash; <a href="https://www.javascript.com">JavaScript</a> is the focus to some of these projects?</p> <p>13:42 &ndash;<a href="https://www.linkedin.com/in/wonder95"> Steve</a>: Lightweight functions.</p> <p>15:25 &ndash; <a href="https://devchat.tv/get-a-coder-job/">Advertisement &ndash; Coder Job</a></p> <p>16:05 &ndash; Chuck: What are you proud of with the work you&rsquo;ve done?</p> <p>16:20 &ndash; Steve: Article - All the different projects that it looks like for a developer &ndash; I have 5 or 6 projects that I want to get to that I haven&rsquo;t had time to get to.</p> <p>Steve talks about one of the projects he is working on.</p> <p>17:55 &ndash; Chuck: What are you working on now?</p> <p>17:59 &ndash; <a href="https://www.linkedin.com/in/wonder95">Steve</a>: My company, Fluke, we have a cool setup. It has a three-legged system. In that we have all the background data, another for digital assets, and...</p> <p>Steve: It&rsquo;s so fast &ndash; I am trying to enhance it to make it even faster.</p> <p>Another thing that I am working on is that we have a scheduling website for the fire department I am apart of. Band-Aids and glue hold it together. I am trying to work with a calendar so it can integrate &ndash; take over the data of a cell and put y stuff in there.&nbsp; It would be efficient so I don&rsquo;t get all these errors with this old system. It would give me grand control.</p> <p>20:16 &ndash; Steve: I want to get more and more into JavaScript. The one thing that I like about my story is that you did in your spare time. That&rsquo;s how I got into Google. Multiple years working up late, working with people and different modules. I got good enough (in 2009) and got good enough &ndash; it got me into the door.</p> <p>21:13 &ndash; Chuck talks about his course on how to get a job.</p> <p>Chuck: All you have to do to level-up is to put into the time. Working on open-source project</p> <p>21:56 &ndash; Steve: Learning &ndash; find a project you want to do. What is something you want to tackle? What and how can you get it done with your tools? Stack overflow, or<a href="https://slack.com/lp/two?cvosrc=ppc.google.d_ppc_google_us_en_brand-hv&amp;cvo_creative=257483843273&amp;utm_medium=ppc&amp;utm_source=google&amp;utm_campaign=d_ppc_google_us_en_brand-hv&amp;utm_term=slack&amp;cvosrc=ppc.google.slack&amp;cvo_campaign=&amp;cvo_crid=257483843273&amp;Matchtype=e&amp;utm_source=google&amp;utm_medium=ppc&amp;c3api=5523,257483843273,slack&amp;gclid=EAIaIQobChMI7arP4t_Z3QIVD5t-Ch0lkAAXEAAYASAAEgKrOfD_BwE&amp;gclsrc=aw.ds&amp;dclid=CK6Wm-Tf2d0CFZDBwAodYAYANg"> Slack</a> questions. We started a new <a href="https://www.meetup.com">Meetup</a> (last meeting was last month) and people do Vue on a regular basis. Slack room. That&rsquo;s how I got into...</p> <p>Personal experience you can help people and find</p> <p>23:00 &ndash; Chuck: People want to level-up for different reasons. Whether you are trying to get better, or learn new things &ndash; getting to know people and having these conversations will shape your thinking.</p> <p>23:33 &ndash; Steve: Also, networking.</p> <p>24:10 &ndash; Chuck: I wasn&rsquo;t happy where I was at and talked to people. Hey &ndash; what else is out there?</p> <p>24:37 &ndash; Chuck: Any recommendations?</p> <p>24:42 &ndash; Steve: The amount of courses that are out there, and it can be overwhelming. Find courses when they go on sale. I found some courses that were only $10.00. There is stuff that is free and things that you can pay for. It can be inexpensive.</p> <p>26:38 &ndash; Chuck: I do the same thing. I wait for things to go on sale first. I&rsquo;ve done that with courses. However you learn it. Some people work through a book and for others that&rsquo;s not the way. Sometimes I will start with a video course then I get frustrated. It helps, though. There are different ways to do it. Go do it.</p> <p>27:39 &ndash; Steve: There is a lot of good jobs &ndash; get your foot in the door as a junior guy. Getting the real-life experience.</p> <p>28:15 &ndash; Chuck: How do people get ahold of you?</p> <p>28:18 &ndash; Steve: Twitter, GitHub, wherever...</p> <p>28:48 &ndash; Picks!</p> <p>28:53 &ndash; Advertisement for Digital Ocean</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://weather.com">Weather.com</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://www.drupal.org">Drupal</a></li> <li><a href="https://devchat.tv/adv-in-angular/aia-125-api-powered-components-for-severless-applications-with-travis-tidwell/">DevChat TV</a></li> <li><a href="https://www.pluralsight.com">Plural Sight</a></li> <li><a href="https://events.drupal.org">Events &ndash; Drupal</a></li> <li><a href="https://www.fluke.com">Fluke</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://slack.com/lp/two?cvosrc=ppc.google.d_ppc_google_us_en_brand-hv&amp;cvo_creative=257483843273&amp;utm_medium=ppc&amp;utm_source=google&amp;utm_campaign=d_ppc_google_us_en_brand-hv&amp;utm_term=slack&amp;cvosrc=ppc.google.slack&amp;cvo_campaign=&amp;cvo_crid=257483843273&amp;Matchtype=e&amp;utm_source=google&amp;utm_medium=ppc&amp;c3api=5523,257483843273,slack&amp;gclid=EAIaIQobChMI7arP4t_Z3QIVD5t-Ch0lkAAXEAAYASAAEgKrOfD_BwE&amp;gclsrc=aw.ds&amp;dclid=CK6Wm-Tf2d0CFZDBwAodYAYANg">Slack</a></li> <li><a href="https://www.meetup.com">Meetup</a></li> <li><a href="https://vuejs.org">Vue.js</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://twitter.com/wonder95">Steve Edwards @Wonder95</a></li> <li><a href="https://www.linkedin.com/in/wonder95">Steve Edwards&rsquo; LinkedIn</a></li> <li><a href="http://www.smgaweb.com/">Steve Edwards&#39; Blog</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="http://codebadge.org/">Code Badge</a></li> <li>Digital Ocean</li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> </ul> <p><strong>Picks:</strong></p> <p><a href="https://twitter.com/cmaxw?lang=en">Charles</a></p> <ul> <li><a href="http://thelaunchbook.com">Book: Launch by Jeff Walker</a></li> <li><a href="https://devchat.tv/get-a-coder-job/">Get A Coder Job</a></li> <li><a href="https://www.kickstarter.com/projects/521063736/codebadgeorg">Code Badge</a></li> <li>System to help manage the podcast &ndash; scheduling, promotion, etc.</li> <li><a href="https://www.hulu.com/series/the-librarians-f8751b7a-2d4b-46f1-bcae-df7b8e317f99">The Librarians</a> &ndash; TV show</li> <li><a href="https://www.sling.com/programming/sports/schedules">Sling &ndash; BYU football games</a></li> </ul> <p><a href="https://twitter.com/wonder95">Steve Edwards</a></p> <ul> <li><a href="https://www.amazon.com/Victory-Reason-Christianity-Freedom-Capitalism/dp/0812972333">Rodney Stark &ndash; History Books &ndash; History of Christianity &ndash; Title: The Victory of Reason</a></li> <li><a href="https://www.crossfit.com">CrossFit</a></li> <li><a href="https://games.crossfit.com/teamseries">CrossFit Games</a></li> </ul>
Sep 26, 2018
JSJ 332: “You Learned JavaScript, Now What?” with Chris Heilmann
1:13:57
<p><strong>Panel: </strong></p> <ul> <li><a href="https://twitter.com/coolaj86?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">AJ O&rsquo;Neal</a></li> <li><a href="http://www.aimeemarieknight.com">Aimee Knight</a></li> <li><a href="https://twitter.com/josepheames?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Joe Eames</a></li> <li><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></li> </ul> <p><strong>Special Guests:</strong> <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris Heilmann</a></p> <p>In this episode, the panel talks with programmer, <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris Heilmann</a>. He has written books about <a href="https://www.javascript.com">JavaScript</a>, in addition to writing a blog about it and is an educator about this program.&nbsp; He currently resides in Berlin, Germany. Let&rsquo;s welcome our special guest and listen to today&rsquo;s episode!</p> <p><strong>Show Topics:</strong></p> <p>2:19 &ndash; Chuck talks.</p> <p>2:41 &ndash; Chris: He has talked about <a href="https://www.javascript.com">JavaScript</a> in Berlin upon an invitation. You can get five different suggestions about how to use <a href="https://www.javascript.com">JavaScript</a>. The best practices, I have found, are on the projects I am on now. <a href="https://www.javascript.com">JavaScript</a> was built in ten days. My goal is to help people navigate through <a href="https://www.javascript.com">JavaScript</a> and help them feel not disenfranchised.&nbsp;</p> <p>5:47 &ndash; Aimee: The overall theme is...</p> <p>5:54 &ndash; Panelist: I really like what you said about helping people not feeling disenfranchised.</p> <p>6:47 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a>: There is a lot of peer pressure at peer conferences</p> <p>7:30 &ndash; Aimee chimes in with some comments.</p> <p>7:50: Chris: I think we need to hunt the person down that put...</p> <p>8:03 &ndash; Panelist: A good point to that is, I try to avoid comments like, &ldquo;Well, like we ALL know...&rdquo;</p> <p>8:27 &ndash; Chris: There are things NOT to say on stage. It happens, but we don&rsquo;t want to say certain things while we are teaching people. We are building products with different groups, so keep that in mind.</p> <p>9:40 &ndash; Aimee: My experience in doing this is that I have found it very rewarding to share embarrassing experiences that I&rsquo;ve had. My advice would to tell people to let their guard down. It&rsquo;s encouraging for me.</p> <p>10:26 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a>: 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.</p> <p>11:05 &ndash; <a href="https://twitter.com/cmaxw?lang=en">Chuck</a>: Now, I do want to ask this...</p> <p>11:35 &ndash; Chris answers.</p> <p>12:24 &ndash; What makes you say that? (Question to Chris)</p> <p>12:25 &ndash; Chris answers.</p> <p>13:55 &ndash; Chuck: The different systems out there are either widely distributed or...</p> <p>You will have to work with other people. There is no way that people can make that on their own. If you can&rsquo;t work with other people, then you are a hindrance.</p> <p>14:31 &ndash; Aimee chimes in.</p> <p>14:53 &ndash; 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.</p> <p>16:07 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a>: Back to the article...</p> <p>18:26 &ndash; Chuck: Yes, I agree. Why go and fight creating a whole system when it exists.</p> <p>18:54 &ndash; Chris chimes in with some comments.</p> <p>19:38 &ndash; Panelist: I still use console logs.</p> <p>19:48 &ndash; Chris: We all do, but we have to...</p> <p>19:55 &ndash; Aimee: In the past year, I can&rsquo;t tell you how much I rely on this. Do I use <a href="https://angular.io">Angular</a>? Do I learn Vue? All those things that you can focus on &ndash; tools.</p> <p>10:21 &ndash; 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.</p> <p>22:10 &ndash; Chuck: That is the interesting message in your post, and that you are saying: having a deep, solid knowledge of <a href="https://reactjs.org">React</a> (that is sort of a status thing...). It is other things that really do matter. It&rsquo;s the impact we are having. It&rsquo;s those things that will make the difference. Those things people will want to work with and solves their problems.</p> <p>23:00 &ndash; Chris adds his comments. He talks about Flash.</p> <p>24:05 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a>: The librarian motto: &ldquo;I don&rsquo;t know everything, but I can look &ldquo;here&rdquo; to find the answer.&rdquo; We don&rsquo;t know everything.</p> <p>24:31 &ndash; Aimee: Learn how to learn.</p> <p>24:50 &ndash; Chris: There is a big gap in the market. Scratch is a cool tool and it&rsquo;s these puzzle pieces you put together. It was hard for me to use that system. No, I don&rsquo;t want to do that. But if you teach the kids these tools then that&rsquo;s good.&nbsp;</p> <p>24:56 &ndash; <a href="https://twitter.com/cmaxw?lang=en">Chuck</a>: Here is the link, and all I had to do was write<a href="https://reactjs.org"> React</a> components.</p> <p>26:12 &ndash; Chris: My first laptop was 5x more heavy then this one is. Having access to the Internet is a blessing.</p> <p>27:24 &ndash; <a href="https://sentry.io/welcome/">Advertisement</a></p> <p>28:21 &ndash; Chuck: Let&rsquo;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.</p> <p>Chris: 28:47 &ndash; Chris: Yes, get involved within your community. <a href="https://github.com">GitHub</a>. 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&rsquo;s not broken?</p> <p>31:00 &ndash; Chuck talks about his experience.</p> <p>31:13 &ndash; Chris continues his thoughts.</p> <p>Chris: Start growing a community.</p> <p>32:01 &ndash; Chuck: What ways can people get involved within their community?</p> <p>32:13 &ndash; Chris: <a href="https://www.meetup.com">Meetup.</a> There are a lot of opportunities out there. Just going online and seeing where the conferences</p> <p>34:08 &ndash; Chris: It&rsquo;s interesting when I coach people on public speaking. Sharing your knowledge and learning experience is great!</p> <p>34:50 &ndash; Chuck: If they are learning how to code then...by interacting with people you can get closer to what you need/want.</p> <p>35:30 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a> continues this conversation.</p> <p>35:49 &ndash; 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.</p> <p>36:23 &ndash; <a href="https://twitter.com/cmaxw?lang=en">Chuck</a>: How do you find out what is really good content &ndash; what&rsquo;s worth your time vs. what&rsquo;s not worth your time?</p> <p>36:36 &ndash;Chris says, &ldquo;That&rsquo;s tricky!&rdquo; Chris answers the question.</p> <p>37:19: Chris: The best things out there right now is...</p> <p>38:45 &ndash; Chuck: Anything else that people want to bring up?</p> <p>39:00 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a> continues to talk.</p> <p>42:26 &ndash; <a href="http://www.aimeemarieknight.com">Aimee</a> adds in her thoughts.</p> <p>Aimee: I would encourage people to...</p> <p>43:00 &ndash; Chris continues the conversation.</p> <p>Chris: Each project is different, when I build a web app is different then when I build a...</p> <p>45:07 &ndash; Panelist: I agree. You talked about abstractions that don&rsquo;t go away. You use abstractions in what you use. At some point, it&rsquo;s safe to rly on this abstraction, but not this one. People may ask themselves: maybe <a href="https://coffeescript.org">CoffeeScript</a> wasn&rsquo;t the best thing for me.</p> <p>46:11 &ndash; Chris comments and refers to<a href="https://jquery.com"> jQuery</a>.</p> <p>48:58 &ndash; Chris continues the conversation.</p> <p>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&rsquo;t have longevity? I think we are building things too soon and too fast.</p> <p>51:04 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a>: When I work in browsers and come up with brand new stuff.</p> <p>52:21 &ndash; Panelist: Your points are great, but there are some additional things we need to talk about. Let&rsquo;s take <a href="https://jquery.com">jQuery</a> as an example. There is a strong argument that if you misuse the browser...</p> <p>53:45 &ndash; Chris: The main issue I have with <a href="https://jquery.com">jQuery</a> is that people get an immediate satisfaction. What do we do besides this?</p> <p>55:58 &ndash; Panelist asks Chris further questions.</p> <p>56:25 &ndash; Chris answers.</p> <p>Chris: There are highly frequent websites that aren&rsquo;t being maintained and they aren&rsquo;t maintainable anymore.</p> <p>57:09 &ndash; Panelist: Prototypes were invented because...</p> <p>57:51 &ndash; Chris: It&rsquo;s a 20/20 thing.</p> <p>58:04 &ndash; Panelist: Same thing can be said about the Y2K.</p> <p>58:20 &ndash; Panelist: Yes, they had to solve that problem that day. The reality is...</p> <p>58:44 &ndash; <a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris</a>: We learned from that whole experience.</p> <p>1:00:51 &ndash; Chris: There was a lot of fluff around it.</p> <p>1:01:35 &ndash; Panelist: Being able to see the future would be a very helpful thing.</p> <p>1:01:43 &ndash; Chris continues the conversation.</p> <p>1:02:44 &ndash; Chuck: How do people get ahold of you?</p> <p>1:03:04 &ndash; Twitter is probably the best way.</p> <p>1:03:32 &ndash; Let&rsquo;s go to picks!</p> <p>1:03:36 - Advertisement</p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://webhint.io">So you Learned Java Script, what now? &ndash; Article</a></li> <li><a href="https://webhint.io">WebHint</a></li> <li><a href="https://jrsinclair.com/articles/2018/how-to-deal-with-dirty-side-effects-in-your-pure-functional-javascript/">Article by James Sinclair</a></li> <li><a href="https://www.amazon.com/Renegade-Game-Studios-Deck-Building-Adventure/dp/B01KAC6268/ref=as_li_ss_tl?ie=UTF8&amp;qid=1534279763&amp;sr=8-1&amp;keywords=clank+board+game&amp;dpID=61gHdS3ds2L&amp;preST=_SY300_QL70_&amp;dpSrc=srch&amp;linkCode=sl1&amp;tag=devchattv-20&amp;linkId=a18ebe9b4f625cabf6339f06526c0ffa&amp;language=en_US">Clank!</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://github.com">GitHub</a></li> <li><a href="https://www.meetup.com">Meetup</a></li> <li><a href="https://twitter.com/codepo8?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Chris Heilmann&rsquo;s Twitter</a></li> <li><a href="https://christianheilmann.com">Chris Heilmann&rsquo;s Website</a></li> <li><a href="https://medium.com/@codepo8">Chris Heilmann&rsquo;s Medium</a></li> <li><a href="https://medium.com/@codepo8">Chris Heilmann&rsquo;s LinkedIn</a></li> <li><a href="http://icant.co.uk">Chris Heilmann</a></li> <li><a href="https://github.com/codepo8">Chris Heilmann&rsquo;s GitHub</a></li> <li><a href="https://www.smashingmagazine.com/author/christian-heilmann/">Smashing Magazine &ndash; Chris Heilmann</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://coffeescript.org">CoffeeScript</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://elixir-lang.org">Elixir</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Digital Ocean</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> <li>&nbsp;</li> </ul> <p><strong>Picks :</strong></p> <p>Amiee</p> <ul> <li><a href="https://jrsinclair.com/articles/2018/how-to-deal-with-dirty-side-effects-in-your-pure-functional-javascript/">Hacker News -&nbsp; How to deal with dirty side effects in your pure functional JavaScript</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://keybase.io/">KeyBase</a></li> </ul> <p>Joe</p> <ul> <li><a href="https://www.frameworksummit.com/">Framework Summit</a></li> <li><a href="https://boardgamegeek.com/boardgame/201808/clank-deck-building-adventure">Clank </a></li> <li><a href="https://en.wikipedia.org/wiki/Autonomous_sensory_meridian_response">ASMR </a></li> </ul> <p>Charles</p> <ul> <li><a href="https://devchat.tv/get-a-coder-job/">Get a Coder Job Course </a></li> <li><a href="https://www.amazon.com/Iron-Druid-Chronicles-Book/dp/B073QYYPPH">The Iron Druid Chronicles </a></li> <li><a href="https://www.frameworksummit.com/">Framework Summit</a></li> </ul> <p>Chris</p> <ul> <li><a href="https://fitc.ca/event/webu18/banners/">Web Unleashed Toronto</a></li> <li><a href="https://www.youtube.com/user/Kurzgesagt">Kurzgesagt</a></li> <li><a href="https://www.amazon.co.uk/Just-You-Everythings-Not-Shit/dp/1905548672/ref=as_li_ss_tl?ie=UTF8&amp;qid=1534280345&amp;sr=8-1&amp;keywords=not+everything+is+shit&amp;linkCode=sl1&amp;tag=christianheil-21&amp;linkId=a1ebc43d1b7c6b9ccc60caccc30b5533&amp;language=en_GB">It Is Just You, Everything&rsquo;s Not Shit</a></li> </ul>
Sep 25, 2018
MJS 077: Sérgio Crisóstomo
34:21
<p><strong>Panel: </strong><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></p> <p><strong>Guest:</strong> <a href="https://github.com/SergioCrisostomo">S&eacute;rgio Cris&oacute;stomo</a></p> <p>This week on My JavaScript Story, Charles speaks with S&eacute;rgio Cris&oacute;stomo. Charles is now interviewing podcast listeners, not just guest speakers. Check-out toady&rsquo;s episode to hear S&eacute;rgio&rsquo;s background as a musician and as a programmer. Also, to hear S&eacute;rgio&rsquo;s latest projects and how he fell in-love with Sweden and ended up moving there!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <p>1:46 &ndash; Chuck: How did you get into programming?</p> <p>1:53 &ndash; S&eacute;rgio: As a child, I got interested into gaming. I wrote coding. Spectrum.</p> <p>2:22 &ndash; Chuck: I think that makes you about my age.</p> <p>2:41 &ndash; S&eacute;rgio: I was born in 1978.</p> <p>2:51 &ndash; S&eacute;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.</p> <p>3:29 &ndash; Chuck: what got you interested?</p> <p>3:30 &ndash; S&eacute;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.</p> <p>4:29 &ndash; Chuck: I used Logo. How did you get into programming at the professional-level?</p> <p>4:45 &ndash; S&eacute;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&rsquo;s in violin. After that I moved to Sweden. I really liked Sweden&rsquo;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&rsquo;t strong. I liked that I was helping the community. That made me feel good about c</p> <p>10:15 &ndash; Chuck: You switch from PHP to Node? What was the reasoning to that?</p> <p>11:30 &ndash; Chuck: What things have you built in JavaScript?</p> <p>11:47 &ndash; S&eacute;rgio: I started doing some freelance work. In the beginning it was helping friends.</p> <p>13:22 &ndash; Chuck: Football &ndash; do you mean soccer or football?</p> <p>13:35 &ndash; S&eacute;rgio: One day in the school, we got a new principal that the school didn&rsquo;t like. I left because I wasn&rsquo;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&rsquo;s a small company but it is growing.</p> <p>15:48 &ndash; <a href="http://codebadge.org/">Advertisement  E-book!</a></p> <p>16:31 &ndash; Chuck: It&rsquo;s interesting to see how you weren&rsquo;t happy with your original job and how you got into programming fulltime.</p> <p>17:29 &ndash; S&eacute;rgio: It&rsquo;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.</p> <p>19:36 &ndash; 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.</p> <p>20:21 &ndash; S&eacute;rgio: People will invest into you if you are willing to learn and stay for a while.</p> <p>20:48 &ndash; Chuck: What is the community like over in Sweden?</p> <p>21:12 &ndash; Chuck: Do you have a lot of communities/boot camps out there to help people to code out in Sweden?</p> <p>21:32 &ndash; S&eacute;rgio: Yes. It&rsquo;s a really active community, and I have been involved helping connect people. People are curious and wanting to grow. It&rsquo;s really open.</p> <p>22:39 &ndash; Chuck: How do you start a program like that?</p> <p>22:53 &ndash; S&eacute;rgio: I went to <a href="https://www.meetup.com">MEETUP.COM.&nbsp; </a></p> <p>23:45 &ndash; S&eacute;rgio: I fell in-love with the concept of Sweden&rsquo;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.</p> <p>25:18 &ndash; Chuck: What are you working on now?</p> <p>25:26 &ndash; S&eacute;rgio answers Chuck&rsquo;s question.</p> <p>26:45 &ndash; Chuck: Anything else?</p> <p>26:54 &ndash; S&eacute;rgio: I can talk about music a lot! I find a lot of programmers are musicians, too.</p> <p>27:23 &ndash; Chuck: One more question. I have met, too, a lot of programmers who are musicians, too. What is the correlation?</p> <p>27:43 &ndash; 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.</p> <p><strong>Links: </strong></p> <ul> <li><a href="https://www.meetup.com">Meetup.com</a></li> <li><a href="https://github.com/SergioCrisostomo">Sergio&rsquo;s GitHub</a></li> <li><a href="http://sergiofrilans.se">Sergio&rsquo;s Website</a></li> <li><a href="http://sergiofrilans.se/musician.html">Sergio&rsquo;s Website</a></li> <li><a href="https://twitter.com/sergiofrilans?lang=en">Sergio&rsquo;s Twitter</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="http://codebadge.org/">Code Badges</a></li> <li>Digital Ocean</li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> </ul> <p><strong>Picks:</strong></p> <p><a href="https://twitter.com/cmaxw?lang=en">Charles</a></p> <ul> <li><a href="https://devchat.tv/views-on-vue/">Views on Vue &ndash; DevChat</a></li> <li><a href="https://www.kickstarter.com/projects/521063736/codebadgeorg">Code Badge - Kick Starter</a></li> </ul> <p><a href="https://twitter.com/sergiofrilans?lang=en">S&eacute;rgio</a></p> <ul> <li><a href="https://en.wikipedia.org/wiki/Fr%25C3%25A9d%25C3%25A9ric_Chopin">Chopin!</a></li> <li><a href="https://www.prorenata.se">Checkout Sweden if you want a job as a programmer! Email me!</a></li> </ul>
Sep 19, 2018
JSJ 331: “An Overview of JavaScript Testing in 2018” with Vitali Zaidman
54:56
<p><strong>Panel: </strong></p> <ul> <li><a href="https://twitter.com/coolaj86?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">AJ O&rsquo;Neal</a></li> <li><a href="http://www.aimeemarieknight.com">Aimee Knight</a></li> <li><a href="https://twitter.com/josepheames?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Joe Eames</a></li> <li><a href="https://twitter.com/cmaxw?lang=en">Charles Max Wood</a></li> </ul> <p><strong>Special Guests:</strong> <a href="https://medium.com/@vzaidman">Vitali Zaidman</a></p> <p>In this episode, the panel talks with programmer, <a href="https://medium.com/@vzaidman">Vitali Zaidman</a>, 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 <a href="https://jestjs.io">Jest</a>.</p> <p><strong>Show Topics:</strong></p> <p>1:32 &ndash; Chuck: Let&rsquo;s talk about testing JavaScript in 2018.</p> <p>1:53 &ndash; <a href="https://medium.com/@vzaidman">Vitali</a> talks about solving problems in JavaScript.</p> <p>2:46 &ndash; Chuck asks <a href="https://medium.com/@vzaidman">Vitali</a> a question.</p> <p>3:03 &ndash; Vitali&rsquo;s answer.</p> <p>3:30 &ndash; Why <a href="https://jestjs.io">Jest</a>? Why not Mocha or these other programs?</p> <p>3:49 &ndash; <a href="https://jestjs.io">Jest</a> is the best interruption of what testing should look like and the best practice nowadays. There are different options, they can be better, but <a href="https://jestjs.io">Jest</a> has this great support from their community. There are great new features.</p> <p>4:31 &ndash; Chuck to Joe: What are you using for testing nowadays?</p> <p>4:43 &ndash; Joe: I use Angular, primarily.</p> <p>6:01 &ndash; Like life, it&rsquo;s sometimes easier to use things that make things very valuable.</p> <p>7:55 &ndash; Aimee: I have heard great things about <a href="http://www.cypress.com/documentation/software-and-drivers/free-and-open-source-software-download-page">Cypress</a>, but at work we are using another program.</p> <p>8:22 &ndash; Vitali: Check out my article.</p> <p>8:51 &ndash; Aimee: There are too many problems with the program that we use at work.</p> <p>9:39 &ndash; Panelist to Vitali: I read your article, and I am a fan. Why do you pick Test Caf&eacute; over Cypress, and how familiar are you with Cypress? What about Selenium and other programs?</p> <p>10:12 &ndash; Vitali: &ldquo;Test Caf&eacute; and Cypress are competing head-to-head.&rdquo;</p> <p>Listen to Vitali&rsquo;s suggestions and comments per the panelists&rsquo; question at this timestamp.</p> <p>11:25 &ndash; Chuck: I see that you use sign-on...</p> <p>12:29 &ndash; Aimee: Can you talk about<a href="https://github.com/GoogleChrome/puppeteer"> Puppeteer</a>? It seems promising.</p> <p>12:45 &ndash; Vitali: Yes, Puppeteer is promising. It&rsquo;s developed by Google and by Chrome. You don&rsquo;t want to use all of your tests in Puppeteer, because it will be really hard to do in other browsers.</p> <p>13:26: Panelist: &ldquo;...5, 6, 7, years ago it was important of any kind of <a href="https://www.javascript.com">JavaScript</a> 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?</p> <p>14:51: Vitali answers the above question.</p> <p>15:30 &ndash; Aimee: If it is more <a href="https://www.javascript.com">JavaScript</a> heavy then it could possibly cause more problems.</p> <p>15:56 &ndash; Panelist: I agree with this.</p> <p>16:02 &ndash; Vitali continues this conversation with additional comments.</p> <p>16:17 &ndash; Aimee: &ldquo;I see that Safari is the new Internet Explorer.&rdquo;</p> <p>16:23: Chuck: &ldquo;Yes, you have to know your audience. Are they using older browsers? What is the compatibility?&rdquo;</p> <p>17:01 &ndash; Vitali: There are issues with the security. Firefox has a feature of tracking protection; something like that.</p> <p>17:33 &ndash; Question to Vitali by Panelist.</p> <p>17:55 &ndash; Vitali answers the question.</p> <p>18:30 &ndash; Panelist makes additional comments.</p> <p>18:43 &ndash; If you use Safari, you reap what you sow.</p> <p>18:49 &ndash; Chuck: I use Chrome on my iPhone. (Aimee does, too.) Sometimes I wind up in Safari by accident.</p> <p>19:38 &ndash; Panelist makes comments.</p> <p>19:52 &ndash; Vitali tells a funny story that relates to this topic.</p> <p>20:45 &ndash; There are too many standards out there.</p> <p>21:05 &ndash; Aimee makes comments.</p> <p>21:08 &ndash; <a href="https://brutalist-web.design">Brutalist Web Design</a>. Some guy has this site &ndash; <a href="https://brutalist-web.design">Brutalist Web Design</a> &ndash; 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&rsquo;s great. It needs to be just enough for people to see your content.</p> <p>22:16 &ndash; Aimee makes additional comments about this topic of <a href="https://brutalist-web.design">Brutalist Web Design</a>.</p> <p>22:35 &ndash; Panelist: I like it when people go out and say things like that.</p> <p>22:45 &ndash; Here is the point, though. There is a difference between a website and a web application. Really the purpose is to read an article.</p> <p>23:37 &ndash; Vitali chimes in.</p> <p>24:01 &ndash; Back to the topic of content on websites.</p> <p>25:17 &ndash; Panelist: Medium is very minimal. Medium doesn&rsquo;t feel like an application.</p> <p>26:10 &ndash; Is the website easy enough for the user to scroll through and get the content like they want to?</p> <p>26:19 &ndash; <a href="https://sentry.io/welcome/">Advertisement.</a></p> <p>27:22 &ndash; See how far off the topic we got?</p> <p>27:31 &ndash; These are my favorite conversations to have.</p> <p>27:39 &ndash; Vitali: Let&rsquo;s talk about how my article got so popular. It&rsquo;s an interesting thing, I started researching &ldquo;testing&rdquo; 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.</p> <p>28:48 &ndash; 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?</p> <p>29:10 &ndash; 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!</p> <p>29:37 &ndash; Panelist: You broke down the article, and it&rsquo;s a 22-minute read.</p> <p>30:09 &ndash; Vitali: I wrote the article for my company, and they ad to read it.</p> <p>30:24 &ndash; Panelist: Spending so much time &ndash; you probably felt like it was apart of your job.</p> <p>30:39 &ndash; 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.</p> <p>31:17 &ndash; Did you edit and review?</p> <p>31:23 &ndash; Vitali: I wrote it by myself and some friends read it. There were serious mistakes, and that&rsquo;s okay I am not afraid of mistakes. This way you get feedback.</p> <p>32:10 &ndash; Chuck: &ldquo;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&rsquo;t&rsquo; get too overwhelmed? Is there a way to ease into this and take a bite-size at a time?&rdquo;</p> <p>32:52 &ndash; Vitali: &ldquo;Find something that works for them. Read the article and start writing code.&rdquo;</p> <p>He continues this conversation from here on out.</p> <p>34:03 &ndash; Chuck continues to ask questions and add other comments.</p> <p>34:16 &ndash; Vitali chimes-in.&nbsp;</p> <p>34:38 &ndash; Chuck.&nbsp;</p> <p>34:46 &ndash; Vitali piggybacks off of Chuck&rsquo;s comments.</p> <p>36:14 &ndash; Panelist: Let&rsquo;s go back to <a href="https://jestjs.io">Jest</a>. 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 &lsquo;this is the only thing that is happening.&rsquo; Transition to <a href="https://jquery.com">jQuery</a> to <a href="https://reactjs.org">React</a> to... With that context do you feel like <a href="https://jestjs.io">Jest</a> will be a dominant program? Are we going to see <a href="https://jestjs.io">Jest</a> used just as common as Mocha and other popular programs?</p> <p>38:15 &ndash; Vitali comments on the panelist&rsquo;s question.</p> <p>38:50 &ndash; Panelist: New features. Are the features in <a href="https://jestjs.io">Jest</a> (over Jasmine, Mocha, etc.) so important that it will drive people to it by itself?</p> <p>40:30 &ndash; Vitali comments on this great question.</p> <p>40:58 &ndash; Panelist asks questions about features about <a href="https://jestjs.io">Jest</a>.</p> <p>41:29 &ndash; Vitali talks about this topic.</p> <p>42:14 &ndash; Let&rsquo;s go to picks!</p> <p>42:14 &ndash; <a href="https://www.digitalocean.com/">Advertisement.</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.facebook.com/vzaidman">Vitali Zaidman&rsquo;s Facebook</a></li> <li><a href="https://medium.com/@vzaidman">Vitali Zaidman&rsquo;s Medium</a></li> <li><a href="https://github.com/vzaidman">Vitali Zaidman&rsquo;s GitHub</a></li> <li><a href="https://www.npmjs.com/~vzaidman">Vitali Zaidman&rsquo;s NPM</a></li> <li><a href="https://il.linkedin.com/in/vzaidman">Vitali Zaidman&rsquo;s LinkedIn</a></li> <li><a href="https://medium.com/welldone-software/the-open-source-community-the-great-spontaneous-distributed-collective-effort-e5cbe19df501">Vitali Zaidman&rsquo;s Medium Article</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://brutalist-web.design">Brutalist Web Design</a></li> <li><a href="https://jasmine.github.io">Jasmine</a></li> <li><a href="http://www.cypress.com/documentation/software-and-drivers/free-and-open-source-software-download-page">Cypress</a></li> <li><a href="https://reactjs.org">React</a></li> <li><a href="https://jquery.com">jQuery</a></li> <li><a href="https://jestjs.io">Jest</a></li> <li><a href="https://www.protractortest.org/#/">Protractor &ndash; end to end testing for Angular</a></li> <li><a href="https://devexpress.github.io/testcafe/">Test Caf&eacute;</a></li> <li><a href="https://theintern.io">Intern</a></li> <li><a href="https://sinonjs.org">Sinon</a></li> <li><a href="https://xkcd.com/927/">XKCD</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.cachefly.com">Digital Ocean</a></li> <li><a href="https://www.cachefly.com">Cache Fly</a></li> </ul> <p><strong>Picks:</strong></p> <p><strong>AJ O&rsquo;Neal</strong></p> <ul> <li><a href="https://www.amazon.com/Crossing-Chasm-Marketing-High-Tech-Mainstream/dp/0060517123">Continuous from last week&rsquo;s episode: Crossing the Chasm &ndash; New Technologies from Niche to General Adaptation.</a></li> <li><a href="https://golang.org">Go Lang</a></li> </ul> <p><strong>Joe Eames</strong></p> <ul> <li><a href="https://boardgamegeek.com/boardgame/220877/rajas-ganges">Board Game: Rajas of the Ganges</a></li> <li><a href="https://www.frameworksummit.com">Framework Summit Conference in Utah</a></li> <li><a href="https://conf.reactjs.org">React Conference</a></li> </ul> <p><strong>Aimee Knight </strong></p> <ul> <li><a href="http://www.mokacoding.com/blog/does-software-understand-complexity-m-feathers/">Hacker News &ndash; &ldquo;Does Software Understand Complexity&rdquo; via Michael Feathers </a></li> <li><a href="https://www.eventbrite.com/e/cream-city-code-2018-tickets-44368623748">Cream City Code</a></li> </ul> <p><strong>Chuck</strong></p> <ul> <li><a href="https://devchat.tv/get-a-coder-job/">E-Book: How do I get a job?</a></li> <li><a href="https://twitter.com/expressvpn?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Express VPN</a></li> </ul> <p><strong>Vitali</strong></p> <ul> <li><a href="https://www.amazon.com/Square-Tower-Networks-Freemasons-Facebook/dp/0735222916">Book: The Square and The Tower: Networks and Power, from the Freemasons to Facebook by Niall Ferguson</a></li> <li><a href="https://medium.com/welldone-software/the-open-source-community-the-great-spontaneous-distributed-collective-effort-e5cbe19df501">My article!</a></li> </ul>
Sep 18, 2018
JSJ 330: “AWS: Amplify” with Nader Dabit
1:04:11
<p><strong>Panel: </strong></p> <ul> <li>AJ O&rsquo;Neal</li> <li>Aimee Knight</li> <li>Joe Eames</li> </ul> <p><strong>Special Guests:</strong> <a href="http://naderdabit.me/#/">Nader Dabit </a></p> <p>In this episode, the panel talks with programmer, Nader Dabit, who has been with Amazon&rsquo;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!</p> <p><strong>Show Topics:</strong></p> <p>1:45 &ndash; There are two main things that Nader works with. Check out this timestamp to see what they are.</p> <p>3:29 &ndash; AJ to Nader: Tell me more about manage cloud. I am not sure about <a href="https://aws.amazon.com/cognito/?sc_channel=PS&amp;sc_campaign=acquisition_USsc_publisher=google&amp;sc_medium=ACQ-P%257CPS-GO%257CNon-Brand%257CDesktop%257CSU%257CSecurity%257CCognito%257CUS%257CEN%257CText&amp;sc_content=cognito_p&amp;sc_detail=cognito&amp;sc_category=Security&amp;sc_segment=293649588890&amp;sc_matchtype=p&amp;sc_country=US&amp;s_kwcid=AL!4422!3!293649588890!p!!g!!cognito&amp;ef_id=W5RTKgAAAUa7GPf1:20180908225434:s">Cognito</a>.</p> <p>3:56 &ndash; <a href="https://aws.amazon.com/cognito/?sc_channel=PS&amp;sc_campaign=acquisition_USsc_publisher=google&amp;sc_medium=ACQ-P%257CPS-GO%257CNon-Brand%257CDesktop%257CSU%257CSecurity%257CCognito%257CUS%257CEN%257CText&amp;sc_content=cognito_p&amp;sc_detail=cognito&amp;sc_category=Security&amp;sc_segment=293649588890&amp;sc_matchtype=p&amp;sc_country=US&amp;s_kwcid=AL!4422!3!293649588890!p!!g!!cognito&amp;ef_id=W5RTKgAAAUa7GPf1:20180908225434:s">Yes, Cognito is used by/through Amazon.</a></p> <p>5:06 &ndash; What are the other manage cloud services that companies want to offer through the tools you have?</p> <p>5:12 &ndash; Nader answers AJ&rsquo;s question.</p> <p>7:30 &ndash; Can you give me more specifics on the storage solutions you are offering?</p> <p>8:03 &ndash; Nader answers AJ&rsquo;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.</p> <p>9:10 &ndash; AJ and Nader are having a dialogue between different situations, and Nader is giving the solutions to those hypothetical situations.</p> <p>10:17 &ndash; AJ: &ldquo;I am interested in what you are talking about <a href="https://aws.amazon.com/appsync/">AppSync</a>. Can you tell me how that works?&rdquo; AJ is picking Nader&rsquo;s brain about how <a href="https://aws.amazon.com/appsync/">AppSync</a> works.</p> <p>11:05 &ndash; Nader: &ldquo;It is a single API layer for a point of entry. You can have multi-data sources.&rdquo; Nader continues, in detail, answering AJ&rsquo;s question.</p> <p>12:36 &ndash; 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?</p> <p>15:37 &ndash; 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?</p> <p>16:18 &ndash; Yes, it is not an easy solution to solve. Nader goes into detail about how he would approach this situation.</p> <p>18:26 &ndash; AJ: Are these resolvers written in <a href="https://www.javascript.com">JavaScript</a>?</p> <p>22:04 &ndash; Acronym fun!</p> <p>22:45 &ndash; <a href="https://nodejs.org/en/">Node</a></p> <p>23:51 &ndash; Summarizing these pasts 20-some-minutes: Off-Storage, <a href="https://aws.amazon.com/appsync/">AppSync</a>,<a href="https://sites.google.com/site/landismodel/developers"> Landis</a>, and others are what people are using Amplify for. New Question/New Topic: Simplify.</p> <p>25:45 &ndash; <a href="https://aws.amazon.com/mobile/">AWS MOBILE</a> &ndash; is not mobile specific.</p> <p>26:44 &ndash; If you are using <a href="https://angular.io">Angular</a>, we have a plugin in <a href="https://angular.io">Angular</a> to help you. We also have that for React and <a href="https://vuejsdevelopers.com">Vue</a> as well.</p> <p>27:52 &ndash; <a href="https://sentry.io/welcome/">Advertisement</a></p> <p>28:56 &ndash; What should we be talking about?</p> <p>29:04 &ndash; Let&rsquo;s talk about Amazon&rsquo;s Lex, <a href="https://aws.amazon.com/lex/?sc_channel=PS&amp;sc_campaign=lex_2017&amp;sc_publisher=google&amp;sc_medium=awns_lex_b&amp;sc_content=chatbot_p&amp;sc_detail=amazon%2520chatbot&amp;sc_category=lex&amp;sc_segment=209039218013&amp;sc_matchtype=p&amp;sc_country=US&amp;s_kwcid=AL!4422!3!209039218013!p!!g!!amazon%2520chatbot&amp;ef_id=W5RTKgAAAUa7GPf1:20180908230815:s">Chat Bot</a>. Nader goes into full detail of this service.</p> <p>33:52 &ndash; <a href="https://www.apple.com/tv/">Apple T.V.</a></p> <p>34:00 &ndash; 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?</p> <p>35:13 &ndash; Joe, let&rsquo;s go back to what you had to ask.</p> <p>35:28 &ndash; Nader, you talked about <a href="https://www.biznessapps.com/blog/what-is-a-push-notification/">PUSH notifications</a> earlier. What is <a href="https://cloud.google.com/pubsub/docs/overview">Pub/Sub</a>?</p> <p>36:30 &ndash; Is this like traditional hooks? Or custom?</p> <p>37:25 &ndash; What is the &ldquo;stuff&rdquo; that gets you up in the morning and gets you excited to go to work at AWS?</p> <p>38:40 &ndash; Nader: I really had no desire to change career paths, but it happened.</p> <p>41:30 &ndash; 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.</p> <p>43:27 AJ: What about for the hobbyist?</p> <p>43:40 &ndash; Nader: I agree, that would be really nice. I can&rsquo;t think of any free services that would be nice.</p> <p>44:03 AJ &ndash; Not free in &ldquo;free,&rdquo; but &ldquo;free&rdquo; towards the idea of &ldquo;free speech.&rdquo; They would all be available and you get to choose what works well for you.</p> <p>45:00 &ndash; <strong>SHOUTOUT to LISTENERS:</strong> Have an idea about this? Shoot the panel an e-mail!</p> <p>45:33 &ndash; Hopefully this opens the listeners&rsquo; eyes to what&rsquo;s out there.</p> <p>45:48 &ndash; Cloud services.</p> <p>46:55 &ndash; 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.</p> <p>49:03 &ndash; Is there anything, Dabit, which you would like to talk about?</p> <p>49:15 &ndash; Can we talk about <a href="https://docs.aws.amazon.com/aws-technical-content/latest/aws-overview/artificial-intelligence-services.html">AI as a service</a>?</p> <p>51:10 &ndash; Nader saw a demonstration recently.</p> <p>52:26 &ndash; 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&rsquo;s too complex to put together. Do you have to be genius-level to get through?</p> <p>53:29 &ndash; ML you are passing data. Nader is not quite sure.</p> <p>56:00 Nader just did a blog post  check-it-out!</p> <p>56:49 &ndash; Let&rsquo;s do Picks!</p> <p>56:50 &ndash; <a href="https://www.digitalocean.com/">Advertisement</a></p> <p><strong>Links:</strong></p> <ul> <li><a href="https://twitter.com/dabit3?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Nader Dabit&rsquo;s Twitter</a></li> <li><a href="https://medium.com/@dabit3">Nader Dabit&rsquo;s Medium</a></li> <li><a href="https://www.linkedin.com/in/naderdabit/">Nader Dabit&rsquo;s LinkedIn</a></li> <li><a href="https://github.com/dabit3">Nader Dabit&rsquo;s GitHub</a></li> <li><a href="http://naderdabit.me/#/">Nader Dabit&rsquo;s Website</a></li> <li><a href="https://www.youtube.com/channel/UC7mca3O0DmdSG2Cr80sOD7g">Nader Dabit&rsquo;s YouTube channel</a></li> <li><a href="https://egghead.io/instructors/nader-dabit">Nader Dabit&rsquo;s Egg Head</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://aws.amazon.com/cognito/?sc_channel=PS&amp;sc_campaign=acquisition_USsc_publisher=google&amp;sc_medium=ACQ-P%257CPS-GO%257CNon-Brand%257CDesktop%257CSU%257CSecurity%257CCognito%257CUS%257CEN%257CText&amp;sc_content=cognito_p&amp;sc_detail=cognito&amp;sc_category=Security&amp;sc_segment=293649588890&amp;sc_matchtype=p&amp;sc_country=US&amp;s_kwcid=AL!4422!3!293649588890!p!!g!!cognito&amp;ef_id=W5RTKgAAAUa7GPf1:20180908225434:s">Amazon&rsquo;s Cognito</a></li> <li><a href="https://aws.amazon.com/appsync/">AWS AppSync</a><a href="https://nodejs.org/en/">Node</a></li> <li><a href="https://sites.google.com/site/landismodel/developers">Landis</a></li> <li><a href="https://aws.amazon.com/mobile/">AWS Mobile</a></li> <li><a href="https://vuejsdevelopers.com">Vue</a></li> <li><a href="https://angular.io">Angular</a></li> <li><a href="https://aws.amazon.com/lex/?sc_channel=PS&amp;sc_campaign=lex_2017&amp;sc_publisher=google&amp;sc_medium=awns_lex_b&amp;sc_content=chatbot_p&amp;sc_detail=amazon%2520chatbot&amp;sc_category=lex&amp;sc_segment=209039218013&amp;sc_matchtype=p&amp;sc_country=US&amp;s_kwcid=AL!4422!3!209039218013!p!!g!!amazon%2520chatbot&amp;ef_id=W5RTKgAAAUa7GPf1:20180908230815:s">Amazon&rsquo;s Lex &ndash; Chat Bot</a></li> <li><a href="https://www.apple.com/tv/">Apple T.V.</a></li> <li><a href="https://www.biznessapps.com/blog/what-is-a-push-notification/">Push Notifications</a></li> <li><a href="https://cloud.google.com/pubsub/docs/overview">Pub/Sub</a></li> <li><a href="https://docs.aws.amazon.com/aws-technical-content/latest/aws-overview/artificial-intelligence-services.html">AWS&rsquo; Artificial Intelligence (AI)</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>AJ O&rsquo;Neal</p> <ul> <li><a href="https://www.thoughty2.net/why-is-modern-pop-music-so-terrible/">Blog / Thoughty 2&rsquo;s Video: Pop Music</a></li> <li><a href="https://www.amazon.com/Innovators-Solution-Creating-Sustaining-Successful/dp/1422196577">The Innovator&rsquo;s Solution / Book</a></li> <li><a href="https://www.amazon.com/Innovators-Dilemma-Technologies-Management-Innovation/dp/1633691780/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1536450731&amp;sr=1-1&amp;keywords=The+innovator%2527s+dilemma">The Innovator&rsquo;s Dilemma / Book</a></li> </ul> <p>Joe Eames</p> <ul> <li><a href="https://www.frameworksummit.com/">Framework Summit</a> - Tickets are still available!</li> <li><a href="https://www.imdb.com/title/tt3766354/">Movie: Equalizer 2</a></li> </ul> <p>Nader Dabit</p> <ul> <li><a href="https://www.eventbrite.com/e/neo4j-graphtalk-helsinki-tickets-47986681456">Finland &ndash; Graph Talks Conference, October</a></li> <li><a href="https://aws.amazon.com/start-ups/loft/sf-loft/">AWS &ndash; San Francisco - LOFT</a></li> </ul>
Sep 11, 2018
JSJ 329: Promises, Promise.finally(), and Async/await with Valeri Karpov
1:08:31
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>AJ O&rsquo;Neal</li> <li>Aimee Knight</li> </ul> <p><strong>Special Guests:</strong> Valeri Karpov&nbsp;</p> <p>In this episode, the panel talks with programmer, Valerie Karpov from Miami, Florida. He is quite knowledgeable with many different programs, but today&rsquo;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, <a href="http://thecodebarbarian.com/new-ebook-mastering-async-await.html">&ldquo;Mastering Async/Await.&rdquo;</a> Check-out Val&rsquo;s social media profiles through LinkedIn, GitHub, Twitter, and more.</p> <p><strong>Show Topics:</strong></p> <p>1:20 &ndash; Val has been on previous episodes back in 2013 &amp; 2016.</p> <p>1:37 &ndash; Val&rsquo;s background. He is very involved with multiple companies. Go checkout his <a href="http://thecodebarbarian.com/new-ebook-mastering-async-await.html">new book!</a></p> <p>2:39 &ndash; Promises generators. Understand Promises and how things sync with Promises. Val suggests that listeners have an integrated understanding of issues like error handling.</p> <p>3:57 &ndash; Chuck asks a question.</p> <p>6:25 &ndash; Aimee&rsquo;s asks a question: &ldquo;Can you speak to why someone would want to use Async/Await?&rdquo;</p> <p>8:53 &ndash; AJ makes comments.</p> <p>10:09 &ndash; &ldquo;What makes an Async/Await not functional?&rdquo; &ndash; Val</p> <p>10:59 &ndash; &ldquo;What&rsquo;s wrong with Promises or Async/Await that people don&rsquo;t like it?&rdquo; - AJ</p> <p>11:25 &ndash; Val states that he doesn&rsquo;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.</p> <p>12:21 &ndash; AJ&rsquo;s background is with <a href="https://nodejs.org/en/">Node</a> and the <a href="https://www.python.org">Python</a> among other programs.</p> <p>12:55 &ndash; Implementing Complex Business Logic.</p> <p>15:50 &ndash; Val discusses his new e-book.</p> <p>17:08 &ndash; Question from Aimee.</p> <p>17:16 &ndash; AJ answers question. Promises should have been primitive when it was designed or somewhat event handling.</p> <p>17:46 &ndash; The panel agrees that anything is better than Call Backs.</p> <p>18:18 &ndash; Aimee makes comments about Async/Await.</p> <p>20:08 &ndash; &ldquo;What are the core principles of your <a href="http://thecodebarbarian.com/new-ebook-mastering-async-await.html">new e-book</a>?&rdquo; &ndash; Chuck</p> <p>20:17 &ndash; There are 4 chapters and Val discusses, in detail, what&rsquo;s in each chapter.</p> <p>22:40 &ndash; 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?</p> <p>24:30 &ndash; Val answers the before-mentioned question. Async/Await does not have anyway to help with this (data changes in the background).</p> <p>25:36 &ndash; &ldquo;My procedural code, I know that things won&rsquo;t change on me because it is procedural code. Is it hard to adjust to that?&rdquo; &ndash; AJ</p> <p>26:01 &ndash; Val answers the question.</p> <p>26:32 &ndash; Building a webserver with <a href="https://www.python.org">Python</a>.&nbsp;</p> <p>27:31 &ndash; Aimee asks a question: &ldquo;Do you think that there are cases in code base, where I would want to use Promises? Not from a user&rsquo;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?&rdquo;</p> <p>28:17 &ndash; Val asks for some clarification to Aimee&rsquo;s question.</p> <p>29:14 &ndash; Aimee: &ldquo;My own personal preference is consistency. Would I want to use Promises in &lsquo;x&rsquo; scenario and/or use Async/Await in another situation?&rdquo;</p> <p>32:28 &ndash; Val and AJ are discussing and problem solving different situations that these programs</p> <p>33:05 &ndash; &ldquo;When would you not want to use Async/Await?&rdquo; &ndash; AJ</p> <p>33:25 &ndash; Val goes through the different situations when he would not use Async/Await.&nbsp;</p> <p>33:44 &ndash; Chuck is curious about other features of Async/Await and asks Val.</p> <p>36:40 &ndash; <a href="https://github.com/facebook/regenerator">Facebook&rsquo;s Regenerator</a></p> <p>37:11 &ndash; AJ: &ldquo;Back in the day, people would be really concerned with JavaScript&rsquo;s performance even with Chrome.&rdquo; He continues his thoughts on this topic.</p> <p>38:11 &ndash; Val answers the AJ&rsquo;s question.</p> <p>39:10 &ndash; Duck JS probably won&rsquo;t include generators.</p> <p>41:18 &ndash; Val: &ldquo;Have anyone used Engine Script before?&rdquo; The rest of the panel had never heard of this before.</p> <p>42:09 &ndash; <a href="https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/wscript">Windows Scripting Host</a></p> <p>42:56 &ndash; Val used <a href="https://www.rhino3d.com">Rhino</a> in the past.</p> <p>43:40 &ndash; Val: &ldquo;Going back to the web performance question...&rdquo;</p> <p>47:08 &ndash; &ldquo;Where do you see using Async/Await the most?&rdquo; &ndash; Chuck</p> <p>47:55 &ndash; Val uses Async/Await for everything on the <em>backend</em> because it has made everything so easy for him.</p> <p>48:23 &ndash; &ldquo;So this is why you really haven&rsquo;t used Web Pack?&rdquo; &ndash; AJ</p> <p>49:20 &ndash; Let&rsquo;s go to <a href="https://mathiasbynens.be/notes/async-stack-traces">Aimee&rsquo;s Picks</a>!</p> <p>50:18 &ndash; AJ&rsquo;s story, first, before we get to Promises.</p> <p>54:44 &ndash; Let&rsquo;s transition to <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/finally">Promises Finally</a>.</p> <p>54:53 &ndash; Val talks about Promises Finally.</p> <p>59:20 &ndash; Picks</p> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://github.com/vkarpov15">Valeri Karpov&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/code_barbarian">Valeri Karpov&rsquo;s Twitter</a></li> <li><a href="https://www.linkedin.com/in/valeri-karpov-64b48138">Valeri Karpov&rsquo;s LinkedIn</a></li> <li><a href="http://thecodebarbarian.com/new-ebook-mastering-async-await.html">New E-Book: Mastering Async/Await</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li><a href="https://www.python.org">Python</a></li> <li><a href="https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/wscript">Windows Scripting Host</a></li> <li><a href="https://github.com/facebook/regenerator">Facebook&rsquo;s Regenerator</a></li> <li><a href="https://www.rhino3d.com">Rhino</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> <li>&nbsp;</li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.youtube.com/watch?v=IUPu_ipbVB0">YouTube Video &ldquo;IKEA&rdquo; by Coulton</a></li> <li><a href="https://www.frameworksummit.com">Conference</a></li> <li><a href="https://www.amazon.com/Prime-Day/b?ie=UTF8&amp;node=13887280011">Amazon Prime Day</a></li> </ul> <p>Aimee</p> <ul> <li><a href="https://mathiasbynens.be/notes/async-stack-traces">Blog Post Article</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://www.youtube.com/watch?v=IUPu_ipbVB0">IKEA</a></li> <li><a href="https://ppl.family">https://ppl.family</a></li> </ul> <p>Val</p> <ul> <li><a href="https://www.npmjs.com/package/serve">https://www.npmjs.com/package/serve</a></li> <li><a href="http://bit.ly/ultimate-skiing">http://bit.ly/ultimate-skiing</a></li> <li><a href="http://asyncawait.net/jsjabber">http://asyncawait.net/jsjabber</a></li> <li><a href="http://thecodebarbarian.com/new-ebook-mastering-async-await.html">New E-Book: Mastering Async/Await</a></li> </ul>
Sep 04, 2018
MJS 076: Kevin Griffin
37:47
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Kevin Griffin</p> <p>This week on My JavaScript Story, Charles speaks with Kevin Griffin. Kevin is one of the hosts of the <a href="https://2frugaldudes.com/">2 Frugal Dudes Podcast</a> 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-273-live-code-dont-code-live-2-frugal-dudes-sean-merron-kevin-griffin/">JavaScript Jabber Episode 273</a></li> <li>Helping programmers handle their money</li> <li><a href="https://2frugaldudes.com/">2 Frugal Dudes Podcast</a></li> <li>Runs financial peace university at his church</li> <li>Mindset is everything</li> <li>How did you first get into programming?</li> <li>Got started really young when his Dad brought home a computer</li> <li><a href="https://www.amazon.com/DOS-Dummies-Dan-Gookin/dp/0764503618"><em>DOS for Dummies</em></a></li> <li>Taught himself very basic coding</li> <li>Really into text adventures as a child &ndash; wrote some of his own</li> <li>Taught Logo in Middle school</li> <li>Computer Science degree in college</li> <li>Got into software developer community because he was laid off from first job</li> <li>You have to build your own job security</li> <li>Do you do <a href="https://www.javascript.com/">JavaScript</a> full-time?</li> <li>Doesn&rsquo;t like to pigeon hole himself into one language</li> <li>C++ and C#</li> <li>Didn&rsquo;t want to support JavaScript originally</li> <li>Using <a href="https://jquery.com/">jQuery</a>, <a href="https://knockoutjs.com/">Knockout</a>, <a href="https://www.emberjs.com/">Ember</a>, and <a href="http://backbonejs.org/">Backbone</a></li> <li>Working with <a href="https://vuejs.org/">Vue</a> and <a href="https://reactjs.org/">React</a> now</li> <li>The same problems persist now, just with different frameworks</li> <li>Looking at the project and then deciding which tool to use</li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-273-live-code-dont-code-live-2-frugal-dudes-sean-merron-kevin-griffin/">JavaScript Jabber Episode 273</a></li> <li><a href="https://2frugaldudes.com/">2 Frugal Dudes Podcast</a></li> <li><a href="https://www.amazon.com/DOS-Dummies-Dan-Gookin/dp/0764503618"><em>DOS for Dummies</em></a></li> <li><a href="https://jquery.com/">jQuery</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://knockoutjs.com/">Knockout</a></li> <li><a href="https://www.emberjs.com/">Ember</a></li> <li><a href="http://backbonejs.org/">Backbone</a></li> <li><a href="https://vuejs.org/">Vue</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://twitter.com/2frugaldudes?lang=en">@2frugaldudes</a></li> <li><a href="https://twitter.com/1kevgriff?lang=en">@1kevgriff</a></li> <li><a href="https://kevgriffin.com/">kevgriffin.com</a></li> <li><a href="https://www.twitch.tv/1kevgriff">Kevin&rsquo;s Twitch</a></li> <li><a href="https://www.google.com/search?safe=off&amp;q=swift+kick.in&amp;spell=1&amp;sa=X&amp;ved=0ahUKEwir2sXthpXdAhVPG6wKHWkSBGUQBQgmKAA&amp;biw=1280&amp;bih=726">Swift Kick</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="http://codebadge.org/">Code Badges</a></li> <li>Digital Ocean</li> </ul> <p><strong>Picks</strong></p> <p>Charles</p> <ul> <li><a href="https://en.wikipedia.org/wiki/The_Expanse_(TV_series)">The Expanse</a></li> </ul> <p>Kevin</p> <ul> <li><a href="https://www.twitch.tv/">Twitch</a> &ndash; <a href="https://www.twitch.tv/1kevgriff">His twitch</a></li> </ul>
Aug 29, 2018
JSJ 328: Functional Programming with Ramda with Christine Legge
55:21
<p><strong>Panel:&nbsp;</strong></p> <ul> <li>Joe Eames</li> <li>Aimee Knight</li> <li>AJ O&#39;Neal</li> <li>Joe Eames</li> </ul> <p><strong>Special Guests: </strong>Christine Legge</p> <p>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. <a href="https://ramdajs.com/">Ramda</a> is a utility library in <a href="https://www.javascript.com/">JavaScript</a> 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 <a href="https://redux.js.org/">Redux</a>, and referential transparency. They also touch on why she first got into Ramda, compare Ramda to Lodash and Underscore, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Chirstine intro&nbsp;</li> <li>Works as a front-end software engineer</li> <li>What is <a href="https://ramdajs.com/">Ramda</a>?&nbsp;</li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li>Utility library like <a href="https://lodash.com/">Lodash</a> and <a href="https://underscorejs.org/">Underscore</a></li> <li>Lodash and Underscore VS Ramda</li> <li>Functional programming</li> <li>Ramda and Functional programming as a mindset</li> <li>Ramda at <a href="https://www.zenhub.com/">ZenHub</a></li> <li>Ramda with <a href="https://redux.js.org/">Redux</a> and <a href="https://reactjs.org/">React</a></li> <li>What is referential transparency?</li> <li>Why would you use Ramda VS Lodash or Underscore?</li> <li>Why she first got into Ramda</li> <li>Didn&rsquo;t always want to be a programmer</li> <li>Background in Math</li> <li>Learning functional programming as a new programmer</li> <li><a href="https://www.erlang.org/">Erlang</a></li> <li><a href="https://racket-lang.org/">DrRacket</a> and Java</li> <li>Ramda makes it easy to compose functions</li> <li>Creating clean and reusable code</li> <li>How do you start using Ramda?</li> <li>And much, much more!&nbsp;</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://ramdajs.com/">Ramda</a></li> <li><a href="https://lodash.com/">Lodash</a></li> <li><a href="https://underscorejs.org/">Underscore</a></li> <li><a href="https://www.zenhub.com/">ZenHub</a></li> <li><a href="https://redux.js.org/">Redux</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://www.erlang.org/">Erlang</a></li> <li><a href="https://racket-lang.org/">DrRacket</a></li> <li><a href="https://twitter.com/leggechr?lang=en">@leggechr</a></li> <li><a href="https://github.com/leggechr">Chirstine&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.homedepot.com/c/tool_and_truck_rental">Home Depot Tool Rental</a></li> <li><a href="https://podcastmovement.com/">Podcast Movement</a></li> <li><a href="https://www.ces.tech/">CES</a></li> <li><a href="https://www.vrbo.com/">VRBO</a></li> </ul> <p>Aimee</p> <ul> <li>Apple Cider Vinegar</li> <li>Jeremy Fairbank Talk &ndash; <a href="https://www.youtube.com/watch?v=I_uIXgSmkDo">Practical Functional Programming</a></li> </ul> <p>AJ</p> <ul> <li>Goat&rsquo;s Milk</li> </ul> <p>Joe</p> <ul> <li><a href="https://topgolf.com/us/">Topgolf</a></li> <li><a href="https://www.frameworksummit.com/">Framework Summit</a></li> </ul> <p>Christine</p> <ul> <li><a href="http://danmanganmusic.com/">Dan Mangan</a></li> <li><a href="https://www.gimletmedia.com/reply-all">Reply All Podcast</a></li> </ul>
Aug 28, 2018
MJS 075: Jeff Escalante
48:41
<p>Show notes coming shortly!</p>
Aug 22, 2018
JSJ 327: "Greenlock and LetsEncrypt" with AJ O'Neal
55:08
<p><strong>Panel:</strong></p> <ul> <li>Charles Max Wood</li> <li>Joe Eames</li> </ul> <p><strong>Special Guests: </strong>AJ O&#39;Neal</p> <p>In this episode, the JavaScript Jabber panel talks to AJ O&#39;Neal about Greenlock and LetsEncrypt. <a href="https://letsencrypt.org/">LetsEncrypt</a> is a brand name and is the first of its kind in automated SSL and <a href="https://git.coolaj86.com/coolaj86/greenlock.js.git">Greenlock</a> does what <a href="https://certbot.eff.org/">Certbot</a> does in a more simplified form. They talk about what led him to create Greenlock, compare Greenlock to Certbot, and what it&rsquo;s like to use Greenlock. They also touch on <a href="https://git.coolaj86.com/coolaj86/greenlock-express.js">Greenlock-express</a>, how they make Greenlock better, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://git.coolaj86.com/coolaj86/greenlock.js.git">Greenlock</a> and <a href="https://letsencrypt.org/">LetsEncrypt</a> overview</li> <li>LetsEncrypt is free to get your certificate</li> <li>Why Charles uses LetsEncrypt</li> <li>Wildcard domains</li> <li><a href="https://certbot.eff.org/">Certbot</a></li> <li>Why he originally created Greenlock</li> <li>Working towards home servers</li> <li>Wanted to get HTTP on small devices</li> <li>Manages a certificate directory</li> <li>Greenlock VS Certbot</li> <li>Greenlock can work stand alone</li> <li>The best use case for Greenlock</li> <li>Excited about how people are using his tool</li> <li>What is it like to use Greenlock?</li> <li>Working on a desktop client</li> <li><a href="https://git.coolaj86.com/coolaj86/greenlock-express.js">Greenlock-express</a></li> <li><a href="https://tools.ietf.org/html/draft-ietf-acme-acme-11#section-7.1">Acme servers</a></li> <li>CAA record</li> <li>Making Greenlock better by knowing how people are using it</li> <li>Using Greenlock-express</li> <li><a href="https://coolaj86.com/articles/lets-encrypt-v2-step-by-step/"><em>Let&#39;s Encrypt v2 Step by Step</em> by AJ</a></li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://letsencrypt.org/">LetsEncrypt</a></li> <li><a href="https://git.coolaj86.com/coolaj86/greenlock.js.git">Greenlock</a></li> <li><a href="https://certbot.eff.org/">Certbot</a></li> <li><a href="https://git.coolaj86.com/coolaj86/greenlock-express.js">Greenlock-express</a></li> <li><a href="https://tools.ietf.org/html/draft-ietf-acme-acme-11#section-7.1">Acme servers</a></li> <li><a href="https://coolaj86.com/articles/lets-encrypt-v2-step-by-step/"><em>Let&#39;s Encrypt v2 Step by Step</em> by AJ</a></li> <li><a href="https://twitter.com/coolaj86?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@coolaj86</a></li> <li><a href="https://coolaj86.com/">coolaj86.com</a></li> <li><a href="https://git.coolaj86.com/coolaj86">AJ&rsquo;s Git</a></li> <li><a href="https://www.youtube.com/watch?v=e8vaR4CEZ5s&amp;list=PLZaEVINf2Bq_lrS-OOzTUJB4q3HxarlXk">Greenlock.js Screencast Series</a></li> <li><a href="https://www.patreon.com/coolaj86">Greenlock.js Patreon</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li>Take some time off</li> </ul> <p>AJ</p> <ul> <li><a href="https://overclockedrecords.com/release/press-start/">OverClocked Records</a></li> </ul>
Aug 21, 2018
MJS 074: Scott Wyatt
30:16
<p><strong>Panel: </strong>Charles Max Wood</p> <p>&nbsp;</p> <p><strong>Guest:</strong> Scott Wyatt</p> <p>&nbsp;</p> <p>This week on My JavaScript Story, Charles speaks with Scott Wyatt. Scott is a VC partner and is the CTO at <a href="https://cali-style.com/">Cali Style Technologies</a>, works with startups, and was the CTO of the <a href="https://thebeardclub.com/">Dollar Beard Club</a>. 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 <a href="https://www.javascript.com/">JavaScript</a>, what was it about JavaScript that hooked him, and more!</p> <p>&nbsp;</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-282-trails-js-scott-wyatt/">JavaScript Jabber Episode 282</a></li> <li>Scott intro</li> <li>Works remotely from Indiana</li> <li>The pros to not living in Silicon Valley</li> <li>How did you first get into programming?</li> <li>Father was a computer programmer</li> <li>Strong arts background</li> <li>Started coding really young</li> <li>How did you get into <a href="https://www.javascript.com/">JavaScript</a>?</li> <li>Started out with ActionScript</li> <li>JavaScript to <a href="https://jquery.com/">jQuery</a></li> <li>The cool part of having a diverse background as a programmer</li> <li>What was it that got you into JavaScript?</li> <li>Back-end JavaScript</li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li>JavaScript is very versatile</li> <li>How did you get into doing something like <a href="https://trailsjs.io/">Trails.js</a>?</li> <li><a href="https://sailsjs.com/">Sails.js</a></li> <li><a href="https://fabrix.app/">Fabrix</a> and <a href="https://www.typescriptlang.org/">TypeScript</a>&nbsp;</li> <li>What have you done in JS that you are most proud of?</li> <li>Partitioned apps</li> <li>Contributing to freedom of information</li> <li>What are you working on now?</li> <li>And much, much more!</li> </ul> <p>&nbsp;</p> <p><strong>Links:&nbsp;</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-282-trails-js-scott-wyatt/">JavaScript Jabber Episode 282</a></li> <li><a href="https://cali-style.com/">Cali Style Technologies</a></li> <li><a href="https://thebeardclub.com/">Dollar Beard Club</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://jquery.com/">jQuery</a></li> <li><a href="https://nodejs.org/en/">Node.js</a></li> <li><a href="https://trailsjs.io/">Trails.js</a></li> <li><a href="https://sailsjs.com/">Sails.js</a></li> <li><a href="https://fabrix.app/">Fabrix</a></li> <li><a href="https://www.typescriptlang.org/">TypeScript</a></li> <li><a href="https://twitter.com/scottbwyatt?lang=en">@ScottBWyatt</a></li> <li><a href="https://github.com/scott-wyatt">Scott&rsquo;s GitHub</a></li> </ul> <p>&nbsp;</p> <p><strong>Sponsors:&nbsp;</strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p>&nbsp;</p> <p><strong>Picks</strong></p> <p>Charles&nbsp;</p> <ul> <li><a href="https://devchat.tv/store/get-a-coder-job-video-course/">Get a Coder Job Course</a></li> <li><a href="https://itunes.apple.com/us/app/golf-clash/id1089225191?mt=8">Golf Clash</a></li> <li>Golfing</li> <li>Planning in sanity time</li> <li><a href="https://devchat.tv/js-jabber/">Suggest a Topic</a></li> <li><a href="mailto:Chuck@DevChat.tv">Chuck@DevChat.tv</a>&nbsp;</li> </ul> <p>&nbsp;</p> <p>Scott</p> <ul> <li><a href="https://gun.eco/#step1">Gun.js</a></li> <li><a href="https://bitcoin.org/en/">Bitcoin</a></li> </ul>
Aug 15, 2018
JSJ 326: Conversation with Ember co-creator Tom Dale on Ember 3.0 and the future of Ember
57:18
<p><strong>Panel: </strong></p> <ul> <li>Joe Eames</li> <li>Aimee Knight</li> <li>AJ ONeal</li> </ul> <p><strong>Special Guests: </strong>Tom Dale</p> <p>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 <a href="https://www.emberjs.com/">Ember</a> and is a principle staff engineer at <a href="https://www.linkedin.com/">LinkedIn</a> 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>How Joe met Tom</li> <li>Programmers as rule breakers</li> <li>The pressure to conform</li> <li>Tom intro</li> <li>Staff engineer at <a href="https://www.linkedin.com/">LinkedIn</a></li> <li>Customer service role</li> <li>Having a way to role improvements out to a lot of different people</li> <li><a href="https://www.javascript.com/">JavaScript</a> and Ember at LinkedIn</li> <li>Having a collaborative culture</li> <li>All about Ember 3.0</li> <li>Banner feature &ndash; there is nothing new</li> <li>Cracked how you develop software in the open source world that has longevity</li> <li>Major competition in <a href="http://backbonejs.org/">Backbone</a> previously</li> <li>The Ember community has never been more vibrant</li> <li>Tendency towards disposable software</li> <li>The idea of steady iteration towards improvement</li> <li>The Ember model</li> <li>Being different from different frameworks</li> <li>Ember adoption rates</li> <li><a href="https://www.python.org/">Python</a> 3</li> <li>Valuable from a business perspective to use Ember</li> <li>Ember community being friendly to newbies</li> <li>How much Ember VS how much JavaScript will a new developer have to learn?</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://www.emberjs.com/">Ember</a></li> <li><a href="https://www.linkedin.com/">LinkedIn</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="http://backbonejs.org/">Backbone</a></li> <li><a href="https://www.python.org/">Python</a></li> <li><a href="https://twitter.com/tomdale?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@tomdale</a></li> <li><a href="https://tomdale.net/">tomdale.net</a></li> <li><a href="https://github.com/tomdale">Tom&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Joe</p> <ul> <li><a href="https://www.frameworksummit.com/">Framework Summit</a></li> <li><a href="https://www.youtube.com/channel/UCMoNOUJPZTjA1w3ttT819SA">Jayne</a></li> <li><a href="https://twitter.com/youyuxi/status/1009570018202439680?lang=en">React sent Evan You a cake</a></li> </ul> <p>Aimee</p> <ul> <li><a href="http://www.paulgraham.com/makersschedule.html"><em>Maker&#39;s Schedule, Manager&#39;s Schedule</em> by Paul Graham</a></li> </ul> <p>AJ</p> <ul> <li>James Veitch</li> </ul> <p>Tom</p> <ul> <li><a href="https://www.meetup.com/LinkedIn-NYC-Tech-Talks/events/251270378/">JavaScript Tech Talk</a></li> <li>Drake&rsquo;s Ties</li> <li><a href="https://hallmadden.com/nyc/">Melissa Watson Ellis at Hall Madden</a></li> </ul>
Aug 14, 2018
MJS 073: Tara Z. Manicsic
37:21
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Tara Z. Manicsic</p> <p>This week on My JavaScript Story, Charles speaks with Tara Z. Manicsic. Tara is a developer advocate for <a href="https://www.progress.com/">Progress</a>, 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 <a href="https://www.crystalreports.com/">Crystal Reports</a> at Harvard Law School. They talk about how she found <a href="https://www.womenwhocode.com/">Women Who Code</a>, the importance of understanding open source software, having a support system, what is was about <a href="https://nodejs.org/en/">Node</a> that got her excited, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Tara intro</li> <li>Very excited and fascinated with the web</li> <li>Helped to start up <a href="https://devchat.tv/react-round-up/rru-001-getting-started-react/">React Round Up</a> as a panelist</li> <li>Her experience as a developer</li> <li>Started out as a business school dropout</li> <li>How did you first get into programming?</li> <li>Learned Logo in the second grade</li> <li>Loved the ability to help people and create change</li> <li><a href="https://www.crystalreports.com/">Crystal Reports</a> at Harvard Law</li> <li>CS courses with tuition assistance</li> <li>Getting back into CS</li> <li>Being a non-traditional student</li> <li>Finding <a href="https://www.womenwhocode.com/">Women Who Code</a></li> <li>First job as a <a href="https://nodejs.org/en/">Node</a> software engineer</li> <li>How did Women Who Code help you?</li> <li><a href="https://openhatch.org/">OpenHatch </a></li> <li>Being familiar with open source software</li> <li>The importance of having support</li> <li>How did you first get into <a href="https://www.javascript.com/">JavaScript</a>?</li> <li>Seeing jobs for <a href="https://rubyonrails.org/">Ruby on Rails</a></li> <li><a href="https://devchat.tv/js-jabber/jsj-314-visual-studio-code-and-the-vs-code-azure-extension-with-matt-hernandez-and-amanda-silver-live-at-microsoft-build/">Matt Hernandez on JavaScript Jabber </a></li> <li><a href="https://www.ng-conf.org/">NG conf</a></li> <li>Her intro to the <a href="https://angular.io/">Angular</a> community in person</li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://www.progress.com/">Progress</a></li> <li><a href="https://devchat.tv/react-round-up/rru-001-getting-started-react/">React Round Up</a></li> <li><a href="https://www.crystalreports.com/">Crystal Reports</a></li> <li><a href="https://www.womenwhocode.com/">Women Who Code</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li>OpenHatch</li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://rubyonrails.org/">Ruby on Rails</a></li> <li><a href="https://devchat.tv/js-jabber/jsj-314-visual-studio-code-and-the-vs-code-azure-extension-with-matt-hernandez-and-amanda-silver-live-at-microsoft-build/">Matt Hernandez on JavaScript Jabber </a></li> <li><a href="https://www.ng-conf.org/">NG conf</a></li> <li><a href="https://angular.io/">Angular</a></li> <li><a href="https://twitter.com/Tzmanics?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@Tzmanics</a></li> <li><a href="https://tzmanics.com/#/">tzmanics.com</a></li> <li><a href="https://github.com/tzmanics">Tara&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks</strong></p> <p>Charles</p> <ul> <li><a href="https://devchat.tv/store/get-a-coder-job-video-course/">Get a Coder Job Course</a></li> <li><a href="https://itunes.apple.com/us/app/golf-clash/id1089225191?mt=8">Golf Clash</a></li> </ul> <p>Tara</p> <ul> <li><a href="http://connect.tech/">Connect.Tech</a></li> <li><a href="http://devfestatl.com/">DevFest Atlanta</a></li> <li><a href="https://www.cedarpoint.com/">Cedar Point</a></li> </ul>
Aug 08, 2018
JSJ 325: Practical functional programming in JavaScript and languages like Elm with Jeremy Fairbank
53:47
<p><strong>Panel: </strong></p> <ul> <li>Aimee Knight</li> <li>Joe Eames</li> <li>AJ ONeal</li> </ul> <p><strong>Special Guests: </strong>Jeremy Fairbank</p> <p>In this episode, the JavaScript Jabber panel talks to Jeremy Fairbank about his talk <a href="https://www.youtube.com/watch?v=I_uIXgSmkDo"><em>Practical Functional Programming</em></a>. Jeremy is a remote software developer and consultant for <a href="https://testdouble.com/">Test Double</a>. 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Jeremy intro</li> <li>Works for <a href="https://testdouble.com/">Test Double</a></li> <li>What he means by &ldquo;remote&rdquo;</li> <li>What is Test Double?</li> <li>They believe software is broken and they are there to fix it</li> <li><a href="https://www.youtube.com/watch?v=I_uIXgSmkDo">His talk - <em>Practical Functional Programming</em></a></li> <li>The 6 things he talked about in his talk</li> <li>Practical aspects that any software engineer is going to deal with</li> <li>Purity and the side effects of programming in general</li> <li>Hard to follow code</li> <li>Imperative VS declarative code</li> <li>Code breaking unexpectedly</li> <li>Mutable data VS immutable data</li> <li>The idea of too much code</li> <li>Combining multiple functions together to make more complex functions</li> <li>Function composition</li> <li><a href="http://elm-lang.org/">Elm</a>, <a href="https://elixir-lang.org/">Elixir</a>, and <a href="https://fsharp.org/">F#</a></li> <li>Pipe operator</li> <li>Scary to refactor code</li> <li>Static types</li> <li>The idea of null</li> <li>The theory of unit testing</li> <li>Is functional programming the solution?</li> <li>His approach from the talk</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://testdouble.com/">Test Double</a></li> <li><a href="https://www.youtube.com/watch?v=I_uIXgSmkDo">His talk - <em>Practical Functional Programming</em></a></li> <li><a href="http://elm-lang.org/">Elm</a></li> <li><a href="https://elixir-lang.org/">Elixir</a></li> <li><a href="https://fsharp.org/">F#</a></li> <li><a href="https://twitter.com/elpapapollo?lang=en">@elpapapollo</a></li> <li><a href="https://jeremyfairbank.com/">jeremyfairbank.com</a></li> <li><a href="https://github.com/jfairbank">Jeremy&rsquo;s GitHub</a></li> <li><a href="https://www.youtube.com/c/JeremyFairbank">Jeremy&rsquo;s YouTube</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Aimee</p> <ul> <li><a href="http://theamericandollar.info/">American Dollar</a></li> <li>Force with lease</li> </ul> <p>AJ</p> <ul> <li><a href="https://www.superfightgame.com/">Superfight</a></li> </ul> <p>Joe</p> <ul> <li><a href="https://codeburst.io/the-2018-web-developer-roadmap-826b1b806e8d"><em>The 2018 Web Developer Roadmap</em> by Brandon Morelli</a></li> <li><a href="https://svelte.technology/">Svelte</a></li> </ul> <p>Jeremy</p> <ul> <li><a href="https://pragprog.com/book/jfelm/programming-elm"><em>Programming Elm</em></a></li> <li><a href="https://www.amazon.com/Secrets-Consulting-Giving-Getting-Successfully/dp/0932633013"><em>The Secrets of Consulting </em>by Gerald M. Weinberg</a></li> <li><a href="http://connect.tech/">Connect.Tech</a></li> </ul>
Aug 07, 2018
MJS 072: Orta Therox
38:58
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Orta Therox</p> <p>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 <a href="https://www.artsy.net/">Artsy</a>, 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-305-continuous-integration-processes-and-dangerjs-with-orta-therox/">JavaScript Jabber Episode 305</a></li> <li>Orta intro</li> <li>Artsy</li> <li>iOS programming</li> <li>Hates lack of documentation</li> <li><a href="http://cocoadocs.org/">CocoaPods</a></li> <li>Trouble with building native apps</li> <li>His move to <a href="https://reactjs.org/">React</a> and <a href="https://facebook.github.io/react-native/">React Native</a></li> <li>Used to run iOS team at Artsy</li> <li>How did you get into programming?</li> <li>Played video games as a kid</li> <li>Taught himself with books</li> <li>Using open source to learn</li> <li>Open source by default idea</li> <li>Loves giving back through blogging and open source</li> <li>How did you get into <a href="https://www.ruby-lang.org/en/">Ruby</a>?</li> <li><a href="http://macruby.org/">MacRuby</a></li> <li>Boundaries are very obvious in React Native</li> <li>How did you get into React and React Native?</li> <li>Native developers building stuff in <a href="https://www.javascript.com/">JavaScript</a></li> <li>Culture conflicts</li> <li>How they dealt with dependencies in their apps</li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-305-continuous-integration-processes-and-dangerjs-with-orta-therox/">JavaScript Jabber Episode 305</a></li> <li><a href="https://www.artsy.net/">Artsy</a></li> <li><a href="http://cocoadocs.org/">CocoaPods</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://facebook.github.io/react-native/">React Native</a></li> <li><a href="http://macruby.org/">MacRuby</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://twitter.com/orta?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@orta</a></li> <li><a href="http://orta.io/">orta.io</a></li> <li><a href="https://github.com/orta">Orta&rsquo;s GitHub</a></li> <li><a href="http://artsy.github.io/">Artsy Engineering</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks</strong></p> <p>Charles</p> <ul> <li><a href="https://itunes.apple.com/us/movie/south-pacific-1958/id394798560">South Pacific</a></li> <li><a href="https://devchat.tv/course/get-a-coder-job-video-course/">Get a Coder Job course</a></li> <li><a href="https://www.frameworksummit.com/">Framework Summit</a></li> </ul> <p>Orta</p> <ul> <li><a href="https://prettier.io/">Prettier</a></li> </ul>
Aug 01, 2018
JSJ 324: with Kent Beck
1:06:32
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>Joe Eames</li> <li>Aimee Knight</li> </ul> <p><strong>Special Guests: </strong>Kent Beck</p> <p>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.&nbsp; 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Kent intro/update</li> <li><a href="https://devchat.tv/ruby-rogues/023-rr-book-club-smalltalk-best-practice-patterns-with-kent-beck">Ruby Rogues Episode 23</a></li> <li>Worked at Facebook for 7 years</li> <li>What were you doing at Facebook?</li> <li>Unique culture at Facebook</li> <li>His strengths as a developer didn&rsquo;t match with the organization&rsquo;s</li> <li>Coaching developers</li> <li>TDD and Patterns</li> <li>Advantages as an old engineer</li> <li>What did coaching engagement consist of?</li> <li>Takes time to build trust</li> <li>Discharging shame</li> <li>Need permission to take care of what you need to</li> <li>Being at your best so you can do your best work</li> <li>Vacation in place</li> <li>What have you learned in your time working with people?</li> <li>The nice thing about coaching</li> <li>Everyone is different</li> <li>How do we create a healthy environment within the workplace?</li> <li>Mentor in Ward Cunningham</li> <li>What is it costing us?</li> <li>Why did you decide to leave?</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://devchat.tv/ruby-rogues/023-rr-book-club-smalltalk-best-practice-patterns-with-kent-beck">Ruby Rogues Episode 23</a></li> <li><a href="https://twitter.com/KentBeck?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@KentBeck</a></li> <li><a href="https://www.kentbeck.com/">kentbeck.com</a></li> <li><a href="https://github.com/KentBeck">Kent&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.amazon.com/Five-Dysfunctions-Team-Leadership-Fable/dp/0787960756"><em>The Five Dysfunctions of a Team</em> by Patrick Lencioni</a></li> <li><a href="https://www.amazon.com/Crucial-Accountability-Resolving-Expectations-Commitments/dp/0071829318"><em>Crucial Accountability</em> by Kerry Patterson</a></li> </ul> <p>Aimee</p> <ul> <li><a href="https://en.wikipedia.org/wiki/N-back">n-back</a></li> </ul> <p>Joe</p> <ul> <li><a href="https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530"><em>Test Driven Development: By Example</em> by Kent Beck</a></li> </ul> <p>Kent</p> <ul> <li><a href="https://www.amazon.com/Field-Guide-Understanding-Human-Error/dp/1472439058"><em>The Field Guide to Understanding &#39;Human Error&#39;</em> by Sidney Dekker</a></li> <li><a href="https://www.amazon.com/Conspiracy-Peter-Gawker-Anatomy-Intrigue-ebook/dp/B07637TDJJ"><em>Conspiracy: Peter Thiel, Hulk Hogan, Gawker, and the Anatomy of Intrigue</em> by Ryan Holiday</a></li> </ul>
Jul 31, 2018
JSJ 323: "Building a JavaScript platform that gives you the power to build your own CDN" with Kurt Mackey
1:03:05
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>AJ ONeal</li> </ul> <p><strong>Special Guests: </strong>Kurt Mackey</p> <p>In this episode, the JavaScript Jabber panel talks to Kurt Mackey about Fly.io. At <a href="https://fly.io/">Fly.io</a>, they are &quot;building a <a href="https://www.javascript.com/">JavaScript</a> platform that gives you the power to build your own CDN.&quot; They talk about how Fly.io 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://fly.io/">Fly.io</a></li> <li>Building a programmable CDN</li> <li>High level overview of Fly.io</li> <li>How did this project come together?</li> <li>CDNs didn&rsquo;t work with dynamic applications</li> <li>Has been working on this since 2008</li> <li>Extend application logic to the &ldquo;edge&rdquo;</li> <li>Putting burden of <a href="https://www.javascript.com/">JavaScript</a> &ldquo;nastiest&rdquo; onto the web server</li> <li>Fly is the proxy layer</li> <li>Getting things closer to visitors and users</li> <li>CDN caching</li> <li>Cache APIs</li> <li>Writing logic to improve your lighthouse score</li> <li>Have you built in resizing images into Fly?</li> <li>Managing assets closer to the user</li> <li>Can you modify your own JavaScript files?</li> <li>What happens when you deploy a Fly app</li> <li>Having more application logic</li> <li>DOM within the proxy</li> <li><a href="https://ghost.org/">Ghost</a></li> <li><a href="https://reactjs.org/">React</a> and <a href="https://www.gatsbyjs.org/">Gatsby</a></li> <li>Intelligently loading client JavaScript</li> <li>How do you build the JavaScript platform?</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://fly.io/">Fly.io</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://ghost.org/">Ghost</a></li> <li><a href="https://www.gatsbyjs.org/">Gatsby</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://twitter.com/flydotio">@flydotio</a></li> <li><a href="https://twitter.com/mrkurt">@mrkurt</a></li> <li><a href="https://arstechnica.com/author/kurt/">Kurt at ARS Technica</a></li> <li><a href="https://github.com/mrkurt">Kurt&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://about.gitlab.com/">GitLab</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://gitea.io/en-us/">Gitea</a></li> <li><a href="https://www.imdb.com/title/tt1825683/">Black Panther</a></li> </ul> <p>Kurt</p> <ul> <li><a href="https://www.packet.net/">Packet.net</a></li> <li><a href="https://www.amazon.com/Three-Body-Problem-Cixin-Liu/dp/0765382032"><em>The Three-Body Problem</em> by Cixin Liu</a></li> </ul>
Jul 26, 2018
MJS 071: Kye Hohenberger
19:18
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Kye Hohenberger</p> <p>This week on My JavaScript Story, Charles speaks with Kye Hohenberger. Kye is a senior front-end engineer at <a href="https://www.gremlin.com/">Gremlin</a>, where they do chaos as a service and break your stuff on purpose so that you can fix it and it hopefully won&rsquo;t happen again. He also created the <a href="https://emotion.sh/">Emotion</a> 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 <a href="https://www.javascript.com/">JavaScript</a>, what he&#39;s built in JavaScript that he&rsquo;s proud of, what he&rsquo;s working on now, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-286-creating-css-js-library-scratch-emotion-kye-hohenberger">JavaScript Jabber Episode 286</a></li> <li>Kye intro</li> <li>Works at <a href="https://www.gremlin.com/">Gremlin</a> as a front-end engineer</li> <li>How did you first get into programming?</li> <li>Always had a burning curiosity for computers</li> <li>Worked on HTML first</li> <li>Worked with flash in High School</li> <li>Tried to major in Computer Science and dropped out of it</li> <li>Job in IT</li> <li><a href="https://wordpress.com/">Wordpress</a> maintenance</li> <li>Hooked on wanting to learn more</li> <li><a href="https://www.python.org/">Python</a> with <a href="https://www.djangoproject.com/">Django</a></li> <li>What was it that caught your attention?</li> <li>How did you get into <a href="https://www.javascript.com/">JavaScript</a>?</li> <li>Job at <a href="https://cpanel.com/">cPanel</a></li> <li>What led you to build something like <a href="https://emotion.sh/">Emotion</a>?</li> <li>Didn&rsquo;t like having to use the <a href="https://sass-lang.com/install">Sass</a> compiler</li> <li>What problem were you trying to solve?</li> <li>Have you worked on anything else in JavaScript that you&rsquo;re proud of?</li> <li>What are you working on now?</li> <li>APIs from Java to <a href="https://nodejs.org/en/">Node</a></li> <li>Wrote <a href="https://qordoba.com/">Qordoba</a> apps for 2 years</li> <li>What made you switch from <a href="https://angular.io/">Angular</a> to <a href="https://reactjs.org/">React</a>?</li> <li>Learning <a href="https://webpack.js.org/">WebPack</a></li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/jsj-286-creating-css-js-library-scratch-emotion-kye-hohenberger">JavaScript Jabber Episode 286</a></li> <li><a href="https://emotion.sh/">Emotion</a></li> <li><a href="https://wordpress.com/">Wordpress</a></li> <li><a href="https://www.python.org/">Python</a></li> <li><a href="https://www.djangoproject.com/">Django</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://cpanel.com/">cPanel</a></li> <li><a href="https://sass-lang.com/install">Sass</a></li> <li><a href="https://nodejs.org/en/">Node</a></li> <li><a href="https://angular.io/">Angular</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://webpack.js.org/">WebPack</a></li> <li><a href="https://twitter.com/tkh44?lang=en">@tkh44</a></li> <li><a href="https://github.com/tkh44">Kye&rsquo;s GitHub</a></li> <li><a href="https://medium.com/@tkh44">Kye&rsquo;s Medium</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks</strong></p> <p>Charles</p> <ul> <li><a href="https://www.homedepot.com/c/tool_and_truck_rental">Home Depot Tool Rentals</a></li> <li><a href="https://www.frameworksummit.com/">Framework Summit</a></li> <li><a href="https://podcastmovement.com//">Podcast Movement</a></li> </ul> <p>Kye</p> <ul> <li><a href="https://theconsolelog.com/">The Console Log</a></li> <li><a href="https://frontendmasters.com/teachers/brian-holt/">Brian Holt on Frontend Masters</a></li> <li>Emotion Team</li> </ul>
Jul 25, 2018
MJS 070: Jerome Hardaway
39:40
<p>&nbsp;</p> <p><strong>Panel: </strong>Charles Max Wood</p> <p>&nbsp;</p> <p><strong>Guest:</strong> Jerome Hardaway</p> <p>&nbsp;</p> <p>This week on My JavaScript Story, Charles speaks with Jerome Hardaway. Jerome used to be a panelist on <a href="https://devchat.tv/ruby-rogues">Ruby Rogues</a> and loved the ability to share his knowledge and interact with so many people from the community. He first got into programming by accident when he couldn&rsquo;t find a job after becoming a veteran. He saw a commercial about job opportunities in coding, ended up finding a book on SQL and taught himself how to program. They talk about where he ran across Ruby on Rails, what he has worked on that he is particularly proud of, what he is doing currently, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Jerome&rsquo;s experience being a panelist on <a href="https://devchat.tv/ruby-rogues">Ruby Rogues</a></li> <li>Loves being able to reach his goals in a speedy manner</li> <li><a href="https://devchat.tv/ruby-rogues/279-rr-vets-who-code-with-jerome-hardaway">Ruby Rogues Episode 279</a></li> <li><a href="https://devchat.tv/js-jabber/239-jsj-vets-who-code-with-jerome-hardaway">JavaScript Jabber Episode 239</a></li> <li>How did you first get into programming?</li> <li>In the military during the recession and had trouble finding a job</li> <li>Saw a commercial about coding</li> <li>Taught himself SQL</li> <li><a href="https://wordpress.com/">Wordpress</a></li> <li>Focusing on making <a href="https://vetswhocode.io/">Vets Who Code</a> better</li> <li>People would go for products over projects any day</li> <li>Chose <a href="https://rubyonrails.org/">Ruby on Rails</a>&nbsp;</li> <li>Setting himself apart by picking to focus on Ruby on Rails</li> <li>Where did you come across Ruby on Rails?</li> <li>From PHP to Ruby on Rails</li> <li><a href="https://www.ruby-lang.org/en/">Ruby</a></li> <li>Have you found the learning curve has gotten steeper for Rails?</li> <li>Keeping up with the <a href="https://www.javascript.com/">JavaScript</a> community</li> <li>What have you done on Ruby in Rails that you are proud of?</li> <li>Being the right person for the job when you don&rsquo;t look like it on paper</li> <li>What are you working on now?</li> <li>And much, much more!</li> </ul> <p>&nbsp;</p> <p><strong>Links:&nbsp;</strong></p> <ul> <li><a href="https://devchat.tv/ruby-rogues/279-rr-vets-who-code-with-jerome-hardaway">Ruby Rogues Episode 279</a></li> <li><a href="https://devchat.tv/js-jabber/239-jsj-vets-who-code-with-jerome-hardaway">JavaScript Jabber Episode 239</a></li> <li><a href="https://vetswhocode.io/">Vets Who Code</a></li> <li><a href="https://devchat.tv/ruby-rogues">Ruby Rogues</a></li> <li><a href="https://wordpress.com/">Wordpress</a></li> <li><a href="https://rubyonrails.org/">Ruby on Rails</a></li> <li><a href="https://www.ruby-lang.org/en/">Ruby</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://twitter.com/JeromeHardaway">@JeromeHardaway</a></li> <li><a href="https://medium.com/vets-who-code">Vets Who Code blog</a></li> <li><a href="https://github.com/jeromehardaway">Jerome&rsquo;s GitHub</a></li> </ul> <p>&nbsp;</p> <p><strong>Sponsors:&nbsp;</strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks</strong></p> <p>Charles&nbsp;</p> <ul> <li>Take some time with the people you care about</li> <li><a href="https://mattermost.com/">Mattermost</a></li> </ul> <p>Jerome</p> <ul> <li><a href="https://frontendmasters.com/teachers/brian-holt/">Brian Holt Frontend Masters</a></li> <li><a href="https://pragmaticstudio.com/">Pragmatic Studio</a></li> </ul>
Jul 18, 2018
JSJ 322: Building SharePoint Extensions with JavaScript with Vesa Juvonen LIVE at Microsoft Build
30:56
<p><strong>Panel: </strong></p> <p>Charles Max Wood</p> <p><strong>Special Guests: </strong>Vesa Juvonen</p> <p>In this episode, the JavaScript Jabber panel talks to Vesa Juvonen about building SharePoint extensions with JavaScript. Vesa is on the <a href="https://products.office.com/en-US/sharepoint/collaboration?ms.officeurl=sharepoint">SharePoint</a> development team and is responsible for the <a href="https://github.com/SharePoint/sp-dev-docs/wiki">SharePoint Framework</a>, which is the modern way of implementing SharePoint customizations with <a href="https://www.javascript.com/">JavaScript</a>. 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Vesa intro</li> <li>What is <a href="https://products.office.com/en-US/sharepoint/collaboration?ms.officeurl=sharepoint">SharePoint</a>?</li> <li>Has existed since 2009</li> <li>People either know about it and use it or don&rsquo;t know what it is</li> <li>Baggage from a customization perspective</li> <li>Why <a href="https://www.javascript.com/">JavaScript</a> developers?</li> <li>Modernizing development</li> <li><a href="https://github.com/SharePoint/sp-dev-docs/wiki">SharePoint Framework</a></li> <li><a href="https://www.microsoft.com/en-us/ignite">Microsoft Ignite Conference</a></li> <li>Is there a market for it?</li> <li>System integrators</li> <li><a href="https://docs.angularjs.org/api/ng/function/angular.element">Angular Element</a> and <a href="https://reactjs.org/">React</a></li> <li>React for SharePoint Framework back-end</li> <li>Supports <a href="https://vuejs.org/">Vue</a></li> <li><a href="https://devchat.tv/react-round-up">React Round Up Podcast</a></li> <li>How do you maintain isolation?</li> <li>What&rsquo;s the best way to get started with SharePoint extensions?</li> <li><a href="https://developer.microsoft.com/en-us/office">Office 365 Developer Program</a></li> <li><a href="https://docs.microsoft.com/en-us/sharepoint/">SharePoint documentation</a></li> <li><a href="https://www.youtube.com/user/GetStartedSharePoint">SharePoint YouTube</a></li> <li>What kinds of extensions are you seeing people build?</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://products.office.com/en-US/sharepoint/collaboration?ms.officeurl=sharepoint">SharePoint</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://github.com/SharePoint/sp-dev-docs/wiki">SharePoint Framework</a></li> <li><a href="https://www.microsoft.com/en-us/ignite">Microsoft Ignite Conference</a></li> <li><a href="https://docs.angularjs.org/api/ng/function/angular.element">Angular Element</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://vuejs.org/">Vue</a></li> <li><a href="https://devchat.tv/react-round-up">React Round Up Podcast</a></li> <li><a href="https://developer.microsoft.com/en-us/office">Office 365 Developer Program</a></li> <li><a href="https://docs.microsoft.com/en-us/sharepoint/">SharePoint documentation</a></li> <li><a href="https://www.youtube.com/user/GetStartedSharePoint">SharePoint YouTube </a></li> <li><a href="https://twitter.com/officedev?lang=en">@OfficeDev</a></li> <li><a href="https://twitter.com/vesajuvonen?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@vesajuvonen</a></li> <li><a href="https://blogs.msdn.microsoft.com/vesku/">Vesa&rsquo;s blog</a></li> <li><a href="https://github.com/VesaJuvonen">Vesa&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/SharePoint?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@SharePoint</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.ziglar.com/">Zig Ziglar</a></li> <li><a href="https://www.amazon.com/Conversations-My-Dog-Zig-Ziglar/dp/0805432604"><em>Conversations with My Dog</em> by Zig Ziglar</a></li> <li><a href="https://www.audible.com/search?searchAuthor=Pimsleur">Pimsleur Lessons on Audible</a></li> </ul> <p>Vesa</p> <ul> <li><a href="https://www.amazon.com/Armada-novel-author-Ready-Player/dp/0804137277"><em>Armada</em> by Ernest Cline</a></li> </ul>
Jul 17, 2018
MJS 069: Lizzie Siegle
16:28
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Lizzie Siegle</p> <p>This week on My JavaScript Story, Charles speaks with Lizzie Siegle. Lizzie is a senior computer science major at Bryn Mawr College, works for <a href="https://www.twilio.com/">Twilio</a> 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 <a href="https://www.javascript.com/">JavaScript</a>, why she chose to work as a developer evangelist, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Lizzie intro</li> <li>Computer Science Major</li> <li>Works at <a href="https://www.twilio.com/">Twilio</a></li> <li>Greg Baugues was her assigned mentor this past summer</li> <li>How did you first get into programming?</li> <li>Grew up in Silicon Valley</li> <li>Hated STEM growing up</li> <li>Was inspired at a one day all girls coding camp at Stanford</li> <li>Loves being able to be creative with code</li> <li>What was the coding camp like?</li> <li>Camp was for high-schoolers</li> <li>HTML and CSS</li> <li>What was it that got you interested in code?</li> <li>Seeing the application of code in the real world</li> <li>Why <a href="https://www.javascript.com/">JavaScript</a>?</li> <li>Works also in <a href="https://www.python.org/">Python</a>, <a href="https://swift.org/">Swift</a>, and <a href="https://www.haskell.org/">Haskell</a></li> <li>Loves how versatile JS is</li> <li>Why developer evangelism?</li> <li>Internship at <a href="https://www.pubnub.com/">PubNub</a></li> <li>Loves being able to teach others as an evangelist</li> <li>What have you done in JavaScript that you&rsquo;re proud of?</li> <li><a href="https://github.com/pubnub/eon">Eon.js</a></li> <li>What are you working on currently?</li> <li>Get comfortable with being uncomfortable</li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://www.twilio.com/">Twilio</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://www.python.org/">Python</a></li> <li><a href="https://swift.org/">Swift</a></li> <li><a href="https://www.pubnub.com/">PubNub</a></li> <li><a href="https://www.haskell.org/">Haskell</a></li> <li><a href="https://github.com/pubnub/eon">Eon.js</a></li> <li><a href="https://twitter.com/lizziepika?lang=en">@lizziepika</a></li> <li><a href="https://tinyletter.com/lizziepika">Her newsletter</a></li> <li><a href="https://elizabethsiegle.github.io/">Lizzie&rsquo;s Website</a></li> <li><a href="https://github.com/elizabethsiegle">Lizzie&rsquo;s GitHub</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks</strong></p> <p>Lizzie</p> <ul> <li>The importance of a mentor or a sponsor</li> </ul>
Jul 11, 2018
JSJ 321: Babel and Open Source Software with Henry Zhu
57:53
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>Aimee Knight</li> <li>AJ ONeal</li> <li>Joe Eames</li> </ul> <p><strong>Special Guests: </strong>Henry Zhu</p> <p>In this episode, the JavaScript Jabber panel talks to Henry Zhu about Babel and open source software. Henry is one of the maintainers on <a href="https://babeljs.io/">Babel</a>, which is a <a href="https://www.javascript.com/">JavaScript</a>&nbsp;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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Henry intro</li> <li><a href="https://babeljs.io/">Babel</a> update</li> <li>Sebastian McKenzie was the original creator of Babel</li> <li>Has learned a lot about being a maintainer</li> <li>What is Babel?</li> <li><a href="https://www.javascript.com/">JavaScript</a> compiler</li> <li>You never know who your user is</li> <li>Has much changed with Babel since Sebastian left?</li> <li>Working on open source</li> <li>How did you get started in pen source?</li> <li>The ability to learn a lot from open source</li> <li>Atrocities of globalization</li> <li>More decentralization from GitHub</li> <li><a href="https://gitea.io/en-us/">Gitea</a> and <a href="https://about.gitlab.com/">GitLab</a></li> <li><a href="https://git.coolaj86.com/coolaj86/gitea-installer.sh">Gitea installer</a></li> <li>Open source is more closed now</li> <li>His first PR</li> <li>JSCS</li> <li>Auto-fixing</li> <li><a href="https://prettier.io/">Prettier</a></li> <li>Learning more about linting</li> <li>You don&rsquo;t have to have formal training to be successful</li> <li><a href="https://codefund.io/">Codefund.io</a></li> <li>Sustainability of open source</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://babeljs.io/">Babel</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://gitea.io/en-us/">Gitea</a></li> <li><a href="https://about.gitlab.com/">GitLab</a></li> <li><a href="https://git.coolaj86.com/coolaj86/gitea-installer.sh">Gitea installer</a></li> <li><a href="https://prettier.io/">Prettier</a></li> <li><a href="https://codefund.io/">Codefund.io</a></li> <li><a href="https://twitter.com/left_pad?lang=en">@left_pad</a></li> <li><a href="https://github.com/hzoo">Henry&rsquo;s GitHub</a></li> <li><a href="https://www.henryzoo.com/">henryzoo.com</a></li> <li><a href="https://www.patreon.com/henryzhu">Henry&rsquo;s Patreon</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.amazon.com/Orphan-Black-Complete-Region-Canada/dp/B0757G2PLP/ref=sr_1_1_sspa?ie=UTF8&amp;qid=1531431533&amp;sr=8-1-spons&amp;keywords=orphan+black&amp;psc=1&amp;smid=A17WR38DPVHCHY">Orphan Black</a></li> <li><a href="https://www.amazon.com/Crucial-Accountability-Resolving-Expectations-Commitments/dp/0071829318"><em>Crucial Accountability</em> by Kerry Patterson</a></li> </ul> <p>Aimee</p> <ul> <li><a href="https://mymodernmet.com/shared-table-where-people-can-work-and-cats-can-wander/">Desk with cubby holes for cats</a></li> <li><a href="http://nautil.us/blog/-the-key-to-good-luck-is-an-open-mind"><em>The Key to Good Luck Is an Open Mind</em> blog post</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://gitea.io/en-us/">Gitea</a></li> <li><a href="https://git.coolaj86.com/coolaj86/gitea-installer.sh">Gitea installer</a></li> <li><a href="https://git.coolaj86.com/coolaj86/greenlock-express.js">Greenlock</a></li> </ul> <p>Joe</p> <ul> <li><a href="https://www.starwars.com/films/solo">Solo</a></li> <li><a href="https://en.wikipedia.org/wiki/Justified_(TV_series)">Justified</a></li> </ul> <p>Henry</p> <ul> <li><a href="http://www.celestegame.com/">Celeste</a></li> <li><a href="https://zeit.co/tv">Zeit Day talks</a></li> </ul>
Jul 10, 2018
MJS 068: Ian Sinnott
26:41
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Ian Sinnott</p> <p>This week on My JavaScript Story, Charles speaks with Ian Sinnott. Since being on JavaScript Jabber for <a href="https://devchat.tv/js-jabber/227-jsj-fostering-community-through-react-with-benjamin-dunphy-berkeley-martinez-and-ian-sinnott">Episode 227</a>, he has being writing a lot in <a href="https://www.javascript.com/">JavaScript</a> 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 <a href="https://www.javascript.com/">JavaScript</a>, what he is working on currently, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/227-jsj-fostering-community-through-react-with-benjamin-dunphy-berkeley-martinez-and-ian-sinnott">JavaScript Jabber Episode 227</a></li> <li>Ian intro</li> <li>How did you first get into programming?</li> <li>2 CS courses in college</li> <li>Left programming after the classes</li> <li>Why did you decide to come back?</li> <li>Learning on PHP and <a href="https://wordpress.com/">WordPress</a></li> <li>What was it about web development that got you excited?</li> <li>Web development is high level and you can get quick wins</li> <li>What made you cross over into <a href="https://www.javascript.com/">JavaScript</a>?</li> <li>Really likes native apps</li> <li>Rise of the single-page web app</li> <li>Interactive apps</li> <li>What&rsquo;s your flavor of choice?</li> <li><a href="https://reactjs.org/">React</a> is his go to</li> <li><a href="https://devchat.tv/?s=nick+disabato">MJS Episode 43 - Nick Disabato</a></li> <li><a href="https://reactjs.org/docs/introducing-jsx.html">JSX</a>, <a href="https://angular.io/">Angular</a>, <a href="https://www.typescriptlang.org/">TypeScript</a>, and <a href="https://vuejs.org/">Vue</a></li> <li>What are you working on now?</li> <li><a href="http://johnny-five.io/">Johnny-Five</a> and <a href="https://www.arduino.cc/">Arduino</a></li> <li>Learning hardware allows you to attach an API to anything</li> <li>Is there anything that you have done that you are proud of?</li> <li>Rendering static sites in React</li> <li><a href="https://www.gatsbyjs.org/">Gatsby</a></li> <li><a href="https://github.com/iansinnott/react-static-webpack-plugin">react-static-webpack-plugin</a> and <a href="https://github.com/iansinnott/react-static-boilerplate">react-static-boilerplate</a></li> <li><a href="https://rxjs-dev.firebaseapp.com/">RxJS</a> and <a href="https://redux-observable.js.org/">Redux-Observable</a></li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/227-jsj-fostering-community-through-react-with-benjamin-dunphy-berkeley-martinez-and-ian-sinnott">JavaScript Jabber Episode 227</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://wordpress.com/">WordPress</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://devchat.tv/?s=nick+disabato">MJS Episode 43 - Nick Disabato</a></li> <li><a href="https://reactjs.org/docs/introducing-jsx.html">JSX</a></li> <li><a href="https://angular.io/">Angular</a></li> <li><a href="https://www.typescriptlang.org/">TypeScript</a></li> <li><a href="https://vuejs.org/">Vue</a></li> <li><a href="http://johnny-five.io/">Johnny-Five</a></li> <li><a href="https://www.gatsbyjs.org/">Gatsby</a></li> <li><a href="https://github.com/iansinnott/react-static-webpack-plugin">react-static-webpack-plugin</a></li> <li><a href="https://github.com/iansinnott/react-static-boilerplate">react-static-boilerplate</a></li> <li><a href="https://rxjs-dev.firebaseapp.com/">RxJS</a></li> <li><a href="https://redux-observable.js.org/">Redux-Observable</a></li> <li><a href="https://twitter.com/ian_sinn">@ian_sinn</a></li> <li><a href="https://github.com/iansinnott">Ian&rsquo;s GitHub</a></li> <li><a href="https://www.iansinnott.com/">iansinnott.com</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks</strong></p> <p>Charles</p> <ul> <li><a href="https://www.sling.com/">Sling TV</a></li> <li><a href="https://jsdevsummit.com/">JS Dev Summit</a></li> <li><a href="https://devchat.tv/">Views on Vue</a>, <a href="https://devchat.tv/">React Round Up</a>, and <a href="https://devchat.tv/">Elixir Mix</a></li> </ul> <p>Ian</p> <ul> <li><a href="https://www.kalzumeus.com/2012/01/23/salary-negotiation/"><em>Salary Negotiation: Make More Money, Be More Valued</em> by Patrick McKenzie</a></li> <li><a href="https://bigmachine.io/products/a-curious-moon/"><em>A Curious Moon</em></a></li> <li><a href="https://www.relay.fm/cortex">Cortex Podcast</a></li> </ul>
Jul 04, 2018
JSJ 320: Error Tracking and Troubleshooting Workflows with David Cramer LIVE at Microsoft Build
27:45
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>Alyssa Nicholl</li> <li>Ward Bell</li> </ul> <p><strong>Special Guests: </strong>David Cramer</p> <p>In this episode, the JavaScript Jabber panelists talk to David Cramer about error tracking and troubleshooting workflows. David is the founder and CEO of <a href="https://sentry.io/welcome/">Sentry</a>, 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>David intro</li> <li>Founder and CEO of <a href="https://sentry.io/welcome/">Sentry</a></li> <li>What is Sentry?</li> <li>Working with PHP</li> <li>De-bugger for production</li> <li>Focus on workflow</li> <li>Goal of Sentry</li> <li>Triaging the problem</li> <li>Workflow management</li> <li>Sentry started off as an open-source side project</li> <li>Instrumentation for <a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://www.emberjs.com/">Ember</a>, <a href="https://angular.io/">Angular</a>, and <a href="https://www.npmjs.com/">npm</a></li> <li>Got their start in <a href="https://www.python.org/">Python</a></li> <li>Logs</li> <li>Totally open-source</li> <li>Most compatible with run-time</li> <li>Can work with any language</li> <li>Deep contexts</li> <li>Determining the root cause</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://sentry.io/welcome/">Sentry</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="https://www.emberjs.com/">Ember</a></li> <li><a href="https://angular.io/">Angular</a></li> <li><a href="https://www.npmjs.com/">npm</a></li> <li><a href="https://www.python.org/">Python</a></li> <li><a href="https://github.com/getsentry">Sentry&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/getsentry?lang=en">@getsentry</a></li> <li><a href="https://github.com/dcramer">David&rsquo;s GitHub</a></li> <li><a href="http://cra.mr/">David&rsquo;s Website</a></li> <li><a href="https://twitter.com/zeeg">@zeeg</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li>Socks as Swag</li> </ul> <p>David</p> <ul> <li><a href="https://code.visualstudio.com/">VS Code</a></li> <li><a href="https://kubernetes.io/">Kubernetes</a></li> </ul>
Jul 03, 2018
MJS 067: Tracy Lee
44:09
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Tracy Lee</p> <p>This week on My Angular Story, Charles speaks with Tracy Lee. Tracy is the co-founder <a href="https://www.thisdot.co/">This Dot</a> and her goal with it is to bring the <a href="https://www.javascript.com/">JavaScript</a> community together. She first got into programming when she tried to build websites for people and then was interested in learning <a href="https://www.javascript.com/">JavaScript</a> and really fell in love with the community. She really stayed with <a href="https://angular.io/">Angular</a> 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.</p> <p><strong>In particular, We dive pretty deep on: </strong></p> <ul> <li><a href="https://www.thisdot.co/">This Dot</a></li> <li><a href="https://www.contributordays.com/">ContributorDays.com</a></li> <li>How did you first get into programming?</li> <li>Really loves community</li> <li><a href="https://angular.io/">Angular</a> community being so welcoming</li> <li>What made you pick the Angular community?</li> <li><a href="https://www.emberjs.com/">Ember</a> originally</li> <li>Loves how big the Angular community is</li> <li>Business background</li> <li>Loves the challenge of trying to create things</li> <li>On the <a href="https://dev.to/ladyleet/im-tracy-lee-a-rxjs-core-team-member-and-google-developer-expert-ask-me-anything-42jo">RxJS Core team</a></li> <li><a href="https://www.thisdot.co/media/">This Dot Media</a></li> <li><a href="https://www.thisdot.co/labs/">This Dot Labs</a></li> <li>Loves to builds brands and consult</li> <li>The importance of mentors</li> <li>Starting an apprentice program</li> <li>She loves being able to help others</li> <li>People underestimate the impact they have on the world</li> <li><a href="https://angularair.com/">AngularAir</a> and <a href="https://javascriptair.com/">JavaScript Air</a></li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://www.thisdot.co/">This Dot</a></li> <li><a href="https://www.contributordays.com/">ContributorDays.com</a></li> <li><a href="https://www.javascript.com/">JavaScript </a></li> <li><a href="https://angular.io/">Angular</a></li> <li><a href="https://www.emberjs.com/">Ember</a></li> <li><a href="https://dev.to/ladyleet/im-tracy-lee-a-rxjs-core-team-member-and-google-developer-expert-ask-me-anything-42jo">RxJS Core Team</a></li> <li><a href="https://www.thisdot.co/media/">This Dot Media</a></li> <li><a href="https://www.thisdot.co/labs/">This Dot Labs</a></li> <li><a href="https://angularair.com/">AngularAir</a></li> <li><a href="https://javascriptair.com/">JavaScriptAir</a></li> <li><a href="https://medium.com/@ladyleet">Tracy&rsquo;s Medium</a></li> <li><a href="https://twitter.com/ladyleet?lang=en">@LadyLeet</a></li> <li><a href="https://ladyleet.com/">LadyLeet.com</a></li> <li><a href="https://www.youtube.com/channel/UCABJEQ57MIn6X3TIHIebJUw">DevChat.tv Youtube</a></li> <li><a href="https://www.youtube.com/channel/UCHkqtrnQO2HMyW50ixOtJGw">This Dot Media Youtube</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.amazon.com/Ready-Player-One-Ernest-Cline/dp/0307887448"><em>Ready Player One</em> by Ernest Cline</a></li> <li><a href="https://www.youtube.com/user/BadLipReading">Bad Lip Reading YouTube</a></li> </ul> <p>Tracy</p> <ul> <li><a href="https://www.amazon.com/Synthetic-Eyeliner-Foundation-Cosmetic-Well-blended/dp/B071WVJ8RP?th=1">Mermaid Tail Makeup Brushes</a></li> <li><a href="https://www.dermstore.com/beautyfix.php">Beauty Fix Box</a></li> </ul>
Jun 27, 2018
JSJ 319: Winamp2-js with Jordan Eldredge
48:37
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>AJ ONeal</li> <li>Aimee Knight</li> <li>Joe Eames</li> </ul> <p><strong>Special Guests: </strong>Jordan Eldredge</p> <p>In this episode, the JavaScript Jabber panelists discuss Winamp2-js with Jordan Eldredge. Jordan is the creator of <a href="https://github.com/captbaritone/webamp">Winamp2-js</a> 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 <a href="https://github.com/captbaritone/webamp">Webamp</a> an electron app, and more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>What is <a href="https://github.com/captbaritone/webamp">Winamp2-js</a>?</li> <li>The history and future of Winamp</li> <li><a href="https://getwacup.com/">WACUP</a></li> <li>Winamp was the first big mp3 player that you could style</li> <li>Webamp&rsquo;s features and the technical challenges associated with them</li> <li>Why <a href="https://www.javascript.com/">JavaScript</a>?</li> <li>Creative solutions</li> <li>Limitations of browser and creating something that previously existed</li> <li>The importance of limitations</li> <li>Hadn&rsquo;t done very much JavaScript prior to this project</li> <li>Originally created with<a href="https://jquery.com/"> jQuery</a></li> <li>Led him into a career in JavaScript</li> <li>Pushing the boundaries</li> <li>Skin parsing</li> <li>&ldquo;Bitrot&rdquo; and making Winamp skins accessible again</li> <li>The value of side projects, even stupid ones</li> <li><a href="https://github.com/captbaritone/webamp/blob/master/docs/architecture.md">Architecture docs</a></li> <li>What made you choose <a href="https://reactjs.org/">React</a> and <a href="https://redux.js.org/">Redux</a>?</li> <li>Spotiamp (Soptify&rsquo;s canceled Winamp client)</li> <li>Making <a href="https://github.com/captbaritone/webamp">Webamp</a> an Electron app</li> <li>Winamp visualizers being ported to the web</li> <li>The domain name <a href="https://webamp.org/">webamp.org</a></li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://github.com/captbaritone/webamp">Winamp2-js</a></li> <li><a href="https://github.com/captbaritone/webamp">Webamp</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li>jQuery</li> <li><a href="https://github.com/captbaritone/webamp/blob/master/docs/architecture.md">Architecture docs</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://redux.js.org/">Redux</a></li> <li><a href="https://jordaneldredge.com/">jordaneldredge.com</a></li> <li><a href="https://github.com/captbaritone">Jordan&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/captbaritone">@captbaritone</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.amazon.com/Wireless-Carabiner-Speakerphone-Bluetooth-HXP430BL/dp/B00CDGSNPS">JAM XT Speaker</a></li> <li><a href="https://trello.com/">Trello</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://www.amazon.com/Samson-Mic-Portable-Condenser-Microphone/dp/B001R76D42/ref=as_li_ss_tl?ie=UTF8&amp;linkCode=sl1&amp;tag=co0dcd-20&amp;linkId=684f0d7241f44acdf0b6244c56dd12a9">Samson GoMic</a></li> <li><a href="https://git.coolaj86.com/coolaj86/greenlock-cli.js">Greenlock for Web Servers</a></li> <li><a href="https://git.coolaj86.com/coolaj86/greenlock-express.js">Greenlock for Node.js</a></li> </ul> <p>Aimee</p> <ul> <li><a href="https://docs.google.com/document/d/1PW4NYn9pYNam2EuGEsTN9pTgwTfFnT_R9OZLJJICWQU/edit">KA Engineering Principles</a></li> </ul> <p>Joe</p> <ul> <li><a href="http://2ality.com/">2ality.com</a></li> <li><a href="https://medium.com/@anildash/what-if-javascript-wins-84898e5341a"><em>What if JavaScript wins?</em> Medium post</a></li> </ul> <p>Jordan</p> <ul> <li><a href="https://bonsaiden.github.io/JavaScript-Garden/">JavaScript Garden</a></li> <li><a href="https://www.rust-lang.org/en-US/">Rust</a></li> <li><a href="https://twitter.com/winampskins">@winampskins</a></li> </ul>
Jun 26, 2018
MJS 066: Henrik Joreteg
31:22
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Henrik Joreteg</p> <p>This week on My JavaScript Story, Charles speaks with Henrik Joreteg. Henrik has been on <a href="https://devchat.tv/js-jabber">JavaScript Jabber</a> previously discussing <a href="https://andyet.com/">&amp;yet</a> back in December of 2014 on <a href="https://devchat.tv/js-jabber/137-jsj-yet-with-henrik-joreteg-and-phil-roberts">episode 137</a>. He has since then left &amp;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 <a href="https://www.javascript.com/">JavaScript</a>, what he&rsquo;s proud of contributing to the community, what he is working on now, and much more!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/137-jsj-yet-with-henrik-joreteg-and-phil-roberts">JavaScript Jabber Episode 137</a></li> <li><a href="https://andyet.com/">&amp;yet</a></li> <li>How did you first get into programming?</li> <li>Liked computers as a child but didn&rsquo;t want to spend his life on it originally</li> <li>Studied Business in college</li> <li>Create house touring video company</li> <li>Adobe ColdFusion</li> <li>How were you exposed to <a href="https://www.javascript.com/">JavaScript</a>?</li> <li>Gig as a ColdFusion developer</li> <li><a href="http://jqtjs.com/">jQTouch</a>, <a href="https://jquery.com/">jQuery</a>, and <a href="https://www.djangoproject.com/">Django</a></li> <li>Interested in building app-like experiences</li> <li>What have you done with JavaScript that you are proud of?</li> <li>Want to push the web into an app-like space</li> <li>Helped to create <a href="https://ampersandjs.com/">Ampersand.js</a></li> <li>Wrote <a href="http://humanjavascript.com/"><em>Human JavaScript</em></a></li> <li>Created <a href="https://simplewebrtc.com/">Simple WebRTC</a></li> <li>Promote web as an application platform</li> <li>What are you working on now?</li> <li><a href="https://redux.js.org/">Redux</a> and <a href="https://reactjs.org/">React</a></li> <li>New book: <a href="https://reduxbook.com/"><em>Human Redux</em></a></li> <li>Independent consulting</li> <li><a href="https://speedy.gift/">Speedy.gift</a></li> <li><a href="https://github.com/HenrikJoreteg/redux-bundler">Redux-bundler</a></li> <li>And much, much more!</li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/137-jsj-yet-with-henrik-joreteg-and-phil-roberts">JavaScript Jabber Episode 137</a></li> <li><a href="https://devchat.tv/js-jabber">JavaScript Jabber</a></li> <li><a href="https://andyet.com/">&amp;yet</a></li> <li><a href="https://www.javascript.com/">JavaScript</a></li> <li><a href="http://jqtjs.com/">jQTouch</a></li> <li><a href="https://jquery.com/">jQuery</a></li> <li><a href="https://www.djangoproject.com/">Django</a></li> <li><a href="http://humanjavascript.com/"><em>Human JavaScript</em></a></li> <li><a href="https://ampersandjs.com/">Ampersand.js</a></li> <li><a href="https://simplewebrtc.com/">Simple WebRTC</a></li> <li><a href="https://reduxbook.com/"><em>Human Redux</em></a></li> <li><a href="https://redux.js.org/">Redux</a></li> <li><a href="https://reactjs.org/">React</a></li> <li><a href="https://speedy.gift/">Speedy.gift</a></li> <li><a href="https://github.com/HenrikJoreteg/redux-bundler">Redux-bundler</a></li> <li><a href="https://github.com/HenrikJoreteg">Henrik&rsquo;s GitHub</a></li> <li><a href="https://joreteg.com/">Joreteg.com</a></li> <li><a href="https://twitter.com/HenrikJoreteg?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">@HenrikJoreteg</a></li> </ul> <p><strong>Sponsors: </strong></p> <ul> <li><a href="https://www.lootcrate.com/">Loot Crate</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks</strong></p> <p>Charles</p> <ul> <li><a href="https://www.amazon.com/Potter-Hogwarts-Battle-Cooperative-Building/dp/B01EIKRP0K">Hogwarts Battle</a></li> <li><a href="https://reactdevsummit.com/">React Dev Summit</a></li> <li><a href="https://jsdevsummit.com/">JS Dev Summit</a></li> <li><a href="https://themeforest.net/item/newspaper/5489609">Newspaper Theme on Themeforest</a></li> <li><a href="https://devchat.tv/get-a-coder-job">Get a Coder Job Course</a></li> </ul> <p>Henrik</p> <ul> <li><a href="https://preactjs.com/">Preact</a></li> <li><a href="https://parceljs.org/">Parcel.js</a></li> <li><a href="https://rollupjs.org/guide/en">Rollup.js</a></li> <li>Space repetition systems</li> <li><a href="https://apps.ankiweb.net/">Anki</a></li> </ul>
Jun 20, 2018
JSJ 318: Cloud-Hosted DevOps with Ori Zohar and Gopinath Chigakkagari LIVE at Microsoft Build
56:37
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> </ul> <p><strong>Special Guests: </strong>Ori Zohar and Gopinath Chigakkagari</p> <p>In this episode, the JavaScript Jabber panelists discuss Cloud-Hosted DevOps with Ori Zohar and Gopinath Chigakkagari at <a href="https://www.microsoft.com/en-us/build">Microsoft Build</a>. Ori is on the product team at <a href="https://www.visualstudio.com/team-services/">VSTS</a> focusing on DevOps specifically on <a href="https://azure.microsoft.com/en-us/?v=18.20">Azure</a>. 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Ori and Gopi intro</li> <li><a href="https://www.visualstudio.com/team-services/">VSTS</a> &ndash; Visual Studio Team Services</li> <li>VSTS gives developers the ability to be productive</li> <li>Developer productivity</li> <li>What&rsquo;s the first big step people should be taking if they&rsquo;re getting into DevOps?</li> <li>The definition of DevOps</li> <li>The people and the processes as the most important piece</li> <li>DevOps as the best practices</li> <li>Automating processes</li> <li>What people do when things go wrong is what really counts</li> <li>Letting the system take care of the problems</li> <li>Have the developers work on what they are actually getting paid for</li> <li>Trend of embracing DevOps</li> <li>Shifting the production responsibility more onto the developer&rsquo;s</li> <li>Incentivizing developers</li> <li>People don&rsquo;t account for integration</li> <li>Continuous integration</li> <li>Trends on what customers are asking for</li> <li>Safety</li> <li>Docker containers</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://azure.microsoft.com/en-us/?v=18.20">Azure</a></li> <li><a href="https://www.microsoft.com/en-us/build">Microsoft Build</a></li> <li><a href="https://www.visualstudio.com/team-services/">VSTS</a></li> <li><a href="https://twitter.com/orizhr">@orizhr</a></li> <li><a href="https://github.com/orizohar">Ori&rsquo;s GitHub</a></li> <li><a href="https://github.com/gopinathch">Gopi&rsquo;s GitHub</a></li> <li><a href="https://twitter.com/gopinach">@gopinach</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://promo.linode.com/javascriptjabber/">Linode</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.dotnetrocks.com/">.NET Rocks!</a></li> <li><a href="http://www.shure.com/americas/products/microphones/sm/sm58-vocal-microphone">Shure SM58 Microphone</a></li> <li><a href="https://www.zoom-na.com/products/field-video-recording/field-recording/h6-handy-recorder">Zoom H6</a></li> </ul> <p>Ori</p> <ul> <li><a href="https://www.fitbit.com/home">Fitbit</a></li> <li>Pacific Northwest Hiking</li> </ul> <p>Gopinath</p> <ul> <li>Seattle, WA</li> </ul>
Jun 18, 2018
MJS 065: Greg Wilson
55:17
<p><strong>Panel: </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Greg Wilson</p> <p>This week on My JavaScript Story, Charles speaks with Greg Wilson about his educational and programming background, a Canadian company (Rangle) who&rsquo;s doing amazing things, and much more! Currently, Greg is the head of instructor training at <a href="https://www.datacamp.com">DataCamp.</a></p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv">Past Episode &ndash; 184</a></li> <li><a href="https://www.javascript.com">JavaScript</a> <ul> <li>The one unavoidable language.</li> </ul> </li> <li>Company in Canada &ndash; <a href="https://rangle.io">Rangle</a>.</li> <li>1980&rsquo;s when Greg got into super computing &ndash; everything was custom hardware.</li> <li>Want to be &ldquo;rich, famous, and popular?&rdquo; &ndash; check out 11:58!</li> <li><a href="https://rangle.io">Rangle</a> &ndash; what a great company! <ul> <li><a href="https://www.linkedin.com/in/emilyporta/">Emily Porta</a></li> <li>Rangle&rsquo;s program, <a href="https://rangle.io/bridge/">Bridge</a>, aimed at women who are trying to get into the tech industry.</li> </ul> </li> <li>How did you get into programming? <ul> <li>Queen&rsquo;s University &ndash; 1980.</li> <li>Started off as chemistry major.</li> <li>From Vancouver, Canada.</li> <li>Engineering degree.</li> <li>Got hired to do math with computers.</li> <li>Software.</li> <li>1985 &ndash; working for a lab in Ottawa.</li> <li>Master&rsquo;s degree in Artificial Intelligence (AI) &ndash; Scotland.</li> <li>Ph.D.</li> <li>Academia.</li> <li>Moved to Toronto.</li> </ul> </li> <li>Ruby <ul> <li>Greg is a <a href="https://www.python.org">Python</a> user.</li> <li>Not familiar with <a href="https://www.common.org/open-source/ruby/">Ruby.</a></li> </ul> </li> <li>Violence and video games? <ul> <li>Where is the data?</li> <li>If people had the habit of being skeptical, such as fake news and other things, that simply isn&rsquo;t true. <ul> <li>For example: are vaccines dangerous?</li> </ul> </li> </ul> </li> <li><a href="http://www.open.ac.uk/people/mp8">Professor Marian Petre &ndash; Open University</a></li> <li><a href="https://www.amazon.com/Software-Design-Decoded-Experts-2016-10-06/dp/B01N9LTSJR">Book: &ldquo;Software Designs Decoded: 66 Ways Experts Think&rdquo; by Marian Petre</a></li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://www.digitalocean.com/products/droplets/?_campaign=G%257CSEARCH%257CB%257CCORE&amp;_adgroup=CORE%257CDigitalOcean&amp;_keyword=digital%2520ocean&amp;_device=c&amp;_copytype=20_optimized&amp;_adposition=1t2&amp;_medium=brand_sem&amp;_source=google&amp;_dkitrig=&amp;gclid=EAIaIQobChMIwvjk4Py62wIVkABpCh1PAAEGEAAYAiAAEgIuEvD_BwE">Digital Ocean</a>, LLC</li> <li><a href="https://www.freshbooks.com">FreshBooks</a></li> <li><a href="http://third-bit.com">Greg Wilson</a>&rsquo;s Third Bit</li> <li><a href="https://twitter.com/gvwilson?lang=en">Greg Wilson&rsquo;s Twitter</a></li> <li><a href="https://github.com/gvwilson">Greg Wilson&rsquo;s GitHub</a></li> <li><a href="https://www.linkedin.com/in/greg-wilson-8187838a/">Greg Wilson&rsquo;s LinkedIn</a></li> <li><a href="https://vimeo.com/9270320">Greg Wilson&rsquo;s &ldquo;What We Actually Know About Software Development, and Why We Believe It&rsquo;s True&rdquo;</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://devchat.tv">Past Episode &ndash; 184</a></li> <li><a href="https://rangle.io">Rangle</a></li> <li><a href="https://rangle.io/bridge/">Rangle&rsquo;s Bridge</a></li> <li><a href="https://www.python.org">Python</a></li> <li>Ruby</li> <li><a href="http://www.open.ac.uk/people/mp8">Professor Marian Petre &ndash; Open University</a></li> <li><a href="https://www.amazon.com/Software-Design-Decoded-Experts-2016-10-06/dp/B01N9LTSJR">Book: &ldquo;Software Designs Decoded: 66 Ways Experts Think&rdquo; by Marian Petre</a></li> <li><a href="https://www.cachefly.com">CacheFly</a></li> <li><a href="https://twitter.com/cmaxw?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Charles Max Wood&rsquo;s Twitter</a></li> </ul> <p><strong>Sponsor:</strong></p> <ul> <li><a href="https://www.digitalocean.com/products/droplets/?_campaign=G%257CSEARCH%257CB%257CCORE&amp;_adgroup=CORE%257CDigitalOcean&amp;_keyword=digital%2520ocean&amp;_device=c&amp;_copytype=20_optimized&amp;_adposition=1t2&amp;_medium=brand_sem&amp;_source=google&amp;_dkitrig=&amp;gclid=EAIaIQobChMIwvjk4Py62wIVkABpCh1PAAEGEAAYAiAAEgIuEvD_BwE">Digital Ocean</a>, LLC</li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://en.wikipedia.org/wiki/St._George,_Utah">St. George, Utah</a></li> <li><a href="https://paradehomes.com/web/">Parade of Homes</a></li> <li><a href="https://upside.com">Upside</a></li> <li><a href="https://www.amazon.com/Bose-SoundLink-Bluetooth-Wireless-Headphones/dp/B00M58CMYC">Bose SoundLink Headphones</a></li> <li><a href="https://www.amazon.com/Audio-Technica-ATR2100-USB-Cardioid-Dynamic-Microphone/dp/B004QJOZS4/ref=sr_1_1?s=electronics&amp;ie=UTF8&amp;qid=1528495303&amp;sr=1-1&amp;keywords=atr2100">ATR2100 Microphone</a></li> </ul> <p>Greg</p> <ul> <li><a href="https://rangle.io/bridge/">Rangle&rsquo;s Bridge</a> <ul> <li>Inclusivity and diversity</li> </ul> </li> <li><a href="http://aosabook.org/en/index.html">AOSABOOK.ORG</a></li> <li><a href="https://www.amazon.com/Condenser-Microphone-Headphones-Fibertique-Cleaning/dp/B077SH8MXP/ref=sr_1_2_sspa?s=electronics&amp;ie=UTF8&amp;qid=1528495247&amp;sr=1-2-spons&amp;keywords=samson+microphone+meteor&amp;psc=1">Samson Meteor Microphone</a></li> </ul>
Jun 13, 2018
JSJ 317: Prisma with Johannes Schickling
48:53
<p><strong>Panel: </strong></p> <ul> <li>Charles Max Wood</li> <li>AJ O&rsquo;Neal</li> </ul> <p><strong>Special Guests: </strong>Johannes Schickling</p> <p>In this episode, the JavaScript Jabber panelists discuss Prisma with Johannes Schickling. Johannes is the CEO and co-founder of <a href="https://www.graph.cool/">GraphCool</a> and works with <a href="https://www.prisma.io/">Prisma</a>. 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!</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/graphcool-with-johannes-schickling">JSJ Episode 257 </a></li> <li><a href="https://devchat.tv/my-javascript-story/mjs-055-johannes-schickling">MJS Episode 055</a></li> <li>Raised a seed round</li> <li>Rebranding of <a href="https://www.graph.cool/">GraphCool</a></li> <li>What are you wanting to do with the seed money you raised?</li> <li>Focused on growing his team currently</li> <li>Making <a href="https://graphql.org/">GraphQL</a> easier to do</li> <li>The change in the way people build software</li> <li>What is <a href="https://www.prisma.io/">Prisma</a>?</li> <li>Two things you need to do as you want to adopt GraphQL</li> <li><a href="https://www.apollographql.com/docs/react/">Apollo Client</a> and <a href="https://facebook.github.io/relay/">Relay</a></li> <li>GraphQL on the back-end</li> <li>Resolvers</li> <li>Resolving data in one query</li> <li>Prisma supports <a href="https://www.mysql.com/">MySQL</a> and <a href="https://www.postgresql.org/">PostgreSQL</a></li> <li>How do you control access to the GraphQL endpoint that Prisma gives you?</li> <li>Biggest miscommunication about Prisma</li> <li>Prisma makes it easier for you to make your own GraphQL server</li> <li>Application schemas</li> <li>How do you blend your own resolvers with Prisma?</li> <li>And much, much more!</li> </ul> <p><strong>Links:</strong></p> <ul> <li><a href="https://devchat.tv/js-jabber/graphcool-with-johannes-schickling">JSJ Episode 257 </a></li> <li><a href="https://devchat.tv/my-javascript-story/mjs-055-johannes-schickling">MJS Episode 055</a></li> <li><a href="https://www.graph.cool/">GraphCool</a></li> <li><a href="https://www.prisma.io/">Prisma</a></li> <li><a href="https://graphql.org/">GraphQL</a></li> <li><a href="https://www.apollographql.com/docs/react/">Apollo Client</a></li> <li><a href="https://facebook.github.io/relay/">Relay</a></li> <li><a href="https://www.mysql.com/">MySQL</a></li> <li><a href="https://www.postgresql.org/">PostgreSQL</a></li> <li><a href="https://twitter.com/schickling">@schickling</a></li> <li><a href="https://github.com/schickling">Johannes&rsquo; GitHub</a></li> <li><a href="http://schickling.me/">Schickling.me</a></li> <li><a href="https://slack.prisma.io/">Prisma Slack</a></li> </ul> <p><strong>Sponsors</strong></p> <ul> <li><a href="https://www.telerik.com/kendo-ui?utm_medium=social-paid&amp;utm_source=devchattv&amp;utm_campaign=kendo-ui-awareness-jsjabber">Kendo UI</a></li> <li><a href="https://promo.linode.com/javascriptjabber/">Linode</a></li> <li><a href="https://www.freshbooks.com/invoice?ref=11731&amp;utm_source=pbm&amp;utm_medium=affiliate-program&amp;utm_influencer=419364&amp;utm_campaign=podcast-influencers">FreshBooks</a></li> </ul> <p><strong>Picks:</strong></p> <p>Charles</p> <ul> <li><a href="https://www.audible.com/">Audible</a></li> <li><a href="https://www.amazon.com/5-Love-Languages-Children/dp/0802403476"><em>The 5 Love Languages of Children</em> by Gary Chapman</a></li> <li>Facebook Backyard Homesteader Groups</li> <li><a href="https://charlesmaxwood.com/">CharlesMaxWood.com</a></li> <li><a href="https://www.sling.com/">Sling TV</a></li> <li><a href="https://www.roku.com/products/roku-express">Roku Express</a></li> </ul> <p>AJ</p> <ul> <li><a href="https://www.zelda.com/breath-of-the-wild/">The Legend of Zelda: Breath of the Wild</a></li> </ul> <p>Johannes</p> <ul> <li><a href="https://www.figma.com/">Figma</a></li> <li><a href="https://www.netlify.com/docs/functions/">Netlify Functions</a></li> <li><a href="https://www.graphql-europe.org/">GraphQL Europe</a></li> </ul>
Jun 12, 2018
MJS 064: Troy Hunt
24:57
<p><strong>Panel:</strong><strong> </strong>Charles Max Wood</p> <p><strong>Guest:</strong> Troy Hunt</p> <p>This week on My JavaScript Story, Charles speaks with <a href="https://www.troyhunt.com/about/">Troy Hunt</a> 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.</p> <p><strong>In particular, we dive pretty deep on:</strong></p> <ul> <li>Web security</li> <li>This show is not about code or technology, but about the person.</li> <li>How did you get into programming, Troy? <ul> <li>1995 Troy started at the university.</li> </ul> </li> <li>Book: <a href="https://www.amazon.com/HTML-Dummies-Ed-Tittel/dp/076450214X/ref=sr_1_2/141-6555938-9839401?ie=UTF8&amp;qid=1528148741&amp;sr=8-2&amp;keywords=html+for+dummy&amp;dpID=51IuNDzDhwL&amp;preST=_SX258_BO1,204,203,200_QL70_&amp;dpSrc=srch">HTML for Dummies</a></li> <li>How did you get into web development and <a href="https://www.javascript.com">JavaScript</a> in general? <ul> <li>1999 &ndash; <a href="https://www.javascript.com">JavaScript</a></li> <li>Bank &ndash; <a href="https://www.cahoot.com">Cahoot</a></li> </ul> </li> <li>What have you done with <a href="https://www.javascript.com">JavaScript</a> that you are particularly proud of? <ul> <li>At the time, I was proud of my work with the Pizza Hut application.</li> <li>Fast-forward &ndash; I still use <a href="https://www.javascript.com">JavaScript</a> but also framework.</li> </ul> </li> <li>How did you get into security? <ul> <li>Architectural role in <a href="https://www.pfizer.com">Pfizer pharmaceutical company</a>.</li> <li>Troy started writing a <a href="https://www.troyhunt.com/its-a-new-blog/">blog</a> in 2009.</li> </ul> </li> <li>What are you working on now? <ul> <li>Launched my <a href="https://www.troyhunt.com/ive-just-launched-pwned-passwords-version-2/">Version 2 of &ldquo;Pwned Passwords.&rdquo;</a></li> <li>Cloud Flare</li> </ul> </li> <li>E-mails and Passwords breached <ul> <li>Have a program that tells you to do something different instead.</li> <li>Try to find a balance.</li> <li>Do most people think about web security? Probably not.</li> <li>Bring awareness about this.</li> <li>Make systems usable</li> <li>Give people enough advice.</li> </ul> </li> <li>Service <ul> <li><a href="https://haveibeenpwned.com">Pwned.com</a></li> </ul> </li> <li>Troy&rsquo;s Real-Life Stories</li> <li>How do you stay current with all of this web security information? <ul> <li>Having a healthy following in <a href="https://twitter.com/troyhunt?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Twitter</a>.</li> <li>Stay on top of the mentions.</li> <li>Interesting spread of people within this field.</li> </ul> </li> </ul> <p><strong>Links: </strong></p> <ul> <li><a href="https://www.digitalocean.com/products/droplets/?_campaign=G%257CSEARCH%257CB%257CCORE&amp;_adgroup=CORE%257CDigitalOcean&amp;_keyword=digital%2520ocean&amp;_device=c&amp;_copytype=20_optimized&amp;_adposition=1t2&amp;_medium=brand_sem&amp;_source=google&amp;_dkitrig=&amp;gclid=EAIaIQobChMIwvjk4Py62wIVkABpCh1PAAEGEAAYAiAAEgIuEvD_BwE">Digital Ocean</a></li> <li><a href="https://www.troyhunt.com/about/">Troy Hunt&rsquo;s Website</a></li> <li>Book: <a href="https://www.amazon.com/HTML-Dummies-Ed-Tittel/dp/076450214X/ref=sr_1_2/141-6555938-9839401?ie=UTF8&amp;qid=1528148741&amp;sr=8-2&amp;keywords=html+for+dummy&amp;dpID=51IuNDzDhwL&amp;preST=_SX258_BO1,204,203,200_QL70_&amp;dpSrc=srch">HTML for Dummies</a></li> <li><a href="https://www.javascript.com">JavaScript</a></li> <li><a href="https://www.cahoot.com">Cahoot</a></li> <li><a href="https://www.troyhunt.com/its-a-new-blog/">Troy&rsquo;s Blog</a></li> <li><a href="https://www.troyhunt.com/ive-just-launched-pwned-passwords-version-2/">Version 2 of &ldquo;Pwned Passwords&rdquo;</a></li> <li><a href="https://haveibeenpwned.com">Pwned.com</a></li> <li><a href="https://twitter.com/troyhunt?ref_src=twsrc%255Egoogle%257Ctwcamp%255Eserp%257Ctwgr%255Eauthor">Troy Hunt&rsquo;s Twitter</a></li> <li><a href="https://medium.com/@troyhunt">Troy Hunt&rsquo;s Medium</a></li> <li><a href="https://www.facebook.com/troyahunt">Troy Hunt&rsquo;s Facebook</a></li> <li><a href="https://www.linkedin.com/in/troyhunt/">Troy Hunt&rsquo;s LinkedIn</a></li> <li><a href="https://github.com/troyhunt">Troy Hunt&rsquo;s GitHub</a></li> <li><a href="https://www.freshbooks.com">Fresh Books</a></li> <li><a href="https://www.cachefly.com">CacheFly</a></li> </ul> <p><strong>Sponsors:</strong></p> <ul> <li><a href="https://www.digitalocean.com/">Digital Ocean</a></li> </ul> <p><strong>Picks</strong></p> <p><strong>Charles</strong></p> <ul> <li><a href="https://www.imdb.com/title/tt1485796/">The Greatest Showman </a>&ndash; Musical</li> <li><a href="https://www.javascript.com">JavaScript</a></li> </ul> <p><strong>Troy </strong></p> <ul> <li><a href="https://en.wikipedia.org/wiki/BrowseAloud">BrowseAloud</a></li> <li><a href="https://www.troyhunt.com/subresource-integrity-and-upgrade-insecure-requests-are-now-supported-in-microsoft-edge/">Subresource Integrity</a> &ndash; Blog at <a href="https://www.troyhunt.com">Hunt&rsquo;s Website</a></li> <li><a href="https://www.troyhunt.com/t