¡Últimas horas! 1 año de Premium al 25% de dto ¡Lo quiero!
Coding Chats
Podcast

Coding Chats

68
0

On Coding Chats, John Crickett interviews software engineers of all levels from junior to CTO. He encourages the guests to share the stories of the challenges they have faced in their role and the strategies and tactics they have used to overcome those challenges providing actionable insights other software engineers can use to accelerate their careers.

On Coding Chats, John Crickett interviews software engineers of all levels from junior to CTO. He encourages the guests to share the stories of the challenges they have faced in their role and the strategies and tactics they have used to overcome those challenges providing actionable insights other software engineers can use to accelerate their careers.

68
0

The impact of AI on software engineering and SaaS businesses

Episode in Coding Chats
Coding Chats episode 65 - Mike Rispoli discusses his experience of building a Loom replacement through vibe coding, the economic implications of AI for small agencies, and the evolving landscape of software engineering. He emphasizes the importance of hand coding, the challenges of interviewing in the age of AI, and the necessity of clear requirements when working with AI tools. The discussion also touches on the future demand for software engineers and the role of UX in AI-generated code. Chapters 00:00 Building a Loom Replacement in 30 Minutes 03:40 The Challenges of SaaS Pricing Models 06:29 AI's Impact on Small Businesses and Enterprises 09:19 Interviewing in the Age of AI 11:59 The Future of Coding and AI Integration 26:45 The Importance of Clear Requirements 28:31 Navigating AI in Development 31:31 Feature Creep and Planning 32:30 The Evolving Role of Engineers 34:34 Workflow and Planning with AI 38:45 Iterative Development and Feedback 42:28 Leveraging AI for UX and Design 45:59 The Future of Software Engineering Mike's Links: https://www.linkedin.com/in/michael-rispoli-cto https://x.com/michael_rispoli https://www.instagram.com/mike_rispoli_cto https://michaelrispoli.com/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Mike built a Loom replacement in just 30 minutes using vibe coding. AI tools can significantly enhance productivity for software engineers. The SaaS pricing model can be complicated for small agencies. It's acceptable to pass on good candidates but not to hire the wrong ones.AI is likely to amplify the demand for software engineers rather than replace them. Feature creep is a common challenge in software development. Clear requirements are essential when working with AI tools. The future of software engineering is promising and exciting. AI can help engineers improve their design capabilities. Navigating the evolving landscape of software engineering requires adaptability.
Internet and technology Yesterday
0
0
0
50:44

The secret lives of SWEs: industrial automation and moving million dollar machines

Episode in Coding Chats
Coding Chats episode 64 - Jakob Sagatowski discusses his unique collaboration with YouTuber Mark Rober to build a robot goalie that plays against Cristiano Ronaldo. He delves into the technical challenges of motion control and computer vision, the role of software engineers in industrial automation, and the importance of real-time systems. Jakob emphasizes the need for better software development practices in the industrial automation sector and shares insights on how aspiring engineers can break into this field. Chapters 00:00 Introduction to the YouTube Collaboration Project 03:22 Challenges in Motion Control and Computer Vision06:29 Trial and Error in Robotics Development 09:15 Understanding Industrial Automation 12:05 Programming Languages in Industrial Automation 14:31 The Role of Real-Time Systems17:49 Constraints in Real-Time Programming 21:22 Understanding Hardware Constraints in Industrial Automation 24:46 The Role of PLCs in Industrial Control Systems 28:45 Challenges in Software Development Practices 35:32 Breaking into Industrial Automation Careers Jakob's Links: Website: www.sagatowski.com PLC-programming course: https://www.youtube.com/playlist?list=PLimaF0nZKYHz3I3kFP4myaAYjmYk1SowO Unit testing framework for Beckhoff PLC’s (the course talks about this), if you want to apply TDD in industrial automation:www.tcunit.orghttps://github.com/tcunit John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Jakob collaborated with Mark Rober on a robot goalie project. The project involved significant motion control and computer vision challenges. Real-time systems require deterministic execution within strict time frames. Industrial automation is evolving, integrating more software engineering practices. Software engineers are increasingly needed in industrial automation roles. The development environment in industrial automation is often proprietary and closed. AI's impact on industrial automation is still developing, with challenges in integration. Real-time programming constraints differ significantly from web development. PLCs are essential for controlling industrial processes and machinery. Aspiring engineers can learn about industrial automation through online resources and experimentation.
Internet and technology 1 week
0
0
0
42:27

What to do when AI gets expensive and other CTO challenges

