3

JSJ 351: Dinero.js with Sarah Dayan

Sponsors

Panel:

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

Special Guest - Sarah Dayan

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’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!

Show Topics:

0.40 - Advertisement : Netlify

1:44 - Sarah introduces herself and Chris talks about his interest in learning more about Dinero and compliments Sarah on its great documentation.

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.

6:50 - Aimee asks about ways to handle different currencies in Dinero. Sarah answers that she has followed Martin Fowler’s money pattern where two different currencies were not allowed to be worked on directly, conversion was mandatory, just like in real life.

7:50 - Charles talks about his old freelance work where he was overwhelmed while handling and representing money in software.

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.

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’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 “allocation” from the Fowler pattern and she says that Dinero helps in doing the same in such scenarios.

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.

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.

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.

20:50 - AJ asks if it’s open source to which Sarah answers in affirmative and says that she would like external help with implementing some features too.

22:10 - Chris asks about Sarah’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.

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.

29:43 - Chris speaks about Vue also being quite good at having guides and links and thanks Sarah for her work on Dinero.

30:15 - Advertisement - Sentry - Use code “devchat” to get two months free on Sentry’s small plan.

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.

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.

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 “hasCents”. She explains that she had to deprecate it because the unit “cents” does not have any value in non-Western currencies, and has created “hasSubUnits” method instead. She explains some problems like dealing with currencies that don’t support the ISO 4217 standard.

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.

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.

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.

52:32 - Charles says that it is good that Sarah is thinking about adopting Dinero to fit people’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.

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.

59:47 - Sarah says that she is available online on her blog - frontstuff, on Twitter as Sarah Dayan and on GitHub as sarahdayan.

1:00:06 - Advertisement - Clubhouse

1:01:01 - Picks!

1:11:42  - END - Advertisement - CacheFly!

Picks:

Sarah

AJ O’Neal

Chris

Joe

Aimee

Charles

  •  




3

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

Sponsors

 

Episode Summary  

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

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

Links

 

Picks

Joe

Aimee

Chris

Charles

Tommy




3

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

Sponsors:

Panel:

Charles Max Wood

Special Guest: Brady Gaster

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

Links:

Picks:

Brady

Charles




3

JSJ 354: Elm with Richard Feldman

Sponsors

Panel

  • Joe Eames
  • Aimee Knight

Joined by special guest: Richard Feldman

Episode Summary

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

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

Links

Picks

Aimee Knight:

Joe Eames:

Richard Feldman:




3

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

Sponsors

Panel

  • Charles Max Wood

Joined by special guest: Aaron Gustafson

Episode Summary 

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

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

Links

Picks

Aaron Gustafson:

Charles Max Wood:




3

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

Sponsors

Panel

  • Chris Ferdinandi
  • Aimee Knight
  • Aaron Frost
  • AJ O’Neal

Joined by special guest: Keith Cirkel

Episode Summary

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

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

Links

Picks

Aaron Frost:

Aimee Knight:

Joe Eames:

AJ O’Neal:

Keith Cirkel:

Chris Ferdinandi:




3

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

Sponsors

Panel

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

Joined by special guests: Hillel Wayne and Richard Feldman

Episode Summary

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

Links

Picks

Joe Eames:

Aimee Knight:

Aaron Frost:

Chris Ferdinandi:

Charles Max Wood:

Richard Feldman:

Hillel Wayne:




3

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

Sponsors

Panel

  • AJ O’Neal

  • Charles Max Wood

Joined by Special Guest: Anatoliy Zaslavskiy

Summary

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.

Links

Picks

AJ O’Neal

Charles Max Wood

Anatoliy Zaslavskiy

  •  




3

JSJ 359: Productivity with Mani Vaya

Get Mani's 2x Productivity Course

Sponsors

Panel

  • Aaron Frost
  • AJ O’Neal
  • Joe Eames
  • Aimee Knight
  • Charles Max Wood

Joined by special guest: Mani Vaya

Episode Summary

Mani is the founder of a book summary business called www.2000books.com

At 2000 Books, Mani studies the world’s greatest business and personal development books.

Then he takes the most important ideas from each book and presents them in tight, 9- to 15-minute video summaries.

You get the 4-7 most important ideas in a condensed format that's easy to absorb, easy to review, and easy to put into action immediately.

To help people with productivity, Mani created an awesome course called “10x Productivity"

His “10x Productivity" video course contains summaries of the 50 greatest books ever written on time management, productivity, goal setting, systems, execution, strategy and leverage.

"10x Productivity" pack includes summaries of all the NY Times Best Sellers on Productivity & Time Management, such as:

  • The 7 Habits of Highly Effective People by Stephen Covey

  • Getting Things Done by David Allen

  • Deep Work by Cal Newport

  • The Power of Habit by Charles Duhigg

  • The One Thing by Gary Keller

  • Essentialism by Greg McKeown

All together, this collection includes more than 250 strategies, tips, tools & techniques for:

- Becoming more productive

- Getting results rather than being busy, stressed out & frustrated

- Time Management

- Defeating procrastination

- Achieving big goals

- Hacking your brain for high performance

- Identifying the highest leverage points that lead to much faster results

- Creating powerful habits

- Installing execution systems that make goal achievement inevitable

10x Productivity Package contains:

  • Summaries of the 50 greatest books ever written on Productivity & Time Management

  • 250+ greatest ideas, tips and strategies on Time Management & Productivity

  • 10+ Hours of no-fluff solid Video Content

  • PDF Summaries of all 50 books

Since Mani is my friend and fellow mastermind member, I worked with him to get you guys an amazing discount (using discount code “DEVCHAT”) on the 10x Productivity Book Summary Pack which you can find here

Make sure to use the Coupon code “DEVCHAT” to get the discount.

Links

Picks

AJ O’Neal:

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

Aimee Knight:

Charles Max Wood:

Mani Vaya:




3

JSJ 360: Evolutionary Design with James Shore

Sponsors

Panel

  • Aaron Frost
  • AJ O’Neal
  • Joe Eames
  • Aimee Knight
  • Chris Ferdinandi

Joined by special guest: James Shore

Episode Summary

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

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

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

Links

Picks

AJ O’Neal:

Aimee Knight:

James Shore:

Aaron Frost:

Joe Eames:

Chronicles of Crime board game




3

MJS 103: Isaac Schlueter

Sponsors

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

Host: Charles Max Wood

Special Guest: Isaac Schlueter

Episode Summary

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

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

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

Links

Picks

Isaac Schlueter:

Charles Max Wood:




3

JSJ 361: Enough with the JS Already with Nicholas Zakas

Sponsors

Panel

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

Joined by Special guest: Nicholas Zakas

Summary

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

Links

Picks

Chris Ferdinandi:

AJ O’Neal:

Aimee Knight:

Charles Max Wood:

Joe Eames:

Nicholas Zakas:




3

JSJ 362: Accessibility with Chris DeMars

Sponsors

  • Sentry use code “devchat” for 2 months free

  • Triplebyte $1000 signing bonus

Panel

  • Charles Max Wood

  • Aimee Knight

  • Chris Ferdinandi

  • AJ O’Neal

  • Joe Eames

