JSJ 269 Reusable React and JavaScript Components with Cory House
JavaScript Jabber11 Juli 2017

JSJ 269 Reusable React and JavaScript Components with Cory House

JSJ 269 Reusable React and JavaScript Components with Cory HouseOn today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in![00:01:35] – OverviewWe can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done.Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. [00:04:50] – Browser support issueThe story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load different components.Whether you’re in Angular or React, you have this model of putting your data in your curly braces. That setup is non-existent in standardized web components. You have to play the game of putting and pulling data into and out the DOM using DOM selectors. You actually take a step backward in developer ergonomics when you choose to leverage the platform instead. [00:07:50] – Polymer The reason that Polymer is useful is it adds some goodness on top of web components. One of those things is that it makes it easier to bind in data and not having to do things like writing a DOM query to be able to get your hands on this div and put this text inside of it. With Polymer, you can do something that feels more like Angular, where you can put in your curly braces and just bind in some data into that place. Polymer ends up adding some nice syntactic sugar on top of the web components standard just to make it easier to create web components. Polymer is also used to bundle in Polyfill for the features across browser. [00:14:20] – Standards are deadNo. The standard itself has been embraced at different levels by different libraries. What you can see for the near future is popular libraries leveraging pieces of the web components platform to do things in a standard-spaced way. Effectively, Angular, Vue, Aurelia, are going to be abstractions over the web components standard. Arguably the most popular way to do components today is React. But React completely ignores the web components standard. When you look at React, you can’t see what piece of the web components standard would fundamentally make React a better component library.Cory can’t seem to run to anybody that is actually using the standard in production to build real applications. People continue to reach for the popular JavaScript libraries that we so often hear about.[00:17:05] – Libraries making reusable componentsThere is a risk that it would have been a waste for people writing components on Angular, for React, for Vue. But it’s not necessarily safer writing on the web component standard when you have so few people leveraging that standard. There’s always the risk that that standard may shift as well.As an example, Cory’s team created approximately 100 reusable components in React. If they end up moving to a hot new library, the components are really just functions that take parameters and contain HTML. There is little there[00:21:20] – Why opt for reusable componentsReusable components are inherently useful in a situation where you’re going to be doing something more than once. If you think about any work that you do as a software developer, we’d like to think that we’re coming in and creating new things but often it is groundhogs day. There are all sorts of opportunities for reuse.As a company, we want to encapsulate our forms in reusable components so it’s literally impossible for our software developers to do something that goes against our standard. That’s the power of reusable components. [00:31:20] – Rigid component vs. flexible component As component developers, if we try to create a reusable component in a vacuum, bad things happen. If you’re going to do a reusable component, start by solving a specific problem on a given application. If we think that a component’s going to be useful in multiple places, we put it in a folder called reusable right there in our application source folder.We try to follow that rule of three as well. If we’ve taken that component and used it in 3 places, that’s a good sign that we should extract it out, put it in our NPM package, that way, everybody has this centralized component to utilize. At that point, it has been tested. It’s been through the fire. People have used it in the real world in a few places so we can be confident that the API is truly flexible enough.Be as rigid as you can upfront. Once you add features, it’s really hard to take features away. But it’s quite easy to add features later. If you start with something rigid, it’s easier to understand. It’s easier to maintain and you can always add a few more switches later.[00:36:00] – Reusable componentsThe reason that we can’t reuse code is every time a new project comes up, people are spending up their own ideas rather than leveraging standards that should have been put in place previously.We’ve had the technical ability to do this for a long time. We just haven’t been around long enough for consolidation to happen, for standardization to happen. You look at how quickly things are changing in our industry. For instance, a couple of years ago, everybody had pretty much decided that two-way binding was the way to build web applications. And then, React came along and shook that up. So today, you have different ways of thinking about that issue.[00:42:45] – Component development on teamsAimee’s team has component development and they’re using Angular 1.6. All of our base components are sitting in a seed application. We just go in when we want to create a new property and we just extend all of those components with specific functionalities that we need.[00:47:45] – Mobile to web crossoverCory’s team is creating React components but it’s not leveraged on a mobile application. But people use React Native components on the web. And in fact, if you use create-react-app today, you can do that right now. It’s wired up to work in React Native components. In that way, you can literally have these same components running on your Native mobile apps as you do on your web application.[00:50:00] – ChallengeCory’s challenge for everybody listening is sit down with your team and have a quick conversation about whether you think components make sense. Look back at the last few months of development and say, "if we have a reusable component library, what would be in it? How often have we found ourselves copying and pasting code between different projects? How much benefit would we get out of this story?"Once you’ve realized the benefits of the component model, both in the way that makes you think about your application, in a way that it helps you move faster and faster over time, I really think you won’t go back to the old model. I’d encourage people to investigate reusable components, whether that’d be React, Angular, Vue or Ember.PicksCory HouseJoe EamesAimee KnightCharles Max WoodJSJ 269 Reusable React and JavaScript Components with Cory HouseOn today’s episode of JavaScript Jabber, we have panelists Joe Eames, Aimee Knight, Charles Max Wood, and playing the part of both host and guest, Cory House. Encourage your team to investigate reusable components, whether that’d be React, Angular, Vue, or Ember. Tune in![00:01:35] – OverviewWe can finally write reusable components that it is really lightweight. It doesn’t take much framework-specific code to get things done.Around 3 years ago, the idea of web component standard was all front-end developers could share our components with each other whether someone is in Angular or React. Web components continue to be an interesting standard but people continue to reach for JavaScript libraries instead – React, Angular, Vue. [00:04:50] – Browser support issueThe story in JavaScript libraries is easier. You have more power, more flexibility, more choices, and get superior performance, in certain cases, by choosing a JavaScript library over the standard right now. If you try to use the web components standard, you have to Polyfill-in some features so you can run things across browser. You also won’t get JavaScript features like intelligently splitting bundles and lazy load differ

Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

