Script & Style: Recent Episodes

Todd Gardner and David Walsh

A show about web development featuring the people that make it happen.

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryWhat is a PostMortem
Retrospective.
Importance of Post Mortems
Projects don’t always go great
Projects can always go better!
Post mortems provide a forum to air grievances, celebrate victories, and plan for smoother projects moving forward
Provides opportunity to squash beefs and prevent grudges
Tips for a Successful Post Mortem
Create a good environment!
Coffee, donuts, whatever
Involve all persons involved in the project (within reason)
Discluding people can lead to animous
Start with the negative first
...but try to limit it in time and come out with conclusions
Allows the meeting to end with positives
People will leave the PM happy!
For any negatives, try to come out with a concrete changes for next time
Make it Blameless
Beer helps
Don’t boil the ocean
If your team doesn’t do it already, formalizing it can help get it started
Training wheels

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryDon’t Panic

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestN/A

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryDon’t Panic
We’re All stuck
Everything will be okay
Take care of your family first
Make the best of the time you have!
Learning Resources
Frontend Masters
DavidWalshBlog!
Start a Side Project!
Start hacking on that idea of yours
Downtimes are the best opportunities for growth!
Check out our last episode
Fix Your Shit
Make your current projects better.
Burn down that backlog
Fix those bugs
Do that refactor that you’ve been putting off.
Stay Connected
Youtube channels/livestreams
Building RequestMetrics
Virtual Conferences and Meetups
Call/Chat your friends. You need to talk, so do they.

Find normalcy - get outside
Go walk the dog
Get the kids outside
Clean out the garage / spring cleaning
Do something you wouldn’t normally do

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestN/A

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode Summary

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestN/A

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryKnowing that project is worth it
Knowing your ability to learn quickly
Knowing that people around you want you to succeed
Set expectations
Bedding in well
Learn the members of the team and their role
Set expectations with the team
Be positive!Coding
Ask help finding the right bugs to start on
Use pair programming!Fire a PR ASAP!Be honest with those around you
Overcoming difficulties
Be honest with your manager
Don’t get discouraged -- no one expects you to be the expert
Ask for help early and often

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestN/A

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryRebuilt trackjs.com
Pride in small, fast sites
Static content, doesn’t need a lot of JavaScript. Sparkle
Lots of people focus on BIG javascript--expansive sites, big teams
We want to share some lessons on SMALL javascript, and how to do it well
You don’t need a framework
No React, No jQuery, No Mootools.
Big sledgehammers
Modern browsers--everything except IE11 basically, give you everything you need.
Avoid JavaScript where possible
Progressive Enhancement!!!CSS Can do magic things
Hidden Input tricks
TrackJS Menu
Don’t expect scripts to run/load.
Couple times a day we see failures. What does the site look like when the scripts fail?
No-js yes-js classes.
Video on TrackJS.com
Don’t assume you need a build step
<500 of commented script. 1 file, no minification. It doesn’t matter. 4KB after gzip
You can look at it, read it. Learn from it how we used to learn javascript before github--reading code from websites we liked.
Prettify
Avoiding Spaghetti Code in Scripts.js
Util object
ReadyState
Browser Compat Check. Doesn’t scale forever, but I use only:
querySelector, [].forEach, el.classList, el.matches
“Modular” IIFE for each responsibility.
pageViewCounter()
tabs()
Any signals between them should be through common DOM idioms, like ready events or element attributes.

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestN/A

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryWeb Performance

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your HostsDavid Walsh

@davidwalshblog

https://davidwalsh.name

Todd Gardner

@toddhgardner

https://todd.mn

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestN/A

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryWeb Performance

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestN/A

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryWeb Performance

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Today’s GuestChris Ferdinandi
@ChrisFerdinandi
Welcome, Script & Style listeners! | Go Make Things

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryVanilla JavaScript* Chris Ferdinandi is a Frontend developer and advocate for Vanilla JavaScript. + He runs GoMakeThings, a JavaScript learning platform. * Chris’s Origin Story + https://gomakethings.com/ + The HR Guy who knows Tech + Making things that run in a browser was a thrill * Why should people learn vanilla JavaScript over React, Angular, Vue, Etc.? * Tell us about the Lean Web + https://leanweb.dev/ + Thomas Fuchs coined term, “The LeanWeb” + This was a tweet that turned into some blog posts that turned into a talk that turned into an ebook and site. + Key thesis: The web is a bloated, over-engineered mess, and many of our modern “best practices” are actually making the web worse. + Key principles: Embrace the Platform, Small & Modular, and The Web is for Everyone + http://youmightnotneedjs.com/ + https://vanillajstoolkit.com/

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryDavid's Interview with Pornhub

Web News* Microsoft/Mixer takes Shroud from Twitch * Microsoft wins JEDI DoD Warcloud contract over AWS, $10B
https://www.military.com/daily-news/2019/10/26/pentagon-awards-10b-war-cloud-contract-microsoft-snubs-amazon.html

Shipping Without Perfection1. What does it mean? 2. When and to what degree is shipping without perfection OK? 1. Assess risk of breakage 2. Assess risk of user opinion 3. Our experiences 1. David works at Mozilla on an always evolving / releasing product where we have a 8-12 week window to pilot stuff and put stuff behind prefs 2. Todd works on an agent that can’t risk problems on other peoples’ sites 3. (Chat about the differences) 4. How we grew to accept shipping without perfection

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode SummaryDavid's Interview with Pornhub

Rey Bango@reybango

Origin Story

  • What led you to being in the tech industry? How did you originally fall in love with tech?
  • jQuery / Early Framework days
  • What attracted you to jQuery?
  • jQuery and MooTools had a very interesting relationship. Was the competition healthy or did it get too toxic?
    Looking back on those days, what did we do right? What did we do wrong?
    Mozilla (we can skip this if we run low on time)
    Did you get to Mozilla through jQuery?
    Microsoft
    How did you get to Microsoft
    You’ve (somewhat recently) transitioned into a security role -- what did you find interesting about security and how difficult was the transition?

Security Resources from Rey:* Snyk * OWASP.org * Juiceshop * DVWA * Zapp * Troy Hunt on Pluralsight * Web application security handbook

Dont forget the people that got us here.

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode Summary

View Details

VideoYouTube

Our SponsorTrackJSJavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Front-End Monitoring quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your HostsDavid Walsh
@davidwalshblog
https://davidwalsh.name

Todd Gardner
@toddhgardner
https://todd.mn

Episode Summary1. Why did you start davidwalsh.name? 1. Looking for specific answers to my problems 2. Sharing my own learning 3. Ask questions about what I’m doing wrong 4. 12 yo 5. Teaser for technologies 2. Dealing with comments 1. Throw out mean comments. 2. Address negative feedback and get better. 3. Why Do I, as a developer, need to have a brand? 1. How would my blog/website/social build that brand? 2. Showcase your talents and advocate for yourself 3. Opens a new revenue stream personally… ads and sponsorships 4. Feeling proud of accomplishing something. 5. Write in your own voice 4. What sort of things do you write about 1. Curiosity, wanting to know how things on the web are built. 2. Talk to my passion, not focused on a niche. 5. How do you stay active on the blog? 1. Writing makes you think and explain yourself, and understand the shortcomings in your own work. 2. Scheduled writing time and publishing over time. 3. Revisiting work through the blog in a different mindset 4. Publishing daily for momentum, but its however often you can. 5. Publish regularly, whatever that means for you. 6. No topic is too small 6. How do I know if it’s working? 1. Do I measure something, how many hits, shares, etc? 7. What do I do if no one reads my blog? 8. Choosing technology 1. Owned (wordpress, jekyll) vs Aggregate (medium, dev.to) 2. Probably don’t build it yourself

View Details

Pre-pre-conference Decisions

How do you pick the right event?

How do you pick a solid topic?

How do you submit a proposal / what’s the process?

Pre-conference Decisions

Any tips for getting ready or travel?

What is the anxiety level at this point? How do you put yourself in a position of confidence?

What have you done right and wrong at this point in the past?

Do speakers get paid? Just flight and travel? ANYTHING?!

Showtime!

You’re on stage...how do you break the ice?

Any tips for keeping to time?

How do you keep the attendees from getting bored or confused? How much does “reading the room” play into on-stage audibles?

Post-talk

How are you feeling at this point? What’s next?

View Details

Script and Style

Episode 37: Advice to those New in the Industry

YouTube: https://youtu.be/OLC3gjBAkqI

Your Hosts David Walsh

@davidwalshblog

https://davidwalsh.name

Todd Gardner

@toddhgardner

https://todd.mn

Our Sponsor Client-side error logging from TrackJS. JavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

Web News 1. Verizon sells Tumblr to Automattic for $3m 1. Yahoo bought Tumbler in 2013 for 1.1 billion 2. Sold for $3m with Automattic taking on 200 staffers 3. Porn ban stays in place

Main Topic: Advice to those New to the Industry 1. Interviewing for your first job in the industry 1. What to expect 1. Know what your level is (i.e. not everyone is a Facebooker on day 1) 2. Negotiating for the job 2. Getting the new job 1. Adjusting to the culture 1. Baptism by fire 2. Working late -- not all the time. 3. Making mistakes 2. The hours and proving yourself 1. Show that you’re willing to go the distance 2. Show that you’re a team player 3. But don’t let them overwork you. Deathmarch. 4. Talk about your work, celebrate your wins. 3. Finding your place 1. Routines 1. Getting in at the same time 2. Lunch away from the desk 3. Knowing when something requires a meeting. Know how to hold a meeting. 1. Have a specific question that needs answering 2. Have the relevant background material ready 3. Involve ONLY the people that need to be there. 4. Get to the point ASAP. 4. Knowing the job and getting ready to move on (or not) 1. When is it time to go? 2. Don’t be the smartest person in the room. Know when to move on. 1. Know thyself. 5. Last minute advice 1. Save your money and get that 401k setup quickly -- be sure to keep an eye on it too! 2. Don’t increase your lifestyle as you increase your pay. 3. Build your personal life as you build your professional one. Develop hobbies, don’t neglect other relationships. 4. Take PTO! Don’t work yourself to death 5. Try to show leadership 6. Ask for help!

View Details

When do you need to debug a remote client?

What things are available?

Specific debugging code, writing logs to the DOM.

Remote browser connections? Chrome, Firefox?

Created something, RemoteJS

How does it work?

Trackjs agent, hacked

Websockets, passth rough a cheap proxy server.

Simple react-based web debugger tool.

Video YouTube

Our Sponsor TrackJS

JavaScript breaks sometimes. Even the code you write. You need to know when things start crashing in production.

TrackJS Error Monitoring for JavaScript quickly integrates with your front-end or node application, regardless of framework, so you know when a bug gets out. TrackJS installs in minutes, and you get context about what the user, network, and application were doing before an error. It's like having an airplane's blackbox in your UI, so you can find, recreate, and fix problems fast.

TrackJS is an engineer-owned cloud service that will make your JavaScript better and your website more reliable. Try it free at TrackJS.com.

Your Hosts David Walsh

@davidwalshblog

https://davidwalsh.name

Todd Gardner

@toddhgardner

https://todd.mn

View Details

YouTube

Show Notes Introduce our panel:

Eric Brandes, CTO and Cofounder of TrackJS JavaScript Error Monitoring. @BrandesEric

Lemon, Builder of Internet things, President for Life of TheFPlus podcast, and web developer. @ahoylemon

Main Topic: Work/Life Balance and Keeping Sanity

Entering the dev workforce from college or previous line of work

Culture shock of new work

Wanting to make a good impression by working harder, longer

