SlideShare a Scribd company logo
1 of 102
Download to read offline
Doing the Work
Or, Amy Pretends You Care About Interface
         Deisgn (But Not Really)
Amy
Ruby & JavaScript Developer
Amy
Teacher of Programming
Amy
Amy
Crusader for Cheerful Software
Wait—
 "Cheerful Software?"
Wait—
 "Cheerful Software?"
 Are we hot-shot software developers or are we
            kindergarten teachers?
Software should be
like a great concierge.
Software should be
like a great concierge.
  Always there when you need it, doing things
   for you before you knew you needed them
  done, hovering in the background, ready to
 spring into action. Deferent, but not a brown-
   noser. And looking great in a 3-piece suit.
If software
development was
  Magnum PI...
Magnum
   the car
   the smirk
   the chest hair
   the girls
   the TV show
   the goofy charm
Higgins
    the resources
    the control / power
    the connections
    the snarky jokes
    the (awesome) accent
    the style
If software
development was
  Magnum PI...
End User
End User

Developer
Magnum
   the car
   the smirk
   the chest hair
   the girls
   the TV show
   the goofy charm
knows kung-fu
knows kung-fu
saves Magnum's ass
knows kung-fu
saves Magnum's ass
makes Magnum possible
If software
development were a
     seesaw...
Developer   End User
Developer   End User
Seesaws
have a fulcrum (point of leverage)
go up
go down
require teamwork
and equal effort
fun?
Effort
Effort
Effort




         Effort
Weeee!
Weeee!




Weeee!
And nothing says "good karma,
 happy users, and profit" like end
         users saying...



         Weeee!        Weeee!
                Weeee!      Weeee!
Weeee!
Developer                        End User




So, what's this here point of leverage?
Developer           End User




            Code!
Developer                End User




              Code!

(Specifically: commitment & effort)
Code!


Going the extra mile so the
  user doesn't have to...
Going the extra mile...
  accepting many types of input
  formatting data & error recovery
  pre-finding what's useful
  avoiding configuration
  integrating with other services
  syncing
  elimination of repetition
Going the extra mile...
                                  g !
                              in
  accepting many types of input
                            y
                            n o
  formatting data & error n
                        a recovery
                       nd
                     A
                   !
  pre-finding what's useful
  selection workG
             I N
           R
  integration
         -
      O
  syncing
    B
  reduction of repetition
If software
development were a
   mathematical
     problem...
1x Developer   16x End Users
1 hour        - 15 minutes
x 1 developer   x 16 end users
1 hour in   4 hours out
developer      end users
Going the extra mile so the user
       doesn't have to...
Spotting potential points of
    powerful leverage
Spotting potential points of
    powerful leverage
  ... and pushing
Developer   End User
Developer                     End User


            effort required
Developer                     End User


            effort required

               Balanced
Developer                     End User


                  effort required

High Effort          Balanced          High Effort
for developer                           for end user
Developer   End User
Developer              End User




     lazy developers are lazy
end users tear their hair out & die
Developer   End User
Developer            End User




dedicated developers spend effort
   and their end users win big
"good karma, happy
    users, and profit"

         Weeee!        Weeee!
                Weeee!      Weeee!
Weeee!
Interface != Graphical
  Developers are "end users" too
True greatness is measured by
  how much freedom you give to
  others, not by how much you
  can coerce others to do what
  you want.

—Larry Wall
(thanks Tim)
Where to push?
Going the extra mile...
  accepting many types of input
  formatting data & error recovery
  pre-finding what's useful
  avoiding configuration
  integrating with other services
  syncing
  elimination of repetition
Finding points of leverage
   accepting many types of input
   formatting data & error recovery
   pre-finding what's useful
   avoiding configuration
   integrating with other services
   syncing
   elimination of repetition
& anywhere there's
repetition repetition
repetition repetition
repetition repetition
1 Open email client
2 Search for emails by "Bob"

3 Look for ones with paperclips

4 Open first email, look at filename
       Is it the one I want?

      No
5 Open next email, look at filename
     Is it the one I want?

     No
6 Open next email, look at filename
If people are doing things over
 and over again, the computer
 should be doing it.

Machines are good at repetitive
tasks.

              —Yehuda Katz, leader of Ruby on Rails
& anywhere there's
 repetition repetition
 repetition repetition
repetition repetietion
Positive Examples
Scripting Languages
    Good Frameworks
banana:~ amy$ git statsu

git: 'statsu' is not a git‐command. 
See 'git ‐‐help'.

Did you mean this?
  status
1 Open the container.
     Does it have what I want?

      No

2 Open next next container.
     Does it have what I want?

      No
3 Open next container.
      Does it have what I want?

      No
1 Open the App.

2 Go to the File menu.

3 Go to Recent Files submenu.
         Does it have what I want?

        No                   Yes!
4a   Go look for it          4b   Open it

5 Open folders...

6 Open more folders...
7 Open more folders...
Recipe for Success
 1   Find a point of leverage
Finding points of leverage
   accepting many types of input
   formatting data & error recovery
   pre-finding what's useful
   avoiding configuration
   integrating with other services
   syncing
   elimination of repetition
Recipe for Success
 1   Find a point of leverage
2    Push hard on it
dUser
             En

   elo per
Dev
Effort

                        dUser
                      En

            elo per
         Dev
Effort                Weeee!

                                 dUser
                               En

            elo per
         Dev
Recipe for Success
 1   Find a point of leverage
2    Push hard on it
3    ... which bends time
1 hour in   4 hours out
developer      end users
Recipe for Success
 1   Find a point of leverage
2    Push hard on it
3    ... which bends time
4 ... which helps everyone win
good karma, happy
      users, profit


         Weeee!        Weeee!
                Weeee!      Weeee!
Weeee!
good karma, happy
      users, profit
   and a better world.

         Weeee!        Weeee!
                Weeee!      Weeee!
Weeee!
Thanks.
Now go out and leverage!

    http://slash7.com
       @amyhoy

More Related Content

Recently uploaded

Recently uploaded (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Featured

Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Featured (20)

Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 

Doing The Work, or, Applying Leverage for Great Products