Avsnitt(725)

Optimizing SQL and ORM Practices for High-Performance Applications - JSJ 650

Optimizing SQL and ORM Practices for High-Performance Applications - JSJ 650

In today's episode, Charles, Steve, and AJ, are joined by back-end engineer and team lead at Homebound, Stephen Haberman. We delve into the fascinating world of SQL c and its revolutionary approach to managing SQL queries with dedicated SQL files, delivering benefits such as reduced typing errors and pre-deployment checks. Stephen also walks us through the advantages and limitations of ORMs versus query builders like Prisma and Drizzle, sharing insights into Joyce ORM's unique philosophy and simplified CRUD operations.They explore the intricacies of Domain Driven Design (DDD), its emphasis on ubiquitous language, and how it shapes business logic and storage management. AJ contributes by discussing the potential of SQL c and Slonik for dynamic query building. Additionally, they discuss Steven's innovative work with GraphFileWorker and GrafAST, highlighting the performance improvements in GraphQL backends. Whether you're intrigued by the technicalities of ORMs, the evolution of database tools, or just love a good anecdote, this episode packed with technical insights and lively discussions is one you won't want to miss. Join them on this journey into the world of database management and development!SocialsLinkedIn: Stephen HabermanPicks AJ - TypeScript to JSDocAJ - MySQL to TypeScriptAJ - sqlcAJ - Slonik (Node + Postgres)AJ - SwiftUI EssentialsAJ - Introduction to SwiftUI AJ - Trump, but not saying dumb thingsCharles - Biblios | Board GameCharles - FreeStyle Libre 3 System | Continuous Glucose MonitoringStephen - Grafast | GrafastBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

24 Sep 20241h 31min

Mentorship in Tech: Balancing Professionalism and Friendship for Maximum Growth and Accountability - JSJ 649

Mentorship in Tech: Balancing Professionalism and Friendship for Maximum Growth and Accountability - JSJ 649

They dive deep into the world of mentorship, personal growth, and problem-solving with our special guests, Joao and Manny, alongside our insightful panelists, AJ and Charles.In this episode, they explore the transformative power of weekly accountability meetings (WAM), where tasks are committed and followed up with a yes or no, no excuses allowed. Joao and Manny share their journey of mentorship that crossed borders, forging a strong bond through adversity and mutual respect. We'll also delve into how their dynamic friendship amplifies professional standards, and the importance of balancing personal and professional relationships.We discuss the profound impacts of structured problem-solving methods, specifically George Polya's renowned four-step process. Joao and Manny highlight how this systematic approach has refined their coding skills and overall problem-solving abilities. Alongside, we touch upon the fascinating intersection of human learning and AI, emphasizing the unique capacity humans have for generalizing new problems from limited data.In addition, our speakers will share their roadmap for continuous learning, curriculum development, and practical exercises—highlighting tools like Trello for task management and Anki for reinforcing learning. AJ O'Neil offers his unique perspective on the talent it takes to thrive in programming and how personal enjoyment is crucial for sustained success.Later, we'll transition to our Picks section, where AJ, Charles, and the guests share their latest recommendations, from essential productivity tools and engaging books to top-notch apps and board games.Finally, we'll wrap up with some valuable insights on time management, consistent study habits, and the importance of finding a mentor who truly cares about your growth. Whether you're a seasoned developer or just starting out, this episode is packed with practical advice and inspiring stories that you won't want to miss. So, tune in for all this and more on Top End Devs!PicksAJ - Apple EarpodsAJ - SwiftUICharles - Biblios | Board GameCharles - FreeStyle Libre 3 SystemManny - Jaco: The Extraordinary and Tragic Life of Jaco PastoriusManny - Baldur's Gate 3 on SteamBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