Moments that challenge work/life balance

Challenging / crucial projects

Working toward promotion

Getting married and/or getting a pet

Children(!)

Health issues

Working remotely / work always available

Creating a good work/life balance

Keeping an exercise routine

Leaving the office on time

Taking vacations before burnout

Common mistakes

Working too much

Working through burnout

Taking on too much work

Personal experiences

(Guests and hosts talk about life-changing work/life balance events)

Takeaways

  • Working More hours isn't the answer. Just start.
  • Physical Activity
  • Where do you derive happiness?
  • Games, Social Media makes you angry and burn out

View Details

Panelists * Susan Greve, QA at Target, Formerly a Recruiter at DevJam * Sarah Cooke, Customer Engineering at Kipsu, Prime Digital Academy graduate * Emily Schweiss, Operations at Treehouse TalentPath Apprenticeship platform

Web News * (Todd) https://www.techspot.com/news/79848-hertz-hits-accenture-32-million-lawsuit-over-failed.html

Main Topic: Getting a Job in Tech How do you find the right organization for you to join? Sarah was worried about burnout with a startup, but saw good signs from current employees

Susan: Target had tons of smart people that i could learn from

Emily: Treehouse saw me as an active expert in the community already and supported the causes that i believed in--breaking into tech for disadvantaged communities.

Not being a jerk. And being active in the community

David: jobs for phases of life: getting started, tired of corporate, making a difference and following the dream. I knew people there, and they were super proud to be part of it.

How to make them interested in you? Emily: Being active in the community, and not being a jerk, sometimes the company will seek you out.

Susan: building a personal brand, being known in the community, and being connected. Being in a community is like interviewing all the time.

Personal brand: blogging, twitter, volunteer for organizations, show off who you are.

You got an interview! Now what? What to make sure they know?

What you should learn about them?

Sarah: I knew who i was talking to, so I could ask more pointed questions and know what to expect. There was multiple levels of interviews, each with its own focus.

Supportive environment

An evolution of the employee role.

Show all my skills to offer: focus to learn, enthusiasm, and other business skills.

Susan: Come from startup-feel, where people come as their full-selves, and i was worried that that would be “abbreviated” in a bigcorp.

What sucks about this job?

Culture: I want to be on a “product team”. Someone who owns a product and helps us drive it forward.

Culture: building things with humility, avoiding ego.

Emily: Highlight skills you already have from non-tech things and using tech. You probably know a lot about how stuff works.

Be your own gatekeeper -- dont share skills that you dont want to do.

David: How much overtime is worked/expected?

Red Flags-What to look out for

Emily: What’s your favorite part of working here… crickets? Leave

David/Todd: Long hours,

Susan: I don’t want to be the token diversity hire. They need to speak to how this is going to happen.

Negotiating Compensation Emily: its more than the salary. “ i have a lot of cats to pay for”

Tech companies have lots of other ways to compensate you

Training allowances for conferencs, training, books, that I get to choose.

Time Off, Flex schedule, working from home

Dont be afraid to push back when asked for a number.

Sarah, Have a really specific range, more than your baseline. The range will be a conversation point.

David: Dont be afraid to ask for more once youre in a role.

Recruiters How can you tell the difference between a LinkedIn/copy-paste-hope recruiter and one that really cares and did their homework?

What are your thoughts on the state of recruitment?

Emily: which people are coming to events and engaging with communities. Meet with a few and understand what you want.

Susan: bad ones don’t know you, understand whats appropriate for your background.

Takeaways

  • David: Advocate for yourself, compensation
  • Sarah: networking and your personal brand.
    • MplsJrDevs https://mplsjrdevs.com/
  • Susan: Conversations about salary help everyone be paid more fairly.
  • Emily: Community is like interviewing all the time.
  • Todd: What sucks about this job?

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

News! * https://www.theregister.co.uk/2019/04/01/npm_layoff_staff/