Joined by Special Guest: Chris DeMars

Episode Summary

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

 

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

 

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

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Chris Ferdinandi:

AJ O’Neal:

Joe Eames:

Chris DeMars:




3

JSJ 363: Practical JAMstack and Serverless with Gareth McCumskey

Sponsors

Panel

  • Charles Max Wood
  • Aimee Knight
  • AJ O’Neal
  • Aaron Frost
  • Joe Eames

Joined by Special Guest: Gareth McCumskey

Summary

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

Links

Picks

Charles Max Wood:

  • Join the mailing list
  • Watch out for new podcasts
  • Send me defunct podcasts you love chuck@devchat.tv

Aimee Knight:

AJ O’Neal:

Aaron Frost:

Gareth McCumskey:

Joe Eames:




3

JSJ 364: Ember Octane with Sam Selikoff

Sponsors

Panel

  • AJ O’Neal

Joined by special guest: Sam Selikoff

Episode Summary

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

Links

Follow JavaScript Jabber on Devchat.tv, Facebook and Twitter.

Picks

AJ O’Neal:

Sam Selikoff:




3

JSJ 365: Do You Need a Front-End Framework?

Sponsors

Panel

  • Charles Max Wood

  • Aimee Knight

  • Chris Ferdinandi

  • AJ O’Neal

  • Joe Eames

Episode Summary

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.

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.

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.

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Chris Ferdinandi:

AJ O’Neal:




3

JSJ 366: npm with Mikeal Rogers

Sponsors

Panel

  • AJ O’Neal
  • Chris Ferdinandi
  • Aimee Knight
  • Charles Max Wood

Joined by special guest: Mikeal Rogers

Episode Summary

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 “streams” 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.

Links

Follow JavaScript Jabber on Devchat.tvFacebook and Twitter.

Picks

Chris Ferdinandi:

Aimee Knight:

Mikeal Rogers:

Charles Max Wood:




3

JSJ 367: Pair Programming

Sponsors

Panel

  • Aimee Knight
  • AJ O’Neal
  • Chris Ferdinandi

Episode Summary

In this episode of JavaScript Jabber, the panelists discuss each one’s definition of the term ‘pairing’ 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.

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’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.

Links

Follow JavaScript Jabber on Devchat.tvFacebook and Twitter.

Picks

Chris Ferdinandi:

AJ O’Neal:

Aimee Knight:




3

JSJ 368: TypeScript - Good or Bad

Sponsors

Panel

  • Joe Eames

  • AJ O’Neal

Episode Summary

In this episode of JavaScript Jabber, Joe Eames and AJ O’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.

Links

Follow JavaScript Jabber on Devchat.tv, Facebook and Twitter.

Picks

Joe Eames:

AJ O’Neal:

 




3

JSJ 369: Azure Functions with Colby Tresness LIVE at MIcrosoft BUILD

Sponsors

Panel

  • Charles Max Wood

Joined by Special Guest: Colby Tresness

Episode Summary

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 KEDA – Kubernetes-based event-driven autoscaling, a Microsoft and Red Hat 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 library.

Colby and Charles discuss the best way to get started with Azure functions, as well as the non-JavaScript languages it supports.

Links

Picks

Colby Tresness:

Charles Max Wood:




3

MJS 113: Sarah Dayan

Sponsors

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

  • CacheFly

Host: Charles Max Wood

Joined By Special Guest: Sarah Dayan

Episode Summary

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 production bug they discovered in JavaScript. Sarah first got introduced to computers when she was a child. She spent hours playing on her grandmother'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's journey as a front-end developer and the projects she is working on now.

Links

Picks

Sarah Dayan:

Charles Max Wood:




3

JSJ 370: Azure Functions Part II with Jeff Hollan LIVE at Microsoft BUILD

Sponsors

  • Triplebyte offers a $1000 signing bonus

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

  • CacheFly

Panel

Charles Max Wood

Joined by Special Guest: Jeff Hollan

 

Episode Summary

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 Adventures in Angular 241: Azure Functions with Colby Tresness LIVE at Microsoft BUILD, Jeff defines what “serverless” really means in developer world. Jeff also talks about various scenarios where Azure functions are extremely useful and explains what Durable Functions are.

Jeff and Charles discuss creating and running an Azure function inside a container and the upcoming capabilities of Azure functions they are currently working on.

Links

Picks

Jeff Hollan:

Charles Max Wood:




3

JSJ 371: The Benefits and Challenges of Server-Side Rendering (SSR) with Dan Shappir

Sponsors

Panel

  • Charles Max Wood
  • Joe Eames
  • Christopher Buecheler
  • Aimee Knight
  • AJ O’Neal

Joined by special guest: Dan Shappir

Episode Summary

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.

Links

Follow JavaScript Jabber on Devchat.tv, Facebook and Twitter.

Picks

Christopher Buecheler:

  • Tip - Take some time off once in a while

Aimee Knight:

AJ O’Neal:

  • Fatherhood!

Joe Eames:

Charles Max Wood:

Dan Shappir:




3

JSJ 372: Kubernetes Docker and Devops with Jessica Deen LIVE from Microsoft BUILD

Sponsors

Panel

  • Charles Max Wood

Joined by Special Guest: Jessica Deen

Episode Summary

Coming to you live from the podcast booth at Microsoft BUILD is Charles Max Wood with The Deen of DevOps aka Jessica Deen. 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't have any infrastructure. Jessica advises that developers start with Azure DevOps Services and then go to Microsoft Learn Resource.

Charles also encourages listeners to also check out the Views on Vue podcast Azure DevOps with Donovan Brown for further references. Jessica also recommends following people on Twitter and GitHub to find out about solutions and resources.

Links

Follow Adventures in Angular on tv, Facebook and Twitter.

Picks

Jessica Deen:

Charles Max Wood:




3

JSJ 373: What Do You Need to Do to Get a Website Up?

Sponsors

Panel

  • Charles Max Wood

  • Aimee Knight

  • Chris Ferdinandi

  • AJ O’Neal

  • Joe Eames

Episode Summary

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. 

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.

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’ve solved in the past.

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Chris Ferdinandi:

 

AJ O’Neal:

Joe Eames:

  • Miniature painting

 




3

JSJ 374: CosmosDB with Steve Faulkner LIVE at Microsoft BUILD

Sponsors

Panel

Charles Max Wood

Joined by Special Guest: Steve Faulkner

Episode Summary

Coming to you live from the podcast booth at Microsoft BUILD is Charles Max Wood with 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.

Listen to the show for more Cosmos DB updates and to find out how Steve he got his twitter handle @southpolesteve.

Links

Picks

Steve Faulkner:




3

JSJ 375: Are You Hurting the Web?

Sponsors

  • Triplebyte $1000 signing bonus

  • Sentry use code “devchat” for 2 months free

Panel

  • Charles Max Wood

  • Aimee Knight

  • Chris Ferdinandi

  • AJ O’Neal

  • Christopher Beucheler

Episode Summary

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’s move away from their legacy code base to CSS and JavaScript. 