17 Sep 20241h 19min

Unpacking Deno 2: Code Stability, Free Speech, and more - JSJ 648

Unpacking Deno 2: Code Stability, Free Speech, and more - JSJ 648

Today, Charles, Dan, AJ, and Steve dive into a range of fascinating discussions. Joining this episode is special guest, Ryan Dahl, the visionary creator behind Node.js and Deno.In this episode, they traverse an eclectic mix of topics, from humorous offbeat news and dad jokes to in-depth tech discussions. They explore the complexities and legalities surrounding free speech, offering diverse perspectives on its implications in the modern digital landscape.But the heart of our discussion is Ryan Dahl's exploration of Deno 2, the latest evolution in JavaScript's runtime environment. You'll hear about its distinctive features, including the revolutionary JSR project, and how it aims to simplify and secure modern JavaScript development, addressing challenges and limitations found in Node.js. They also discuss the intricacies of TypeScript support, Deno’s security model, and the future potential of JavaScript in data science.Join them for a lively conversation packed with insights, technical deep-dives, and plenty of humor. Whether you're a seasoned developer or just starting your coding journey, this episode is sure to offer valuable takeaways and an entertaining ride through the world of modern web development.Sponsors Wix StudioSocialsLinkedIn: Ryan DahlTwitter: @deno_landDenoPicksAJ - SwiftAJ - DenoCharles - Challengers! | Board GameRyan - GrainBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

10 Sep 20241h 34min

Opinionated Core Web Vitals - JSJ 647

Opinionated Core Web Vitals - JSJ 647

Dan Shappir takes the lead this week to discuss Core Web Vitals and how Google is pushing the web to be faster.He leads Chuck, Aimee, and AJ through the ways that developers can measure and improve the performance of websites based on the statistics specified by Google as components of Google rankings.Sponsors Wix StudioLinksWeb VitalsPicksAimee- GitHub | treosh/lighthouse-ci-actionAimee- GitHub | GoogleChrome/lighthouse-ciAJ- Classless CSSAJ- One FinanceAJ- JCS - Criminal Psychology - YouTubeAJ- Auth Library Live StreamCharles- Atlas Shrugged Charles- Dev Influencers | Devchat.tvDan- Core Web Vitals Technology ReportDan- Math Has a Fatal Flaw - YouTubeBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

3 Sep 20241h 10min

Beyond JavaScript: Master TypeScript at Scale at SquiggleConf  - JSJ 646

Beyond JavaScript: Master TypeScript at Scale at SquiggleConf - JSJ 646

Dan together with Josh Goldberg, a prominent open-source maintainer and author of "Learning TypeScript, dive into the world of TypeScript and JavaScript with a special focus on the upcoming Squiggleconf. In this episode, they'll detail the conference format, including its dedicated days for talks and workshops, and highlight the impressive lineup of speakers who will cover topics like ASTs, TypeScript at scale, and essential documentation practices.Josh also shares insights into the evolution and practical application of TypeScript ESLint. Expect a deep dive into TypeScript's latest features, such as generics and specific lint rules that enhance code quality and developer experience.SocialsLinkedIn: ‌Josh ‌GoldbergPicksDan - Dan's favorite standalone fantasy booksDan - Despicable Me and MinionsJosh - NeuromancerJosh - WitcherBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

28 Aug 20241h 10min

Deep Dive into Metrics and Monitoring with Prometheus and Grafana - JSJ 645

Deep Dive into Metrics and Monitoring with Prometheus and Grafana - JSJ 645

