Share

ConTejas Code
Kendo UI Team: How to build quality design systems, Kendo UI, collaboration
Links
- Kendo React: https://www.telerik.com/kendo-react-ui/components/free
- Kathryn's Book: https://www.telerik.com/campaigns/design-story/ebook--foundations-of-design-for-developers
- Progress: https://progress.com
- Sam on X: https://x.com/samidip
- Kathryn on X: https://x.com/kathryngrayson
- Kiril on X: https://x.com/kirchoni
Summary
In this episode, we talk with Sam Basu, Kathryn Grayson Nanz, and Kiril to explore Kendo UI and Kendo React. We discuss the evolution of UI libraries, the engineering behind Kendo's components, and the importance of accessibility in modern applications. The conversation delves into the unique offerings of Kendo React, particularly its data grid and virtualization techniques, as well as the design considerations that enhance user experience.
The introduction of the Theme Builder is highlighted as a tool that bridges the gap between design and development, allowing for seamless collaboration and customization. We also cover the importance of collaboration between designers and developers, the significance of design tokens, and the incremental adoption of Kendo React in existing applications.
Chapters
00:00:00 Intro
00:04:24 Kendo UI and Progress
00:07:19 Kendo React's Unique Offerings
00:10:35 The Engineering Behind Kendo UI Components
00:13:10 Kendo React: A Case Study in UI Libraries
00:16:19 Accessibility and Compliance in Kendo React
00:19:35 Deep Dive into Kendo React's Data Grid
00:22:26 Virtualization Techniques in Kendo React
00:25:31 Design Considerations for Kendo UI Components
00:28:37 Theme Builder: Bridging Design and Development
00:38:15 Version Control in Design Workflows
00:39:22 The Evolution of Theme Builder
00:40:41 User-Centric Design and Feedback
00:42:35 The Role of Design Systems
00:44:37 Bridging the Gap: Designer-Developer Collaboration
00:46:12 Understanding Design Tokens
00:47:57 Incremental Adoption of Kendo React
00:55:53 State Management in Kendo React
00:62:37 Bundle Size Considerations
01:10:35 Measuring the Success of a Design System
01:15:14 Design Systems and Component Libraries
01:19:45 The Role of Progress and Kendo UI
01:24:21 Learning Resources for Developers
01:27:56 Evaluating UI Component Libraries
01:33:56 Collaboration in UI Design and Development
01:36:14 Emerging Technologies and AI in UI Development
01:44:23 Future Trends in React and UI Components
More episodes
View all episodes
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. DoddsEvent Sourced Architecture: A Deep Dive
01:29:34|Follow me on 𝕏: https://x.com/tejaskumar_This podcast episode dives deep into the world of Event Sourcing, a powerful architectural pattern used in modern software development. Beginning with a clear definition of Event Sourcing, the episode explores its roots in Domain Driven Design and its critical role in recording and storing every change made to the state of an application in an event store. I break down complex topics, such as the nature of events, the intricacies of implementing Event Sourcing in real-world applications, and the various benefits and challenges associated with this approach.Listeners will gain insights into the practical aspects of Event Sourcing, including detailed discussions on storage costs, computational expenses, and the practice of snapshotting to optimize performance. The episode also covers the concept of event ownership, Command Query Responsibility Segregation (CQRS), and ensuring data consistency using Apache Kafka, a distributed event streaming platform known for its high throughput, reliability, and scalability.Further, the episode delves into Kafka's performance mechanisms, its use as an event store, and the transition from Zookeeper to KRaft for cluster coordination. Alternatives to Kafka, such as using Postgres' Write-Ahead Logging (WAL) as an event store, are examined, providing listeners with a comprehensive view of the options available for implementing Event Sourcing.The discussion extends to real-life use cases of Event Sourcing, highlighting its application across various industries and projects. The experts also tackle some of the common problems encountered when adopting Event Sourcing, offering practical advice and solutions. Finally, the episode concludes with a thoughtful analysis on whether Event Sourcing is the right choice for your project, helping listeners to make informed decisions based on their specific needs and project requirements.This episode is a must-listen for software developers, architects, and technology leaders looking to understand Event Sourcing, its benefits, challenges, and implementation strategies. Whether you're new to Event Sourcing or looking to refine your existing knowledge, this episode provides valuable insights into making the most of this powerful architectural pattern.Chapters00:00 - Intro03:33 - Sponsor (CrabNebula.dev)04:21 - Defining Event Sourcing07:47 - What are Events? (Domain Driven Design)14:45 - Real-World Examples of Event Sourcing19:52 - Complexities of Event Sourcing21:33 - Storage Costs23:36 - Computational Costs24:10 - Snapshotting35:15 - Event Ownership36:19 - CQRS44:08 - Consistency with Kafka54:10 - Kafka Performance Mechanisms01:03:05 - Kafka as an Event Store01:04:13 - Zookeeper & KRaft01:09:47 - Postgres WAL as an Event Store?01:13:24 - Event Sourcing Use Cases01:18:50 - Event Sourcing Problems01:26:22 - Should You Event Source?01:27:44 - ConclusionGet up to date with AI in 2025: Agents, Model Context Protocol (MCP), Hybrid Search, RAG, and more...
01:35:50|Links- Codecrafters: https://tej.as/codecrafters- Tejas on X: https://x.com/tejaskumar_- JSHeroes conference: https://jsheroes.io- Attention is All You Need Paper: https://scispace.com/pdf/attention-is-all-you-need-1hodz0wcqb.pdf- Google Agents paper: https://ppc.land/content/files/2025/01/Newwhitepaper_Agents2.pdf- Jack Herrington episode about implementing MCP server:- YouTube: https://www.youtube.com/watch?v=0zXyCQV4A84- Apple: https://podcasts.apple.com/nz/podcast/jack-herrington-model-context-protocol-mcp-growing/id1731855333?i=1000698551942- Spotify: https://open.spotify.com/episode/5u7ReU2AMnS3TOYuiSwVY1?si=HrBzavRGThOITtYdXDloTA- John McBride episode about fine-tuning Mistral 7B at OpenSauced- YouTube: https://www.youtube.com/watch?v=ipbhB3k0ik0- Apple: https://podcasts.apple.com/us/podcast/1731855333?i=1000663298584- Spotify: https://open.spotify.com/episode/77UWTis0TxCd1uPOZhGAnJ?si=CUGmHtJ2RxWhmW5MI3XYbgSummaryThis episode is a long-form lecture on AI innovation in 2025. We cover a wide range of topics. For more details, see chapters below.Chapters00:00:00 Intro00:02:31 What is AI?00:07:30 Limitations of AI00:14:29 Solving AI Problems with RAG00:22:51 Embeddings and Vector Databases Explained00:31:23 Hybrid Search: Vectors and Keywords (BM25)00:38:17 Rerankers for Maximum Accuracy00:43:51 RAG vs. Fine-Tuning00:54:29 AI Agents01:13:12 Model Context Protocol (MCP)01:26:12 How to Get Started01:34:04 ConclusionShuhao Zhang, founder Tiny Fish: How to Turn Any Website into an API for AI Agents
01:36:33|Links- Codecrafters: https://tej.as/codecrafters- Tiny Fish: https://tinyfish.io- AgentQL: https://www.agentql.com/SummaryIn this conversation, we discuss AgentQL, a framework designed to enable AI agents to access the web using natural language. Together, we explore the technical aspects of AgentQL, its advantages over traditional web access methods, and the challenges faced in its development. The discussion also covers the role of TinyFish, the parent company of AgentQL, and the future direction of their products. Key use cases for developers are highlighted, showcasing how AgentQL can simplify web scraping and automation tasks. We deep dive into the integration of Playwright with AgentQL, the engineering decisions behind its development, and the importance of maintaining consistency across different SDKs. The conversation also touches on the challenges of remote browsing, security concerns, and the complexities of navigating data structures. Additionally, the various operating modes of AgentQL are explored, highlighting the trade-offs between speed and accuracy. Chapters03:25 Introduction to AgentQL06:33 The Technical Framework of AgentQL09:34 Challenges with Traditional Web Access12:35 The Role of TinyFish and Future Products15:25 Technical Hurdles in Building AgentQL18:26 Interacting with the DOM21:29 Use Cases for Developers24:21 Building with AgentQL27:35 Disambiguation and Query Context30:32 Balancing Precision and Flexibility33:30 Future Directions and Enhancements36:36 Integrating Playwright with AgentQL38:56 Building Infrastructure for Remote Browsing39:30 Engineering Decisions in AgentQL Development45:05 Web Test Automation and AgentQL45:55 SDK Development: Python vs JavaScript47:39 Maintaining Consistency Across Languages51:40 Cross-Browser Support with Playwright54:17 Security Concerns in Remote Browsing59:14 Navigating Complex Data Structures01:03:36 Operating Modes of AgentQL01:04:20 Understanding Browser Fingerprinting and Anti-Bot Measures01:06:31 Exploring AgentQL's Browser Toolkit for Langchain01:09:15 AgentQL's Potential in Automating Workflows01:10:17 The Future of Email Automation with AgentQL01:11:34 Navigating the Challenges of Building a Startup01:16:20 Achieving Success on Product Hunt01:19:30 Implementation Pitfalls for New AgentQL Developers01:21:37 Founder's Playbook: Lessons LearnedLiran Tal: How to Secure Your Apps and AI Agents
01:33:23|Links- Codecrafters (partner): https://tej.as/codecrafters- Snyk: https://snyk.io/- Liran on X: https://x.com/liran_tal- Tejas on X: https://x.com/tejaskumar_SummaryIn this conversation, we explore the complexities of software security, particularly focusing on the challenges posed by Node.js and the broader software supply chain. We discuss the evolution of security practices, the importance of awareness among developers, and the role of automation in enhancing security measures. The conversation highlights the need for a balance between automated tools and manual audits, emphasizing that human oversight remains crucial in high-risk environments. We also explore the vulnerabilities associated with open-source software and the trust developers place in third-party tools and extensions, specifically the importance of SBOMs in understanding software dependencies. We discuss the SolarWinds attack as a pivotal case in supply chain security and the role of tools like lockfile lint in enforcing security policies. Finally, we discuss AI and the role of LLMs in security, particularly regarding attack vectors and the reliability of AI-generated code.Chapters00:00 Liran Tal01:44 Introduction to Security in Software Development04:53 The Evolution of Node.js and Security Challenges07:29 Understanding Software Supply Chain Vulnerabilities10:49 The Role of Open Source in Security13:51 Exploring Security in Development Tools and Extensions16:40 The Importance of Security Awareness and Training19:40 Automating Security: Tools and Best Practices22:30 The Balance Between Automation and Manual Audits25:43 Conclusion and Future of Security in Software Development35:00 Balancing Automation and Human Intervention in Security38:08 Understanding S-BOMs and Their Importance41:14 The SolarWinds Attack: A Case Study in Supply Chain Security43:29 Lockfile Lint: Enforcing Security Policies in Code46:49 Generating SBOMs: A Practical Approach49:03 Demystifying CVSS: Understanding Vulnerability Scoring52:50 AI in Security: Attack Vectors and Defense Strategies59:52 Navigating Security in AI-Generated Code01:05:39 The Role of LLMs in Security Vulnerability Detection01:08:24 Integrating Agents for Secure Code Generation01:11:16 Challenges of LLMs in Security Validation01:14:42 The Complexity of Security in AI Systems01:20:56 Understanding Fuzzing and AI's Role01:24:08 Container Breakout Threats and Mitigation Strategies