The panelists agree that the way things are built, since it’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 ‘real’ development. Because the web is now a serious platform, things associated with the backend has been thrown at the frontend where it doesn’t belong. They talk about changes in the ways programming is viewed now versus the past. 

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’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

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Chris Ferdinandi:

AJ O’Neal:

Christopher Beucheler:




3

JSJ 376: Trix: A Rich Text Editor for Everyday Writing with Javan Makhmali

Sponsors

Panel

  • Aimee Knight

  • Chris Ferdinandi

  • Christopher Beucheler

  • AJ O’Neal

With Special Guest: Javan Makhmali

Episode Summary

Today’s guest is Javan Makhmali, who works for Basecamp and helped develop Trix. Trix is a rich text editor for the web, made purposefully simple for everyday use instead of a full layout tool. Trix is not the same as Tiny MCE, and Javan discusses some of the differences. He talks about the benefits of using Trix over other native browser features for text editing. He talks about how Trix has simplified the work at Basecamp, especially when it came to crossing platforms. Javan talks more about how Trix differs from other text editors like Google Docs and contenteditable, how to tell if Trix is functioning correctly, and how it works with Markdown.

The panel discusses more specific aspects of Trix, such as Exec command. One of the features of Trix is it is able to output consistently in all browsers and uses semantic, clean HTML instead of classnames. Javan talks about how Trix handles getting rid of the extraneous cruft of formatting when things are copy and pasted, the different layers of code, and the undo feature. He talks about whether or not there will be more features added to Trix. The panel discusses who could benefit from using Trix. The show finishes with Javan talking about Basecamp’s decision to make Trix open source and why they code in CoffeeScript. 

Links

Follow DevChat on Facebook and Twitter

Picks

Javan Makhmali:

Chris Ferdinandi:

AJ O’Neal:

Christopher Beucheler: 

Aimee Knight:




3

JSJ 377: Bringing Maps and Location Into Your Apps with the ArcGIS API for JavaScript with Rene Rubalcava

Sponsors

Panel

  • Aimee Knight

  • AJ O’Neal

  • Charles Max Wood

With Special Guest: Rene Rubalcava

Episode Summary

Rene is a software developer for ESRI and works in spatial and mapping software. ESRI has been around since 1969 and has seen their work explode since they shifted to providing address and location services. Rene talks about how he thinks about location and mapping when building software around it and things that he has to approach in unique ways. The panel discusses some of their past experiences with location software. Some of the most difficult aspects of this software is changing time zones for data and actually mapping the Earth, since it is not flat nor a perfect sphere. Rene talks about the different models used for mapping the Earth.

Most mapping systems use the same algorithm as Google maps, so Rene talks about some of the specific features of ArcGIS, including the ability to finding a point within a polygon. Rene talks about what routing is, its importance, and how it is being optimized with ArcGIS, such as being able to add private streets into a regular street network.

The panel discusses how the prevalence of smartphones has changed mapping and GPS and some of their concerns with privacy and location mapping. One thing ESRI is very careful about is not storing private information. Rene talks about the kinds of things he has seen people doing with the mapping and location data provided by ArcGIS, including a Smart Mapping feature for developers, mapping planets, indoor routing, and 3D models. 

Links

Follow DevChat on Facebook and Twitter

Picks

Rene Rubalcava:

AJ O’Neal:

Aimee Knight:

Charles Max Wood:




3

JSJ 378: Stencil and Design Systems with Josh Thomas and Mike Hartington

Sponsors

Panel

  • Aimee Knight

  • Chris Ferdinandi

  • Joe Eames

  • AJ O’Neal

  • Charles Max Wood

With Special Guests: Josh Thomas and Mike Hartington

Episode Summary

Today’s guests Josh Thomas and Mike Hartington are developers for Ionic, with Josh working on the open source part of the framework on Ionic. They talk about their new compiler for web components called Stencil. Stencil was originally created out of work they did for Ionic 4 (now available for Vue, React, and Angular) and making Ionic 4 able to compliment all the different frameworks. They talk about their decision to build their own compiler and why they decided to open source it. Now, a lot of companies are looking into using Stencil to build design systems

The panel discusses when design systems should be implemented. Since Ionic is a component library that people can pull from and use themselves, Jeff and Mike talk about how they are using Stencil since they’re not creating a design system.

The panel discusses some of the drawbacks of web components. They discuss whether or not Cordova changes the game at all. One of the big advantages of using Stencil is the code that is delivered to a browser is generated in such a way that a lot of things are handled for you, unlike in other systems.The panelists talk about their thoughts on web components and the benefits of using a component versus creating a widget the old fashioned way. One such benefit of web components is that you can change the internals of how it works without affecting the API. Josh and Mike talk about some of the abilities of Stencil and compare it to other things like Tachyons. There is a short discussion of the line between frameworks and components and the dangers of pre optimization. If you would like to learn more about Stencil, go to stenciljs.com and follow Josh and Mike @Jtoms1 and @mhartington.

Click here to cast your vote NOW for JavaScript Jabber - Best Dev Podcast Award

Links

Follow DevChat on Facebook and Twitter

Picks

Aimee Knight:

AJ O’Neal:

Chris Ferdinandi:

Charles Max Wood:

Joe Eames:

Josh Thomas:

Mike Hartington:




3

JSJ 379: FindCollabs and Podcasting with Jeff Meyerson

Sponsors

Panel

  • Aimee Knight

  • AJ O’Neal

  • Charles Max Wood

With Special Guest: Jeff Meyerson

Episode Summary

Jeff Meyerson is the host of the Software Engineering daily podcast and has also started a company called FindCollabs, an online platform for finding collaborators and building projects. Jeff started FindCollabs because he believes there are all these amazing tools but people are not combining and collaborating as much as they could, when so much good could be accomplished together. FindCollabs is especially useful for working on side projects. The panelists discuss the problems encountered when you try to collaborate with people over the internet, such as finding people who are facing similar and gauging interest, skill, and availability. Thankfully, FindCollabs has a feature of leaving reviews and rating your partners so that users can accurately gauge other’s skill level. Users can also leave comments about their experience collaborating with others. The only way you can show competence with an interest is to contribute to another project. FindCollabs is also a good place to look for mentors, as well as for Bootcamp graduates or people going through an online coding course. If you are part of an organization, you can create private projects. The company plans to expand this feature to all users in the future.The panelists talk about their past experiences with collaborating with other people.

Jeff talks about his podcast Software Engineering Daily and how it got started and the focus of the podcast. As someone working in technology, it is important to stay current on up and coming technology, and listening to podcasts is an excellent way to do that. Jeff talks about where he thinks podcasting is going, especially for programmers. The panel discusses some of the benefits of listening to programming podcasts. Jeff talks about how he is prepping Software Engineering Daily for the future. He shares the audience size for Software Engineering Daily and some of the statistics for his different channels. Jeff has also released an app for Software Engineering Daily, and he shares some information on how it was written. Finally, Jeff gives advice for people who want to use FindCollabs and some of the next steps after creating a profile.

Click here to cast your vote NOW for JavaScript Jabber - Best Dev Podcast Award

Links

Follow DevChat on Facebook and Twitter

Picks

Aimee Knight:

AJ O’Neal:

Charles Max Wood:

Jeff Meyerson:




3

JSJ 380: Expo for Web with Charlie Cheever

Sponsors

Panel

  • Charles Max Wood

With Special Guest: Charlie Cheever

Episode Summary

Guest Charlie Cheever joins the discussion on JavaScript Jabber today. He was previously on React Round Up episode 47. Charlie works on Expo, which is a way to make React apps on every platform. Right now, Expo supports IOS, Android, and Web, provides a standard library of features, and takes care of services like builds and updates over the air. There are also code generators and templates available in Expo. Expo is focused on use cases where you just need to use a little bit of React Native in your app. Charlie talks about the origins of Expo, which was born from increased access of websites from people’s phones and the desire for a cross-platform tool that was as easy as building on the web. One of the biggest benefits is that Expo gives you the peace of mind knowing your app will work across all phones and all platforms.

They discuss how to approach building your API’s for Expo so that it’s easy for people to use and have it consistent across all these different systems. Expo also has a voting board canny.expo.io where people can submit suggestions for new features. Expo is compatible with map view and React Native maps. Currently, Expo is missing bluetooth and things where the underlying platform wants to have a direct relationship with the developer, such as in-app purchases. Charlie talks about other components available in Expo, all of which can be modified. They discuss the influence of React on augmented reality and VR. Charlie talks about the updating feature of Expo. Charlie talks about the evolution of Expo and their goal to be a “developer first” company. He talks about the company, libraries, The Client, and services. He gives advice on how to get started with React Native development and using Expo. There is also Expo Web, which can be used to create a website, and if you create an app with Expo you get a website too. Expo hopes to be a stable, easy, coherent way of using all these tools across your entire experience of building your application so that you can relax a little bit. 

Click here to cast your vote NOW for JavaScript Jabber - Best Dev Podcast Award

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Charlie Cheever:

  • Draft bit (still in beta)

  • AWS Amplify

  • Follow Charlie @ccheever




3

JSJ 381: Building a Personal Brand with John Sonmez

Sponsors

Panel

  • Charles Max Wood

  • Christopher Beucheler

  • AJ O’Neal

With Special Guest: John Somnez

Episode Summary

John is the founder of Bulldog Mindset andSimple Programmer, which teaches software developers soft skills, and the author of a couple books. He specializes in creating a personal brand and marketing. He addresses the rumors of him leaving software development and gives an introduction to marketing yourself as a software developer and its importance. The panel discusses their experience with consulting and how marketing themselves has paid off. John talks about the importance of having soft skills. In his opinion, the most important soft skills for programmers are communication, persuasion and influence, people skills and charisma. He talks about highlight those soft skills. The truth is, more and more people are hiring for people skills rather than technical skills. The panel discusses more about the importance of people skills.

John talks about ways to build your personal brand. One of the easiest ways is blogging but he talks about other methods like podcasts YouTube, writing books, and others. A key to building a personal brand is choosing something that you can become the best at, no matter how small it is. The panel shares their experiences of what things have gotten them attention and notoriety and talk about how other influential programmers got famous. They talk about interacting with central platforms like Medium and Github. Building a personal brand for software developers is the same as any other personal brand, such as having a consistent message, consistent logos and color schemes, and repeated exposure). Most people in the software world aren’t willing to do what’s necessary to build a personal brand, so it makes you stand out when you do it. John talks about the importance of controlling your image so that companies want to hire you. John gives a brief overview of his course How to Market Yourself as a Software Developer. 

Click here to cast your vote NOW for JavaScript Jabber - Best Dev Podcast Award

Links

 

Picks

Charles Max Wood:

John Somnez:

Christopher Beucheler:

AJ O’Neal




3

JSJ 382: Mental Health with Anatoliy Zaslavskiy

Sponsors

  • Sentry– use the code “devchat” for $100 credit 

Panel

  • Charles Max Wood

With Special Guest: Anatoliy Zaslavskiy

Episode Summary

Anatoliy Zaslavsky works for Hover, made framework called Pickle.js, and has been on JavaScript Jabber before. Today Chuck and Anatloliy are talking about the importance of mental health. Anatoliy has Bipolar Disorder, and he talks about what it is and his experience with it and how his manic and depressive episodes have affected him. Thankfully, his employers at Hover have been extremely supportive. Chuck and Anatoliy talk about what people should do when they are suffering from a mental illness so that they can do the things they love again. Some of the best ways of coping with mental health issues are to keep a lifeline out to friends and family, go to a professional therapist, stay on a consistent exercise and sleep pattern, and stay away from substances. They talk about how to support someone that is suffering from a mental illness. 

Anatoliy talks about some of the symptoms and behavioral changes he has during both manic and depressive episodes and how it has affected him in the workplace. Mental health issues are almost always accompanied by changes in behavior, and Chuck and Anatoliy talk about ways to approach a person about their behavior. Anatoliy gives advice on how to work with your employer while you are suffering from a mental illness. For mental illnesses that aren’t as dramatic as Bipolar Disorder, Anatoliy talks about coping mechanisms such as staying away from triggers, knowing what motivates you and communicating it to your employer, and other practices that have helped him. He talks about some of his triggers and how it has affected his work, both for the better and worse.

 Finding out what helps you cope and what triggers you is often trial and error, but it can help to talk to other people in your field who struggle with the same mental health issues. Anatoliy talks about the pros and cons of working from home or in an office when you have a mental illness. They finish by talking about a few other points on mental health and resources for those suffering from a mental illness to get the help they need. 

 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Anatoliy Zaslavskiy:




3

JSJ 383: What is JavaScript?

Sponsors

Panel

  • Charles Max Wood

  • Christopher Beucheler

  • Aimee Knight

Episode Summary

Today’s episode is an exploration of the question “What is JavaScript?”. Each of the panelists describes what they think JavaScript is, giving a definition for both technical and non-technical people. They talk about how the different layers of JavaScript tie into their definitions. They agree that it’s incorrect to call JavaScript one of the ‘easy’ programming languages and some of the challenges unique to JavaScript, such as the necessity of backwards compatibility and that it is used in tandem with CSS and HTML, which require a different thinking method. They discuss the disdain that some developers from other languages hold for JavaScript and where it stems from. They discuss methods to level up from beginner to mid level JavaScript programmer, which can be tricky because it is a rapidly evolving language. They revisit the original question, “What is Java Script?”, and talk about how their definition of JavaScript has changed after this discussion. They finish by talking about the story they want to tell with JavaScript, why they chose JavaScript, and what is it they are trying to do, create, become through using the language. They invite listeners to share their answers in the comments. 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Christopher Beucheler:




3

JSJ 384: FaunaDB: Support for GraphQL and Serverless Development with Evan Weaver

Sponsors

  • Sentry– use the code “devchat” for $100 credit 

Panel

  • Charles Max Wood

  • AJ O’Neal

  • Joe Eames

  • Aimee Knight

With Special Guest: Evan Weaver

Episode Summary