Dive into a fascinating discussion blending the worlds of literature, gaming, and tech. In this episode, Chuck and Dan explore the intriguing connections between The Hobbit and The Lord of the Rings, including an extraordinary tale about Israeli pilots translating The Hobbit during wartime. They share insights into Guy Gavriel Kaye’s standalone novel Tigana, inspired by Renaissance Italy, and discuss the complexities and strategies of board games like Monopoly and Letters from Whitechapel.But that’s not all. The episode takes a technical turn as the speakers delve into the dynamic world of application monitoring with Prometheus. They unpack the mechanics of event loop lag, heap usage, and GC storms, and share how Prometheus's query language (PromQL) and integration with Grafana can proactively manage and solve performance issues. Hear about real-time alerting, sophisticated querying, and the practical applications of these tools in companies like Next Insurance and Sisense.This episode is packed with information - from managing performance metrics and alerting systems to insightful discussions on favorite standalone fantasy novels and the productivity hacks that keep our hosts on top of their game. So, sit back and join us for an engaging and informative session on Top End Devs!SocialsLinkedIn: Chuck WoodLinkedIn: Dan ShappirPicksCharles - Letters from Whitechapel | Board GameCharles - TrainingPeaks | Empower Your TrainingBecome a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

20 Aug 20241h 25min

Crafting Code and Community: AI, LeetCode, and Meetups - JSJ 644

Crafting Code and Community: AI, LeetCode, and Meetups - JSJ 644

In this episode, they dive deep into the world of coding, meetups, and the evolving landscape of technical interviews. Join them as they explore the fascinating use of OpenAI's technology for coding assistance, the challenges of setting up impactful meetups, and the intricacies of mastering LeetCode problems.Our experts share invaluable insights—from leveraging AI tools like GPT to generate code effectively, to the essential strategies for problem-solving during high-pressure technical interviews. They also touch on the importance of deliberate practice, group support, and finding the right mindset for tackling coding challenges. Plus, hear personal stories about the benefits of taking breaks, the role of LeetCode in honing coding skills, and the shift in interview styles towards speed and pattern recognition.Sponsors Wix StudioSocialsAnatoliy D. ZaslavskiyLinksNYC LeetCode SquadPicksAJ - Yumi and the Nightmare Painter by Brandon SandersonAJ - The ChosenAJ - Beauty & The BeatAnatoliy - Authentic relatingAnatoliy - Neurodivergent Guide to the WorkplaceCharles - Challengers! | Board GameSteve - Myspace celebrates its 21st birthday. Do we still need it?Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

13 Aug 20241h 9min

Overcoming JavaScript Load Issues: Import Maps and Performance Enhancements - JSJ 643

Overcoming JavaScript Load Issues: Import Maps and Performance Enhancements - JSJ 643

In this episode, they dive deep into the intricate world of JavaScript loading and web performance. Join the panel with insightful discussions led by Dan, Charles, Steve, and special guest Yoav Weiss—an expert with extensive experience in web performance from his time at Google, Akamai, and Shopify.They explore the latest initiatives aimed at improving ES modules, import maps, and the challenges faced with script loading, especially when dealing with web workers. They uncover the critical role of sub-resource integrity, the successful integration of integrity support in Chrome and Safari, and the urgent need for advanced import map solutions for large applications.They also delve into the nuts and bolts of optimizing web performance, including the impact of script execution on browser responsiveness, bundling techniques, and innovative strategies for managing resource download priorities. Tune in to hear about the latest developments, engage with provocative questions, and discover ways you can contribute to the ongoing work of the W3C web performance working group. Plus, stay for heartfelt moments, personal anecdotes, and practical recommendations from the speakers.  SponsorsWix StudioSocialsLinkedIn: Yoav WeissPicksAJ - Jason Bourne 5-part TrilogyAJ - Crucial MX500 has dethroned SP as my pick for best value server SSDCharles - Imaginiff | Board GameCharles - A Quiet Place: Day One (2024)Steve - How Does OpenAI Survive?Become a supporter of this podcast: https://www.spreaker.com/podcast/javascript-jabber--6102064/support.

8 Aug 20241h 35min

Populärt inom Business & ekonomi

framgangspodden
varvet
badfluence
svd-ledarredaktionen
uppgang-och-fall
rss-borsens-finest
avanzapodden
lastbilspodden
fill-or-kill
rss-dagen-med-di
rss-kort-lang-analyspodden-fran-di
affarsvarlden
borsmorgon
rikatillsammans-om-privatekonomi-rikedom-i-livet
kapitalet-en-podd-om-ekonomi
tabberaset
dynastin
borslunch-2
market-makers
rss-inga-dumma-fragor-om-pengar