Episode in Coding Chats
Coding Chats episode 63 - John Crickett and Rob Bowley discuss the evolving role of the CTO, emphasizing the importance of strategic leadership that integrates people, process, and technology. They explore the challenges and opportunities presented by AI and other technological trends, highlighting the need for adaptability and effective communication within leadership teams. The discussion also touches on the significance of assessing technology teams and strategies to ensure successful outcomes in software development and organizational growth. Chapters 00:00 Introduction to the CTO Role 02:49 The Misconceptions of the CTO Position 05:05 The Importance of Feedback and Adaptability 11:50 Navigating AI and Emerging Technologies 19:08 Testing Hypotheses in Technology Implementation 22:19 The Transformative Potential of AI in Software Engineering 27:09 The Economic Impact of Generative AI 29:24 Concerns Over AI Subscription Costs 31:32 Adoption Challenges in Software Development 35:14 Assessing Technology and Team Effectiveness 38:44 The Future of Software Engineering and AI 50:12 Exploring Related Content Rob's Links: Blog: https://blog.robbowley.net/ LinkedIn: https://www.linkedin.com/in/robertbowley/ Bluesky: https://bsky.app/profile/robbowley.net Company URL: https://www.pragmaticpartners.co.uk/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways The role of a CTO is a strategic leadership position that intersects people, process, and technology. CTOs should focus on understanding their strengths and how to leverage them within their organization. Effective communication and collaboration with the senior leadership team are crucial for a CTO's success. Many misconceptions about the CTO role stem from a focus on technical skills rather than strategic business outcomes. Adaptability and awareness of one's strengths are key attributes of good leadership. Feedback from peers and team members is essential for recognizing gaps in skills and performance. Learning from failure is a critical aspect of leadership growth. The integration of AI into products should be approached with caution and thorough exploration. Organizations must focus on proven, common technologies rather than chasing every new trend. The assessment of technology teams should prioritize people and their capabilities over just the technology itself.
Internet and technology 2 weeks
0
0
0
50:23

Bearly building in public

Episode in Coding Chats
Coding Chats episode 62 - John Crickett engages in a deep conversation with James about personal branding, building in public, and the challenges of launching a product. James shares his journey of using LinkedIn to build his personal brand, emphasizing the importance of transparency and community feedback in his projects. He recounts how his social network gained 20,000 users in the first 24 hours due to his public approach, which not only helped him secure jobs but also fostered a sense of community around his work. The discussion also touches on the significance of mental health awareness and the need for open conversations in the workplace, particularly in the tech industry.As they delve into James's latest project, Bearly Fit, they explore the balance between creating a minimum viable product and ensuring quality. James reflects on the expectations that come with building in public and how he has navigated the challenges of app development while maintaining a connection with his audience. The conversation wraps up with insights on the role of AI in coding and the importance of mentoring junior developers, highlighting the need for a supportive environment in tech. Chapters 00:00 The Power of Personal Branding 06:35 Agility in Development: Lessons Learned 18:29 Building in Public: Success and Challenges 26:08 Streaming and Job Search: A Double-Edged Sword 35:36 The Importance of Mentoring New Developers 40:22 Building in Public: The Journey of Barely Fit 52:58 Challenges and Expectations in App Development 58:54 Leveraging AI in Development 01:05:39 Final Thoughts and Future Plans 01:06:06 Exploring Related Content James's Links: https://linktr.ee/mahybe https://bearly.fit John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Building in public can lead to unexpected success. Transparency in struggles fosters community support. Personal branding is crucial for career advancement. Quality matters in app development, especially when building in public. Mentoring junior developers is an investment in the future.
Internet and technology 3 weeks
0
0
0
01:06:16

Mastering behavioural interviews with Austen McDonald

Episode in Coding Chats
Coding Chats episode 61 - John Crickett interviews Austen about his new book and the significance of behavioural interviews in the hiring process, especially in today's competitive job market. Austen shares insights on what interviewers look for, how to tailor preparation for specific companies, and the importance of storytelling in interviews. He emphasizes the impact of AI on the interview process and discusses how candidates can effectively present their experiences, particularly in conflict resolution scenarios. The conversation also covers the different expectations for candidates at various career stages and the importance of preparation and practice in mastering behavioural interviews. Chapters 00:00 The Importance of Behavioral Interviews 02:43 What Interviewers Look For 05:32 Understanding Company Expectations 07:48 Austen's Background and Expertise 09:59 The Impact of AI on Interviews 12:10 Behavioral Interviews Beyond Big Tech 14:11 Crafting Your Introduction 18:55 Selecting Stories for Interviews 24:32 Creating Compelling Interview Stories 28:38 The Difference Between Junior and Senior Engineers 29:50 Crafting Compelling Stories for Interviews 31:28 Timing and Length of Stories in Interviews 33:34 Selecting the Right Story for the Interview 37:05 The Importance of Scope and Relevance in Storytelling 37:52 Using the Menu Technique for Story Selection 40:37 Enhancing Conflict Resolution Stories 43:48 The Drama in Conflict Resolution 48:12 Improving Conflict Resolution Narratives 55:00 The Role of Escalation in Conflict Resolution 58:11 The Big Three Questions in Behavioral Interviews 59:54 Understanding Interview Dynamics 01:03:08 The Importance of Asking Questions 01:06:56 Feedback Loops in Behavioral Interviews 01:12:04 Navigating Different Career Stages 01:17:52 Adapting Stories for Different Organizations 01:23:02 Leveraging Personal Projects in Interviews 01:24:41 Key Takeaways for Interview Success Austen's Links: https://thebehavioral.substack.com/ https://www.amazon.com/dp/B0G6CM9T87 John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Behavioral interviews are crucial for differentiating candidates in a competitive job market. Understanding what interviewers are looking for can significantly improve your chances of success. Tailoring your preparation to the specific company and role is essential. Your past experiences and stories are likely more valuable than you think. Practice and preparation are key to performing well in interviews.
Internet and technology 4 weeks
0
0
0
01:26:55