Evan Weaver is the CEO and cofounder of FaunaDB, a serverless database and a great way to get started with GraphQL. Evan talks about what went into building the FaunaDB and his background with Twitter. FaunaDB arose from trying to fix Twitter’s scalability issues, and the panel discusses scalability issues encountered in both large and small companies. They talk about the difference between transient and persistent data. They discuss how to develop locally when using a serverless database and the importance of knowing why you’re using something. Evan talks about how developing locally works with FaunaDB. He addresses concerns that people might have about using FaunaDB since it is not backed by a tech giant. Evan talks about some of the services FaunaDB offers and talks about the flexibility of its tools. He talks about how to get started with FaunaDB and what the authentication is like. Finally, Evan talks about some well known companies that are using FaunaDB and what they are doing with it. 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Aimee Knight:

Joe Eames:

Evan Weaver




3

JSJ 385: What Can You Build with JavaScript?

Sponsors

Panel

  • Charles Max Wood

  • Christopher Beucheler

Episode Summary

Today Charles and Christopher discuss what can you do with JavaScript. They talk about the kinds of things they have used JavaScript to build. They discuss non-traditional ways that people might get into JavaScript and what first drew them to the language. They talk about the some of the non-traditional JavaScript options that are worth looking into. Christopher and Charles talk about some of the fascinating things that have been done with JavaScript, such as Amazon Alexa capabilities, virtual reality, and games. They spend some time talking about JavaScript usage in game creation and building AI. They talk about how they’ve seen JavaScript change and progress during their time as developers. They talk about areas besides web that they would be interested in learning more about and what kinds of things they would like to build in that area. They finish by discussing areas that they are excited to see improve and gain new capabilites. 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Christopher Beucheler:




3

JSJ 386: Gatsby.js with Chris Biscardi

Sponsors

  • GitLab | Get 30% off tickets with the promo code: DEVCHATCOMMIT

  • Sentry– use the code “devchat” for $100 credit 

Panel

  • Chris Beucheler

  • AJ O’Neal

  • Aimee Knight

With Special Guest: Chris Biscardi

Episode Summary

Chris is an independent consultant working with open source startups. He taught himself to program and started in open source. He talks about how he got into programming and how he learned to code. One of Chris’ current clients is Gatsby, a static site generator. Chris talks about his work with Gatsby themes, how he got started working with Gatsby, and how you can get started with Gatsby. Chris talks about how Gatsby differs from other static site generators and how difficult it is to use. The panel discusses possible use cases for Gatsby, and agree that if your site is going to get more complex and larger over time, something like Gatsby is what you want to use. Chris talks about what it’s like to migrate to Gatsby from another service. The panel discusses the pros and cons of server-side rendering. Chris talks about building more app-oriented sites with Gatsby and things that you can plug into a Gatsby theme besides a blog. The show concludes with Chris and the panelists agreeing that if you can write it in JavaScript, you can ship it in a Gatsby theme. 

Links

Follow DevChat on Facebook and Twitter

Picks

AJ O’Neal:

Aimee Knight:

Chris Beucheler:

Chris Biscardi:




3

JSJ 387: How to Stay Current in the Tech Field

Sponsors

  • GitLab | Get 30% off tickets with the promo code: DEVCHATCOMMIT

  • Sentry– use the code “devchat” for $100 credit 

  • Views on Vue

Panel

  • Charles Max Wood

  • Joe Eames

Episode Summary

Today Joe and Charles are discussing how to stay current in the tech field. Since looking at all the new technology can be overwhelming, they advise listeners on what to focus on, which will differ depending on your career. Joe brings up that one of the top reasons people choose a job is because it has a technology they want to learn. Joe and Charles discuss trends in the tech world, such as the rise and fall of Rails. They discuss what to do if you’re happy with what you’re doing now but want your career to stay viable. While it is important to continue moving along with technology, they agree that the stuff that’s really important is the stuff that doesn’t change. Charles believes that if you have a solid knowledge on a subject that isn’t necessary current, that is still very valuable. 

Joe and Charles discuss the importance of having a learning plan and the importance of having soft skills in addition to technological know-how. Another important part of staying current is figuring out where you want to end up and making a plan. If you want to work for a specific company, you need to learn the technology they’re using. Joe talks about some of his experiences trying to get a job with a big company and how he was reminded of the importance of the fundamentals. 

They discuss the merits of being a generalist or a specialist in your studies and the best approach once you’ve chosen a technology to learn. Once you’ve learned a technology, it’s important to start building with it. Charles and Joe talk about different ways of learning, such as books, videos, code reading, or tutorials, and the importance of finding a medium that you can understand. They discuss the isolating nature of tutorials and how it is important to have real-world experience with the code. They discuss how to know if you’ve learned a technology well enough to move onto the next thing, and whether the technologies you studies should be career focused or passion based. Charles advises listeners to divide their time as follows: 50% of your learning should be focused on what you’re currently doing at your job, 25% looking towards the future and studying upcoming technology, and 25% on your passion. 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:

Joe Eames:




3

JSJ 388: Functional Programming with Brian Lonsdorf

Sponsors

Panel

  • Aimee Knight 

  • Chris Buecheler

  • AJ O’Neal

With Special Guest: Brian Lonsdorf

Episode Summary

Brian Lonsdorf works for Salesforce, specializes in functional programming, and wrote a book called Professor Frisby’s Mostly Adequate Guide to Functional Programming. Brian talks about when he got into functional programming and when in their career others should be exposed to it. He talks about the fundamental tenets of functional programming (static mathematical functions), how it differs from object oriented programming, and how to manipulate data in a functional environment. The panel wonders if it is possible to use functional and object oriented programming together and discuss the functional core imperative shell. Brian talks about what is ‘super functional’ and why JavaScript isn’t, but includes methods for making it work. He shares some of the trade-offs he’s found while doing functional programming. Brian defines a monad and goes over some of the common questions he gets about functional programming, such as how to model an app using functional programming. The show concludes with Brian talking about some of the work he’s been doing in AI and machine learning. 

Links

Follow DevChat on Facebook and Twitter

Picks

Aimee Knight:

Chris Buecheler:

AJ O’Neal:

Brian Lonsdorf:




3

JSJ 389: What Makes a 10x Engineer?

Sponsors

Panel

  • Charles Max Wood

Episode Summary

In today’s show, Chuck talks about the recent tweet thread about 10x engineers. He goes through each of the points in the tweet and talks about each of them in turn. There are only two points he sort of agrees with, and believes the rest to be absolute garbage. One of the issues with this tweet is that it doesn’t define what a 10x engineer is. Defining a 10x engineer is difficult because it is also impossible to measure a truly average engineer because there are many factors that play into measuring productivity. Chuck turns the discussion to what a 10x engineer is to him and how to find one. A 10x engineer is dependent on the organization that they are a part of, because they are not simply found, they are made. When a 10x engineer is added to a team, the productivity of the entire team increases. Employers have to consider firstly what you need in your team and how a person would fit in. You want to avoid changing the entire culture of your organization. Consider also that a 10x engineer may be hired as a 2x engineer, but it is the employer that turns them into a 10x engineer. Overall, Chuck believes these tweets are asinine because it’s impossible to measure what makes a 10x engineer in the first place, and hiring a person that fits the attributes in the list would be toxic to your company. 

