Share

ConTejas Code
Artem Zakharchenko: How to Write Epic Automated Tests, Mock ServiceWorker, Open Source
Don't forget to share and subscribe. Follow along on π at https://x.com/tejaskumar_
Links
- Codecrafters (sponsor): https://tej.as/codecrafters
- THAT Conference (partner): https://www.thatconference.com
- Artem on π: https://x.com/kettanaito
- Epic Web: https://epicweb.dev
- The Golden Rule of Assertions: https://www.epicweb.dev/the-golden-rule-of-assertions
- The True Purpose of Testing: https://www.epicweb.dev/the-true-purpose-of-testing
Takeaways
- Automated testing is crucial for writing better and more reliable software.
- Testing helps developers describe the intention behind the code and ensure that the implementation meets that intention.
- Starting with a minimal functional prototype and then writing tests to verify its behavior is a practical approach to testing.
- Mocking is a technique that helps establish testing boundaries and allows developers to focus on specific behaviors in their tests. Mocking allows you to model different scenarios and create the desired context for tests.
- The testing setup phase is crucial and often underappreciated.
- The golden rule of assertion states that a test should only fail if the intention behind the system is not met.
- Mock Service Worker (MSW) is an API mocking library that uses the Service Worker API to intercept requests and supports both browser and Node.js environments. Open source sustainability is challenging, but financial support from companies can make it more sustainable.
- MSW has gained financial support through programs and partnerships, allowing for further development and support for users.
- Concurrent testing support in MSW allows for better performance and avoids shared state issues.
- Async local storage is a powerful tool in Node.js that helps solve concurrency issues in testing.
- Setting limitations and principles for open source projects helps maintain focus and manage the scope.
- Saying no to contributions is important to maintain the project's vision and scope.
- Adding tests to projects, even small ones, can provide value and ensure reliability.
- The future of testing lies in making it more accessible and having a testing strategy in place.
- Balancing speed and quality in testing requires finding a minimal viable test suite that provides value.
- Automated testing is crucial for ensuring software works reliably in different circumstances.
- The future of testing involves making it more accessible and promoting its importance in software development.
Chapters
00:00 Artem Zakharchenko
08:13 The Importance of Automated Testing
15:37 Artem's Role at Epic Web and Testing Workshops
27:02 Future Plans for Epic Web and Workshops
28:45 Understanding Mocking and Mocking Strategies
31:51 Introduction to Mocking and Modeling Scenarios
33:43 The Broad Use Case of Mocking
35:20 Finding the Right Balance in Mocking
36:40 The Golden Rule of Assertion
39:19 Creation and Iterative Process of Mock Service Worker (MSW)
45:10 Adding Support for Node.js in MSW
52:47 Mocking WebSockets with MSW
01:04:54 Open Source and Sustainability
01:05:43 Supporting MSW
01:07:16 Solving Issues with MSW
01:08:22 Concurrent Testing Support
01:10:38 Using Async Local Storage
01:13:30 Strategies for Open Source Maintainers
01:14:27 Balancing Work-Life and Open Source
01:18:50 Saying No to Contributions
01:26:03 Balancing Speed and Quality in Testing
01:29:00 Adding Automated Testing to Projects
01:33:49 The Future of Testing
More episodes
View all episodes
Shivay Lamba: How to run secure AI anywhere with WebAssembly
01:33:49|Links- CodeCrafters (partner): https://tej.as/codecrafters- WebAssembly on Kubernetes: https://www.cncf.io/blog/2024/03/12/webassembly-on-kubernetes-from-containers-to-wasm-part-01/- Shivay on X: https://x.com/howdevelop- Tejas on X: https://x.com/tejaskumar_SummaryIn this podcast episode, Shivay Lamba and I discuss the integration of WebAssembly with AI and machine learning, exploring its implications for developers. We dive into the benefits of running machine learning models in the browser, the significance of edge computing, and the performance advantages of WebAssembly over traditional serverless architectures. The conversation also touches on emerging hardware solutions for AI inference and the importance of accessibility in software development. Shivay shares insights on how developers can leverage these technologies to build efficient and privacy-focused applications.Chapters00:00 Shivay Lamba03:02 Introduction and Background06:02 WebAssembly and AI Integration08:47 Machine Learning on the Edge11:43 Privacy and Data Security in AI15:00 Quantization and Model Optimization17:52 Tools for Running AI Models in the Browser32:13 Understanding TensorFlow.js and Its Architecture37:58 Custom Operations and Model Compatibility41:56 Overcoming Limitations in JavaScript ML Workloads46:00 Demos and Practical Applications of TensorFlow.js54:22 Server-Side AI Inference with WebAssembly01:02:42 Building AI Inference APIs with WebAssembly01:04:39 WebAssembly and Machine Learning Inference01:10:56 Summarizing the Benefits of WebAssembly for Developers01:15:43 Learning Curve for Developers in Machine Learning01:21:10 Hardware Considerations for WebAssembly and AI01:27:35 Comparing Inference Speeds of AI ModelsDevRel deep dive: what it is, how to do it, how to measure it
02:06:49|Links- Codecrafters (Partner): https://tej.as/codecrafters- Tejas on X: https://x.com/tejaskumar_- Mary Thengvall, The Business Value of Developer Relations: https://develocity.io/measuring-devrel-success-effective-metrics-for-impact/#:~:text=In%20a%20talk%20given%20at,5- Matthew Revell, βWhat is Developer Relations?β: https://developerrelations.com/guides/what-is-developer-relations/#:~:text=Most%20companies%20invest%20in%20DevRel,because%20they%20want%20to%20affect- Quinton Wall, Does Developer Relations Belong Under Marketing or Engineering?: https://www.linkedin.com/pulse/does-developer-relations-belong-under-marketing-engineering-wall-z9gic#:~:text=For%20early%20stage%20companies%2C%20Developer,the%20detriment%20of%20developer%20experience- Mike Stowe, A Brief History Of Developer Relations Programs: https://influitive.com/blog/brief-history-developer-relations-programs-developer-communities/#:~:text=When%20I%20joined%20Constant%20Contact,across%20one%20of%20these%20companies- R. Scott, Developer Relations: A Growth Engine from Day One: https://www.delltechnologiescapital.com/resources/devrel-day-one#:~:text=%E2%80%8DDeveloper%20Relations%20is%20at%20its,%E2%80%9D- Matt Bernier, The intersection of DevRel and Product Management: https://developerrelations.com/talks/intersection-dev-rel-product-management/#:~:text=The%20Barbican%2C%20London%2C%20UK- Develocity.io, Measuring DevRel Success: Effective Metrics for Impact: https://develocity.io/measuring-devrel-success-effective-metrics-for-impact/#:~:text=impact%20on%20user%20engagement%20and,2- Jake Prins, 10 Ways to Build a Developer Community: https://www.apideck.com/blog/ten-ways-to-build-a-developer-community#:~:text=in,seminar%2C%20or%20webinar- Francine Hardaway, DevRel: Marketing, Product Management, or Neither?: https://medium.com/influence-marketing-council/devrel-marketing-product-management-or-neither-77d6c4666f7f#:~:text=Most%20developer%20relations%20programs%20wrestle,sourced%20by%20DevRel%20are%20invaluableChapters00:00:00 Introduction00:02:28 The Core Thesis of DevRel00:12:41 History of DevRel: From Apple in the 80s to Today00:19:08 The Value of DevRel & Success Stories (Stripe, MongoDB)00:25:08 The Critical Role of the Feedback Loop00:27:03 The Danger of Ignoring DevRel Feedback00:34:33 Where DevRel Sits: Marketing vs. Product & Engineering00:37:22 The Gold Standard: A Product Engineer with a Megaphone00:49:37 Measuring DevRel Success: Beyond Vanity Metrics00:52:00 Key Metrics: Community, Satisfaction, & Monthly Active Developers (MAD)01:01:31 Practical DevRel: How to Build Community01:03:37 Practical DevRel: Content Strategy & "Carving the Turkey"01:06:50 Practical DevRel: Improving the Onboarding Experience01:11:00 Practical DevRel: Events, Public Speaking & Internal Advocacy01:17:20 Start of Q&A with Africa's DevRel Community01:18:02 Defining AI Engineering vs. Machine Learning01:20:01 Defining DevRel: It's High-Quality Customer Relations01:26:32 Q&A: Is Developer Experience (DX) the same as User Experience (UX)?01:29:14 Q&A: How AI is Changing UX/DX with Model Context Protocol (MCP)01:35:32 Q&A: Biggest Opportunities for DevRel in AI01:38:25 Q&A: Necessary Skills for AI DevRel (Communication is #1)01:44:22 Q&A: Where to Find Developers for New Niche Tools01:48:08 Q&A: What's Most Exciting in Tech Right Now?01:53:22 Q&A: Advice for New Developers in the AI Era (Build and Ship!)01:58:00 Q&A: How to Balance Technical Work with Community Management02:00:57 Q&A: How to Form Meaningful Professional Relationships02:05:56 ConclusionDev Agrawal: How to be notable, event sourcing, and SolidJS
01:46:11|Links- CodeCrafters (partner): https://tej.as/codecrafters- Dev on X: https://x.com/devagrawal09- Xolvio: https://xolv.io/- Tejas on X: https://x.com/tejaskumar_Previous Episodes- Taylor Desseyn - YouTube: https://www.youtube.com/watch?v=6l6GpkHNlZw - Spotify: https://open.spotify.com/episode/1xN7YeNpkCf4qJ3kUkVVuh - Apple: https://podcasts.apple.com/nz/podcast/taylor-desseyn-how-to-build-a-genuine-high-quality-network/id1731855333?i=1000684664112- Event Sourcing - YouTube: https://www.youtube.com/watch?v=VtmPTigdpos - Spotify: https://open.spotify.com/episode/32dmiUBZclkXNWT1YcUJHr - Apple: https://podcasts.apple.com/us/podcast/event-sourced-architecture-a-deep-dive/id1731855333?i=1000696976876SummaryWe discuss the journey of becoming a notable developer, the importance of intentional networking, and the role of content creation in building a professional presence. Dev shares insights from his experiences in DevRel, the challenges of the industry, and the significance of event sourcing in modern applications.We then discuss the intricacies of event sourcing, exploring its implications for software architecture, performance, and testing. The discussion highlights the importance of projections, caching, and the separation of command and query responsibilities (CQRS) in building efficient applications. Real-world applications, such as Git and Redux, are examined as examples of event sourcing in practice.Finally, we explore Solid.js and its comparison with React, focusing on fine-grained reactivity, the challenges of adopting new frameworks, and the evolution of web development practices. They explore the unique features of Solid.js, including its compiler and async signals, while discussing the broader implications for developers transitioning between frameworks. The conversation also touches on the importance of full stack development and the mindset required to excel in the field.Chapters00:00:00 Dev Agrawal00:04:16 Becoming Notable in Tech00:14:24 Intentional Networking and Building a Presence00:24:27 The Role of Content Creation00:34:29 DevRel Insights and Career Transitions00:44:05 Understanding Event Sourcing00:43:37 Caching and Performance in Event Sourcing00:48:42 Real-World Applications of Event Sourcing00:51:31 Command Query Responsibility Segregation (CQRS) Explained00:54:24 Event Sourcing in UI State Management00:57:25 Overcoming Resistance to Event Sourcing01:00:22 The Challenges of Transitioning to Event Sourcing01:04:34 Storing Events and Schema Management01:07:16 Testing with Event Sourcing01:08:51 Introduction to Solid.js and Its Advantages01:13:12 Understanding Fine-Grained Reactivity01:15:06 Challenges in Replacing React01:16:30 The Unique Model of Solid.js01:18:22 The Catch-22 of Learning React01:19:52 Comparing Fine-Grained Reactivity in Solid and React01:23:50 The Role of Solid's Compiler01:25:57 Exploring Solid.js 2.0 and Async Signals01:28:55 Server-Side Rendering and Async Signals01:35:08 Partial Pre-Rendering and Edge Workers01:37:41 Becoming a Full Stack DeveloperLu Wilson: How to Build an AI-Native Whiteboard for Everyone
01:09:13|Links- CodeCrafters (partner): https://tej.as/codecrafters- Lu on X: https://x.com/todepond- Lu on Bluesky: https://bsky.app/profile/todepond.com- Lu on YouTube: https://www.youtube.com/@todepond- tldraw: https://tldraw.com/- Make Real: https://makereal.tldraw.com/- tldraw computer: https://computer.tldraw.com/- Tejas on X: https://x.com/tejaskumar_SummaryWe talk with Lu Wilson, an engineer at tldraw: a startup focused on innovative whiteboard technology. Together, we discuss the evolution of tldraw, the impact of AI on creative workflows, and the importance of experimentation in tech development. Lu shares insights on their very interesting experiments like Make Real and the new tldraw Computer, emphasizing the need for user-friendly AI tools that empower everyone, not just programmers. The discussion also touches on building a culture of experimentation within teams and the future of AI in design and development.Chapters00:00 Lu Wilson04:12 Introduction to TL Draw and Lou Wilson's Work07:12 Exploring Make Real: AI and Canvas Integration10:07 The Evolution of TL Draw Computer12:56 User Experiences and Creative Applications15:57 Future Directions and Innovations in TL Draw19:06 AI Workflows: Democratizing Technology for Everyone35:16 The Evolution of Teal Draw's Features38:05 Challenges in Implementing Autocomplete41:23 Building a Future-Proof AI Module43:01 Understanding LLMs and Canvas Interaction45:52 Evaluating AI Performance on Canvas48:25 AI as a Collaborative Partner53:01 Fostering a Culture of Experimentation54:11 Balancing Innovation and Business GoalsSean Roberts: How to create better UX with AI Agent Experience (AX)
01:51:19|Links- Codecrafters (sponsor): https://tej.as/codecrafters- Agent Experience: https://agentexperience.ax- Arrazo: https://spec.openapis.org/arazzo/latest.html- Netlify: https://netlify.com- Sean on X: https://x.com/JavaSquip- Tejas on X: https://x.com/tejaskumar_SummaryThis episode dives deep into the emerging field of Agent Experience (AX), exploring how software agents, including LLMs, will interact with the web and online services. The conversation highlights the distinction between the "human web" and the "agent web," emphasizing the need for new approaches to ensure agents can effectively understand context and execute tasks.Key topics include contextual alignment protocols like MCP (Machine Context Protocol), and standards such as `llms.txt` and `agents.json`, alongside efforts like Arrazo, which aim to provide structured information and enable complex workflows for agents. A significant portion of the discussion focuses on the challenges of authentication for agents, moving beyond human-in-the-loop processes and complex systems like OAuth2 towards more agent-friendly, secure, and auditable solutions, possibly involving dedicated agent user identities.The dialogue also covers practical considerations like providing data to LLMs efficiently, the importance of API accessibility for agents, and the need for businesses to adapt to this new paradigm of interaction. Finally, the conversation underscores that AX is a rapidly evolving area, transitioning from theoretical concepts to practical applications, with a strong call for community collaboration to develop best practices and robust solutions for the future of agent-driven web interactions.Chapters00:00 Intro03:35 Exploring Agent Experience (AX) and Its Importance06:23 Understanding the Role of Model Context Protocol (MCP)09:22 The Principles of Great Agent Experience12:24 Agent Accessibility and Its Challenges15:34 Contextual Alignment: Enhancing Agent Interaction18:31 Human-Centric Design in Agent Experience21:23 The Future of AI and Agent Experiences24:25 Improving Human Accessibility Through Agentic Experiences27:29 Primitives of Agent Accessibility30:22 Avoiding Human in the Loop Patterns33:19 Authentication in an Agentic World38:34 Navigating API Token Strategies43:30 Contextual Alignment: The Next Frontier55:50 Understanding Agents vs. Bots01:00:19 Optimizing Contextual Alignment for Agents01:14:11 Understanding Website Infrastructure and Cost Implications01:14:37 The Role of LLMs in Web Navigation01:17:54 Quantifying ROI in Web Technologies01:19:43 Introduction to Arazo and Workflow Management01:24:26 Measuring Human vs. Agent Interaction01:30:28 The Emergence of Agent Experience (AX)01:38:09 Five Principles of Agent Experience (AX)Santosh Yadav: How to level up your career, health, and life
01:47:04|Links- CodeCrafters (partner): https://codecrafters.io/- Santosh's website: https://santoshyadav.dev/- Santosh on X: https://x.com/santoshyadavdev- "My Journey to Staff Engineer" by Santosh: https://www.santoshyadav.dev/blog/2025-03-29-my-journey-to-staff-engineer/- The Staff Engineer's Path: https://www.oreilly.com/library/view/the-staff-engineers/9781098118723/Previous episode with Santosh- Apple: https://podcasts.apple.com/us/podcast/santosh-yadav-how-open-source-changes-lives-angular/id1731855333?i=1000664702562&l=pt-BR- Spotify: https://open.spotify.com/episode/1qjaz4PCxEMwUKP2IyBSBv?si=d338dd633c764939- YouTube: https://www.youtube.com/watch?v=MqlBFtg8EtUSummarySanthosh Yadav discusses his promotion to Staff Engineer at Celonis, contrasting it with his previous experiences of leaving jobs rather than being promoted. He emphasizes that management is a "side step" not a "step up" from an Individual Contributor (IC) role. The conversation moves into why engineers often leave jobs after two years, the importance of finding fulfilling work, and how a colleague's comment ("planted the seed") and the book "Staff Engineer's Path" helped him pursue the promotion.A significant portion covers Santhosh's personal health journey after a Type 2 diabetes diagnosis, which led him to prioritize health, drop conference speaking, and take up running. He shares his progress from struggling with 3km to completing a half marathon, emphasizing listening to his body, proper gear, rest, and not comparing himself to others. This inspired him to launch devswhorun.dev to motivate other developers.Other topics include:- The value of validation and good managers.- Dealing with toxic work environments (advice: leave).- Productivity while working from home.- His podcast "This is Tech Talks" and interest in home automation.The core message: cherish what you have and the importance of health for sustainable impact.Chapters00:00:00 Santosh Yadav00:04:31 Introduction and Guest Welcome00:05:31 Career Progression and Promotion Journey00:11:36 The Importance of Staying in One Place00:15:21 Understanding Solonis and Its Impact00:19:29 The Role of a Staff Engineer00:24:29 The Value of Validation in Career Growth00:31:31 Balancing Health and Career00:39:44 Conclusion and Future Aspirations00:40:39 Fitness Journey and Personal Records00:41:31 The Impact of Niceness on Management00:45:25 Transforming Toxicity into Calmness00:50:25 Building Connections Beyond Work00:52:55 The Importance of Compassion in the Workplace00:54:39 Work from Home vs. Office Productivity00:57:59 Exploring AI and Home Automation01:07:37 The Evolution of Angular and Personal Health Journey01:10:11 Health Transformation and Running a Half Marathon01:16:38 The Journey of Personal Growth Through Running01:20:23 Understanding the Importance of Recovery and Rest01:22:32 Choosing the Right Gear for Running01:25:12 Leveraging Technology for Training and Recovery01:33:36 Community Building Through Shared Experiences01:36:16 Transforming Personal Challenges into Community ImpactSacha Greif: How to Understand Developers through Surveys
01:57:18|Links- Codecrafters (partner): https://tej.as/codecrafters- State of Devs survey: https://stateofdevs.com/en-US- Sacha's post on Dev.to: https://dev.to/sachagreif/how-the-devographics-surveys-are-run-2023-edition-1p6a\- Episode with Ujjwal Sharma (TC39 Chair): https://www.linkedin.com/posts/tejasq_contejas-code-ujjwal-sharma-how-javascript-activity-7185637709128884225-joHP- Sacha on X: https://x.com/SachaGreif- Sacha's website: https://sachagreif.com/- Tejas on X: https://x.com/tejaskumar_SummaryIn this discussion, we talk deeply with Sacha Greif, the founder of the popular State of JS, State of CSS, State of WebDev AI, and State of Devs surveys. We understand:1. What it takes to create a great survey2. How to process and visualize the data3. Interesting insights and trends from the latest surveysFinally, we explore the biggest lessons Sacha learned from running the surveys for the past 7 years.Chapters00:00:00 Introduction00:06:30 Goals & Scope of the Surveys00:09:15 Why the Surveys Resonat00:18:11 Survey Design00:23:20 Crafting Effective Survey Questions00:26:19 The Open Source Stack00:30:34 Monetization Strategy00:34:25 Potential Future Surveys00:36:04 Subjective Opinion vs. Objective Truth in Data00:37:42 Handling Bias, Demographics, and Language Barriers00:41:50 Optional Questions, Data Privacy, and Transparency00:48:33 Addressing Criticism: Representation and Influencer Lists00:57:20 Post-Survey: Data Analysis and Visualization01:04:19 The Technical Infrastructure Behind the Surveys01:08:13 Simplicity vs. Complexity in Development01:09:20 Biggest Traffic Drivers & YouTuber Influence01:11:08 Communicating Context and Avoiding Misinterpretation01:13:10 Key Finding 1: Things Change Slower Than Perceived01:15:13 Why the Disconnect Between Perception and Reality?01:19:26 Key Finding 2: State of Web Dev AI & "Vibe Coding" Reality01:27:48 Key Finding 3: The "Boomerang Effect"/Hype Cycle of Tools01:35:13 How Tools Supersede Each Other (Webpack/Vite, Node/Bun)01:42:12 How Established Tools Compete & Adapt01:44:17 Most Important Lessons Learned Running the Surveys01:49:46 Hope for the Surveys' Future Impact01:52:45 Call to Action: Take the State of Devs SurveyAlexander Lichter: The State of Modern Web Tooling
01:37:26|Links- Codecrafters (sponsor): https://tej.as- Alex: https://www.lichter.io/- Alex on YouTube: https://www.youtube.com/@TheAlexLichter- Alex on X: https://x.com/TheAlexLichter- VoidZero: https://voidzero.dev/- Vite Plus: https://i.redd.it/l0d9yemja1pe1.jpeg- Talk including VitePlus: https://youtube.com/watch?v=5mn3EpWCcJs&t=16353s- Rolldown Vite: https://vite.dev/rolldown- Oxc Custom Lint Plugins discussion: https://github.com/oxc-project/oxc/discussions/10342#discussioncomment-12828320Previous Episode- Apple: https://podcasts.apple.com/us/podcast/alexander-lichter-how-to-get-the-most-out-of-vue-js-and-nuxt/id1731855333?i=1000678873395- Spotify: https://open.spotify.com/episode/5NdqcW2GnQ57IetEKD1dua- YouTube: https://www.youtube.com/watch?v=Y32Ko_CkbAISummaryIn this conversation, Alexander Lichter and I discuss the evolution of JavaScript tooling, focusing on the significance of VoidZero and Vite. We explore the need for a unified JavaScript toolchain, the challenges faced by existing tools like Webpack, and the importance of user experience in development tools. We also touch on the lessons learned from the Rome project and the future of VoidZero, including its funding and vision for open-source development. Chapters00:00:00 Alex Lichter00:06:33 The Evolution of JavaScript Tooling00:09:34 Understanding VoidZero and Its Purpose00:12:15 The Need for a Unified JavaScript Toolchain00:15:16 Vite: The Cornerstone of Modern Development00:18:21 Comparing Vite and Webpack00:21:17 User Experience in Development Tools00:24:34 Lessons from Rome and Biome00:27:14 Funding and Future of VoidZero00:35:03 Introduction to Rolldown and Its Origins00:36:00 Understanding Rolldown's Purpose and Features00:39:34 The Transition from Rollup to Rolldown00:42:46 The Need for Speed in Development00:46:31 The Role of Plugins in Rolldown00:49:53 OxLint: A Game Changer for Linting00:57:33 Exploring the OxC Toolkit00:59:48 Clarifying Relationships in the Toolchain01:03:43 Type Checking Strategies and Future Directions01:05:21 Understanding Isolated Declarations in TypeScript01:06:20 Performance Comparison: OXC vs SWC01:09:11 The Role of Code Formatting in Development01:12:18 Extensibility and Plugin Architecture of OXC01:15:21 Dev Server Performance and Cold Starts01:21:35 The Role of Developer Relations at VoidZero01:27:24 Encouraging Contributions from the Community01:31:19 Collaboration Between Different Developer Communities01:33:21 Future Prospects and Final ThoughtsKent C. Dodds: Model Context Protocol (MCP) and how it changes UX
02:01:25|Links- Codecrafters (sponsor): https://tej.as/codecrafters- Epic AI: https://epicai.pro/- MCP: https://www.anthropic.com/news/model-context-protocol- Kent on X: https://x.com/kentcdodds- Tejas on X: https://x.com/tejaskumar_SummaryIn this episode, we explore the evolution of user interaction, particularly in the context of AI and the Model Context Protocol (MCP). We discuss how user experiences are shifting from traditional UI elements to more natural language interactions, akin to conversing with a human assistant. We also discuss the potential of AI to enhance user experiences and the implications of MCP in creating more efficient workflows. Kent shares his vision for a Jarvis-like AI assistant that could revolutionize how we interact with technology, emphasizing the importance of understanding and implementing MCP for developers and users alike. We also talk about security concerns, particularly tool poisoning, highlighted as significant issues that need addressing. Chapters00:00:00 Intro00:03:35 The Evolution of User Interaction00:07:41 AI and the Future of User Experience00:11:45 Building the Future: Jarvis and MCP00:15:34 MCP: Understanding the Model Context Protocol00:28:28 The Practical Implications of MCP00:42:14 Understanding MCP and LLM Interactions00:47:12 The Evolution and Maturity of MCP Spec00:52:07 The Future of MCP and Its Adoption01:01:07 Security Concerns in MCP: Tool Poisoning01:05:20 MCP's Impact on Digital Strategies01:22:25 The Future of AI and MCP01:28:18 User Experience and Adoption of AI01:33:44 How to Get Started with MCP01:40:50 Building MCP Servers and Best Practices01:45:46 Exploring AI Developments Beyond MCP01:52:45 Agent Communication and Tool Management01:57:31 Where to find Kent C. Dodds