SlideShare a Scribd company logo
1 of 21
10X PROGRAMMERS
WHAT LIES BENEATH
Hrishikesh Karekar
@hrishikarekar
There are
programmers….
And great programmers
You might not think the programmers are artists, but
programming is an extremely creative profession. Its logic based
creativity. John Romero
It’s about producing
value, not code
You might not think the programmers are artists, but
programming is an extremely creative profession. Its logic based
creativity.
John Romero
It’s about software
craftsmanship
Clean code is not written by following a set of rules. You don’t
become a software craftsman by learning a list of heuristics.
Professionalism and craftsmanship come from values that drive
disciplines. Robert C. Martin
Their strength comes from
something not easily visible
There is seven-eights of it under water for every part that shows.
Anything you know you can eliminate and it only strengthens
your iceberg. It is the part that doesn't show
Ernest Hemingway
Behaviors. Practices
Drivers. Values. Principles
There is seven-eights of it under water for every part that shows.
Anything you know you can eliminate and it only strengthens
your iceberg. It is the part that doesn't show
Ernest Hemingway
Behaviors. Practices
What’s driving your 10x programmers?
The monkeys solved the puzzle simply because they found it
gratifying to solve puzzles. They enjoyed it. The joy of the task was
its own reward. Daniel H. Pink
Purpose.
Autonomy.
Mastery
Drivers
Communication.
Good code is its own best documentation
Steve McConnel
Values
Simplicity.
There are two ways of constructing a software design: One way is to make it so simple that
there are obviously no deficiencies, and the other way is to make it so complicated that
there are no obvious deficiencies. The first method is far more difficult.
C.A.R Hoare
Values
Flexibility.
Making workable decisions today and maintaining the flexibility to
change your mind in the future is a key to good software
development Kent Beck
Values
Test First. Always.
The best TDD can do, is assure that code does what the
programmer thinks it should do. That is pretty good BTW.
James Grenning
Principles
Little Design Up Front
In ten years the pendulum has swung from 'design everything' to 'design
nothing.' But the alternative to BDUF [Big Design Up Front] isn't no design
up front, it's a Little Design Up Front (LDUF) or Enough Design Up Front
(ENUF) Steve McConnel
Principles
Reuse
If I have the same logic in two places, I work with the design to
understand how I can have only one copy. Designs without
duplication tend to be easy to change. Kent Beck
Principles
Tool Mastery
An apprentice carpenter may want only a hammer and saw, but a master
craftsman employs many precision tools. Computer programming likewise
requires sophisticated tools to cope with the complexity of real applications, and
only practice with these tools will build skill in their use.
Robert L. Kruse
Behavior
Keep Learning
It's what you learn after you know it all that counts.
John Wooden
Behavior
Inspect and Adapt.
If you have a month to plan a project in detail, spend it on four one-week iterations
developing while you improve your estimates. If you have a week to plan a project, hold five
one-day iterations. Feedback cycles give you information and the experience to make
accurate estimates. Kent Beck
Behavior
Shares Knowledge
Given the choice between an extremely skilled loner and a
competent-but-social programmer, XP teams consistently choose
the more social candidate. Kent Beck
Behavior
Drivers Values Principles
Behavior
Purpose.
Autonomy.
Mastery.
Communication.
Simplicity.
Flexibility.
Test First.
LDUF.
Reuse.
Tool Mastery.
Keep Learning.
Inspect and Adapt.
Shares Knowledge.
Most good programmers do
programming not because they
expect to get paid or get adulation
by the public, but because it is fun to
program
Linus Torvalds
Thank You
@hrishikarekar
Hrishikesh Karekar
References
 http://www.ybrikman.com/writing/2013/09/29/the-10x-developer-is-not-myth/
 https://blog.iterate.no/2012/06/20/programming-like-kent-beck/
 http://blog.projectconnections.com/geof_lory/2014/08/behavioral-traceability-values-to-principles-to-practices.html
 https://blog.newrelic.com/2016/02/22/8-ways-become-a-better-coder/
 http://www.articpost.com/best-programming-quotes-that-every-developer-should-know/
 https://www.quora.com/How-can-I-improve-programming-skills
 How To Find, Vet, & Hire 10x Programmers with Ross Buhrdorf, CTO of HomeAway
 http://www.slideshare.net/LocalSearchAssociation/lsa16-google-10x-thinking-revolution-not-evolution
 http://www.slideshare.net/AgilePractitionersIL/engineering-your-culture-how-to-keep-your-engineers-happy
Images Credit
 Man Machine - https://www.flickr.com/photos/gleonhard/18732734804
 Yoga - https://commons.wikimedia.org/wiki/File:Carrie_Yoga_shoot_003_(8328572003).jpg
 Iceberg - https://upload.wikimedia.org/wikipedia/commons/9/95/Danmark_O,_Fohn_Fjord,_Renodde.70%C2%B0N_26%C2%B0W_(76566707).jpg
 Coal mine - https://upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Child_coal_miners_(1908)_crop.jpg/989px-
Child_coal_miners_(1908)_crop.jpg
 Watchmaker - https://upload.wikimedia.org/wikipedia/commons/3/3b/Watchmaker's_Lathe_in_use.jpg
 R2D2 C3PO - http://www.newscientist.nl/assets/r2-d2-c-3po-best-friends-wallpaper-5478.jpg
 Einstein - https://c1.staticflickr.com/3/2207/2410652086_1aa4942a8e_z.jpg?zz=1
 Butterfly - http://www.publicdomainpictures.net/pictures/10000/nahled/1536-12492745612Ryn.jpg
 GPS - http://public.sfdefender.com/wp-content/uploads/sites/2/2015/06/gps.jpg
 Bolt - https://upload.wikimedia.org/wikipedia/commons/e/e9/Woodworking-joint-butt-dowel.gif
 Reuse - https://farm9.staticflickr.com/8497/8435953365_c4e01b3635_o_d.jpg
 Tools - https://farm3.staticflickr.com/2776/4420175956_f7754e2c33_o_d.jpg
 Learning - https://farm8.staticflickr.com/7378/8720604364_2ebdc6df85_o_d.jpg
 Paintball - https://upload.wikimedia.org/wikipedia/commons/5/5b/SupAir_Player.jpg

More Related Content

What's hot

Tips sukses berkarir sebagai developer dan programmer 2021
Tips sukses berkarir sebagai developer dan programmer 2021Tips sukses berkarir sebagai developer dan programmer 2021
Tips sukses berkarir sebagai developer dan programmer 2021DicodingEvent
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile designIgor Moochnick
 
Software Project management
Software Project managementSoftware Project management
Software Project managementPeter Brownell
 
Software development project management
Software development project managementSoftware development project management
Software development project managementRoni Banerjee
 
Pair Programming - a pratical guide
Pair Programming - a pratical guidePair Programming - a pratical guide
Pair Programming - a pratical guideGiuseppe Sorrentino
 
Workshop on software product development the backdrop
Workshop on software product development   the backdropWorkshop on software product development   the backdrop
Workshop on software product development the backdropJoy Prabhakaran
 
Software Development in 21st Century
Software Development in 21st CenturySoftware Development in 21st Century
Software Development in 21st CenturyHenry Jacob
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesIgor Moochnick
 
How Content Helped Us Scale
How Content Helped Us ScaleHow Content Helped Us Scale
How Content Helped Us ScaleIda Aalen
 
[EN] Great software development quotes
[EN] Great software development quotes[EN] Great software development quotes
[EN] Great software development quotesEudris Cabrera
 
Planning Agile Projects
Planning Agile ProjectsPlanning Agile Projects
Planning Agile Projectsbriley1
 
Patterns for the People
Patterns for the PeoplePatterns for the People
Patterns for the PeopleKevlin Henney
 
Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...
Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...
Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...Daytona
 
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta LahiriAgile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta LahiriAgileNetwork
 
Intro to UX for Programmers
Intro to UX for ProgrammersIntro to UX for Programmers
Intro to UX for ProgrammersMegan O'Rorke
 
L'illusione dell'ortogonalità
L'illusione dell'ortogonalitàL'illusione dell'ortogonalità
L'illusione dell'ortogonalitàAlberto Brandolini
 
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...DEVCON
 
Originate - Think In Hours Not Sprints
Originate - Think In Hours Not SprintsOriginate - Think In Hours Not Sprints
Originate - Think In Hours Not SprintsRob Meadows
 
How to code in the XXI century without losing your head
How to code in the XXI century without losing your headHow to code in the XXI century without losing your head
How to code in the XXI century without losing your headRené Olivo
 
What designers can learn from (code) review
What designers can learn from (code) reviewWhat designers can learn from (code) review
What designers can learn from (code) reviewIda Aalen
 

What's hot (20)

Tips sukses berkarir sebagai developer dan programmer 2021
Tips sukses berkarir sebagai developer dan programmer 2021Tips sukses berkarir sebagai developer dan programmer 2021
Tips sukses berkarir sebagai developer dan programmer 2021
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile design
 
Software Project management
Software Project managementSoftware Project management
Software Project management
 
Software development project management
Software development project managementSoftware development project management
Software development project management
 
Pair Programming - a pratical guide
Pair Programming - a pratical guidePair Programming - a pratical guide
Pair Programming - a pratical guide
 
Workshop on software product development the backdrop
Workshop on software product development   the backdropWorkshop on software product development   the backdrop
Workshop on software product development the backdrop
 
Software Development in 21st Century
Software Development in 21st CenturySoftware Development in 21st Century
Software Development in 21st Century
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best Practices
 
How Content Helped Us Scale
How Content Helped Us ScaleHow Content Helped Us Scale
How Content Helped Us Scale
 
[EN] Great software development quotes
[EN] Great software development quotes[EN] Great software development quotes
[EN] Great software development quotes
 
Planning Agile Projects
Planning Agile ProjectsPlanning Agile Projects
Planning Agile Projects
 
Patterns for the People
Patterns for the PeoplePatterns for the People
Patterns for the People
 
Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...
Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...
Taking Responsibility for the Things We Unleash Into the World - IoT Meetup 2...
 
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta LahiriAgile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
Agile Gurgaon 2016 Conference | The game has changed! | Sudipta Lahiri
 
Intro to UX for Programmers
Intro to UX for ProgrammersIntro to UX for Programmers
Intro to UX for Programmers
 
L'illusione dell'ortogonalità
L'illusione dell'ortogonalitàL'illusione dell'ortogonalità
L'illusione dell'ortogonalità
 
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
Open Minded? Software Engineer to a UX Engineer. Ask me how. by Micael Diaz d...
 
Originate - Think In Hours Not Sprints
Originate - Think In Hours Not SprintsOriginate - Think In Hours Not Sprints
Originate - Think In Hours Not Sprints
 
How to code in the XXI century without losing your head
How to code in the XXI century without losing your headHow to code in the XXI century without losing your head
How to code in the XXI century without losing your head
 
What designers can learn from (code) review
What designers can learn from (code) reviewWhat designers can learn from (code) review
What designers can learn from (code) review
 

Similar to 10X Programmers: What Drives Their Purpose, Autonomy & Mastery

What it Really Means to Be Agile
What it Really Means to Be AgileWhat it Really Means to Be Agile
What it Really Means to Be AgileKent McDonald
 
How To Become A Good C# Programmer
How To Become A Good C# ProgrammerHow To Become A Good C# Programmer
How To Become A Good C# ProgrammerLearnItFirst.com
 
30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbookGabriel Paunescu 🤖
 
Software craftsmanship - Imperative or Hype
Software craftsmanship - Imperative or HypeSoftware craftsmanship - Imperative or Hype
Software craftsmanship - Imperative or HypeSUGSA
 
Software Craftsmanship - It's an Imperative
Software Craftsmanship - It's an ImperativeSoftware Craftsmanship - It's an Imperative
Software Craftsmanship - It's an ImperativeFadi Stephan
 
Agile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAgile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAniruddha Chakrabarti
 
AD - Developer communication and Technology
AD - Developer communication and TechnologyAD - Developer communication and Technology
AD - Developer communication and TechnologyEnplore AB
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovSvetlin Nakov
 
Bjorn Rabenstein. SRE, DevOps, Google, and you
Bjorn Rabenstein. SRE, DevOps, Google, and youBjorn Rabenstein. SRE, DevOps, Google, and you
Bjorn Rabenstein. SRE, DevOps, Google, and youIT Arena
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingUtkarsh Khare
 
How To Think Like A Programmer (1).pptx
How To Think Like A Programmer (1).pptxHow To Think Like A Programmer (1).pptx
How To Think Like A Programmer (1).pptxanesthesia2023
 
UCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction designUCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction designsdavis6b
 
Why Can't We All Just Get Along? Improving Designer/Developer Collaboration
Why Can't We All Just Get Along? Improving Designer/Developer CollaborationWhy Can't We All Just Get Along? Improving Designer/Developer Collaboration
Why Can't We All Just Get Along? Improving Designer/Developer CollaborationAllison Corbett
 
How to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software DeveloperHow to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software Developerjeetendra mandal
 
Developers Nepal Meetup #4 Report
Developers Nepal Meetup #4 ReportDevelopers Nepal Meetup #4 Report
Developers Nepal Meetup #4 ReportPunit Jajodia
 
Web Application Development Company
Web Application Development Company  Web Application Development Company
Web Application Development Company Shelly Megan
 
CF Camp 2013 Software Craftsmanship for CFML Developers
CF Camp 2013 Software Craftsmanship for CFML DevelopersCF Camp 2013 Software Craftsmanship for CFML Developers
CF Camp 2013 Software Craftsmanship for CFML DevelopersKev McCabe
 
Rhok 101 for change makers - with an agile flavour
Rhok 101 for change makers - with an agile flavourRhok 101 for change makers - with an agile flavour
Rhok 101 for change makers - with an agile flavourCaoilte Dunne
 
Unleash Your Inner Unicorn
Unleash Your Inner UnicornUnleash Your Inner Unicorn
Unleash Your Inner UnicornMatt Baxter
 

Similar to 10X Programmers: What Drives Their Purpose, Autonomy & Mastery (20)

What it Really Means to Be Agile
What it Really Means to Be AgileWhat it Really Means to Be Agile
What it Really Means to Be Agile
 
Best pratice
Best praticeBest pratice
Best pratice
 
How To Become A Good C# Programmer
How To Become A Good C# ProgrammerHow To Become A Good C# Programmer
How To Become A Good C# Programmer
 
30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook30% faster coder on-boarding when you have a code cookbook
30% faster coder on-boarding when you have a code cookbook
 
Software craftsmanship - Imperative or Hype
Software craftsmanship - Imperative or HypeSoftware craftsmanship - Imperative or Hype
Software craftsmanship - Imperative or Hype
 
Software Craftsmanship - It's an Imperative
Software Craftsmanship - It's an ImperativeSoftware Craftsmanship - It's an Imperative
Software Craftsmanship - It's an Imperative
 
Agile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAgile Practices - eXtreme Programming
Agile Practices - eXtreme Programming
 
AD - Developer communication and Technology
AD - Developer communication and TechnologyAD - Developer communication and Technology
AD - Developer communication and Technology
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin Nakov
 
Bjorn Rabenstein. SRE, DevOps, Google, and you
Bjorn Rabenstein. SRE, DevOps, Google, and youBjorn Rabenstein. SRE, DevOps, Google, and you
Bjorn Rabenstein. SRE, DevOps, Google, and you
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
 
How To Think Like A Programmer (1).pptx
How To Think Like A Programmer (1).pptxHow To Think Like A Programmer (1).pptx
How To Think Like A Programmer (1).pptx
 
UCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction designUCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction design
 
Why Can't We All Just Get Along? Improving Designer/Developer Collaboration
Why Can't We All Just Get Along? Improving Designer/Developer CollaborationWhy Can't We All Just Get Along? Improving Designer/Developer Collaboration
Why Can't We All Just Get Along? Improving Designer/Developer Collaboration
 
How to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software DeveloperHow to become a Software Engineer Carrier Path for Software Developer
How to become a Software Engineer Carrier Path for Software Developer
 
Developers Nepal Meetup #4 Report
Developers Nepal Meetup #4 ReportDevelopers Nepal Meetup #4 Report
Developers Nepal Meetup #4 Report
 
Web Application Development Company
Web Application Development Company  Web Application Development Company
Web Application Development Company
 
CF Camp 2013 Software Craftsmanship for CFML Developers
CF Camp 2013 Software Craftsmanship for CFML DevelopersCF Camp 2013 Software Craftsmanship for CFML Developers
CF Camp 2013 Software Craftsmanship for CFML Developers
 
Rhok 101 for change makers - with an agile flavour
Rhok 101 for change makers - with an agile flavourRhok 101 for change makers - with an agile flavour
Rhok 101 for change makers - with an agile flavour
 
Unleash Your Inner Unicorn
Unleash Your Inner UnicornUnleash Your Inner Unicorn
Unleash Your Inner Unicorn
 

More from Hrishikesh Karekar

Journey to agile leadership - PechaKucha
Journey to agile leadership - PechaKuchaJourney to agile leadership - PechaKucha
Journey to agile leadership - PechaKuchaHrishikesh Karekar
 
Book summary - Perspectives on agility - Hrishikesh Karekar
Book summary - Perspectives on agility - Hrishikesh KarekarBook summary - Perspectives on agility - Hrishikesh Karekar
Book summary - Perspectives on agility - Hrishikesh KarekarHrishikesh Karekar
 
Building Great Scrum Teams. Possible !
Building Great Scrum Teams. Possible !Building Great Scrum Teams. Possible !
Building Great Scrum Teams. Possible !Hrishikesh Karekar
 
Understanding complexity and Why Agile works only if done right
Understanding complexity and Why Agile works only if done rightUnderstanding complexity and Why Agile works only if done right
Understanding complexity and Why Agile works only if done rightHrishikesh Karekar
 
Pecha kucha and effective business presentations
Pecha kucha and effective business presentationsPecha kucha and effective business presentations
Pecha kucha and effective business presentationsHrishikesh Karekar
 

More from Hrishikesh Karekar (8)

Journey to agile leadership - PechaKucha
Journey to agile leadership - PechaKuchaJourney to agile leadership - PechaKucha
Journey to agile leadership - PechaKucha
 
Book summary - Perspectives on agility - Hrishikesh Karekar
Book summary - Perspectives on agility - Hrishikesh KarekarBook summary - Perspectives on agility - Hrishikesh Karekar
Book summary - Perspectives on agility - Hrishikesh Karekar
 
Be Agile Not Fragile
Be Agile Not FragileBe Agile Not Fragile
Be Agile Not Fragile
 
Building Great Scrum Teams. Possible !
Building Great Scrum Teams. Possible !Building Great Scrum Teams. Possible !
Building Great Scrum Teams. Possible !
 
Understanding complexity and Why Agile works only if done right
Understanding complexity and Why Agile works only if done rightUnderstanding complexity and Why Agile works only if done right
Understanding complexity and Why Agile works only if done right
 
Personal kanban pechakucha
Personal kanban pechakuchaPersonal kanban pechakucha
Personal kanban pechakucha
 
Escalation lets do it right
Escalation   lets do it rightEscalation   lets do it right
Escalation lets do it right
 
Pecha kucha and effective business presentations
Pecha kucha and effective business presentationsPecha kucha and effective business presentations
Pecha kucha and effective business presentations
 

Recently uploaded

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 

Recently uploaded (20)

Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 

10X Programmers: What Drives Their Purpose, Autonomy & Mastery

  • 1. 10X PROGRAMMERS WHAT LIES BENEATH Hrishikesh Karekar @hrishikarekar
  • 2. There are programmers…. And great programmers You might not think the programmers are artists, but programming is an extremely creative profession. Its logic based creativity. John Romero
  • 3. It’s about producing value, not code You might not think the programmers are artists, but programming is an extremely creative profession. Its logic based creativity. John Romero
  • 4. It’s about software craftsmanship Clean code is not written by following a set of rules. You don’t become a software craftsman by learning a list of heuristics. Professionalism and craftsmanship come from values that drive disciplines. Robert C. Martin
  • 5. Their strength comes from something not easily visible There is seven-eights of it under water for every part that shows. Anything you know you can eliminate and it only strengthens your iceberg. It is the part that doesn't show Ernest Hemingway Behaviors. Practices
  • 6. Drivers. Values. Principles There is seven-eights of it under water for every part that shows. Anything you know you can eliminate and it only strengthens your iceberg. It is the part that doesn't show Ernest Hemingway Behaviors. Practices
  • 7. What’s driving your 10x programmers? The monkeys solved the puzzle simply because they found it gratifying to solve puzzles. They enjoyed it. The joy of the task was its own reward. Daniel H. Pink Purpose. Autonomy. Mastery Drivers
  • 8. Communication. Good code is its own best documentation Steve McConnel Values
  • 9. Simplicity. There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult. C.A.R Hoare Values
  • 10. Flexibility. Making workable decisions today and maintaining the flexibility to change your mind in the future is a key to good software development Kent Beck Values
  • 11. Test First. Always. The best TDD can do, is assure that code does what the programmer thinks it should do. That is pretty good BTW. James Grenning Principles
  • 12. Little Design Up Front In ten years the pendulum has swung from 'design everything' to 'design nothing.' But the alternative to BDUF [Big Design Up Front] isn't no design up front, it's a Little Design Up Front (LDUF) or Enough Design Up Front (ENUF) Steve McConnel Principles
  • 13. Reuse If I have the same logic in two places, I work with the design to understand how I can have only one copy. Designs without duplication tend to be easy to change. Kent Beck Principles
  • 14. Tool Mastery An apprentice carpenter may want only a hammer and saw, but a master craftsman employs many precision tools. Computer programming likewise requires sophisticated tools to cope with the complexity of real applications, and only practice with these tools will build skill in their use. Robert L. Kruse Behavior
  • 15. Keep Learning It's what you learn after you know it all that counts. John Wooden Behavior
  • 16. Inspect and Adapt. If you have a month to plan a project in detail, spend it on four one-week iterations developing while you improve your estimates. If you have a week to plan a project, hold five one-day iterations. Feedback cycles give you information and the experience to make accurate estimates. Kent Beck Behavior
  • 17. Shares Knowledge Given the choice between an extremely skilled loner and a competent-but-social programmer, XP teams consistently choose the more social candidate. Kent Beck Behavior
  • 18. Drivers Values Principles Behavior Purpose. Autonomy. Mastery. Communication. Simplicity. Flexibility. Test First. LDUF. Reuse. Tool Mastery. Keep Learning. Inspect and Adapt. Shares Knowledge.
  • 19. Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program Linus Torvalds Thank You @hrishikarekar Hrishikesh Karekar
  • 20. References  http://www.ybrikman.com/writing/2013/09/29/the-10x-developer-is-not-myth/  https://blog.iterate.no/2012/06/20/programming-like-kent-beck/  http://blog.projectconnections.com/geof_lory/2014/08/behavioral-traceability-values-to-principles-to-practices.html  https://blog.newrelic.com/2016/02/22/8-ways-become-a-better-coder/  http://www.articpost.com/best-programming-quotes-that-every-developer-should-know/  https://www.quora.com/How-can-I-improve-programming-skills  How To Find, Vet, & Hire 10x Programmers with Ross Buhrdorf, CTO of HomeAway  http://www.slideshare.net/LocalSearchAssociation/lsa16-google-10x-thinking-revolution-not-evolution  http://www.slideshare.net/AgilePractitionersIL/engineering-your-culture-how-to-keep-your-engineers-happy
  • 21. Images Credit  Man Machine - https://www.flickr.com/photos/gleonhard/18732734804  Yoga - https://commons.wikimedia.org/wiki/File:Carrie_Yoga_shoot_003_(8328572003).jpg  Iceberg - https://upload.wikimedia.org/wikipedia/commons/9/95/Danmark_O,_Fohn_Fjord,_Renodde.70%C2%B0N_26%C2%B0W_(76566707).jpg  Coal mine - https://upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Child_coal_miners_(1908)_crop.jpg/989px- Child_coal_miners_(1908)_crop.jpg  Watchmaker - https://upload.wikimedia.org/wikipedia/commons/3/3b/Watchmaker's_Lathe_in_use.jpg  R2D2 C3PO - http://www.newscientist.nl/assets/r2-d2-c-3po-best-friends-wallpaper-5478.jpg  Einstein - https://c1.staticflickr.com/3/2207/2410652086_1aa4942a8e_z.jpg?zz=1  Butterfly - http://www.publicdomainpictures.net/pictures/10000/nahled/1536-12492745612Ryn.jpg  GPS - http://public.sfdefender.com/wp-content/uploads/sites/2/2015/06/gps.jpg  Bolt - https://upload.wikimedia.org/wikipedia/commons/e/e9/Woodworking-joint-butt-dowel.gif  Reuse - https://farm9.staticflickr.com/8497/8435953365_c4e01b3635_o_d.jpg  Tools - https://farm3.staticflickr.com/2776/4420175956_f7754e2c33_o_d.jpg  Learning - https://farm8.staticflickr.com/7378/8720604364_2ebdc6df85_o_d.jpg  Paintball - https://upload.wikimedia.org/wikipedia/commons/5/5b/SupAir_Player.jpg