Links

Follow DevChat on Facebook and Twitter

Picks

Charles Max Wood:




3

JSJ 390: Transposit with Adam Leventhal

Episode Summary

Adam Leventhal is the CEO and cofounder of Transposit. Transposit was born from the desire to build a way for developers to work with lots of different APIs, take authentication and pagination off the table, and let developers focus on the problems they’re trying to solve. Transposit is a serverless platform that’s free and gives you a combination of SQL or JavaScript to start playing with your API.

Since interacting with API data securely can be difficult, the panel discusses how Transposit might replace the personally built tools and how does it compare to JAMstack. They talk about some common things that people do wrong with security. 

Transposit is often used as the full backend, and Adam shares how that works. There is a list of APIs that Transposit can talk to, and you can build your own connector. You can also work with JavaScript and SQL simultaneously. 

Chris Ferdinandi asks some more specific questions about how Transposit can work with email lists. Adam clarifies the difference between connectors and apps in Transposit. He delves into more detail on what makes it work under the hood. 

There are some 450,000 Stack applications but the majority have one user because they built it to communicate specifically with their API. The panel discusses how Transposit can help with this. Since Transposit is still in startup mode, it is free for now, and can connect to any public facing API. Adam talks about their decision not to make it open source and gives more details on where the authentications occur. The show wraps up with the panel talking about the pros of going serverless

Panelists

  • Chris Ferdinandi

  • Christopher Buecheler

With special guest: Adam Leventhal 

Sponsors

Links

Follow DevChat on Facebook and Twitter

Picks

Christopher Buecheler:

Chris Ferdinandi:

Adam Leventhal:




3

JSJ 391: Debugging with Todd Gardner

Episode Summary

Todd Gardner is a software developer, podcaster on the show Script and Style, startup founder,  and comedy host for Pub Conf, a ‘comedy after party for developers’. Since he was last on the show 6 years ago, he has seen his startup TrackJS become quite successful. TrackJS is a JavaScript error monitoring service which gives you visibility into your client side experience. It’s different from other tools because focused on simplicity, so you’ll never need a guy on your team dedicated solely to TrackJS because everyone can use it.

The panel begins by talking about debugging methods and tools. Some rely solely on the debugger built into their platform while others prefer to use a third party service. They discuss the necessity of using a third party debugger and if there are better solutions than just the built in debugger. 

They then discuss what to do after you’ve fixed a bug, such as if it is necessary to write a test to make sure it was completely fixed They talk about things to do to make debugging more effective. Todd and Aimee believe that code needs to begin by being designed for debug-ability. 

The panel discusses issues with invisible boundaries encountered while debugging, such as running out of memory. They talk about ways to mitigate issues that happen outside of your code base. Todd talks about the dangers of ad-blockers, and the panel agrees that it is important to consider how your website will be crippled by the user’s own technology. The end user in a production environment will have a different experience than you did writing it on a professional computer. 

Todd talks about the difference between debugging for the web versus a mobile application. Todd has encountered particular problems with debugging on a remote device, and he talks about how he solved the issue. The show concludes with Todd giving a quick elevator pitch for TrackJS

Panelists

  • Chris Ferdinandi

  • Christopher Buecheler

  • Aimee Knight

  • Charles Max Wood

  • Steve Emmrich

With special guest: Todd Gardner

Sponsors

Links

Follow DevChat on Facebook and Twitter

Picks

Christopher Buecheler:

Chris Ferdinandi:

Aimee Knight:

Charles Max Wood:

  • Atomic Habits

  • Getting up at 4 am

Steve Emmrich:

  • Trello

  • Babushkas and grandmas to help you with your newborn

Todd Gardner:

  • PubConf

  • Follow Todd @toddhgardner or todd.mn




3

JSJ 392: The Murky Past and Misty Future of JavaScript with Douglas Crockford

Episode Summary

Douglas is a language architect and helped with the development of JavaScript. He started working with JavaScript in 2000. He talks about his journey with the language, including his initial confusion and struggles, which led him to write his book JavaScript: The Good Parts.

Douglas’ take on JavaScript is unique because he not only talks about what he likes, but what he doesn’t like. Charles and Douglas discuss some of the bad parts of JavaScript, many of which were mistakes because the language was designed and released in too little time. Other mistakes were copied intentionally from other languages because people are emotionally attached to the way things “have always been done”, even if there is a better way.

Doug takes a minimalist approach to programming. They talk about his opinions on pairing back the standard library and bringing in what’s needed. Douglas believes that using every feature of the language in everything you make is going to get you into trouble. Charles and Douglas talk about how to identify what parts are useful and what parts are not.

Douglas delves into some of the issues with the ‘this’ variable. He has experimented with getting rid of ‘this’ and found that it made things easier and programs smaller. More pointers on how to do functional programming can be found in his book How JavaScript Works 

Charles and Douglas talk about how he decided which parts were good and bad. Douglas talks about how automatic semicolon insertion and ++ programming are terrible, and his experiments with getting rid of them. He explains the origin of JS Lint. After all, most of our time is not spent coding, it’s spent debugging and maintaining, so there’s no point in optimizing keystrokes.

Douglas talks about his experience on the ECMAScript development committee and developing JavaScript. He believes that the most important features in ES6 were modules and proper tail calls. They discuss whether or not progression or digression is occurring within JavaScript. Douglas disagrees with all the ‘clutter’ that is being added and the prevalent logical fallacy that if more complexity is added in the language then the program will be simpler. 

Charles asks Douglas about his plans for the future. His current priority is the next language. He talks about the things that JavaScript got right, but does not believe that it should not be the last language. He shares how he thinks that languages should progress. There should be a focus on security, and security should be factored into the language. 

Douglas is working on an implementation for a new language he calls Misty. He talks about where he sees Misty being implemented. He talks about his Frontend Masters course on functional programming and other projects he’s working on. The show concludes with Douglas talking about the importance of teaching history in programming. 

Panelists

  • Charles Max Wood

With special guest: Douglas Crockford

Sponsors

Links

Follow DevChatTV on Facebook and Twitter

Picks

Charles Max Wood:

Douglas Crockford:




3

MJS 123: Nick Basile

Episode Summary

My JavaScript Story this week meets with Nick Basile, UX instructor at Lambda School from Austin, TX. Nick talks about how much he enjoys working with Laravel and Vue as well as his journey as a developer.

Upon graduating from university in Switzerland with a degree in Economics, he started working for two start-ups doing UX/UI design. He then wanted to be able to build UI as well so he taught himself JavaScript and HTML. He then got a job as a front-end developer to further develop his skills. Charles makes a comment about how many developers don't have a Computer Science Degrees.

Nick then talks about how he got into Laravel and Vue and also how he started working for Lambda. They briefly discuss Lambda's business model and Nick's approach to teaching.

Finally Nick talks about how he spends his life outside work in Austin, which nowadays involves looking after his 4-month old daughter.

Host: Charles Max Wood

Joined by Special Guest: Nick Basile

Sponsors

Links

Picks

Charles Max Wood:

Nick Basile:




3

JSJ 393: Why You Should Be Using Web Workers with Surma

Episode Summary

