RRU 037: Make Backend Devs Jealous of Your Test Suite with Carly Litchfield
React Round Up13 Marras 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.

Jaksot(310)

Building a Chatbot or Voicebot with Dialogflow in React ft. Victory Nwani - RRU 275

Building a Chatbot or Voicebot with Dialogflow in React ft. Victory Nwani - RRU 275

Victory Dumebi Nwani joins the round up to discuss integrating the Dialogflow from Google Cloud into your application to manage voice and chat capabilities for your application.Victory dives into the stack he used to put together a functioning app using that offering from Google.LinksIntegrating A Dialogflow Agent Into A React ApplicationDialogflow DocumentationA brief introduction to Chatbots with DialogflowDialogflow pricingLinkedIn: Victory NwaniGitHub: Nwani Victory ( vickywane )Twitter: Iamnwani ( @iamnwani01 )PicksJack- Resident Evil VillagePaige- Mario KartTJ- Toto BidetVictory- AWS CodeDeployBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

20 Marras 202440min

Transitioning a React Codebase from JSX to TypeScript ft. Priscila Oliveira and Mark Story  - RRU 274

Transitioning a React Codebase from JSX to TypeScript ft. Priscila Oliveira and Mark Story - RRU 274

Priscila Oliveira and Mark Story join the panel to discuss the recent transition at Sentry from vanilla JavaScript to React and TypeScript.The show starts out with the panelists nerding out over Sentry and how they use it, then they dive into the code transition and the things that they learned from their conversion to TypeScript.LinksSlow and Steady: Converting Sentry’s Entire Frontend to TypeScriptTwitter: Sentry ( @getsentry )Twitter: Mark Story ( @mark_story )Twitter: Priscila Oliveira ( @priscilawebdev )PicksJack- Power of saying "No"Mark- GitHub | neovim/nvim-lspconfigMark- GitHub | glepnir/lspsaga.nvimPriscila - GitHub | clauderic/dnd-kitTJ- DivvyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

14 Marras 202439min

Web Workers & Multi-threaded JavaScript with Majid Hajian - RRU 273

Web Workers & Multi-threaded JavaScript with Majid Hajian - RRU 273

Despite JavaScript being a single-threaded language, you can now leverage multi-threaded computing thanks to modern browser features such as web workers, workouts and service workers. In this show, Majid explains how these features work and what problems they solve. We also discuss the strategies you can use to introduce them to production codebases and give your users a much more enjoyable experience on your web app.LinksComlink makes WebWorkers enjoyableWorkboxFigmaThe AssemblyScript BookHoudini: Demystifying CSSPicksMajid - Follow Majid on Twitter > @mhadailyMajid - Deep Work - Cal NewportCarl - Off the Main Thread | The Web Platform PodcastCharles  - Natural Goat Milk Soaps for Healthy Skin — Goat Milk StuffCharles  - ‎Flip Timer & stopwatch on the App StoreCharles - Desktop tripodPaige - DJI Phantom 4 DronePaige - Ozark show on NetflixTJ - Goat-2-Meeting — Sweet FarmBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

6 Marras 20241h 1min

Creating Gatsby Source Plugins with Dillion Megida - RRU 272

Creating Gatsby Source Plugins with Dillion Megida - RRU 272

In today’s episode of React Round Up, Nigerian-based developer Dillion Megida explains how you can create source plugins for Gatsby, the static site generation tool. Gatsby can be used to create landing pages, blogs and e-commerce sites, among other things, and it contains a vast plugin ecosystem that helps developers avoid reinventing the wheel when creating their applications. Dillion also shares his experience blogging for websites such as LogRocket, FreeCodecamp and Dev.to and talks us through his workflow and how he comes up with new article ideas.LinksHow to Build a Gatsby Source Plugin, using Hashnode as an examplePaige NiedringhausGatsby Plugin LibraryTheWebFor5Web sharing APIA deep dive into queues in Node.jsgatsby-source-mediumHashnodeTwitter: Dillion Megida ( @iamdillion )Dillion Megida - Frontend Engineer and Technical WriterPicksCarl- BBQ tips Carl- JAMstacked newsletter Dillion- CypressPaige- Battery Chargers - OptiMateTJ- RemotionTJ- Remotion demoBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