Static Typing in JavaScript 1. What is the problem with the existing JavaScript Type System?

  • I have strings, booleans, objects, numbers, arrays… what more do you need?
  • Trusting what the code does, trusting what the team does.

  • How can we enforce type safety in JavaScript?

  • Transpiler checks: TypeScript and Flow\

  • Both have type definitions that must be published for dependencies
  • People feel comfortable for different reasons, flow feels more like javascript, typescript has better windows support.

  • What other advantages do we get from using types?

  • (Paul) Failing faster

  • (Paul) Fail faster during TDD. (Mat - You can also possibly eliminate some tests by encoding meaning with types)
  • (Paul) Your future self won’t hate your present self (encode more meaning.)
  • (Paul) “Help Me (IDE) Help You” … IDE integrations, TS LS refactoring
  • (Paul) Less tests needed as whole chunks are “safe”
  • (Mat) Safe assumptions made by tools/code generators (Types enable Tools)

  • Why would someone not want to use a tool?

  • An upfront time investment is required

  • Some gaps with full DOM API

  • How do we decide between them?

  • (Mat) Gettings teams up-to-speed (good or bad depending on team background)

  • (Paulo) Nowadays is easy for one to decide for TS, because its huge adoption and community + more types libraries types available.
  • (Paulo) For simple static type check, flow would be better option.
  • (Mat) TS alternative would be //ts-check and/or tsdoc
  • (Paulo) In the past, Type Inference using Flow was better, but it looks like is not anymore.
  • (Mat) Edge case - Flow can type nested React components, TS cannot
  • Big win - generating types from graphql :)

  • What is the “cost” of using these tools?

  • (David) Making a small, seemingly innocuous change can trigger a Flow massacre; can take hours to fix.

  • (Paul) You have to think first. Writing down the shape of your props, or state, or whatever can be irritating.
  • (Mat) Getting teams up to speed - upfront cost for learning/training - downstream benefits guarding against large codebase regression
  • (Paul) You’re almost guaranteed to have build-tool-version pain, or @types skew pain, etc.
  • (Paulo) When working with flow, you don't feel like writing another language, even though TS is a super set of JS, but it can scare away beginners.
  • TS lock you down to a new ecosystem, where in flow you still can use your old babel.

Panelists

  • Mat Warger
  • Paul Everitt
  • Paulo Griiettner

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

News! * https://aws.amazon.com/blogs/opensource/keeping-open-source-open-open-distro-for-elasticsearch/ * https://www.nginx.com/blog/nginx-joins-f5/

Impostor Syndrome * David Neal, Episode 2 * https://davidwalsh.name/impostor-syndrome * Kristina’s Planner: https://passionplanner.com/

Panelists

  • Kristina Durivage

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Showing Love * debugger community * Rey bango, (others) helped get me into Mozilla * MDN, my go to when I don’t understand JavaScript. * Google and StackOverflow. When the docs just aren’t good enough * Twitter: When I’m ragey and I need to tell people on the Internet they’re wrong * Meetups, wafflejs * Nicolas Zackas, ESLint * AST Explorer, the nerdiest!

Main Topic: Firefox Debugger * Jason: “The term debugging is terrible” * “We want to understand our creations” * What tools can we use? Firefox DevTools, Chrome DevTools, TrackJS * What is the hardest bug you’ve ever had to debug? + Todd: building a debugging tool to solve old android issues + Logan: debugging async flow of data. + Jason: debugging the debugger with webreplay to rewind your debugging

Coming soon to Firefox DevTools Debugger

  • Log points
  • Better breakable location information (“specificity”)
  • Column breakpoints
  • Event listener breakpoints
  • XHR Breakpoints
  • WebReplay

Panelists

  • Jason Laster
  • Logan Smyth

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

News

  • US Dept Homeland Security Issues emergency directive to lockdown DNS
  • Firefox Flexbox Inspector

Software Testing

Panelists

  • Eric Brandes
  • Kristina Durivage
  • Lemon
  • Lyndsey Padget

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Jennifer Wadella

@likeomgitsfeday