Surma is an open web advocate for Google currently working with WebAssembly team. He was invited on the show today to talk about using web workers and how to move work away from the browser’s main thread. His primary platform is bringing multithreading out of the fringes and into the web. 

The panel talks about their past experience with web workers, and many of them found them isolated and difficult to use. Surma believes that web workers should pretty much always be sued because the main thread is an inherently bad place to run your code because it has to do so much. Surma details the differences between web workers, service workers, and worklets and explains what the compositer is. 

The panel discusses what parts should be moved off the main thread and how to move the logic over. Surma notes that the additional cost of using a worker is basically nonexistent, changes almost nothing in your workflow, and takes up only one kilobyte of memory. Therefore, the cost/benefit ratio of using web workers gets very large. They discuss debugging in a web worker and Surma details how debugging is better in web workers. 

Surma wants to see people use workers not because it will make it faster, but because it will make your app more resilient across all devices. Every piece of JavaScript you run could be the straw that breaks the camel’s back. There’s so much to do on the main thread for the browser, especially when it has a weaker processor, that the more stuff you can move away, the better.

The web is tailored for the most powerful phones, but a large portion of the population does not have the most powerful phone available, and moving things over to a web worker will benefit the average phone. Surma talks about his experience using the Nokia 2, on which simple apps run very slow because they are not being frugal with the user’s resources. Moving things to another thread will help phones like this run faster.  

The panel discusses the benefit of using web workers from a business standpoint. The argument is similar to that for accessibility. Though a user may not need that accessibility all the time, they could become in need of it. Making the app run better on low end devices will also increase the target audience, which is helpful is user acquisition is your principle metric for success. 

Surma wants businesses to understand that while this is beneficial for people in countries like India, there is also a very wide spectrum of phone performance in America. He wants to help all of these people and wants companies acknowledge this spectrum and to look at the benefits of using web workers to improve performance.

Panelists

  • Charles Max Wood

  • Christopher Buecheler

  • Aimee Knight

  • AJ O’Neal

With special guest: Surma

Sponsors

Links

Follow DevChatTV on Facebook and Twitter

Picks

Charles Max Wood:

Surma:

AJ O’Neal:

Christopher Buecheler




3

JSJ 394: SMS Integration with Dominik Kundel

Episode Summary

Dominik Kundel works as developer evangelist at Twilio. Dominik talks about the history of Twilio, which actually started with integrating phone calls into apps and then moved to SMS integration. 

Today Charles and Dominik are talking about how the SMS message approach can augment your user experience. Since many people are not familiar with implementing SMS, Dominik talks about how Twilio can help. Twilio created was a supernetwork where they work with carriers and gateways around the world to ensure that they provide reliable services. They also focus heavily on making sure that the developer experience is great.

Uber and Lyft are two of the companies that use Twilio, and Dominik shares some of the interesting things that they’ve accomplished. He is particularly excited about phone number masking to support privacy. Uber and Lyft use phone number masking so that your driver doesn’t see your real number and you don’t see theirs. Instead, each of you sees a Twilio number. This use case is becoming more common. 

Twilio recently introduced Flex, which Dominik explains is their contact center solution. Flex is designed to keep with their philosophy of everything should be programmable and configurable, and take it on to a software shipment. This is their first time shipping software instead of just APIs. Flex is highly customizable and flexible, allows you to build React plugins that let you change anything you want.

Charles asks Dominik about some of the gotchas in telephony. One major issues is spam calls, which Twilio is trying to work with some providers on a ‘verified by Twilio’ list. This list lets companies get verified, and they’re working on ways to let you know the reason why they’re calling without having to answer your phone. This can be difficult because each country has different regulations.

Dominik talks about what it would take for someone who wanted to build an SMS gateway themselves. They would have to work with carriers and learn SMS protocols. It’s important to note that SMS and phone calls have different protocols

Dominik talks about some of the unique use cases they’ve seen their system. Some examples are contextual communications, account verifications, and codex creation. There are other fun examples, such as a drone controlled via text message, a fake boyfriend app, and a dog that was taught to take selfies that are sent to his owner. 

Charles asks about ways to get started with Twilio. If you want to explore this and don’t know where to get started, try Twilio Quest, a game to teach you how to use Twilio. There is also documentation, which is good if you know exactly what you want to achieve, or if you just want to explore possibilities then download Twilio Quest. 

They delve into a more specific use case for Twilio to send text to subscibers of DevChatTV. Dominik talks about ways of dealing with sending notifications to people outside of the US. You can send with a US number to any country code, or you can personalize it, so that people in the UK receive it from a UK number and so on through automatic geocode matching. They talk about Twilio’s billing. 

Finally, they talk about security within telephony in light of recent hacks. They discuss the security of two factor authentication.Two factor authentication and security, especially in light of recent hacks. Dominik talks about the API called Authy, where you can implement different ways of doing two factor authentication, such as push notifications, time based one time password, sms, and phone calls. For most people in the world two factor authentication is very safe, unless you’re a very important person, then you’re more at risk for targeted attacks. They conclude by talking about Twilio’s acquisition of Sendgrid.

Panelists

  • Charles Max Wood

With special guest: Dominik Kundel

Sponsors

Links

Follow DevChatTV on Facebook and Twitter

Picks

Charles Max Wood:

Dominik Kundel:

  • Enable a setting called javascript.implicit

  • Follow him @dkundel




3

JSJ 395: The New Ember with Mike North

Mike North is the Ember guy at Frontend Masters and LinkedIn’s web developer trainer. Today the panel is talking about the upcoming Ember update, which Mike calls a total reinvention of the way you build with Ember. Finally, they are letting go of the cruft and stuff they had to hold on to in order to support IE8 and using modern interface

The panel talks about some of the issues with IE8, and agree that the reason Ember felt its age because it was built for IE8. Ember 314 is moving from the past into the present, a sleek modern way to build apps. Mike talks about how easy the new Ember is to use. 

Mike talks about the excitement in the Ember community because the new build is focused on stability and seamlessness. Charles talks about his less seamless experience with the Angular community. For context, Mike North’s first frontend masters course was recorded in 2014, and he’s only had to change two lines of code. Ember is the only framework that has managed to go all the way from IE7/IE8 to today without a major gap,breaks, or rewrites.

They transition to talking about what keeps Ember going. There is an effort to make sure things are decentralized and not tied to any specific company, although Apple, Netflix, Nasa, and PlaysStation all use it. LinkedIn has also been hiring Ember core member to continue working on it, and sponsoring open source work. 

Next, they talk about how Ember works with TypeScript. You can install an Ember add on with one terminal command that will enable TypeScript in an Ember app.There are some issues that could cause misalignment with JavaScript and TypeScript, but Ember has designed things around it. MIke talks about the major change in the learning curve with using Ember and how far Vanilla JS will take you. Overall, it is a lot more approachable than it used to be. 

They move on to talk about the availability of third party solutions with Ember. Mike assures them that Ember has add-ons, and parts of the framework are opening up to allow experimentation with components. There are lots of ways to make Ember your own without running the risk of diverging, giving more flexibility than ever while maintaining the happy path. Testing within Ember is also a priority, and they want the code to be as readable as possible.