30 Loka 202450min

Mastering Event Sourcing with Redux and Back-End Insights - RRU 271

Mastering Event Sourcing with Redux and Back-End Insights - RRU 271

In this episode, they dive deep into the world of event sourcing with special guest, Luis Galeas, CEO and founder of Ambar. Lucas Paganini, along with Chris and Peter explore the intricacies of event sourcing, comparing front-end implementations using Redux and back-end approaches, and highlighting the benefits, drawbacks, and practical applications.Luis shares his expertise on event sourcing, discussing how events act as the primary source of truth and the importance of understanding system boundaries for scalability. The conversation covers essential tools, frameworks, and strategies to effectively implement event sourcing in both your development processes and organizational strategies.Whether you're new to event sourcing or looking to deepen your understanding, this episode offers invaluable insights and practical advice to help you navigate this complex but rewarding architecture. Tune in to learn more about how event sourcing can transform your approach to managing application changes, ensuring scalability, auditability, and minimizing regressions. Don't miss out on this opportunity to hear from experts in the field and discover how to leverage event sourcing for your next big project!SocialsLinkedIn: Luis P Galeas Become a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

24 Loka 202443min

Is Working at a Large or Small Company Better for Your Career? - RRU 270

Is Working at a Large or Small Company Better for Your Career? - RRU 270

This week the panelists dive into their work backgrounds and discuss the ins and outs of working at small and large companies. They aim specifically at whether one is better than the other for building a career.PicksJack- Virtual CoffeePaige- Raspberry Pi Beginner's Guide 4th EditionTJ- RocketBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

16 Loka 202447min

React Hook Form with Vijit Ail - RRU 269

React Hook Form with Vijit Ail - RRU 269

React Hook Form is a terrific way to manage state in, from, and through, your forms in React. Since React itself doesn't give you much to manage forms, React Hook Form steps into the gap to help you manage your forms and provide features and functionality to your forms.Our guest, Vijit Ail worked through several of the options out there for managing states and walks the panel through his decision to use React Hook Form.LinksReact Hook FormRedux FormFormikBundlePhobiaTypeORMNestJSPicksJack- Nx: Smart, Extensible Build FrameworkTJ- Super Mario 3D WorldVijit- Microservices with Node JS and React | UdemyBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

9 Loka 202432min

Clean Code with Tyler Hawkins - RRU 268

Clean Code with Tyler Hawkins - RRU 268

In today’s show, frontend engineer Tyler Hawkins shares his tips on how you can write clean, maintainable and readable code. Using the examples from his article on the same subject, he explains the importance of using clean code principles to make it easier for different developers to collaborate on a codebase. Tyler also discusses how you can better structure your tests and have more confidence in how they are written.LinksReact Clean CodeUse ternaries rather than && in JSXGitHub | getify/You-Dont-Know-JSClean Code With Unit TestsTyler Hawkins - Web PortfolioTyler Hawkins - MediumGitHub: Tyler Hawkins ( thawkin3 )LinkedIn: Tyler HawkinsTwitter: Tyler Hawkins ( @thawkin3 )PicksCarl- Time away from the screensJack- GitHub | pmndrs/jotaiTyler- Being Wrong: Adventures in the Margin of Error by Kathryn SchulzBecome a supporter of this podcast: https://www.spreaker.com/podcast/react-round-up--6102072/support.

2 Loka 202452min

Suosittua kategoriassa Liike-elämä ja talous

sijotuskasti
psykopodiaa-podcast
mimmit-sijoittaa
rss-rahapodi
puheenaihe
ostan-asuntoja-podcast
rss-rahamania
hyva-paha-johtaminen
pomojen-suusta
rss-startup-ministerio
rss-seuraava-potilas
rss-paasipodi
taloudellinen-mielenrauha
rss-lahtijat
rss-bisnesta-bebeja
herrasmieshakkerit
oppimisen-psykologia
rss-myyntipodi
rss-doulapodi
rss-markkinointitrippi