Spec driven development and building better software with AI agents

Episode in Coding Chats
Coding Chats episode 60 - John Crickett and Paul discuss the transformative impact of AI on software engineering, exploring topics such as spec-driven development, the importance of small batches, and the challenges of requirements gathering. They delve into the evolving role of AI tools, the need for effective communication, and the balance between productivity and code quality. The discussion also touches on the future of AI in development, the significance of ownership in coding, and the potential for specialized AI agents to enhance workflows. Paul shares valuable tips for leveraging AI in software engineering, emphasizing the importance of joy, working in small units, and maintaining humility in the face of rapid technological change. Chapters 00:00 AI in Software Engineering: A New Era 03:36 The Revelation of Prompt-Driven Development 06:08 Spec-Driven Development vs. Waterfall 09:16 The Importance of Small Batches in AI Development 12:05 Ownership and Responsibility in AI-Generated Code 14:57 The Challenges of Outsourcing and Communication in Software Development 20:15 The Future of Programming and Communication 23:38 AI Tools and Upstream Bottlenecks 27:18 Understanding JetBrains' AI Integration 31:40 User Experience and AI Interaction 35:42 Opinionated Workflows in Software Development 37:24 Finding Joy in AI-Assisted Engineering Paul's Links:https://buildermethods.com/agent-os John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways AI is revolutionizing software engineering practices. Spec-driven development formalizes the way we instruct AI agents. Small batches improve productivity and maintain context. Ownership of code is crucial for long-term success. Quality of code generated by AI is more important than quantity. Effective communication is key in AI-assisted development. Specialized AI agents will enhance the development process. JetBrains is evolving its tools to integrate AI effectively. Developers should find joy in their work, even with AI assistance. Humility is essential as we navigate the future of AI in programming.
Internet and technology 1 month
0
0
0
41:54

Building the Rig AI framework with Rust

Episode in Coding Chats
Coding Chats episode 59 - Josh discusses the AI agent framework Rig, its functionalities, and the benefits of using Rust for its implementation. He explains the concept of agents and embeddings, their applications, and the importance of managing context windows in AI models. Josh shares his journey of learning Rust, transitioning from a technical content writer to a co-maintainer of Rig, and the challenges faced while building a coding agent. He emphasizes effective prompting strategies and the importance of concise communication with AI models. The conversation concludes with insights on contributing to Rig and the future of AI frameworks. Chapters 00:00 Introduction to Rig and AI Frameworks 02:56 Understanding Agents and Embeddings 05:24 Use Cases for Embeddings and Context Management 07:53 Benefits of Using Rig in Rust 10:10 Learning Rust and Overcoming Challenges 12:56 Transitioning to Rig and AI Focus 15:21 Building a Coding Agent: Challenges and Insights 17:45 Prompting Techniques and Best Practices 20:06 Contributing to Rig and Community Engagement 22:49 Final Thoughts and Future Directions Josh's Links: https://github.com/0xPlaygrounds/rig https://www.rustnationuk.com/speaker/joshua-mo https://www.linkedin.com/in/joshua-mo-4146aa220/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Rig is an AI agent framework that simplifies AI integration. Agents in AI are often misunderstood due to marketing hype. Embeddings serve as data representations for various applications. Retrieval augmented generation is a common use case for embeddings. Managing the context window is crucial for effective AI performance. Using Rust for Rig provides type safety and performance benefits. Learning Rust can be challenging but rewarding with the right approach. Josh transitioned from content writing to engineering at Rig. Building a coding agent revealed the complexities of AI. Concise prompts are essential to avoid overwhelming AI models.
Internet and technology 1 month
0
0
0
35:44

Coding Chats holiday special - John answers your questions about software engineering

Episode in Coding Chats
In this special holiday episode of Coding Chats, John Crickett answers audience questions about software engineering careers, the impact of AI, programming languages, and the importance of leadership. He discusses how to rebuild an engineering career, the significance of meaningful projects, and the readiness of self-taught developers. The conversation also touches on insights gained from hosting the podcast and the evolving landscape of software development. Chapters 00:00 Introduction to the Coding Chats Holiday Special 00:22 Rebuilding an Engineering Career in 2025 01:01 The Future of Software Engineering with AI 01:27 Learning Programming: Starting Points and Languages 02:27 Breaking the No Experience Loop for Developers 04:17 Meaningful Experience: Projects and Contributions 05:02 Self-Taught Developers: Readiness and Opportunities 06:07 Qualities of a Good Software Engineering Leader 06:52 Insights from 18 Months of Coding Chats 07:43 Architecture as a Strategic Concern in Engineering John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Leverage AI to find answers quicker than before. Reading and curiosity are key habits for growth. All parts of software engineering will survive AI advancements. Focus on learning computer science fundamentals first. Choose programming languages based on your interests. Building personal projects can help you get noticed. Self-taught developers can be just as capable as those with degrees. Good leadership adapts to the situation and team needs. The software development field is diverse and evolving. Architecture should be treated as a strategic concern.
Internet and technology 1 month
0
0
0
08:12