The last topic discussed in this show is the importance of developer education. LinkedIn looks at employment numbers and the rate at which new jobs open, and software engineering is growing like crazy and will likely continue to grow.The rate at which new people are graduating with computer science and programming degrees, as well as those from unconventional backgrounds, is not keeping up with the number of jobs. This means that there will be fewer senior people spread across bigger groups of developers with less experience. The panel agrees that it is the responsibility of people who have been around or learned something period to pass on the knowledge because the more knowledge is passed on, the more stable things will remain as seniors become more scarce. It is also important for companies to level up junior developers. They conclude by talking about tools available for people who want to learn more about Ember Octane, and Mike makes an open request to the JS community. 

Panelists

  • Charles Max Wood

  • Steve Emmerich

  • Chris Ferdinandi

  • Aimee Knight

  • AJ O’Neal

  • Christopher Buecheler

With special guest: Mike North

Sponsors

Links

Follow DevChatTV on Facebook and Twitter

Picks

Chris Ferdinandi:

Steve Emmerich:

Aimee Knight:

AJ O’Neal:

Charles Max Wood:

Christopher Buecheler:

Mike North:




3

JSJ 396: Publishing Your Book with Jonathan Lee Martin

Jonathan Lee Martin is an instructor and developer. He got his start in teaching at Big Nerd Ranch doing 1-2 week trainings for mid to senior developers, and then transitioned to 16 week courses for career switchers. He also worked for Digital Crafts for a year, and then wanted to focus on building out his own personal teaching brand. One of his first steps toward building his own brand was to publish his book, Functional Design Patterns for Express.js.The inspiration for Jonathan’s book came from his experience teaching career switchers. He wanted to experiment in the classroom with teaching functional programming in a way that would be very approachable and applicable and dispel some of the magic around backend programming, and that became the template for the book. 

Jonathan loves the minimalist nature of Express.js and talks about its many uses. He believes that it knowing design patterns can take you pretty far in programming, and this view is related to his background in Rails. When he was working in Rails taming huge middleware stacks, he discovered that applying design patterns made builds take less time. He talks about other situations where knowing design patterns has helped. Express.js leans towards object oriented style over functional programming, and so it takes to these patterns well. Express.js has its shortcomings, and that’s where Jonathan’s favorite library Koa comes into play. 

The conversation switches back to Jonathan’s book, which is a good way to start learning these higher level concepts. He purposely made it appealing to mid and senior level programmers, but at the same time it does not require a lot of background knowledge. Jonathan talks about his teaching methods that give people a proper appreciation for the tool. Jonathan talks more about why he likes to use Express.js and chose to use it for his book. He cautions that his book is not a book of monads, but rather about being influenced by the idea of composition over inheritance. He talks about the role of middleware in programming. 

The panel asks about Jonathan’s toolchain and approach to writing books, and he explains how his books are set up to show code. They discuss the different forms required when publishing a book such as epub, MOBI, and PDF. Jonathan found it difficult to distribute his book through Amazon, so he talks about how he built his own server. Charles notes that your method of distributing your book will depend on your goal. If you want to make the most money possible, make your own site. If you want to get it into as many hands as possible, get it on Amazon.

Many of the JavaScript Jabber panelists have had experience publishing books, and Jonathan shares that you can reach out to a publisher after you’ve self-published a book and they can get it distributed. Jonathan believes that If he had gone straight to a publisher, he would have gotten overwhelmed and given up on the book, but the step by step process of self-publishing kept things manageable. The panelists discuss difficulties encountered when publishing and editing books, especially with Markdown. Jonathan compares the perks of self-editing to traditional editing. Though he does not plan to opensource his entire editing pipeline, he may make some parts available. The show concludes with the panelists discussing the clout that comes with being a published author. 

Panelists

  • Charles Max Wood

  • Christopher Buecheler 

  • J.C. Hyatt

With special guest: Jonathan Lee Martin

Sponsors

Links

Follow DevChatTV on Facebook and Twitter

Picks

Christopher Buecheler:

J.C. Hyatt:

Charles Max Wood:

Jonathan Lee Martin:




3

JSJ 397: Design Systems with Kaelig Deloumeau-Prigent

Kaelig Deloumeau-Prigent is a self taught web developer from west France. He has worked for BBC, The Guardian, and The Financial Times in the UK. He has also worked in the US for SalesForce and currently works for Shopify on their Polaris design system. Shopify has multiple design systems, and Polaris is open source. Today the panel is talking about design systems and developer tooling around design systems. 

To begin, Kaelig explains what a design system is. A design system is all of the cultural practices around design and shipping a product. It includes things like the words, colors, spacing grid system, and typography, plus guidance on how to achieve that in code. The panelists discuss what has made design systems so popular. Design systems have been around for a while, but became popular due to the shift to components, which has been accelerated by the popularity of React. The term design system is also misused by a lot of people, for it is much more than having a Sketch file. 

Next, they talk about whether design systems fall under the jurisdiction of a frontend developer or web designers. Kaelig has found that a successful design system involves a little bit of everyone and shouldn’t be isolated to one team. They talk about what the developer workflow looks like in a design system. It begins with thinking of a few common rules, a language, and putting it into code. As you scale, design systems can become quite large and it’s impossible for one person to know everything. You either give into the chaos, or you start a devops practice where people start to think about how we build, release, and the path from designer’s brain to production.

The panelists then talk about how to introduce a design system into a company where there are cultural conflicts. Kaelig shares his experience working with SalesForce and introducing a design system there. They discuss what aspects of a design system that would make people want to use it over what the team is currently doing. Usually teams are thankful for the design system. It’s important to build a system that’s complete, flexible, and extensible so that you can adapt it to your team. A good design system incorporates ‘subatomic’ parts like the grid system, color palette, and typography, referred to as design tokens. Design systems enable people to take just the bits of the design system that are interesting to them and build the components that are missing more easily. 

The conversation turns to the installation and upgrade process of a design system. Upgrading is left up to the customer to do on their own time in most cases, unless it’s one of the big customers. They talk about the role of components in upgrading a design system. Kaelig talks about the possibility of Shopify transitioning to web components. Kaelig shares some of his favorite tools for making a design system and how to get started making one. A lot of design teams start by taking a ton of screen shots and looking at all the inconsistencies.Giving them that visibility is a good thing because it helps get everyone get on the same page. The panelists talk about the role of upper management in developing components and how to prioritize feature development. Kaelig talks about what drives the decision to take a feature out. The two main reasons a feature would be removed is because the company wants to change the way things are done and there’s a different need that has arisen. The show concludes by discussing the possibility of a design system getting bloated over time. Kaelig says that Design systems takes some of the burden off your team, help prevent things from getting bloated, allow you to ship less code.

 

Panelists

  • Chris Ferdinandi

  • Aimee Knight

  • Steve Emmerich

With special guest: Kaelig Deloumeau-Prigent

Sponsors

Links

Follow DevChatTV on Facebook and Twitter

Picks

Steve Emmerich:

Aimee Knight:

Chris Ferdinandi:

Kaelig Deloumeau-Prigent: