RRU 037: Make Backend Devs Jealous of Your Test Suite with Carly Litchfield
React Round Up13 Nov 2018

RRU 037: Make Backend Devs Jealous of Your Test Suite with Carly Litchfield

Panel:
  • Nader Dabit
  • Lucas Reis
  • Justin Bennett
Special Guests: Carly Litchfield In this episode, the panelists talk with Carly Litchfield who is a Full-stack engineer of React and React Native. The panel and Carly talk about frontend and backend developing and the issues that teams could face day-in and day-out. Listen to today’s episode to hear about that and much more! Show Topics: 0:00 – Kendo UI 0:30 – Nader: Welcome! Our panel is Justin, Lucas, myself, and our guest is Carly. Welcome to the show! Thanks for joining us. Introduce yourself please. 0:56 – Carly: I am a fullstack engineer at a company called Zocdoc. I have been there for 4 years, and we use C# framework. 1:17 – Nader: C# interesting! 1:26 – Nader: You can do game development and other stuff. 1:33- Carly: I haven’t gotten into game development at all, just using C# for web development. 1:50 – Nader. 1:55 – Carly. 2:08 – Nader: The topic for today is: being a frontend developer and a team that is mostly focused on backend. Also, other topics with testing if we have time. How did you get into web development? 2:32 – Carly goes into detail about how she got into web development. 5:02 – Carly: I have worked with React Native, too. 5:22 – Nader: That is my favorite thing to work with (React Native). 5:27 – Panel: Everyone was learning about this new domain and this frontend domain. How was the knowledge spread? How was it spread throughout the company? 5:50 – Carly: One of the people someone that was on this 3 – person team (Thomas) and he went around to anyone who knew React. He made a lot of tooling. He made a lot of configuration libraries. You’d have your NPM integration like everyone else. It was cool to hook it into our servers. It was crucial to help with adoption. Those libraries aren’t being well maintained and it’s causing some pain. 7:32 – Panel: I remember this one case when I was working with an engineer and he was working on backend stuff. He was like I don’t understand here is JSS and JavaScript. Did you have those cultural differences? 8:27 – Carly: Yeah, definitely. You will see a thousand two-thousand lines that are written by us and it’s impossible to know how it hooks-up, etc. It’s painful to work with and some of the internal tooling nobody is updating. That served a forcing mechanism b/c we built tons of the frontend that it’s so complicated and we are paralyzed. That served us b/c frontend is hard and we just can’t go plopping around wherever we want. That’s how they tried to use Backbone. We never hired a specific frontend engineer. We just kept hiring backend to learn frontend. It’s harder to hire someone to avoid those mistakes. They will have to learn the hard way, where a Senior Developer can help. Even our Backbone apps were heavy and hard to work with. At that time we thought we were going to go to React. We thought we could hire someone with true frontend experience. We started an interview process and hard to get off the ground. We have gotten a lot better b/c we have Senior and Principle engineers to help. 12:12 – Panel: This isn’t easy and this is hard. Building UIs are extremely difficult. 13:06 – Carly: I have an old manager that posted a quote...that just shows how much things are changing. These are advanced strategies. On the backend you have all of these services and go to AWS. However, on the frontend the problems aren’t solved, yet. WE don’t have a perfect answer. A lot of the dynamics are interesting and the right answers are yet to be found. 14:32 – Panel: I think that in some ways, an application we are finding better ways with static websites and blogs through the WordPress model. We are finding practices to enable people to build intricate things. 15:07 – Panel: I used C++ in the beginning of my career. I use a framework called QT. QT is good to building native UIs, but it’s extremely complicated and difficult. And thinking about that from the idea of building not only a UI, but also...we are essentially using tools that aren’t supposed to be used in the way they were designed. 16:46 – Carly: I agree. When I was using style components at the beginning – after you do it for a while it’s not weird anymore. It’s great not to have to reuse things. I hear a lot of people concerned with these separations, but maybe they were 3 separate concerns. Maybe one component is one concern, if you will. 17:59 – Panel: I agree. If you look at the page model vs. the web model...you want a button to look like THAT button. You want them to look the same, it’s a component or an app. Maybe if you have a Wikipedia page where you have headers and sections, the CSS model makes sense on that particular domain, but with application it’s so complicated. I am a fan of cell components, and... Things are getting better. Another topic – we are in this frontend world and one big problem with the old days was reliability. You talked a lot about testing in the frontend. Let’s talk about testing in your professional life. 19:48 – Carly: I moved slowly into backend, and it’s comfortable that you knew you weren’t going to break anything. This testing stuff is great and I actually love it. We need to figure it out on the frontend, too. I built a bunch of tools that doctors use. We started thinking about what can we do to make the frontend more testable. 21:40 – Panel: I call that: Layer Oriented Design. 21:51 – Carly: When we were on Backbone we used this screen-shot testing framework. We obviously should be focusing on how we made this app rather than how do we test frontend code. But we did it. You could have a Backbone view... 22:43 – Advertisement – FRESH BOOKS! 23:47 – Nader: How would you change the pictures – were you running it through what? 24:02 – Carly: An array of pixel colors. 24:10 – Carly: It was cool! We called it Lena. We used it for a year or so and it caught some bugs and it did other things. We built Percy and Storybook. We are ahead of the game with that. In general that is what we have moved to instead. 25:30 – Panel: What is Percy? 25:37 – Carly: It will render your components, then it will grab...and every time you push code it will compare the old/new screenshot. You can do mobile stuff, too, which is awesome. 26:25 – Panel: When I saw the Percy tests – I thought: this makes a difference! 26:48 – Carly: How do you know if this random stuff matters? 27:15 – Panel: It makes a huge impact. Percy can give it to you and easier to review code that has visual changes. If you added a border and you can see all the red sea of change, so let’s use a border box, etc. It’s really mind-blowing! They have a GitHub hook. If there are changes people have to improve. 28:22 – Panel: You mentioned it supporting a bunch of different browsers? What sort of context does Percy run in? Does it have a specific execution...? 28:44 – Carly: Options in Firefox and Chrome so far. People at Percy talk about cross-browsers and it will have a pipeline. It’s really hard to do. Who knows if it will come but we will see. 29:13 – Panel: How do we ensure that things are continuing to work across the browsers? Did we render anything that is completely broke? How do you do testing across browsers? 29:44 – Carly: Yeah, we use Browser Stack. We run Selenium IO. 31:12 – Nader: It sounds like you have great tools on the frontend. Nader asks a question. 31:28 – Carly: We have a fairly broken-up frontend. If someone changes something... Running all of those tests can get crazy. 32:11 – Panel: Cypress... Why did you decide on Cypress – what has been your experience with that? 32:35 – Carly: I have not yet figured out a good debugging experience, and I don’t know how you guys are doing it? It’s impossible to debug and it’s not a pleasant experience. I saw Cypress’ advertisement and you can see the difference. They highlight the target, etc. I had to try it! In just a little app that I have – I tested it there. I thought it was awesome b/c it will show you where it failed, etc. I had to get everyone on board and tried to persuade my team to use it. I used these slides and presented it, and it worked fine. It didn’t flake at all. People had to work with the tests and work with Cypress to get the feel for it. Everyone decided to use it, too. 35:16 – Panel: The spread of knowledge and it goes back to the beginning. What is this secret group: Frontend Guild? 35:33 – Carly answers the question. 37:04 – Panel: How does knowledge spread happen in other companies? Such different companies and different scales – how does that happen? 37:23 – Panel: As your company grows, communication is definitely a hard thing to accomplish. At ARTSY we try to do different things. One of our principles is...we try to document everything that goes on. Document from a process-level, and other levels, too. We have working practice groups

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

Avsnitt(310)

Mastering Component Reusability with  Gilad Shoham - RRU 251

Mastering Component Reusability with Gilad Shoham - RRU 251

Gilad Shoham is a developer and open-source leader at Bit. They dive deep into the world of software development. They share insights on the shift from building R&D structures around applications to focusing on components. Discover the philosophy and methodology behind the transformation of feature development, and explore the technology's language-agnostic nature with specific language features. Alongside discussions about component lifecycles and versioning, learn about the challenges and potential solutions of using design systems, as well as a new type of CI system aimed at component-level testing and propagation of changes. Join them as they explore the plans for supporting non-JavaScript languages and delve into cutting-edge developments in component reuse, speed of development, and consistency.SponsorsChuck's Resume TemplateDeveloper Book Club Become a Top 1% Dev with a Top End Devs MembershipSocial MediaUnvoidLinkedIn @unvoidweb https://www.linkedin.com/company/unvoidwebInstagram @unvoidweb https://www.instagram.com/unvoidwebLucas PaganiniYouTube @lucaspaganiniweb https://youtube.com/@lucaspaganiniwebLinkedIn @lucaspaganiniweb https://www.linkedin.com/in/lucaspaganiniwebTwitter @lucaspaganini https://twitter.com/LucasPaganiniInstagram @lucaspaganini https://www.instagram.com/lucaspaganiniChris FrewinGitHub @princefishthrower https://github.com/princefishthrowerBlog Chris Frewin https://chrisfrew.in/Gilad ShohamLinkedIn @GiladShoham https://www.linkedin.com/in/shohamgilad/Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

20 Mars 202455min

Exploring Functional Programming: Tools, Techniques, and Industry Insights - RRU 250

Exploring Functional Programming: Tools, Techniques, and Industry Insights - RRU 250

Lucas, Peter, and Chris delve into a fascinating discussion about functional programming, its application in the industry, and personal experiences working with related tools and technologies. From exploring the knowledge gap in functional programming to sharing anecdotes about learning new languages, they provide valuable insights into the world of functional programming. They also touch on the challenges and benefits of adopting functional programming techniques in development, along with recommendations for resources and tools in this space. Join them as they embark on a deep dive into the world of functional programming.SponsorsChuck's Resume TemplateDeveloper Book Club Become a Top 1% Dev with a Top End Devs MembershipLinksFunctional Programming Made EasierCode VideoSocial MediaUnvoidLinkedIn @unvoidweb https://www.linkedin.com/company/unvoidwebInstagram @unvoidweb https://www.instagram.com/unvoidwebLucas PaganiniYouTube @lucaspaganiniweb https://youtube.com/@lucaspaganiniwebLinkedIn @lucaspaganiniweb https://www.linkedin.com/in/lucaspaganiniwebTwitter @lucaspaganini https://twitter.com/LucasPaganiniInstagram @lucaspaganini https://www.instagram.com/lucaspaganiniChris FrewinGitHub @princefishthrower https://github.com/princefishthrowerBlog Chris Frewin https://chrisfrew.in/Peter OsahLinkedIn @peterosah https://www.linkedin.com/in/peter-osah-744118179/Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

13 Mars 202446min

Exploring Jotai: Atomic State Management in React - RRU 249

Exploring Jotai: Atomic State Management in React - RRU 249

Mohammad Bagher Abiyat is a senior full-stack developer & consultant. He is the co-founder of XQuad and Pheno Agency. They engage in a detailed discussion about Jotai, a library designed for atomic state management in React. They also delve into comparisons with established state management libraries like Redux, exploring the intricacies of Jotai's organization and architecture.Whether you're a seasoned developer or a tech enthusiast, this episode promises to deliver valuable insights and thought-provoking discussions on the evolving landscape of state management in React applications.SponsorsChuck's Resume TemplateDeveloper Book Club Become a Top 1% Dev with a Top End Devs MembershipLinksJotaiSocial MediaUnvoidLinkedIn @unvoidweb https://www.linkedin.com/company/unvoidwebInstagram @unvoidweb https://www.instagram.com/unvoidwebLucas PaganiniYouTube @lucaspaganiniweb https://youtube.com/@lucaspaganiniwebLinkedIn @lucaspaganiniweb https://www.linkedin.com/in/lucaspaganiniwebTwitter @lucaspaganini https://twitter.com/LucasPaganiniInstagram @lucaspaganini https://www.instagram.com/lucaspaganiniChris FrewinGitHub @princefishthrower https://github.com/princefishthrowerBlog Chris Frewin https://chrisfrew.in/Peter OsahLinkedIn @peterosah https://www.linkedin.com/in/peter-osah-744118179/Mohammad Bagher AbiyatGitHub Mohammad Bagher Abiyat @Aslemammad https://github.com/AslemammadAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

28 Feb 202437min

Material UI Matters: Unpacking the Flexibility and Accessibility of the Library - RRU 248

Material UI Matters: Unpacking the Flexibility and Accessibility of the Library - RRU 248

Dmitriy Kovalenko is a software engineer. They explore the practical considerations and implications of using UI systems such as Material UI and Radix for various web applications. They engage in insightful discussions about the delicate balance between time, money, and personal preference when selecting a UI system and the potential future concerns for frameworks, shedding light on the challenges and opportunities in the UI development landscape. Join them as they unravel the complexities of UI customization, accessibility, and the essential need for flexibility in choosing the right UI framework.SponsorsChuck's Resume TemplateDeveloper Book Club Become a Top 1% Dev with a Top End Devs MembershipLinksMaterial-uiSocial MediaUnvoidLinkedIn @unvoidweb https://www.linkedin.com/company/unvoidwebInstagram @unvoidweb https://www.instagram.com/unvoidwebLucas PaganiniYouTube @lucaspaganiniweb https://youtube.com/@lucaspaganiniwebLinkedIn @lucaspaganiniweb https://www.linkedin.com/in/lucaspaganiniwebTwitter @lucaspaganini https://twitter.com/LucasPaganiniInstagram @lucaspaganini https://www.instagram.com/lucaspaganiniChris FrewinGitHub @princefishthrower https://github.com/princefishthrowerBlog Chris Frewin https://chrisfrew.in/Peter OsahLinkedIn @peterosah https://www.linkedin.com/in/peter-osah-744118179/Peter OsahGitHub Dmitriy Kovalenko @dmtrKovalenko https://github.com/dmtrKovalenkoAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

21 Feb 202445min

Gherkin with Chris Frewin from InClub - RRU 247

Gherkin with Chris Frewin from InClub - RRU 247

