$30 off During Our Annual Pro Sale. View Details »

Ignorance, Incompetence and Insignificance: The Ingredients To Build Great Software

Ignorance, Incompetence and Insignificance: The Ingredients To Build Great Software

Some heuristics to build better software, quicker by learning from the past, the present and the future in your software projects.

Mike McQuaid

July 27, 2022
Tweet

More Decks by Mike McQuaid

Other Decks in Technology

Transcript

  1. 🤨 ignorance,


    😫 incompetence +


    😕 insignificance
    The Ingredients to Build Great Software


    @MikeMcQuaid

    View Slide

  2. me


    👋

    View Slide

  3. Principal Engineer in Communities
    (GitHub Engineer 2013 – Present)

    View Slide

  4. Project Leader on Homebrew
    (Homebrew Maintainer 2009 – Present)

    View Slide

  5. the best project


    🎉

    View Slide

  6. avoiding legacy
    systems and building
    nicely from scratch



    View Slide

  7. doing things right the
    first time and
    avoiding failure



    View Slide

  8. well-staffed team
    with well-planned
    backlog of work



    View Slide

  9. project result:


    💩

    View Slide

  10. ignorance


    🤨

    View Slide

  11. you know


    everything


    View Slide

  12. you know


    everything


    nothing

    View Slide

  13. (How I Get Things Done)


    https://mmq.lol/how

    View Slide

  14. (G.K.)


    Chesterton’s


    Fence

    View Slide

  15. “this fence is useless,
    let’s remove it!”


    🙅

    View Slide

  16. “this fence was used
    for keeping sheep
    out, let’s remove it!”


    🙌

    View Slide

  17. “this code is useless,
    let’s remove it!”


    🙅

    View Slide

  18. “this code was used
    for keeping bots


    out, let’s remove it!”


    🙌

    View Slide

  19. “this code was used
    for ….?


    let’s be careful…”


    🥳

    View Slide

  20. incompetence


    😫

    View Slide

  21. do things


    right the


    first time

    View Slide

  22. do things


    wrong the


    first time

    View Slide

  23. https://timharford.com/2022/05/cautionary-tales-
    bless-the-coal-black-hearts-of-the-broadway-critics/

    View Slide

  24. View Slide

  25. View Slide

  26. do things


    right the


    tenth time

    View Slide

  27. you will fail


    View Slide

  28. you will fail


    privately


    View Slide

  29. you will fail


    publicly


    (unless privately)

    View Slide

  30. failing


    privately


    ==


    low cost

    View Slide

  31. failing


    privately


    ==


    low traffic

    View Slide

  32. failing


    publicly


    ==


    high traffic

    View Slide

  33. insignificance


    😕

    View Slide

  34. huge ship!


    🛳

    View Slide

  35. huge team!


    🏢

    View Slide

  36. huge scope!


    🔭

    View Slide

  37. huge risk!


    💣

    View Slide

  38. tiny ship!


    🛶

    View Slide

  39. tiny team!


    👭

    View Slide

  40. tiny scope!


    🔬

    View Slide

  41. tiny risk!


    😌

    View Slide

  42. your MVP


    is not


    very M

    View Slide

  43. your MVP


    is not


    released yet

    View Slide

  44. the worst project


    🎉

    View Slide

  45. built on legacy
    systems with little
    understanding



    View Slide

  46. shipping hacks to
    clean up later and
    failing early, often



    View Slide

  47. under-staffed team
    doing unplanned


    and backlog work



    View Slide

  48. project result:


    🥳

    View Slide

  49. View Slide

  50. 😫 assumed ignorance


    😫 expected incompetence


    😕 initial insignificance

    View Slide

  51. 🧑🎓 assumed ignorance


    🧘 expected incompetence


    🔍 initial insignificance

    View Slide

  52. questions?


    🙋


    https://mmq.lol/best/


    @MikeMcQuaid


    [email protected]

    View Slide