Coding Chats

Coding Chats

By John CrickettTechnology
Download on the App Store

Coding Chats episodes

  • Exploring the Zig programming language with Loris Cro - Part 1 of 2

    Coding Chats episode 31 - John Crickett interviews Loris Cro about the Zig programming language and the Zig Foundation.

    They discuss the innovative features of Zig, including its unique approach to metaprogramming with Comp time, its role as a C and C++ compiler, and the benefits of using Zig for cross-compilation.

    Loris explains the structure and mission of the Zig Foundation, emphasizing its independence from big tech and its commitment to fostering a vibrant community. The conversation also delves into the development of the Zig compiler, its transition to being self-hosted, and the future of Zig in the programming landscape.


    Chapters

    00:00 Introduction to Zig Programming Language

    03:31 Understanding Nonprofit Structure and Community Engagement

    06:22 Innovative Features of Zig: Comptime and Cross-Compilation

    09:02 Exploring Metaprogramming with Comptime

    11:50 Benefits of Using Zig for C and C++ Projects

    15:07 Zig's Unique Approach to Compiler Design

    18:05 Incremental Compilation and Performance Improvements

    37:01 The Promise of Faster Compilation

    38:20 Learning Zig Through Projects


    Loris's links:

    https://www.linkedin.com/in/kristoff-it/


    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

    Zig is a lower-level programming language that provides raw access to machine power.

    The Zig Foundation operates as a nonprofit organization without backing from big tech.

    Community engagement is crucial for the growth and success of Zig.

    Comptime is a unique feature of Zig that allows for innovative metaprogramming.

    Zig supports cross-compilation for C and C++ projects, enhancing portability.

    The Zig compiler has transitioned to being self-hosted, improving productivity.

    Zig aims to provide instant builds for a better development experience.Incremental compilation and in-place binary patching are key features being developed.

    Zig's approach to metaprogramming is clearer and more manageable than traditional macros.

    The future of Zig looks promising with ongoing improvements in compiler performance.

    39 min
  • Moving to a portfolio career - working as a technical board advisor and non-executive director.

    Coding Chats episode 30 - Tom Hill and John Crickett discuss Tom's transition into technical advisory roles, exploring the concept of a portfolio career, the differences between fractional executives and board advisors, and the essential skills required for success in these positions. He emphasizes the importance of communication, understanding business dynamics, and navigating the complexities of the job market, particularly in the context of AI's impact on software engineering. Tom also shares insights from his unique career journey, from sound engineering to becoming a tech advisor.


    Chapters

    00:00 Navigating Career Transitions: From Tech to Advisory Roles

    03:24 Understanding Fractional Executives vs. Board Advisors

    06:14 The Role of a Board Advisor: Responsibilities and Engagements

    09:00 The Importance of Communication in Advisory Roles

    12:06 Politics and Influence in Leadership

    14:42 AI's Impact on Software Engineering: Myths and Realities

    17:50 The Journey to Becoming a Technical Advisor

    28:11 Navigating the Job Market Challenges

    30:51 The Rise of Niche Recruitment

    34:08 Transitioning to Tech Advisory

    37:03 Understanding Business Financials

    43:08 From Music to Tech: A Unique Journey


    Tom's Links:

    Tom's LinkedIn https://www.linkedin.com/in/tomhill-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:

    Tom Hill has embraced a portfolio career, combining various advisory roles.

    Fractional executives focus on outcomes rather than just time spent.

    Board advisors provide guidance without operational involvement.

    Effective communication is crucial for translating technical concepts to non-technical stakeholders.

    Politics is inherent in business dynamics, and navigating it is essential.

    AI serves as an efficiency tool but won't replace software engineers soon.

    The job market is currently chaotic, with many candidates and roles available.

    Building skills for advisory roles involves understanding business fundamentals.

    Tom's career path reflects a journey of continuous learning and adaptation.

    Transitioning from technical roles to advisory positions requires a shift in perspective.

    54 min
  • Leadership, introverts, empathy in software engineering and dragons!

    Coding Chats episode 29 - John Crickett and Sarah Gruneisen delve into the complexities of leadership, particularly in the engineering field. They discuss the challenges faced by individuals transitioning from technical roles to leadership positions, emphasizing the need for proper training and emotional intelligence. Sarah shares her insights on the importance of self-reflection, vulnerability, and understanding different personality types, including introverts as effective leaders. The discussion also touches on the pitfalls of agile methodologies when not implemented correctly and the necessity of connecting engineers with business goals to foster a productive environment.


    Chapters

    00:00 The Transition to Leadership

    03:50 Challenges of Leadership Training

    08:35 The Importance of Self-Awareness

    13:00 Empowering Teams and Leadership Styles

    16:42 The Journey to Leadership Coaching20:52 Understanding Emotional Intelligence

    29:36 Empathy and Its Many Forms

    33:09 Introverts as Effective Leaders

    35:39 The Power of Introverted Leadership

    40:28 Agile vs. Not Agile: Understanding the Framework

    50:34 Connecting Engineers with Business Needs

    55:36 Embracing the Dragon Within: Leadership and Empathy


    Sarah's Links:


    Sarah's Book: https://www.avagasso.com/shop

    Sarah's Leadership program: https://www.avagasso.com/lead

    Sarah's Services: https://www.avagasso.com/offers


    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:

    Many individuals promoted to leadership lack proper training.

    Emotional intelligence is crucial for effective leadership.

    Self-reflection and vulnerability are key traits for leaders.Introverts can be effective leaders with the right skills.

    Agile methodologies often fail due to lack of understanding.

    Leaders should connect with their teams on a personal level.

    Empathy can be developed and is essential for leadership.

    Engineers need to understand business needs to thrive.

    Leadership is about inspiring and empowering others.

    Creating a safe environment for teams is vital for productivity.

    57 min
  • Zig, D, C++ programming languages and pair programming

    Coding Chats episode 28 - Jonathan Marler discusses his journey as a programmer, focusing on his experiences with the Zig and D programming languages.


    He shares insights into the philosophies behind these languages, their applications in software development, and the challenges of cross-compilation. The discussion also covers his transition from a large corporation (HP) to a small startup (Tuple), the importance of pair programming, and the handmade philosophy in software development. Jonathan emphasizes the value of simplicity in programming languages and tools, and he shares practical examples of how Zig has been beneficial in his work.


    Jonathan's Links:

    https://github.com/marler8997

    https://twitch.tv/johnnymarler

    https://www.youtube.com/@jonathanmarler5808

    https://www.linkedin.com/in/jonathan-marler-467585159/

    You can find Tuple here: https://tuple.app


    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

    Jonathan has been an engineer for about 15 years. He transitioned from D to Zig for its simplicity.

    Zig's philosophy focuses on keeping the language small and simple.

    D is a kitchen sink language with many features.

    Zig aims to circumvent the standard C library.

    Tuple is a tool for pair programming that enhances collaboration.

    Pair programming can be more motivating and effective for problem-solving.

    The handmade philosophy emphasizes writing good software with longevity.

    Zig allows for cross-compilation out of the box.

    Jonathan enjoys working in a small company for its impact and motivation.

    45 min
  • Go programming, Typescript, Python, WASM and AI in software development

    Coding Chats episode 27 - John Crickett and Lane Wagner discuss the inception and evolution of Boot.dev, a platform designed to teach backend development, particularly focusing on the Go programming language.


    He shares insights into the challenges of learning backend development compared to frontend, the appeal of Go for its simplicity and performance, and his experiences transitioning to TypeScript.


    Lane also addresses the role of Python in learning programming fundamentals and shares his thoughts on the impact of AI on the software development industry, emphasizing that while AI is a valuable tool, it is not a replacement for human engineers.


    Lane's Links

    https://www.linkedin.com/in/wagslane/

    https://www.boot.dev/


    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.

    40 min
  • Building HPC software with CUDA

    Coding Chats episode 26 - John Crickett talks to Dennis Kennetz about:

    the world of High Performance Computing (HPC), exploring its definition, differences from traditional development, and the significance of batch scheduling. They discuss the role of CUDA and GPUs in enhancing computational efficiency, the challenges of data movement, and the importance of correctness in software development. The conversation also highlights the balance between developer time and compute time, emphasizing the need for effective resource management in HPC applications. Finally, they provide insights into resources for learning more about HPC and CUDA programming.

    Dennis's Links:

    • LinkedIn - https://www.linkedin.com/in/dennis-kennetz/
    • Newsletter - https://substack.com/@dkennetz
    • Github with CUDA Examples - https://github.com/drkennetz/cuda_examples


    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.


    48 min
  • Using your network and posting on LinkedIn to find a job and the impact of AI on software engineers

    Coding Chats episode 25 - Eric Mariasis and John Crickett discuss the challenges faced by individuals entering the software engineering field, emphasizing the importance of perseverance and continuous learning. He highlights the significance of networking, building genuine relationships, and leveraging past interview experiences for future opportunities. Eric also shares insights on the value of sharing knowledge on platforms like LinkedIn, the benefits of freelancing, and the role of mentorship in career development. The discussion touches on the impact of AI on job roles and the future of work, particularly in the context of remote collaboration.

    GUEST's Links:

    • Eric's LinkedIn - www.linkedin.com/in/careercodepro
    • Eric's Substack - https://substack.com/@ericmariasis1?r=5h4vvx
    • Eric's Website - https://careercodepro.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.

    51 min
  • How to create your own luck as a software engineer to get more job opportunities or promotions

    Coding Chats episode 24 - how do you create your own luck so you get more job opportunities and promotion opportunities as a software engineer? In this episode John discusses how software engineers can create their own luck in their careers. He introduces the concept of 'luck surface area,' which suggests that the more passionate and active you are in your field, the more opportunities will arise. He emphasizes the importance of building a personal brand, sharing expertise, and networking to enhance career growth and seize serendipitous opportunities.

    Takeaways

    You can create your own luck as a software engineer.
    The amount of serendipity is directly proportional to your passion and communication.
    Luck is equal to doing multiplied by telling. Building a personal brand is essential for career growth. Engaging with your audience can clarify your thoughts and improve your skills.
    Networking both online and offline increases your luck surface area.
    Sharing original content can resonate with your audience and create opportunities.
    Internal communication within your organization can promote your personal brand.
    Maintaining relationships with knowledgeable individuals raises your own expertise.
    Documenting achievements helps in career advancement and job applications.

    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

    Newsletters:

    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.

    8 min
  • Transitioning to tech leadership and the importance of soft skills for software engineers

    Coding Chats Episode 23 - Anemari Fiser and John Crickett explore the software engineering mindset, the importance of asking questions, the differences between consultancy and product companies, the significance of soft skills in tech, and the challenges of making work visible.

    • The Engineering Mindset: An Overview
    • The Importance of Asking Questions
    • Consultancy vs. Product Companies: A Comparative Insight
    • The Transition from Technical to Non-Technical Roles
    • Building High-Performing Teams: The Role of Leadership
    • Navigating the Challenges of Leadership Transitions
    • Visibility and Impact in Work
    • Navigating Career Paths: IC vs Management
    • The Importance of Soft Skills
    • Coaching vs Mentoring: Finding Your Path
    • Developing Soft Skills: Starting Points and Strategies
    • Courage to Change: Adapting to New Environments


    Anemari's Links:

    • LinkedIn - https://www.linkedin.com/in/anemari-fiser/
    • O’Reilly book - Leveling Up as a Tech Lead (Early release version) - https://www.oreilly.com/library/view/leveling-up-as/9781098177508
    • O’Reilly online course - Soft Skills for Tech Leads - https://learning.oreilly.com/course/soft-skills-for/0642572043995/
    • Level up as a Tech Lead Newsletter - https://anemarifiser.substack.com
    • Coaching 1-1 - https://anemarifiser.substack.com/p/1-1-coaching


    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.


    52 min
  • How to find a software engineering job by using LinkedIn to network with hiring managers.

    Coding Chats Episode 22 - John talks to Anna Miller about:

    • finding a job as a software engineer and how you can use LinkedIn to network with hiring managers
    • treating your job hunt and career like a business
    • using data to identify and overcome the bottlenecks to finding your next role
    • overcoming the fear of rejection- creating an effective LinkedIn profile

    Anna's Links:

    • https://tinyurl.com/ccm-training

    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.

    42 min

About Coding Chats

From the publisher's feed

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…

More shows like Coding Chats

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

286 Listeners