Should you ship code without feature flags?

Episode in Coding Chats
Coding Chats episode 58 - John Crickett and Melinda Fekete delve into the concept of feature ops, emphasizing the importance of managing code in production effectively. They discuss feature flags as a mechanism for safe testing and releasing of code, the challenges of managing feature flags, and the significance of user feedback in software development. The conversation also touches on deployment strategies like canary releases, learning from recent outages, and the benefits of testing in production. Additionally, they explore the role of feature flag providers and the trade-offs associated with adopting feature flags in software projects. Chapters 00:00 Introduction to Feature Ops 02:46 Managing Feature Flags Effectively 07:41 Deployment Strategies: Canary Releases and Gradual Rollouts 12:23 The Importance of Dogfooding and User Feedback 15:05 Learning from Recent Outages 19:13 Testing in Production and Its Benefits 21:51 Managing Feature Flags at Scale 27:01 Feature Flag Providers and Their Benefits 30:50 Involving Product Teams in Feature Flag Management 31:45 Trade-offs and Downsides of Feature Flags 39:35 Exploring Related Content Melinda's Links: A guide on working with feature flags in code: https://docs.getunleash.io/guides/manage-feature-flags-in-code Open-source repo: https://github.com/Unleash/unleash John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Feature ops focuses on managing code in production effectively. Feature flags allow for safe testing and releasing of code without redeployment. Managing the lifecycle of feature flags is crucial for maintenance. Canary releases and gradual rollouts help mitigate risks during deployment. User feedback is essential for improving software products. Recent outages highlight the need for better feature management practices. Testing in production can catch issues that staging environments may miss. Feature flag providers offer tools for managing flags at scale. Trade-offs exist when adopting feature flags, especially for smaller projects. Effective management of feature flags can empower teams and improve deployment speed.
Internet and technology 1 month
0
0
0
39:46

AI-assisted software engineering: challenges and opportunities

Episode in Coding Chats
Coding Chats episode 57 - Owain Lewis and John Crickett explore the role of AI in software engineering, discussing the integration of AI into production systems and the challenges faced by AI engineers. They delve into the nuances of AI application, from building scalable systems to the importance of human oversight in AI-driven workflows. Chapters 00:00 Defining the Role of AI Engineer 03:13 Exploring Large Language Models (LLMs) 06:15 Use Cases for LLMs in Business 09:22 The Non-Deterministic Nature of AI 12:12 AI in Software Engineering: The Future 15:11 The Role of AI in Code Review 17:53 The Bottleneck of Requirements Gathering 20:38 Leveraging AI Throughout the Software Lifecycle 29:53 Leveraging AI for Efficient Documentation 30:47 AI in API Design and Review 32:22 Spectrum Driven Development with AI 34:06 The Role of Requirements in Software Engineering 40:05 The Future of Programming Languages and AI 49:54 Understanding Context and Prompt Engineering 56:38 Exploring Related Content Owain's Links: Substack: https://newsletter.owainlewis.com/subscribe AI Engineer: https://skool.com/aiengineer John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways AI engineering involves building software with AI, focusing on production systems. AI engineers bridge the gap between AI model builders and software developers. Understanding AI's unique paradigm is crucial for effective system architecture. AI should be used minimally and where it makes sense, not everywhere. Human oversight is essential in AI-driven workflows to ensure reliability. Large language models (LLMs) are a significant focus in current AI trends. AI can enhance business processes through automation and natural language interfaces. AI's role in software engineering includes improving code quality and efficiency. AI tools can amplify both good and bad engineering practices. Experimentation and building real projects are key to learning AI engineering.
Internet and technology 2 months
0
0
0
56:49

So you think you can lead a team of software engineers?

Episode in Coding Chats
Coding Chats episode 56 - Paul Grenyer discusses his journey to writing a book on team leadership, sharing insights on the differences between leadership and management, common mistakes new leaders make, the importance of delegation, and building trust within teams. He emphasizes the need for curiosity in understanding both technical and business domains, and reflects on the role of AI in software development. The discussion culminates in insights from his book, which aims to guide new leaders in navigating their roles effectively. Chapters 00:00 The Journey to Team Leadership 08:44 Leadership vs Management 10:33 Common Mistakes of New Leaders 15:58 The Importance of Delegation 19:46 Curiosity in Leadership 22:33 Insights from the Book 27:57 The Role of Technical Skills in Leadership 31:58 The Impact of AI on Software Engineering Paul's Links: Paul's website: https://paulgrenyer.com/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Letting go of doing the work is crucial for leaders. Listening to your team is essential for effective leadership. Delegation is often the hardest skill for new leaders to master. Building trust requires admitting mistakes and being approachable. Curiosity about team members' experiences can lead to better solutions. Technical knowledge helps leaders mediate and understand team dynamics. AI can enhance productivity but requires careful implementation. Leadership is about guiding a team towards a common goal. Understanding the business domain is vital for effective leadership. Encouraging a fun and open team culture fosters collaboration.
Internet and technology 2 months
0
0
0
36:33

Rust in production at planet scale : lessons learned deploying Rust code to millions of devices

Episode in Coding Chats
Coding Chats episode 55 - Emma Nedelcu discusses her experience managing teams that transitioned to Rust at Amazon Prime Video. She highlights the reasons for choosing Rust, including its performance and safety features, and the challenges faced during the transition from JavaScript. Emma explains the importance of over-the-air updates, device constraints, and effective onboarding strategies for engineers. The conversation also covers testing strategies, managing technical debt, and hiring practices for Rust teams, emphasizing the need for a mindset focused on problem-solving and adaptability. Chapters 00:00 Introduction to Rust and Its Adoption 03:49 Performance Gains with Rust 06:37 Challenges of Over-the-Air Updates 09:36 Onboarding Developers to Rust 12:33 Team Collaboration and Trust 14:53 Testing Strategies for Rust Applications 17:38 Trade-offs and Considerations with Rust 20:13 Hiring and Team Building for Rust 23:02 Advice for Organizations Considering Rust 26:00 Managing Technical Debt in Rust 28:48 Conclusion and Final Thoughts 33:52 Exploring Related Content LINKS Emma's Links https://www.linkedin.com/in/emmanedelcu/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Rust was chosen for its performance and safety guarantees. Transitioning from JavaScript to Rust involves a steep learning curve. Over-the-air updates are crucial for device management. Device constraints significantly impact application performance. Onboarding to Rust can take about three months for JavaScript developers. Building trust within teams is essential for fast-paced development. Testing strategies must be robust to handle diverse devices. Rust's compile-time checks require strict runtime discipline. Compiling for WebAssembly requires careful optimization to manage bundle size. The Rust ecosystem is maturing but still evolving. Organizations should engage with the Rust community for better integration. Prototyping can effectively demonstrate Rust's potential to stakeholders. Managing technical debt in Rust involves understanding complexity depth. Hiring for mindset and adaptability is more important than experience. Ideal Rust engineers should have a deep understanding of low-level systems. Candidates should demonstrate initiative and impact in their projects.
Internet and technology 2 months
0
0
0
34:03

The power of soft skills in software engineering

Episode in Coding Chats
Coding Chats episode 54 - Nikki Maginn and John Crickett explore the critical role of soft skills in engineering, emphasizing the importance of communication, emotional intelligence, and collaboration. They discuss how engineers can bridge the gap between technical expertise and customer-facing roles, the art of asking questions, and the significance of building trust and meaningful connections. The dialogue also touches on the balance of confidence and humility in leadership, the power of storytelling, and the necessity of understanding context in communication. Ultimately, the conversation highlights that soft skills are essential for engineers to thrive in their careers and contribute effectively to their teams. Chapters 00:00 The Importance of Soft Skills in Engineering 03:14 Bridging the Gap: Engineers and Customer Interaction 06:26 Nature vs. Nurture: The Art of Asking Questions 09:06 Effective Communication: How to Ask the Right Questions 12:06 Understanding Context: The Key to Effective Dialogue 14:53 Navigating Emotional Reactions in Communication 17:36 Feedback and Conflict Resolution: Building Better Relationships 20:57 The Efficiency of Communication in Engineering 23:32 The Role of Emotions in Engineering 26:38 Team Dynamics: The Myth of the 10x Developer 29:08 The Importance of Communication in Engineering 31:29 Empowering Teams to Reduce Meetings 34:40 Communicating with Impact 38:21 Building Trust with Non-Technical Stakeholders 42:11 Creating Meaningful Connections 48:53 Owning Your Confidence as an Engineer Nikki's Links: Website: www.insideoutengineering.com LinkedIn: https://www.linkedin.com/in/nikki-maginn/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Engineering success relies on effective communication and collaboration. Engineers must learn to translate technical work for broader understanding. Emotional intelligence is crucial for engineers in customer-facing roles. Asking the right questions is a teachable skill. Building trust requires meaningful connections with colleagues. Navigating difficult conversations is essential for team dynamics. Context is key in understanding reactions and emotions in communication. Confidence should be balanced with humility in leadership roles. Storytelling can enhance the impact of technical communication. Investing in relationships leads to more efficient conversations.
Internet and technology 2 months
0
0
0
56:10

Perfect your CV - a guide for software engineers

Episode in Coding Chats
Coding Chats episode 53 - John Crickett and Mary Fidler discuss the evolving landscape of job applications, focusing on common CV mistakes, the importance of showcasing skills and achievements, and the role of AI in recruitment. They explore the relevance of cover letters, salary transparency, and the current state of the job market, including signs of recovery. Mary emphasizes the significance of LinkedIn for job seekers and shares insights on adapting to the changing recruitment landscape, particularly for contractors. Chapters 00:00 Introduction to Recruitment Challenges 03:37 Common CV Mistakes in Job Applications 09:19 The Evolution of Job Market Dynamics 14:56 Leveraging AI in Job Hunting 18:34 The Role of Cover Letters in Modern Applications 23:13 Understanding Salary Expectations and Market Trends 24:28 Market Recovery and Hiring Trends 28:01 The Impact of AI on Employment 28:53 Leveraging LinkedIn for Job Seekers 38:14 Navigating Recruitment in a Changing Market 40:52 The Rise of Project-Based Work 46:34 Final Tips for Job Seekers LINKS Mary's LinkedIn - https://www.linkedin.com/in/mary-fidler/ Mary's Career Page https://trusttechrecruitment.zohorecruit.eu/jobs/Careers John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways One page CVs are a common mistake. Highlight achievements over duties in CVs. AI tools are increasingly important for developers. Cover letters are often unnecessary if CVs are strong. Salary transparency can build trust between candidates and recruiters. The job market is showing signs of recovery. LinkedIn is essential for job seekers to stand out. Contractors can provide cost-effective solutions for companies. Personal branding on LinkedIn can lead to job opportunities. Networking and asking for impact details can enhance CVs.
Internet and technology 3 months
0
0
0
47:44

Isograph: the future of data driven apps

Episode in Coding Chats
Coding Chats episode 52 - Robert Balicki discusses Isograph, an opinionated framework designed to simplify the development of data-driven applications, particularly with GraphQL and React. He explains the challenges faced in web development, such as over-fetching data and network waterfalls, and how Isograph addresses these issues by allowing developers to focus on specific components and their data needs. The discussion also covers the technical foundation of Isograph, built using Rust, and the challenges of compiler development. Robert emphasizes the importance of testing, CI/CD integration, and the potential for Isograph to scale effectively in large projects. He invites developers to get involved in the project and contribute to its growth. Chapters 00:00 Introduction to Isograph 05:11 Understanding the Problem Isograph Solves 09:57 The Concept of Opinionated Frameworks 13:40 Exploring Network Waterfalls 16:43 Testing and CI/CD Integration 20:49 Scaling with Monorepos and Integration 27:57 Future Vision for Isograph 28:04 Understanding Isograph's Runtime and Compiler 29:40 The Influence of Rust in Compiler Development 32:04 The Challenges of Building a Compiler 35:53 Transitioning from Batch to Incremental Compilation 45:28 Leveraging Rust for Enhanced Developer Experience 52:55 Community Engagement and Future of Isograph 56:32 Exploring Related Content LINKS Robert's Links: Isograph: http://isograph.dev/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Isograph simplifies building data-driven applications. The framework is opinionated, promoting best practices. Network waterfalls can degrade user experience. Isograph allows for precise data fetching. Testing is a key focus in Isograph's development. Rust provides safety and performance benefits. The framework aims to support SQL backends in the future. Isograph encourages a full-stack development approach. Community involvement is welcomed through Discord. The developer experience with Isograph is superior to other frameworks.
Internet and technology 3 months
0
0
0
56:43

From fire fighting to AI pair programming: Shane Harger's journey

Episode in Coding Chats
Coding Chats episode 51 - Shane Harger shares her unique career journey from web development and graphic design to firefighting and back to tech, emphasizing the importance of pair programming, incident management lessons, and the evolving role of AI in software development. She discusses the significance of DevOps and platform engineering in enhancing team collaboration and efficiency, while also highlighting the value of junior developers in fostering a learning environment within teams. Chapters 00:00 Shane Harger's Unique Career Journey 05:32 Transitioning from Firefighting to Tech 10:12 The Importance of Pair Programming 15:01 Lessons from Incident Management 20:02 DevOps and Platform Engineering Insights 27:44 The Dynamics of Code Review and Pair Programming 29:54 AI as a Partner in Programming 34:03 Key Learnings from AI Pair Programming Experiments 45:37 The Importance of Diverse Pairing in Development Teams Shane's links: https://www.linkedin.com/in/shaneharger/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Shane's career spans web development, firefighting, and consulting. Firefighting provided unexpected tech opportunities in incident management. Pair programming fosters camaraderie and knowledge sharing. DevOps emphasizes ownership and collaboration in software development. AI can assist in coding but lacks the human element of teamwork. Juniors bring fresh perspectives and questions that benefit teams. Effective incident management requires calmness and basic troubleshooting skills. Automation in DevOps enhances response times and reduces handovers. Product thinking is essential for infrastructure teams to meet customer needs. The transition from POC to production can be challenging without clear requirements.
Internet and technology 3 months
0
0
0
51:38

How to manage technical debt with Lou Franco

