SlideShare ist ein Scribd-Unternehmen logo
1 von 19
The Obstacles
of
Developer Productivity
Laurence Chen
blog: replware.medium.com
website: replware.dev
CEO@REPLWARE
Agenda
● Definition of productivity
● Premature optimization
● Software complexity
● Uncertainty
● Culture issues
● Conclusions
Definition of productivity
● Productivity = results / time
● What is the result of the corporate?
○ revenue
○ image
○ customer satisfaction
○ market share
○ time to market
○ etc.
Premature optimization
● Complex Arch
● Complex types
● 100% test coverage
● Design patterns
● Fancy libraries
How to escape from premature
optimization?
● Don’t ask yourself
○ Should I use XXX? (XXX is a solution: complex type,
complex Arch, etc.)
● Ask yourself:
○ As to achieve OOO, what possible solutions can I take?
(OOO is certain property that you want in your software.)
○ Is OOO really needed? Do I need it now?
Paul Graham is wrong about the
language productivty
● Beating the averages
○ Line number is the most important factor in programming
language productivity.
○ macro: code which write code.
○ Lisp is great because of macro.
Mutable States vs Clojure
● Clojure is designed to handle
states well.
● Mutable states and control structures
>> line numbers
● The developer productivty
comparison
○ Clojure: Java ~= 5: 1
Big O analysis - algorithm complexity
Software complexity
● How to understand a software?
○ Informal reasoning
○ Testing
The problem of modeling mutable
states (identity)
How to cope with mutable states?
● Functional programming
○ A good programming langauge
○ Using immutable collection by leveraging library support
● reboot your process
The way we work
● Managers ask developers to estimate software
development time, and then chases the deadline.
● Manage people, but seldom manage the uncertainty.
The management of uncertainty
● Are there any rabbit holes?
● Is the work properly shaped up?
● When to give up?
● How to present the progress?
● Take a look at ShapeUp
Culture issues
● Academic elitism - reward competition in
classroom.
● Whiteboard - reward solving puzzles, not
problems.
● Optimization of resume - reward chasing
solutions, not results.
Feedback system
● Do we have the feedback system rewarding
developer productivity?
● A bad system will beat a good person every
time. - Edward Deming
Culture Change and Change
Management
● Culture is the set of beliefs which governs
behavior.
● Change the belief by
○ Removing “cognitive dissonance” --- saying one thing and
doing another
○ Example and avatar
○ Getting help from an outsider (For example, a consultant)
In conclusions
● Developer productivity depends on
environment.
● There are 4 obvious productivity obstacles.
○ Premature optimization
○ Mutable states
○ No management of uncertainty
○ Wrong feedback system in our culture
● My solutions are in blue colors.
Final words
● To developer: Focus on your problem instead
of chasing solutions.
● To manager: Manage results, not tasks nor
inputs.
Reference
● Managing for results - Peter Drucker
● Radical Simplicity in Technology
(https://www.radicalsimpli.city/) - Stephan Schmidt
● Beating the averages - Paul Graham
● Out of the Tar Pit
(http://curtclifton.net/papers/MoseleyMarks06a.pdf) -
Ben Moseley, Peter Marks
● Shape Up (https://basecamp.com/shapeup/webbook) -
Ryan Singer
● Process Consulting - Alan Weiss

Weitere ähnliche Inhalte

Ähnlich wie The obstacles of developer productivity.pptx

CP vs Project - Elevate Ep. 02.pdf
CP vs Project  - Elevate Ep. 02.pdfCP vs Project  - Elevate Ep. 02.pdf
CP vs Project - Elevate Ep. 02.pdfpreetikumara
 
Ace the Tech Interviews - www.hiredintech.com
Ace the Tech Interviews - www.hiredintech.comAce the Tech Interviews - www.hiredintech.com
Ace the Tech Interviews - www.hiredintech.comAnton Dimitrov
 
Post-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that JazzPost-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that JazzStojan Peshov
 
How to be a 10x Engineer
How to be a 10x EngineerHow to be a 10x Engineer
How to be a 10x EngineerNick Sullivan
 
Devising UCD for Organizational Growth
Devising UCD for Organizational GrowthDevising UCD for Organizational Growth
Devising UCD for Organizational GrowthKumar Bhot
 
How to be an effective Tech Lead
How to be an effective Tech LeadHow to be an effective Tech Lead
How to be an effective Tech LeadHattery
 
How to save developers from drowning in Scrum? by Kenan Halilovic
How to save developers from drowning in Scrum? by Kenan HalilovicHow to save developers from drowning in Scrum? by Kenan Halilovic
How to save developers from drowning in Scrum? by Kenan HalilovicBosnia Agile
 
Learn PM Craft to Help You Crack Interviews by Meta Product Lead
Learn PM Craft to Help You Crack Interviews by Meta Product LeadLearn PM Craft to Help You Crack Interviews by Meta Product Lead
Learn PM Craft to Help You Crack Interviews by Meta Product LeadProduct School
 
Product Management Interview Crash Course by Google PM
Product Management Interview Crash Course by Google PMProduct Management Interview Crash Course by Google PM
Product Management Interview Crash Course by Google PMProduct School
 
The Holistic Programmer
The Holistic ProgrammerThe Holistic Programmer
The Holistic ProgrammerJonas Auken
 
Fred Williams 2018
Fred Williams 2018Fred Williams 2018
Fred Williams 2018ITEM
 
Digitizing Workflows by Disney Product Leader
Digitizing Workflows by Disney Product LeaderDigitizing Workflows by Disney Product Leader
Digitizing Workflows by Disney Product LeaderProduct School
 
Product Management Management
Product Management ManagementProduct Management Management
Product Management ManagementJeremy Horn
 
Roles of a PM in a fast-shipping startup
Roles of a PM in a fast-shipping startupRoles of a PM in a fast-shipping startup
Roles of a PM in a fast-shipping startupEmrah Samdan
 
It's not tools, Stupid
It's not tools, StupidIt's not tools, Stupid
It's not tools, Stupidke4qqq
 
How to become Industry ready engineers.pdf
How to become  Industry ready engineers.pdfHow to become  Industry ready engineers.pdf
How to become Industry ready engineers.pdfDrNilam Choudhary
 
What is the Relation Between PM and UX Roles by Cohealo UX PM
What is the Relation Between PM and UX Roles by Cohealo UX PMWhat is the Relation Between PM and UX Roles by Cohealo UX PM
What is the Relation Between PM and UX Roles by Cohealo UX PMProduct School
 
Sumbry (Airbnb) - If You Build It, They Might Come
Sumbry (Airbnb) - If You Build It, They Might ComeSumbry (Airbnb) - If You Build It, They Might Come
Sumbry (Airbnb) - If You Build It, They Might ComeTechsylvania
 

Ähnlich wie The obstacles of developer productivity.pptx (20)

CP vs Project - Elevate Ep. 02.pdf
CP vs Project  - Elevate Ep. 02.pdfCP vs Project  - Elevate Ep. 02.pdf
CP vs Project - Elevate Ep. 02.pdf
 
Ace the Tech Interviews - www.hiredintech.com
Ace the Tech Interviews - www.hiredintech.comAce the Tech Interviews - www.hiredintech.com
Ace the Tech Interviews - www.hiredintech.com
 
Post-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that JazzPost-Agile Methodologies and all that Jazz
Post-Agile Methodologies and all that Jazz
 
How to be a 10x Engineer
How to be a 10x EngineerHow to be a 10x Engineer
How to be a 10x Engineer
 
Engineer - Mastering the Art of Software
Engineer - Mastering the Art of SoftwareEngineer - Mastering the Art of Software
Engineer - Mastering the Art of Software
 
Devising UCD for Organizational Growth
Devising UCD for Organizational GrowthDevising UCD for Organizational Growth
Devising UCD for Organizational Growth
 
How to be an effective Tech Lead
How to be an effective Tech LeadHow to be an effective Tech Lead
How to be an effective Tech Lead
 
How to save developers from drowning in Scrum? by Kenan Halilovic
How to save developers from drowning in Scrum? by Kenan HalilovicHow to save developers from drowning in Scrum? by Kenan Halilovic
How to save developers from drowning in Scrum? by Kenan Halilovic
 
Learn PM Craft to Help You Crack Interviews by Meta Product Lead
Learn PM Craft to Help You Crack Interviews by Meta Product LeadLearn PM Craft to Help You Crack Interviews by Meta Product Lead
Learn PM Craft to Help You Crack Interviews by Meta Product Lead
 
Product Management Interview Crash Course by Google PM
Product Management Interview Crash Course by Google PMProduct Management Interview Crash Course by Google PM
Product Management Interview Crash Course by Google PM
 
The Holistic Programmer
The Holistic ProgrammerThe Holistic Programmer
The Holistic Programmer
 
Fred Williams 2018
Fred Williams 2018Fred Williams 2018
Fred Williams 2018
 
Digitizing Workflows by Disney Product Leader
Digitizing Workflows by Disney Product LeaderDigitizing Workflows by Disney Product Leader
Digitizing Workflows by Disney Product Leader
 
Product Management Management
Product Management ManagementProduct Management Management
Product Management Management
 
Roles of a PM in a fast-shipping startup
Roles of a PM in a fast-shipping startupRoles of a PM in a fast-shipping startup
Roles of a PM in a fast-shipping startup
 
It's not tools, Stupid
It's not tools, StupidIt's not tools, Stupid
It's not tools, Stupid
 
How to become Industry ready engineers.pdf
How to become  Industry ready engineers.pdfHow to become  Industry ready engineers.pdf
How to become Industry ready engineers.pdf
 
Tdd distilled... in java
Tdd distilled... in javaTdd distilled... in java
Tdd distilled... in java
 
What is the Relation Between PM and UX Roles by Cohealo UX PM
What is the Relation Between PM and UX Roles by Cohealo UX PMWhat is the Relation Between PM and UX Roles by Cohealo UX PM
What is the Relation Between PM and UX Roles by Cohealo UX PM
 
Sumbry (Airbnb) - If You Build It, They Might Come
Sumbry (Airbnb) - If You Build It, They Might ComeSumbry (Airbnb) - If You Build It, They Might Come
Sumbry (Airbnb) - If You Build It, They Might Come
 

Mehr von Laurence Chen

A simple tool for debug (tap>)
A simple tool for debug (tap>)A simple tool for debug (tap>)
A simple tool for debug (tap>)Laurence Chen
 
On component interface
On component interfaceOn component interface
On component interfaceLaurence Chen
 
Schema, validation and generative testing
Schema, validation and generative testingSchema, validation and generative testing
Schema, validation and generative testingLaurence Chen
 
The immutable database datomic
The immutable database   datomicThe immutable database   datomic
The immutable database datomicLaurence Chen
 
The productivity brought by Clojure
The productivity brought by ClojureThe productivity brought by Clojure
The productivity brought by ClojureLaurence Chen
 

Mehr von Laurence Chen (7)

Create your library
Create your libraryCreate your library
Create your library
 
on log messages
on log messageson log messages
on log messages
 
A simple tool for debug (tap>)
A simple tool for debug (tap>)A simple tool for debug (tap>)
A simple tool for debug (tap>)
 
On component interface
On component interfaceOn component interface
On component interface
 
Schema, validation and generative testing
Schema, validation and generative testingSchema, validation and generative testing
Schema, validation and generative testing
 
The immutable database datomic
The immutable database   datomicThe immutable database   datomic
The immutable database datomic
 
The productivity brought by Clojure
The productivity brought by ClojureThe productivity brought by Clojure
The productivity brought by Clojure
 

Kürzlich hochgeladen

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
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 WorkerThousandEyes
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 

Kürzlich hochgeladen (20)

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
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
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

The obstacles of developer productivity.pptx

  • 1. The Obstacles of Developer Productivity Laurence Chen blog: replware.medium.com website: replware.dev CEO@REPLWARE
  • 2. Agenda ● Definition of productivity ● Premature optimization ● Software complexity ● Uncertainty ● Culture issues ● Conclusions
  • 3. Definition of productivity ● Productivity = results / time ● What is the result of the corporate? ○ revenue ○ image ○ customer satisfaction ○ market share ○ time to market ○ etc.
  • 4. Premature optimization ● Complex Arch ● Complex types ● 100% test coverage ● Design patterns ● Fancy libraries
  • 5. How to escape from premature optimization? ● Don’t ask yourself ○ Should I use XXX? (XXX is a solution: complex type, complex Arch, etc.) ● Ask yourself: ○ As to achieve OOO, what possible solutions can I take? (OOO is certain property that you want in your software.) ○ Is OOO really needed? Do I need it now?
  • 6. Paul Graham is wrong about the language productivty ● Beating the averages ○ Line number is the most important factor in programming language productivity. ○ macro: code which write code. ○ Lisp is great because of macro.
  • 7. Mutable States vs Clojure ● Clojure is designed to handle states well. ● Mutable states and control structures >> line numbers ● The developer productivty comparison ○ Clojure: Java ~= 5: 1
  • 8. Big O analysis - algorithm complexity
  • 9. Software complexity ● How to understand a software? ○ Informal reasoning ○ Testing
  • 10. The problem of modeling mutable states (identity)
  • 11. How to cope with mutable states? ● Functional programming ○ A good programming langauge ○ Using immutable collection by leveraging library support ● reboot your process
  • 12. The way we work ● Managers ask developers to estimate software development time, and then chases the deadline. ● Manage people, but seldom manage the uncertainty.
  • 13. The management of uncertainty ● Are there any rabbit holes? ● Is the work properly shaped up? ● When to give up? ● How to present the progress? ● Take a look at ShapeUp
  • 14. Culture issues ● Academic elitism - reward competition in classroom. ● Whiteboard - reward solving puzzles, not problems. ● Optimization of resume - reward chasing solutions, not results.
  • 15. Feedback system ● Do we have the feedback system rewarding developer productivity? ● A bad system will beat a good person every time. - Edward Deming
  • 16. Culture Change and Change Management ● Culture is the set of beliefs which governs behavior. ● Change the belief by ○ Removing “cognitive dissonance” --- saying one thing and doing another ○ Example and avatar ○ Getting help from an outsider (For example, a consultant)
  • 17. In conclusions ● Developer productivity depends on environment. ● There are 4 obvious productivity obstacles. ○ Premature optimization ○ Mutable states ○ No management of uncertainty ○ Wrong feedback system in our culture ● My solutions are in blue colors.
  • 18. Final words ● To developer: Focus on your problem instead of chasing solutions. ● To manager: Manage results, not tasks nor inputs.
  • 19. Reference ● Managing for results - Peter Drucker ● Radical Simplicity in Technology (https://www.radicalsimpli.city/) - Stephan Schmidt ● Beating the averages - Paul Graham ● Out of the Tar Pit (http://curtclifton.net/papers/MoseleyMarks06a.pdf) - Ben Moseley, Peter Marks ● Shape Up (https://basecamp.com/shapeup/webbook) - Ryan Singer ● Process Consulting - Alan Weiss