Swizec Teller - a geek with a hatswizec.com

Senior Mindset Book

Get promoted, earn a bigger salary, work for top companies

Senior Engineer Mindset cover
Learn more

    Swizec's articles in the "complexity" category

    I aim to write mindblowing emails with real insight into the career and skills of a modern software engineer. "Raw and honest from the heart!" as one reader described them.

    Below are 12 articles filed under complexity. Enjoy ❤️

    DRY – the common source of bad abstractions

    Swizec reveals the hidden pitfalls of overusing the DRY principle in coding, leading to bad abstractions. Discover how to write adaptable, efficient code that avoids these common traps.

    You can't side-quest a product

    Here's a trap that talented engineers fall into all the time. It creates frustration, burnout, and the genre of tweets that read like "Why don't people care about the amazing work I'm doing".

    From trivial to complex – 4 software quadrants

    You can classify software projects into 4 quadrants from trivial to complex

    The efficacy of TypeScript

    TypeScript may streamline code navigation and catch semantic errors, but it doesn't guarantee fewer bugs or faster fixes.

    Solve the problem, not a different more difficult problem

    Solve the problem at hand, not the one you imagine might come next. A simple fix now often beats a complex one later.

    Finding modules in a Big Ball of Mud with ChatGPT

    Detangling a Big Ball of Mud is hard. You have to find domain boundaries where none exist. Looks like AI can help 🤩

    Followup answers to Forget complicated code, focus on the system

    Why are utility files bad? How do you recognize architectural complexity? What the hell is a transitive dependency?

    Forget complicated code, focus on the system

    Clean code matters, but it's the architectural complexity that truly impacts your productivity and bug count. Focus on simplifying the system, not just the code.

    Why taming architectural complexity is paramount

    Unravel the hidden costs of architectural complexity in software engineering and learn practical strategies to tackle it. Boost productivity, reduce defects, and improve staff retention with insights from an MIT PhD thesis.

    Two types of complexity and their impact

    Complicated code slows down junior devs, while complex systems impact senior devs more. Focus on managing system complexity & dependencies, not just simplifying code.

    You can't fix the wrong abstraction

    Unlock the secrets to combating architectural complexity in software development and learn to identify and fix the wrong abstraction. Boost productivity, reduce bugs, and retain more staff.

    Created by Swizec with ❤️