September 26th, 2018 ×
Potluck - JS × Web Components × Security × They took our jobs!
 Wes Bos Host
 Scott Tolinski Host
It's another potluck episode in which Wes and Scott answer your questions! This month - all things JS, go-to dev stacks, website security and the ever-changing nature of development.
Mlab - Sponsor
mLab is the leading Database-as-a-Service for MongoDB, powering over half a million deployments worldwide. Wes and Scott use mLab to host their own databases as well as take care of backups, security, scaling and performance. Try out a sandbox database on your next mongoDB project → https://mlab.com.
Sanity.io - Sponsor
Sanity.io is a real-time headless CMS with a fully customizable Content Studio built in React. Get up and running by typing npm i -g @sanity/cli && sanity init in your command line. Get an awesome supercharged free developer plan on sanity.io/syntax.
Show Notes
3:33 - Would you ever consider doing a live Syntax show?
- Yes! Get tickets at JAMstack_conf
 
4:31 - What are your thoughts on Flutter? Does React Native have some solid competition now?
- Google's answer to React Native.
 - Flutter
 - NativeScript
 
9:43 - What are your website security essentials for static and dynamic sites? What's the deal with forms? Is it bad to put a form on my site with no server-side validation?
- Not cool. Always do server-side validation.
 - Netlify
 - Cloudflare
 
14:55 - Do you have a 'go-to' stack when building new web apps? If so, what is it and how would you go about choosing the right stack for the project?
- Scott - Gatsby for sites / Meteor Apollo, React, MongoDB for db needing accounts sites
 - Wes - Next.js, Express Backend + either MongoDB, DiskDB or Prisma (or hasura)
 
21:51 - What are your thoughts on 100 Days of Code Challenge?
- Consistency and accountability.
 - The best way to get good.
 - 100 Days of Code
 
25:05 - I really have been learning a lot of React recently and have been wondering what is the difference between Next.js, Gatsby.js and vanilla React?
- 
Dynamic vs static. What are your needs, how often does the content change.
 - 
- Use for dynamic needs
 - It can do static exports too
 - Convert to markdown
 - Nothing special other than Routing and SSR (Server request getInitialProps)
 
 - 
- Use for static needs
 - Gatsby has lots of adapters
 
 
30:38 - What are websockets and when should they be used?
- A request that is always open - it responds to events instead of pinging, pushing or pulling data
 
35:15 - I would love to hear your take on PWAs. Do either of you have any experience with building or using them?
40:16 - I'm a nervous newbie who's concerned about doing a web app that accepts payments or sensitive information. How can I know I've done everything to create a secure website and also protect myself from being sued by the client if their website gets hacked? I'm trying to be a jam stack developer so I'm looking at things like Snipcart and Stripe
- Don’t save sensitive info in plain text. Use services that make it tough to do that until you are confident.
 - Look up PIPEDIA compliance
 
43:23 - What is a JavaScript generator? I heard that async/await creates a “generator” under the hood.
- Pausable function that can return multiple values - call .next() on it
 
46:54 - Are web components worth it in 2018?
- Web Components
 - Polymer
 - Svelte
 
49:52 - How soon the designers replace React Developers with the invent of tools like Framer X?
- Not soon.
 - Your job is changing and will continually change
 - SouthPark - They Took Our Jobs!
 
56:52 - Have you, or anyone you know ever thought of quitting the industry because of difficulties you have run into?
××× SIIIIICK ××× PIIIICKS ×××
- Scott: EGO Lawn Tools
 - Wes: B is for Build YouTube Channel
 
Shameless Plugs
Tweet us your tasty treats!
- Scott's Instagram
 - LevelUpTutorials Instagram
 - Wes' Instagram
 - Wes' Twitter
 - Wes' Facebook
 - Scott's Twitter
 - Make sure to include @SyntaxFM in your tweets