Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Is efficiency a good thing?

Is efficiency a good thing?

We live in a golden age of efficiency. Our modern cloud native applications have tiny footprints. Our infrastructure is now code. Everything is automated, even creative endeavours like writing and artwork. And yet. Despite all the optimisation, despite all the automation, many of us feel unproductive - and it’s worse than that. Busywork hasn’t gone away, our systems are stretched so thin any disturbance destabilises them, our people are burning out, and IT consumes more resources than ever before. What’s going on? Was efficiency the wrong goal, or are we just doing it wrong?

Holly Cummins

November 24, 2023
Tweet

More Decks by Holly Cummins

Other Decks in Programming

Transcript

  1. @holly_cummins #RedHat now senior principal software engineer helping to build

    Quarkus 2007 let’s make garbage collection more efficient!
  2. @holly_cummins #RedHat now senior principal software engineer helping to build

    Quarkus 2007 let’s make garbage collection more efficient! 2015 lean and xp makes your team more efficient!
  3. @holly_cummins #RedHat now senior principal software engineer helping to build

    Quarkus 2007 let’s make garbage collection more efficient! 2015 lean and xp makes your team more efficient! 2022 quarkus is wonderfully efficient!
  4. @holly_cummins #RedHat what we sold “this provisioning software is broken”

    10 minute provision-time 3 month provision- time what the client thought they’d got
  5. @holly_cummins #RedHat what we sold “this provisioning software is broken”

    10 minute provision-time 3 month provision- time what the client thought they’d got the reason 84-step pre-approval process
  6. @holly_cummins #RedHat https://blog.linkedin.com/2017/august/3/making-linkedin-more-accessible-via-linkedin-lite modern web is so inefficient it is

    useless for part of its audience “my heart sank … our new feature failed to load because of poor internet connectivity”
  7. #RedHat @[email protected] 25% of 16,000 servers doing no useful work

    https://www.anthesisgroup.com/wp-content/uploads/2019/11/Comatose-Servers-Redux-2017.pdf zombie servers
  8. #RedHat @[email protected] 29% of 4,000 active less than 5% of

    the time https://www.anthesisgroup.com/wp-content/uploads/2019/11/Comatose-Servers-Redux-2017.pdf under-utilised servers
  9. #RedHat @[email protected] the average server: 12 - 18% of capacity

    30 - 60 % of maximum power https://www.nrdc.org/sites/default/files/data-center-efficiency-assessment-IB.pdf
  10. @holly_cummins #RedHat our amazing product makes your team more efficient

    true story from the software marketing trenches
  11. @holly_cummins #RedHat our amazing product makes your team more efficient

    ooh, no, definitely don’t want that true story from the software marketing trenches
  12. @holly_cummins #RedHat our amazing product makes your team more efficient

    ooh, no, definitely don’t want that and it’s yours for only – wait, what? true story from the software marketing trenches
  13. @holly_cummins #RedHat our amazing product makes your team more efficient

    ooh, no, definitely don’t want that and it’s yours for only – wait, what? if we became more efficient our headcount would be reduced true story from the software marketing trenches
  14. @holly_cummins #RedHat our amazing product makes your team more efficient

    ooh, no, definitely don’t want that and it’s yours for only – wait, what? if we became more efficient our headcount would be reduced my status would be lower true story from the software marketing trenches
  15. @holly_cummins #RedHat our amazing product makes your team more efficient

    ooh, no, definitely don’t want that and it’s yours for only – wait, what? if we became more efficient our headcount would be reduced my status would be lower true story from the software marketing trenches …
  16. @holly_cummins #RedHat if I tell my boss about an inefficiency,

    what if my friends get laid off because less staff are needed after it’s fixed?
  17. @holly_cummins #RedHat takeaway drive out inefficiency ⁃ stupid processes ⁃

    bloated software ⁃ terrible resource utilisation
  18. @holly_cummins #RedHat takeaway drive out inefficiency ⁃ stupid processes ⁃

    bloated software ⁃ terrible resource utilisation make sure incentive structures do not reward inefficiency
  19. @holly_cummins #RedHat “There is nothing so useless as doing efficiently

    that which should not be done at all." Peter Drucker
  20. @holly_cummins #RedHat let’s … set the priority to ‘medium’! defect

    triage team could we turn this whole meeting into a small shell script?
  21. @holly_cummins #RedHat let’s … set the priority to ‘medium’! defect

    triage team could we turn this whole meeting into a small shell script? what if … we just got rid of the priority field?
  22. @holly_cummins #RedHat instead of using ai to fill in boilerplate,

    could we just … get rid of the boilerplate?
  23. @holly_cummins #RedHat example: logging without quarkus package com.example; import org.jboss.logging.Logger;

    public class MyService { private static final Logger log = Logger.getLogger(MyService.class); public void doSomething() { log.info("It works!"); } }
  24. @holly_cummins #RedHat example: logging without quarkus package com.example; import org.jboss.logging.Logger;

    public class MyService { private static final Logger log = Logger.getLogger(MyService.class); public void doSomething() { log.info("It works!"); } } import io.quarkus.logging.Log; Log with quarkus
  25. @holly_cummins #RedHat “What is the world record for crossing the

    English channel entirely on foot?” https://www.sify.com/ai-analytics/the-hilarious-and-horrifying-hallucinations-of-ai/
  26. @holly_cummins #RedHat “What is the world record for crossing the

    English channel entirely on foot?” “The world record for crossing the English Channel entirely on foot is held by Christof Wandratsch of Germany, who completed the crossing in 14 hours and 51 minutes on August 14, 2020.” https://www.sify.com/ai-analytics/the-hilarious-and-horrifying-hallucinations-of-ai/
  27. @holly_cummins #RedHat “What is the world record for crossing the

    English channel entirely on foot?” “The world record for crossing the English Channel entirely on foot is held by Christof Wandratsch of Germany, who completed the crossing in 14 hours and 51 minutes on August 14, 2020.” https://www.sify.com/ai-analytics/the-hilarious-and-horrifying-hallucinations-of-ai/ bullshit as a service
  28. @holly_cummins #RedHat “The submission accused firms of involvement in scandals

    that either didn’t exist or that they had nothing to do with. It referenced partners being dismissed by firms that had never employed them.”
  29. @holly_cummins #RedHat “Rust is the hardest programming language up to

    that time I’ve met.” -Vorner https://vorner.github.io/difficult.html
  30. @holly_cummins #RedHat language design trade-offs low-level control higher-level abstractions “zero

    overhead”, performant developer productivity raw performance may not actually matter, but all developers pay the cost of the extra cognitive burden
  31. @holly_cummins #RedHat it is not sensible to rewrite all our

    business apps in rust, no matter how efficient it is
  32. @holly_cummins #RedHat less efficient (more legs than needed) highly efficient

    (optimum number of legs) no resiliency resilient #RedHat
  33. @holly_cummins #RedHat less efficient (more legs than needed) highly efficient

    (optimum number of legs) resiliency is inefficient no resiliency resilient #RedHat
  34. @holly_cummins #RedHat “Your brain at positive is 31% more productive

    than your brain at negative, neutral or stressed. " https:/ /hbr.org/2012/01/positive-intelligence
  35. @holly_cummins #RedHat "Individuals [who just watched a comedy video] have

    approximately 12% greater productivity." https:/ /www2.warwick.ac.uk/fac/soc/economics/staff/eproto/workingpapers/happinessproductivity.pdf
  36. @holly_cummins #RedHat queueing theory says systems need to run under-capacity

    to cope psychology says we need idle time; maths agrees
  37. @holly_cummins #RedHat if arrival rates are low, servers will be

    idle queue arrival process servers completed work
  38. @holly_cummins #RedHat utilisation http://brodzinski.com/2015/01/slack-time-value.html cost delay cost cost of idle

    capacity assuming Poisson distribution of arrivals 80% utilisation → 90% utilisation: wait times double
  39. @holly_cummins #RedHat speed vs predictability trains could go faster than

    the schedule needs them to but then any minor delay is irrecoverable
  40. @holly_cummins #RedHat takeaway - measure thoughtfully; you will get what

    you measure - remember the paradoxes: - efficiency is not always efficient - fun and idleness improves efficiency
  41. @holly_cummins #RedHat what problem are we trying to solve? efficient

    cool and bouncy more efficient squashy and blobby
  42. @holly_cummins #RedHat tl;dpa ⁃ our processes, development, and software can

    all be more efficient ⁃ do look for waste, and get rid of it ⁃ don’t treat people like machines ⁃ beware the illusion of efficiency ⁃ remember that people and systems function better with some idle time (too long; didn’t pay attention)