Today we talk with Chris Frewin, a full-stack software engineer at private experience startup InClub, located in Zurich, Switzerland. Involved with all coding aspects, from the back-end, mobile app, CMS, and everything in-between, we learn about the challenges of being a solo developer at a startup. We learn a lot about Gherkin, the format for cucumber specifications.SponsorsChuck's Resume TemplateRaygun - Application Monitoring For Web & Mobile AppsDeveloper Book Club startingLinksHomeGherkin SyntaxJest10 Minute Tutorial - Cucumber DocumentationDetoxcypress.ioThe Clean Code BlogAdvanced Code Organization Patterns: The Case For One Function Per FileOne Year as the Chief Technology Officer at InClubStructure and Interpretation of Test Cases - Kevlin HenneyChris' Full Stack BlogPicksChris- The Lean Startup: How Today's Entrepreneurs Use Continuous Innovation to Create Radically Successful BusinessesChris- The Complete Isaac Asimov's Foundation Series Books 1-7 (Foundation, Foundation and Empire, Second Foundation, Foundation's Edge, Foundation and Earth, Prelude to Foundation, Forward the Foundation)Jack- Millennium Falcon™ 75192 | Star Wars™ | Buy online at the Official LEGO® Shop USPaige- Amazon.com : plastic wrap dispenser with cutterTJ- Amazon.com: Amazon GoAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

7 Feb 202436min

Assessing UI Libraries for Web Development Flexibility and Accessibility - RRU 246

Assessing UI Libraries for Web Development Flexibility and Accessibility - RRU 246

Chris, Lucas, and Peter dive into the world of UI libraries and the important considerations when selecting one for web development projects. They discuss the pros and cons of using popular libraries, emphasizing the importance of accessibility, internationalization, and long-term implications when making a choice. They also share their preferred libraries and promote their projects, providing valuable insights for developers navigating the diverse landscape of UI libraries. Stay tuned for an engaging discussion on the challenges and best practices of utilizing UI libraries for web development. SponsorsChuck's Resume TemplateDeveloper Book Club Become a Top 1% Dev with a Top End Devs MembershipSocial MediaUnvoidLinkedIn @unvoidweb https://www.linkedin.com/company/unvoidwebInstagram @unvoidweb https://www.instagram.com/unvoidwebLucas PaganiniYouTube @lucaspaganiniweb https://youtube.com/@lucaspaganiniwebLinkedIn @lucaspaganiniweb https://www.linkedin.com/in/lucaspaganiniwebTwitter @lucaspaganini https://twitter.com/LucasPaganiniInstagram @lucaspaganini https://www.instagram.com/lucaspaganiniChris FrewinGitHub @princefishthrower https://github.com/princefishthrowerBlog Chris Frewin https://chrisfrew.in/Peter OsahLinkedIn @peterosah https://www.linkedin.com/in/peter-osah-744118179/Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

31 Jan 202433min

Unveiling 𝗥𝘅𝑓𝑥: Concurrency Control and Error Handling in User-Centered Development- RRU 245

Unveiling 𝗥𝘅𝑓𝑥: Concurrency Control and Error Handling in User-Centered Development- RRU 245

Dean Radcliffe is a senior software engineer at Optum. They explore the groundbreaking new library 𝗥𝘅𝑓𝑥, designed to revolutionize the handling of asynchronous effects in code for enhanced user experience and code stability. They lead a discussion on the significance of cancellation, concurrency, and error recovery for user experience and code stability, drawing analogies to a circuit breaker panel for managing async effects in code. They delve into practical implementations, the framework-agnostic nature, and the potential of 𝗥𝘅𝑓𝑥 in simplifying reactivity features within React.SponsorsChuck's Resume TemplateDeveloper Book Club Become a Top 1% Dev with a Top End Devs MembershipLinksRxfxSocial MediaUnvoidLinkedIn @unvoidweb https://www.linkedin.com/company/unvoidwebInstagram @unvoidweb https://www.instagram.com/unvoidwebLucas PaganiniYouTube @lucaspaganiniweb https://youtube.com/@lucaspaganiniwebLinkedIn @lucaspaganiniweb https://www.linkedin.com/in/lucaspaganiniwebTwitter @lucaspaganini https://twitter.com/LucasPaganiniInstagram @lucaspaganini https://www.instagram.com/lucaspaganiniChris FrewinGitHub @princefishthrower https://github.com/princefishthrowerBlog Chris Frewin https://chrisfrew.in/Peter OsahLinkedIn @peterosah https://www.linkedin.com/in/peter-osah-744118179/Dean RadcliffeGitHub @deanrad https://github.com/deanradTwitter @@DeanDevDad https://twitter.com/DeanDevDadAdvertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

24 Jan 20241h 11min

React Tooling and Technology Stack Diversity - RRU 244

React Tooling and Technology Stack Diversity - RRU 244

Chris, Lucas, and Peter engage in a deep technical discussion about package managers, testing tools, and technology preferences in React projects. The conversation emphasizes the extensive tech stacks used in React projects and the importance of functional programming and TypeScript. Additionally, they share valuable insights on UI libraries, JavaScript packages, and software and design team extension services, hinting at the potential for a future follow-up episode dedicated to front-end technologies. Whether you're a seasoned developer or a newcomer to the field, this episode offers in-depth insights into the ever-evolving world of front-end development.SponsorsChuck's Resume TemplateRaygun - Application Monitoring For Web & Mobile AppsDeveloper Book Club startingSocial MediaUnvoidLinkedIn @unvoidweb https://www.linkedin.com/company/unvoidwebInstagram @unvoidweb https://www.instagram.com/unvoidwebLucas PaganiniYouTube @lucaspaganiniweb https://youtube.com/@lucaspaganiniwebLinkedIn @lucaspaganiniweb https://www.linkedin.com/in/lucaspaganiniwebTwitter @lucaspaganini https://twitter.com/LucasPaganiniInstagram @lucaspaganini https://www.instagram.com/lucaspaganiniChris FrewinGitHub @princefishthrower https://github.com/princefishthrowerBlog Chris Frewin https://chrisfrew.in/Peter OsahLinkedIn @peterosah https://www.linkedin.com/in/peter-osah-744118179/Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

17 Jan 202450min

Populärt inom Business & ekonomi

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