Syntax - Tasty Web Development Treats
Syntax - Tasty Web Development Treats

Potluck - CSS × Angular × Dev job preparation × Svelte × File organization × Gear × More!

It’s another Potluck! In this episode, Scott and Wes answer your questions about CSS, Angular, Svelte, dev job preparation and more! Sentry - Sponsor If you want to know what’s happening with your errors, track them with Sentry. Sentry is open-source error tracking that helps developers monitor and

Featured Speakers

Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers Host

Topics Discussed

Episode Summary

Executive Summary: This Syntax potluck covers practical web dev guidance: when to keep data in memory, how much to know before applying for jobs, skeleton loaders, CSS resets, file organization, Node vs PHP for simple backends, and the state of frameworks like Angular and Svelte. The hosts emphasize testing real-world limits, applying early, using pragmatic tooling, and choosing technologies based on project needs rather than rules.

Main Topics: State size, memory, and performance tradeoffs: The hosts discuss whether an array of roughly 1,000 items is too large to keep in client-side state or memory. Their advice is to weigh bundle size, lazy-load data when possible, and test performance rather than assume hard limits. Applying for dev jobs before feeling fully ready: They strongly encourage listeners to apply even if they don’t feel fully prepared, framing interviews as practice and learning opportunities rather than only gatekeeping mechanisms. Skeleton loaders and perceived performance: They explain what skeleton loaders are, why they can improve user experience, and note that they may actually make very fast sites feel slower if used unnecessarily. CSS resets and Normalize: The hosts argue that CSS normalization/reset styles are still useful because browser defaults remain inconsistent, and Normalize continues to solve cross-browser edge cases. Project structure and file organization: They share preferred app structures, especially feature folders plus reusable component/utilities/hooks/state folders, while stressing that structure should stay simple and evolve with the app. Node.js for simple backends versus PHP/serverless: They compare Node, PHP, and serverless functions for tasks like contact forms, noting Node’s extra setup overhead but also its flexibility and modern deployment options. Framework preferences: Angular, Vue, and Svelte: They explain that React is their default because it’s what they use most, acknowledge Angular’s split identity hurt its momentum, and praise Svelte’s compile-away approach and minimal syntax.

Key Arguments: A thousand lightweight objects is often fine in memory; the bigger issue is whether shipping them in the JS bundle hurts load time. There are no universal rules for data storage or state size; you should measure, test, and choose tools based on the actual problem. Job interviews are valuable even when you don’t get hired because they provide practice and feedback. You should apply for dev jobs before feeling perfectly ready; foundational HTML/CSS/JS plus willingness to learn is usually enough to start. Skeleton screens are best when loading takes long enough to justify them; on very fast loads, they can worsen perceived performance. Normalize or a similar reset is still worthwhile because browser defaults differ in subtle but important ways. Feature-folder organization works well for larger apps, but structure should remain adaptable and not overly complex too early. Node is not only for large applications, but it has more setup overhead than PHP for tiny tasks; serverless functions can bridge that gap. Svelte is compelling because it compiles away and ships less runtime code, making it a meaningful alternative rather than just another syntax variant.

Data Points: Client-side item count: ~1,000 items - The user’s example dataset for client-side storage/state discussion. Potential file-size threshold: 40–50K - Wes suggests that if data or lazy-loaded payloads exceed this rough size, a backend search endpoint may make more sense. Normalize version: v8 - Scott notes Normalize is actively maintained and not obsolete. Internet sun days in Denver: 300+ days/year - Scott mentions Denver’s intense sunshine while discussing backyard projects. Podcast sponsor code: 2 months free - Sentry offer with coupon code 'tasty treat'. Digital Ocean base plan: $5 - Wes mentions using a $5 server with PM2 and Nginx for Node hosting. Svelte release context: Version 3 - They discuss Svelte 3 as the current major version and a big improvement. Course cadence: 1 new course every month / 1 every week (mentioned for different offerings) - Wes and Scott describe their respective course libraries and subscription models. Pro course count: 27 pro courses - Scott says his site has about 27 pro courses at the time. Additional pro courses in a year: 12 - Scott says yearly subscribers get 12 additional courses over the year. Laptop RAM example: 32 GB - Scott cites his MacBook Pro spec. Laptop CPU example: 2.9 GHz i9 - Scott’s MacBook Pro processor spec. Laptop CPU example: 3.1 GHz i7 - Wes cites his MacBook Pro CPU spec. Laptop cores example: 6 cores - Scott says his i9 laptop has six cores. Laptop RAM example: 16 GB - Wes says his MacBook Pro has 16 GB of RAM.

Pivotal Quotes: "Tools over rules." — Wes: Advice on deciding how to store and manage data based on actual needs rather than rigid best practices. "Just apply." — Scott: Their answer to how much you need to know before applying for dev jobs. "You don’t have to ship a library with your application. You just ship code." — Wes: Explaining why Svelte’s compile-away approach is attractive and how it differs from React/Vue-style runtime frameworks.

Implications: Listeners are encouraged to be pragmatic: measure performance, apply before feeling “ready,” keep architecture simple but adaptable, and choose frameworks/tooling based on real constraints rather than hype or rigid rules.

🔓 Sign Up for Unlimited Episode Search

About Syntax - Tasty Web Development Treats

View all episodes from Syntax - Tasty Web Development Treats