Episode in Coding Chats
Coding Chats episode 50 - Lou Franco discusses the concept of technical debt, its implications for software development, and the importance of quantifying it. He emphasizes that technical debt is not just a financial metaphor but a real issue affecting developer productivity and team dynamics. The discussion also covers the role of managers in understanding and addressing technical debt, the importance of metrics, and the eight questions that can help teams evaluate their technical debt. Additionally, the conversation touches on the impact of AI on technical debt management, highlighting both its potential benefits and challenges. Chapters 00:00 Understanding Technical Debt 03:17 The Financial Metaphor of Tech Debt 06:04 Defining Technical Debt: Internal vs External Effects08:59 The Role of Developer Productivity 12:05 The Team Responsibility of Technical Debt 14:51 Why Managers Should Care About Tech Debt 18:05 Quantifying Technical Debt for Visibility 20:57 Improving Developer Productivity 23:43 Communicating Tech Debt to Executives 26:41 Understanding Technical Debt and Its Management 36:37 The Eight Questions for Managing Technical Debt 46:29 AI's Role in Technical Debt: A Double-Edged Sword Lou's Links: LinkedIn: https://www.linkedin.com/in/loufranco/Book: https://loufranco.com/tech-debt-book John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Technical debt is often misunderstood and miscommunicated. The financial metaphor of technical debt can be misleading. Technical debt can arise from changing technologies, not just poor choices. Developers experience anxiety due to technical debt affecting estimates. Managers need to understand the visible effects of technical debt. Quantifying technical debt helps in communicating its impact. The eight questions framework aids in evaluating technical debt. AI can assist in managing technical debt but requires careful oversight. Collaboration with other teams can provide valuable insights into technical debt. Technical debt should be viewed as a team responsibility, not just an individual issue.
Internet and technology 3 months
0
0
0
56:16

An introduction to cybersecurity - from physical breaches to digital intrusions

Episode in Coding Chats
Coding Chats episode 49 - John Crickett and Kev Milne delve into the critical realm of cybersecurity, exploring its various facets from social engineering to the importance of penetration testing. They discuss the evolution of attacks, the role of AI, and the significance of mainframes in modern security. The conversation also highlights the career paths in cybersecurity and the necessity for continuous investment in security measures to protect digital assets. Chapters 00:00 Understanding Cybersecurity 03:38 The Evolution of Attacks: Physical vs. Digital 06:18 Social Engineering: The Art of Deception 09:15 The Importance of Penetration Testing 12:02 Career Paths in Cybersecurity 14:49 The Diverse Landscape of Cybersecurity 17:56 The Necessity of Ongoing Security Measures 20:34 The Cost of Neglecting Cybersecurity 25:48 The Evolution of Wi-Fi Security 27:04 Mainframes: The Misunderstood Giants 28:15 Mainframe Security: Myths and Realities 30:02 The Challenge of Legacy Code 32:20 Balancing Security and Functionality 34:12 Defense in Depth: A Security Strategy 35:35 AI's Role in Cybersecurity 37:50 The Threat Landscape: Script Kiddies and Beyond 38:34 Training the Next Generation of Cybersecurity Experts 41:36 The Importance of Conferences in Cybersecurity Kev's Links: LinkedIn: https://www.linkedin.com/in/kevinmilne/ Website where folks can obtain the Mainframe Offensive Security Tester course, download the Gibson Mainframe Simulator or purchase the Cyber Coach labs: https://offensivesec.org Try out some free labs Kev has created: https://cyber-coach-labs-bd010da0.base44.app/FreeLabs John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Cybersecurity is essential for protecting digital assets. Social engineering remains a significant threat today. Red teaming involves advanced penetration testing techniques. Understanding networking is crucial for aspiring penetration testers. Mainframes are still vital for processing transactions. AI can both aid and complicate cybersecurity efforts. Continuous investment in cybersecurity is necessary for businesses. Penetration testing should be a standard practice for all companies. Security requires a layered defense approach. Conferences are valuable for staying updated in cybersecurity.
Internet and technology 4 months
0
0
0
49:07

Career growth strategies in software engineering: start-ups vs bigtech

Episode in Coding Chats
Coding Chats episode 48 - John Crickett and Gilad Naor explore the differences between working at startups and big tech companies, discussing the pros and cons of each environment. They delve into career growth, the importance of mentorship, and the balance between specialization and generalization in tech careers. The discussion also covers the management track versus individual contributor roles, the role of managers in creating positive change, and the significance of interview preparation. Additionally, they highlight the value of side projects and the necessity for managers to build empathy through understanding various roles within their organizations. The conversation concludes with advice on taking ownership of one's career and the importance of continuous personal development. Chapters 00:00 Startups vs. Big Tech: A Comparative Overview 03:19 Navigating Career Growth in Tech 06:08 The Reality of Big Tech Work 09:06 Specialization vs. Generalization in Tech Careers 11:39 The Management Track: Leadership vs. Management 14:28 Creating Positive Change as a Manager 17:14 Interview Preparation for Managers 20:33 Choosing the Right Stories for Interviews 26:59 Navigating Conflict in Technical Leadership 29:12 Addressing Gaps in Management Experience 32:15 Interview Strategies for Senior Roles 35:17 Demonstrating Depth of Experience in Interviews 38:52 The Role of Side Projects in Personal Development 42:02 The Importance of Technical Empathy in Management 47:32 Taking Ownership of Your Career Gilad's Links: Gilad's LinkedIn: https://www.linkedin.com/in/giladnaor Gilad's Website: https://managementdeltas.com/ John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways Working at startups allows for a broader range of experiences. Big tech offers more mentorship opportunities for career growth. The term 'startup' can encompass a wide range of company sizes and structures. Career growth in tech often requires navigating internal mobility. Specialization can provide a competitive advantage in tech careers. Management and leadership are distinct roles that require different skill sets. Interview preparation is crucial for both managers and individual contributors. Building empathy as a manager involves understanding various roles in the organization. Side projects can help maintain technical skills and foster personal development. Taking ownership of your career is essential for success.
Internet and technology 4 months
0
0
0
48:33

