Syntax - Tasty Web Development Treats
Potluck - JS × Web Components × Security × They took our jobs!
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 - SponsormLab 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 - SponsorSanity.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 Notes3: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
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
- Scott’s Instagram
- LevelUpTutorials Instagram
- Wes’ Instagram
- Wes’ Twitter
- Wes’ Facebook
- Scott’s Twitter
- Make sure to include @SyntaxFM in your tweets