RRU 079: State Machines and State Charts with Farzad Yousef Zadeh
React Round Up17 Syys 2019

RRU 079: State Machines and State Charts with Farzad Yousef Zadeh

Episode Summary Today’s guest is Farzad Yousef Zadeh, a developer from Iran with a unique path into computer programming. He started by studying astrophysics and aerospace engineering in college, then dropped out in his last semester because it wasn’t the right path. He then taught himself to code, working mostly in web programming and frontend development. Despite his change in course, Farzad remains passionate about observing the night sky. Farzad is here today to talk about the ideas in his talk Explicitness and Consistency in UI, where he talks about the difficulties of developing a user interface and how the experience can be improved by using state machines and state charts. He talks about his inspiration for the talk and how he has implemented state machines and state charts into his work. The panel backtracks and talks about the definition of state machines and state charts. A state machine, from an academic background, is a model for computing something. It's for managing and controlling, taking over branching and managing a finite amount of state declaratively. State machines are not so much about sharing or reusing, but about how your communicate a certain behavior. Despite the fact that event driven programming permeates the programming consciousness, thinking about state charts and state machines is actually more natural than it first appears. The panel explains how it’s the same principle as whiteboarding to solve a problem. Lucas asks how state charts are different from pure React. Farzad talks about how it’s important not to just treat your static states as first class, but also the transitions between them. Otherwise, you would end up with something that looks like a map with cities and towns, but no roads. Using statecharts and state machines makes testing an application much easier, and in some ways you let the machine test itself. The machine will know what to do with your states because you define the path, and the machine will take the path for you. They again talk about the difference between state machines and state charts. A state machine defines a finite set of states and defining the events that the machine can take and respond to when transitioning from state A to B. If you use only this, you will encounter a snag called ‘state explosion’ because not non-concrete things cannot be modeled. So, state charts were invented to compensate for this. A state chart brings the idea of an extended state, or the context and data you need to hold and reason from. Farzad talks about other types of machines and supports that exist for branching, entry actions, and exit actions. This is similar to the use effect hook in React. He gives examples of where you would use this logic and how it would be worked into frameworks. Farzad talks about how your machine is just a definition, a declarative model of how something is supposed to behave, and how having that separation between the definition of the logic and behavior vs the implementation of API has given us so much more freedom and portability The panel talks about how using state machines and charts is an investment in the long term maintainability of your code. They agree that using state machines and charts makes it easier to communicate with other developers, new team members, and even non developers. They talk about Cerebral.js and its contributions and model. As with everything in programming, state machines are not a silver bullet and don’t work in every situation. Farzad talks about situations where state machines can be unhelpful. It is still valuable to consider state machines and charts because it forces you to dedicate time thinking and organizing your thoughts so that you can build something maintainable that won’t just be thrown away. The panel discusses how thinking things out before starting to code can be beneficial. They finish by talking about how React Hooks has started them on the path to implement state machines and charts into their code. Panelists
  • David Ceddia
  • Lucas Reis
  • Leslie Cohn-Wein
  • Thomas Aylott
With special guest: Farzad Yousef Zadeh Sponsors Links Follow DevChatTV on Facebook and Twitter Picks David Ceddia: Thomas Aylott: Lucas Reis: Leslie Cohn-Wein: Farzad Yousef Zadeh: Special Guest: Farzad Yousef Zadeh.

Advertising Inquiries: https://redcircle.com/brands

Privacy & Opt-Out: https://redcircle.com/privacy

Become a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

Jaksot(310)

Exploring Micro Frontend Architecture with Florian Rappel - RRU 283

Exploring Micro Frontend Architecture with Florian Rappel - RRU 283

Welcome to React Roundup, the podcast where we keep you updated on all things React related! In today's episode, we have an enlightening discussion featuring Paige Nedringhaus as host, our panelist TJ Van Toll, and our special guest, Florian Rappel, a solution architect from Munich, Germany. Florian, a noted figure in the web community, especially in TypeScript, React, and Microfrontends, dives deep into a variety of engaging topics.Throughout the episode, we explore the complexities and benefits of using React, often described as a "black box" for the way it abstracts away many details from developers. We also delve into the intriguing world of Microfrontends, where Florian provides a comprehensive overview of this approach, discussing its practical implementation and the organizational shifts it can entail.Additionally, Florian introduces his new book, "The Art of Microfrontends," and shares insights on how to manage complex front-end projects more efficiently. Whether you're a seasoned developer or new to the ecosystem, this episode offers a wealth of knowledge and practical advice to enhance your development practices.So, tune in for an insightful journey through the realms of React and Microfrontends, and get ready to elevate your coding game!Become a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

24 Tammi 53min

React Component Tests for Humans with Miroslav Nikolov - RRU 282

React Component Tests for Humans with Miroslav Nikolov - RRU 282

On this episode of React Round Up we chatted with Miroslav Nikolov, a UI developer at one.com, about his approach to unit testing React components. Miroslav discussed writing components in a human-friendly way, using the library UnexpectedJS. We also talked about Miroslav’s blog, including how he got started with it, and some of the tools he used, like Gatsby and Mailchimp. This is a great episode if you’re looking to learn more about how to approach unit testing in React.Linkswebup.org/blog | Miroslav NikolovUnexpectedJSReact Component Tests for Humans | CSS-TricksmailchimpSubstackPicksMiroslav- erikras.comMiroslav- Application State Management with ReactPaige- Tom Clancy's | Jack RyanTJ- DREAM SPORT Bike Computer Bicycle Speedometer and Odometer 16-Function Wired Bike Computer WaterproofBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

8 Tammi 39min

Run NextJS and Node in the Browser ft. Eric Simons - RRU 281

Run NextJS and Node in the Browser ft. Eric Simons - RRU 281

Eric Simons joins the round-up to discuss the latest advancements made by StackBlitz that enables you to run NodeJS in the browser. Eric expands that to the work they've done with the NextJS team to run NextJS in the browser without the need to have a server in the background.LinksIntroducing WebContainers: Run Node.js natively in your browserStackBlitzStackBlitzEricSimons – StackBlitzTwitter: Eric Simons ( @ericsimons40 )PicksEric- ViteJack- WestworldPaige- Elgato Wave:3TJ- Podcast from The VergeBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

1 Tammi 47min

All Things Voice Recognition and JavaScript with Ian Lavery - RRU 280

All Things Voice Recognition and JavaScript with Ian Lavery - RRU 280

Returning guest, Ian Lavery from Picovice.ai, joins the hosts to talk all things voice recognition. He dives into new languages the company has tackled over the last year (and what languages it plans to tackle next year), how they train their models, and how Picovoice is actually running speech recognition in the browser instead of in the cloud, making things like captioning live streams and real-time chats possible with some of its newer tech Cheetah and Leopard.He also shares how he wrote a simple podcast transcription app using Picovoice and Express.js, in addition to Picovoice boasting specific SDKs for React, Angular and Vue.Listen to Ian's first appearance on RRU here where he and the panel went deep into the specifics of voice recognition like security and privacy, understanding it in general, and using it sans big cloud providers.Sponsors"Waldo, who helps with Android testing"Chuck's Resume TemplateDeveloper Book Club starting with Clean Architecture by Robert C. MartinBecome a Top 1% Dev with a Top End Devs MembershipLinksLinkedIn: Ian LaveryIan Lavery - MediumTwitter: @AiPicovoicePicksIan - Mixpanel: Product Analytics for Mobile, Web, & MorePaige - Star Trek: Lower Decks - WikipediaTJ - The Great British Bakeoff seriesBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

25 Joulu 202445min

React Ecosystem: Libraries, Tools, and Third-Party Integrations - RRU 279

React Ecosystem: Libraries, Tools, and Third-Party Integrations - RRU 279

In today's episode, Lucas and Peter dive deep into the world of front-end frameworks with a captivating discussion featuring PRANTA Dutta, a seasoned React Native developer. Pranta shares his journey transitioning from Vue to React, highlighting both the challenges and advantages of React's manual configurations and rich third-party ecosystem. They explore the contrasts between frameworks like React, Angular, and Flutter, delving into the trade-offs between their built-in features and flexibility. From the complexities of using Flutter's custom canvas painting to the streamlined utilities for notifications and Firebase, we cover it all. They also tackle the ongoing debate of native versus hybrid mobile app development, with insights into the Kotlin Multiplatform project and the importance of choosing the right tools based on project needs.Join them as they unravel the intricacies of React's success and shortcomings, discuss the merits of design patterns in both Flutter and React, and examine the responsibilities developers hold in shaping their applications. Stay tuned for a valuable conversation packed with industry insights and practical examples!LinksWhy React Won the Front-End RaceSocialsLinkedIn: PRANTA DuttaBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

18 Joulu 202454min

Error Reporting and Bug Monitoring with James Smith - RRU 278

Error Reporting and Bug Monitoring with James Smith - RRU 278

In this episode of React Round Up we chatted with James Smith from Bugsnag. We talked about the importance of error monitoring and reporting, and how to actually implement those workflows in your production apps. James shared a number of tips for React developers, like what are the most common errors and how you can help prevent them (hint: linters help a lot). We also got into mobile, and what developers can do to protect against third-party SDK errors. Picks TJ - https://www.amazon.com/What-Doesnt-Kill-Environmental-Conditioning James - Fall GuysBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

11 Joulu 202444min

How to Structure Your React Projects - RRU 277

How to Structure Your React Projects - RRU 277

Akash Joshi Is a frequent blogger across many of the larger blogs across the internet.He joins the Round Up to share his opinions on how you should put your React applications together as well as some tips on where you shouldn't put files and where you should avoid putting specific types of files.Some of this is inspired by projects like Next.js and others by his own experience. Paige and TJ chime in with their experience to help provide more context to the conversation.LinksLearn Structuring React Projects with a Dogs App [⚛ + 🐶]A Better Way to Structure React ProjectsImproving my OSS library and taking steps towards improving my YT qualityAkash JoshiThe Writing Dev Akash Joshi - thewritingdev - YouTubeTwitter: Akash ( @thewritingdev )PicksAkash- Lapel MicrophonePaige- Harney & Sons Earl Grey Loose Leaf TeaTJ- Kombucha TeaBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

4 Joulu 202435min

Building Component Libraries with Kathryn Grayson Nanz - RRU 276

Building Component Libraries with Kathryn Grayson Nanz - RRU 276

Senior Frontend Engineer Kathryn Grayson Nanz joins the React Round Up team to talk about all things component libraries. Kathryn shares her experiences building not one but two component libraries, as well as tips and tricks on the benefits of shared libraries, how to get buy in from product and developer teams, the best way to set up libraries and keeping them up-to-date. She also shares pitfalls to try and avoid when getting started with building a new library. Definitely a good listen for anyone debating whether an existing library or a brand new, custom one is the way to go for a project.LinksUI audit background from Brad FrostStorybookBubbleUphttp://kgrayson.com/PicksTJ - StravaPaige - Tresanti Standing DeskKathryn - NotionKathryn - RocketbookBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

27 Marras 202448min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
psykopodiaa-podcast
rss-rahapodi
ostan-asuntoja-podcast
mimmit-sijoittaa
pomojen-suusta
rss-bisnesta-bebeja
rss-sisalto-kuntoon
rss-seuraava-potilas
taloudellinen-mielenrauha
rss-porssipuhetta
rss-lahtijat
rss-startup-ministerio
rss-paasipodi
pari-sanaa-lastensuojelusta
bakkari-tarinoita-tapahtumien-takahuoneista
rss-markkinointiradio
rss-karon-grilli
rss-podcast-podcasteista
rss-yritys-ja-erehdys