How to get jobs to come to you - a guide for staff+, directors, VPEngs and CTOs #jobhunting

Episode in Coding Chats
Coding Chats episode 47 - Warren Beazley shares his extensive experience in recruiting CTOs and outlines a five-step process designed to help tech leaders navigate the job market effectively. He emphasizes the importance of understanding one's value proposition, building a strong network, creating engaging content, and actively engaging with potential employers. The discussion highlights the challenges posed by traditional job searching methods and the impact of AI on recruitment, while offering practical strategies for candidates to stand out in a competitive landscape. Chapters 00:00 Introduction to the Five-Step Process 10:53 Understanding the Job Market Dynamics 19:08 The Importance of Value Proposition 27:57 Building Your Network Effectively 36:17 Creating Engaging Content on LinkedIn 42:46 Leveraging Personal Experiences for Content Creation 45:32 The Importance of Storytelling in Professional Growth 48:20 Detailing Achievements for Interviews 50:12 Building a Library of Personal Stories 52:49 Understanding LinkedIn's Algorithm and Engagement 54:26 Ethical Stalking: Engaging with New Connections 58:16 The Power of Meaningful Comments 01:00:50 Recap of Five Steps for LinkedIn Success 01:03:39 Transforming Your LinkedIn Profile into a Landing Page 01:08:04 Creating Value Through Content and Networking John's Links: John's LinkedIn: https://www.linkedin.com/in/johncrickett/ John’s YouTube: https://www.youtube.com/@johncrickett John's Twitter: https://x.com/johncrickett John's Bluesky: https://bsky.app/profile/johncrickett.bsky.social Check out John's software engineering related newsletters: Coding Challenges: https://codingchallenges.substack.com/ which shares real-world project ideas that you can use to level up your coding skills. Developing Skills: https://read.developingskills.fyi/ covering everything from system design to soft skills, helping them progress their career from junior to staff+ or for those that want onto a management track. Takeaways The traditional job search process is broken and needs a new approach. Understanding your value proposition is crucial for job seekers. Networking is essential; aim to connect with relevant individuals daily. Quality content creation is more important than quantity. Engaging with your network can lead to new opportunities. AI screening tools often miss qualified candidates due to keyword matching. Your LinkedIn profile should serve as a landing page, not just a CV. Consistency in posting content on LinkedIn can enhance visibility. Building relationships through meaningful comments is key to networking. Candidates should view themselves as a solution to potential employers' problems.
Internet and technology 4 months
0
0
0
01:13:28
You may also like View more
Pioneros For Life Bienvenido al único videopódcast grabado a bordo del Volvo EX90, el coche más seguro del mundo. Un espacio íntimo, elegante y acondicionado acústicamente, donde las buenas ideas se sientan al lado del conductor y las conversaciones arrancan sin rodeos. Aquí no hablamos del futuro: hablamos de cómo vivir mejor ahora. Con calma. Con intención. Con estilo. En cada episodio, Juanma Ortega recibe a personas que viven con intención: creadores, científicos, chefs, tecnólogos, músicos, emprendedores… Gente brillante que te inspira sin ruido, con historias reales y visión de futuro aplicada al presente. Aquí la tecnología no se presume: se pone al servicio de una vida más equilibrada, más consciente, más libre. Porque vivir bien hoy significa elegir con criterio —desde lo que conduces hasta lo que escuchas—. 🟢 Bienestar real 🟢 Cultura con fondo 🟢 Tecnología útil y humana 🟢 Sostenibilidad sin discurso 🟢 Y una experiencia premium que no presume Pioneros For Life. Porque vivir mejor no empieza con más, sino con mejor. Updated
TISKRA Podcast sobre tecnología de consumo y software. Análisis estratégico del mundo Apple, Google, Microsoft, Tesla y Amazon así como de todos aquellos productos de entretenimiento y su posible impacto económico y social. Conducido por @JordiLlatzer Updated
monos estocásticos monos estocásticos es un podcast sobre inteligencia artificial presentado por Antonio Ortiz (@antonello) y Matías S. Zavia (@matiass).  Sacamos un episodio nuevo cada jueves. Puedes seguirnos en YouTube, LinkedIn y X. Más enlaces en cuonda.com/monos-estocasticos/links Hacemos todo lo que los monos estocásticos saben hacer: coser secuencias de formas lingüísticas que hemos observado en nuestros vastos datos de entrenamiento según la información probabilística de cómo se combinan. Updated
Go to Internet and technology