https://jenniferwadella.com/

Gatsby

https://www.gatsbyjs.org/

https://jenniferwadella.com/blog/all-the-dumb-mistakes-i-made-building-my-first-gatsby-site/

KC Women in Tech

https://kcwomenintech.org/

Fat, Ugly, or Slutty

https://www.youtube.com/watch?v=EzYxLlO55ew

http://fatuglyorslutty.com/

RIOT Games

https://arstechnica.com/gaming/2013/05/using-science-to-reform-toxic-player-behavior-in-league-of-legends/

Joggernauts

https://www.nintendo.com/games/detail/joggernauts-switch

Peggle

https://www.origin.com/usa/en-us/store/peggle/peggle

Your Hosts

David Walsh

@davidwalshblog

https://davidwalsh.name

Todd Gardner

@toddhgardner

https://todd.mn

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Eric Brandes

https://twitter.com/BrandesEric

TrackJS JavaScript Error Monitoring

https://trackjs.com/

https://www.reddit.com/r/edmproduction

OKC: One Kit Challenge

https://www.reddit.com/r/makinghiphop

Your Hosts

David Walsh

@davidwalshblog

https://davidwalsh.name

Todd Gardner

@toddhgardner

https://todd.mn

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

GitHub Outage Postmortem

https://blog.github.com/2018-10-30-oct21-post-incident-analysis/

Google Staff Walkout

https://www.bbc.com/news/technology-46054202

https://www.nytimes.com/2018/10/25/technology/google-sexual-harassment-andy-rubin.html

Firefox Debugger Removal

https://davidwalsh.name/lessons-in-failure

IBM Acquires RedHat

https://arstechnica.com/information-technology/2018/10/ibm-buys-red-hat-with-eye-on-cloud-dominance/

Bitcoin turns 10

https://www.cnbc.com/2018/10/31/bitcoin-turns-10-years-old.html

https://www.youtube.com/watch?v=l70iRcSxqzo&t=1s

Your Hosts

David Walsh

@davidwalshblog

https://davidwalsh.name

Todd Gardner

@toddhgardner

https://todd.mn

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Show Notes

Erik Onarheim

@ErikOnarheim

https://erikonarheim.com/

Kamran Ayub

@kamranayub

https://kamranicus.com/

Excalibur

https://excaliburjs.com/

Sweep Stacks

http://playsweepstacks.com

Web games like

Cross-code.com

Written with impactJS

Glitch game jams

https://glitch.mn/

Ludum Dare

http://ldjam.com/

Kamran’s Stuff

Azure CDN with Azure Storage - http://bit.ly/PSAzureStorageCDN

CORS with Azure Storage - http://bit.ly/PSAzureStorageCORS

Introduction to TypeScript - http://bit.ly/introts

Maintainable and Scalable Apps with TypeScript and React Talk - http://bit.ly/ndcmn-react-ts-video

Keep Track of My Games - https://keeptrackofmygames.com/

Erik’s Stuff

All Your Games: HTML5 Game Dev - http://bit.ly/html5allyourgame

Building Nintendo (NES) Games in 6502 - http://bit.ly/nes6502

Your Hosts

David Walsh

@davidwalshblog

https://davidwalsh.name

Todd Gardner

@toddhgardner

https://todd.mn

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Lemon

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Chris Van Wiemeersch

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Chris Coyier

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Kyle Simpson

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Charlie Vazac

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Luke Crouch

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Maggie Pint

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Elle Waters

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Kristina Durivage

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Scott Helme

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Tim Thomas

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Daniel Buchner

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Max Lynch

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Nick Nisi

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Ashley Grant

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • Jason Laster

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guests

  • David Neal

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Guest

  • Marc Grabanski

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.

View Details

Hosts

  • Todd Gardner
  • DavidWalsh

This episode is sponsored by TrackJS JavaScript Error Monitoring. Find and fix the bugs in your web application with the context to see real user errors. Start your free trial at TrackJS.com.