SlideShare a Scribd company logo
1 of 79
Download to read offline
The Passions of
Programming
@KevlinHenney
https://www.linkedin.com/jobs/search/?keywords=passionate%20software%20developer
https://www.linkedin.com/jobs/search/?keywords=passionate%20software%20developer
... want talented individuals
who are passionate...
https://www.linkedin.com/jobs/search/?keywords=passionate%20software%20developer
... want talented individuals
who are passionate...
Are you passionate...?
https://www.linkedin.com/jobs/search/?keywords=passionate%20software%20developer
... want talented individuals
who are passionate...
Are you passionate...?
Be passionate...
https://www.linkedin.com/jobs/search/?keywords=passionate%20software%20developer
... want talented individuals
who are passionate...
Are you passionate...?
Be passionate...
... looking for a passionate and
driven full stack web developer...
passion
passion, noun
passion, noun
▪ suffering
Merriam–Webster’s Collegiate Dictionary
passion, noun
▪ an intense enthusiasm for
something
Concise Oxford English Dictionary
passion, noun
▪ strong and barely controllable
emotion
Concise Oxford English Dictionary
passion, noun
▪ intense sexual love
Concise Oxford English Dictionary
Joe Giddens (@jjgiddens) / UK Press Association
Sometimes it’s more
important to smile
than to shout.
Saffiyah Khan
dispassion, noun
▪ absence of passion
Merriam–Webster’s Collegiate Dictionary
dispassion, noun
▪ coolness
Merriam–Webster’s Collegiate Dictionary
dispassion, noun
▪ the state or quality of being
emotionally uninvolved
Dictionary.com
dispassion, noun
▪ detachment
The Free Dictionary
dispassion, noun
▪ objectivity
The Free Dictionary
dispassion, noun
▪ freedom from passion, bias,
or emotion
The Free Dictionary
There is an art, craft, and science
to programming that extends far
beyond the program. The act of
programming marries the discrete
world of computers with the fluid
world of human affairs.
Programmers mediate between
the negotiated and uncertain
truths of business and the crisp,
uncompromising domain of bits
and bytes and higher constructed
types.
People in high tech take pride in their
work. They are individuals who see the
details of the things they produce in the
light of the trials and triumphs they
experience while creating products.
In the courage of creation, they find a
place to hang their individuality.
Programmers and techno types
appreciate elegant, spare code and the
occasional well-turned architectural hack.
If a plot works out exactly
as you first planned, you're
not working loosely enough
to give room to your
imagination and instincts.
/ WordFriday
pantser, noun
▪ Writer who writes by the seat of their pants.
▪ In contrast to a plotter, a pantser doesn't
work to (or have) an outline.
On two occasions I have been asked, —
“Pray, Mr. Babbage, if you put into the
machine wrong figures, will the right
answers come out?”
I am not able rightly to apprehend the
kind of confusion of ideas that could
provoke such a question.
Charles Babbage
Schiaparelli’s Inertial Measurement Unit (IMU) went
about its business of calculating the lander’s rotation
rate. For some reason, the IMU calculated a saturation-
maximum period that persisted for one second longer
than what would normally be expected at this stage.
When the IMU sent this bogus information to the craft’s
navigation system, it calculated a negative altitude.
http://gizmodo.com/a-crazy-miscalculation-doomed-the-sciaparelli-lander-1789319670
Because of the error in the estimated
attitude that occurred at parachute
inflation, the GNC Software projected
the RDA range measurements with an
erroneous off-vertical angle and
deduced a negative altitude (cosinus of
angles > 90 degrees are negative).
That fateful miscalculation set off a cascade of despair,
triggering the premature release of the parachute and
the backshell, a brief firing of the braking thrusters, and
activation of the on-ground systems as if Schiaparelli had
already reached the surface.
This all happened while the vehicle was still two miles
(3.7 km) above ground.
http://gizmodo.com/a-crazy-miscalculation-doomed-the-sciaparelli-lander-1789319670
Simple Testing Can Prevent
Most Critical Failures
An Analysis of Production Failures in
Distributed Data-Intensive Systems
https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
Almost all catastrophic failures
are the result of incorrect
handling of non-fatal errors
explicitly signalled in software.
https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
A majority of the production
failures (77%) can be
reproduced by a unit test.
https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
TDD is fun!
James Grenning
TDD is fun! It’s like a game where you navigate a
maze of technical decisions that lead to highly
robust software while avoiding the quagmire of long
debug sessions.
James Grenning
TDD is fun! It’s like a game where you navigate a
maze of technical decisions that lead to highly
robust software while avoiding the quagmire of long
debug sessions. With each test there is a renewed
sense of accomplishment and clear progress toward
the goal.
James Grenning
TDD is fun! It’s like a game where you navigate a
maze of technical decisions that lead to highly
robust software while avoiding the quagmire of long
debug sessions. With each test there is a renewed
sense of accomplishment and clear progress toward
the goal. Automated tests record assumptions,
capture decisions, and free the mind to focus on the
next challenge.
James Grenning
TDD is fun!
James Grenning
Are human beings “noble in
reason” and “infinite in faculty”
as William Shakespeare famously
wrote? Perfect,“in God’s image,”
as some biblical scholars have
asserted?
Hardly.
compassion, noun
▪ sympathetic consciousness of
others’ distress together with a
desire to alleviate it
Merriam–Webster’s Collegiate Dictionary
If someone shows kindness,
caring, and a willingness to
help others, they’re showing
compassion.
Vocabulary.com
https://www.wired.co.uk/article/revolut-trade-unions-labour-fintech-politics-storonsky
https://www.wired.co.uk/article/revolut-trade-unions-labour-fintech-politics-storonsky
If there is such a phenomenon as
absolute evil, it consists in treating
another human being as a thing.
John Brunner
Getting money is not all a man’s
business: to cultivate kindness is a
valuable part of the business of life.
Samuel Johnson
Everyone you meet is fighting a
battle you know nothing about.
Be kind. Always.
If your compassion does not
include yourself, it is incomplete.
Jack Kornfield
One of my most controversial software opinions is that
your sleep quality and stress level matter far, far more
than the languages you use or the practices you follow.
Nothing else comes close: not type systems, not TDD,
not formal methods, not ANYTHING.
Hillel Wayne
https://twitter.com/hillelogram/status/1119709859979714560
We don't develop proper
recognition for the skills and
qualities of mind that in fact
help make collaboration
successful, productive and
enjoyable.
The task of collaboration is,
in fact, beautiful and serious.
It is one of the grandest
undertakings to coordinate
the efforts of groups of
people.
The biggest advantage of
autonomously working teams is
risk reduction through increased
group intelligence.
Kevlin Henney
https://jaxlondon.com/blog/java-core-languages/the-error-of-our-ways-kevlin-henney/
To be a 10x developer, be a good
developer who helps 10 other
people get better at what they do.
Branden Schwartz
There’s little correlation between a
group’s collective intelligence and
the IQs of its individual members.
But if a group includes more
women, its collective intelligence
rises.
“What Makes a Team Smarter? More Women”
Anita Woolley & Thomas W Malone
http://hbr.org/2011/06/defend-your-research-what-makes-a-team-smarter-more-women/
People from diverse backgrounds
might actually alter the behavior of
a group’s social majority in ways
that lead to improved and more
accurate group thinking.
“Why Diverse Teams Are Smarter”
David Rock & Heidi Grant
https://hbr.org/2016/11/why-diverse-teams-are-smarter
Diverse teams are more likely to
constantly reexamine facts and
remain objective.
“Why Diverse Teams Are Smarter”
David Rock & Heidi Grant
https://hbr.org/2016/11/why-diverse-teams-are-smarter
Development needs to go further
than the technical stack; the full
stack includes the world and
people around the software.
Kevlin Henney
https://jaxlondon.com/blog/java-core-languages/the-error-of-our-ways-kevlin-henney/

More Related Content

More from Kevlin Henney

Structure and Interpretation of Test Cases
Structure and Interpretation of Test CasesStructure and Interpretation of Test Cases
Structure and Interpretation of Test CasesKevlin Henney
 
Refactoring to Immutability
Refactoring to ImmutabilityRefactoring to Immutability
Refactoring to ImmutabilityKevlin Henney
 
Turning Development Outside-In
Turning Development Outside-InTurning Development Outside-In
Turning Development Outside-InKevlin Henney
 
Giving Code a Good Name
Giving Code a Good NameGiving Code a Good Name
Giving Code a Good NameKevlin Henney
 
Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...
Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...
Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...Kevlin Henney
 
Thinking Outside the Synchronisation Quadrant
Thinking Outside the Synchronisation QuadrantThinking Outside the Synchronisation Quadrant
Thinking Outside the Synchronisation QuadrantKevlin Henney
 
The Error of Our Ways
The Error of Our WaysThe Error of Our Ways
The Error of Our WaysKevlin Henney
 
Seven Ineffective Coding Habits of Many Programmers
Seven Ineffective Coding Habits of Many ProgrammersSeven Ineffective Coding Habits of Many Programmers
Seven Ineffective Coding Habits of Many ProgrammersKevlin Henney
 
SOLID Deconstruction
SOLID DeconstructionSOLID Deconstruction
SOLID DeconstructionKevlin Henney
 
Declarative Thinking, Declarative Practice
Declarative Thinking, Declarative PracticeDeclarative Thinking, Declarative Practice
Declarative Thinking, Declarative PracticeKevlin Henney
 
Object? You Keep Using that Word
Object? You Keep Using that WordObject? You Keep Using that Word
Object? You Keep Using that WordKevlin Henney
 

More from Kevlin Henney (20)

Structure and Interpretation of Test Cases
Structure and Interpretation of Test CasesStructure and Interpretation of Test Cases
Structure and Interpretation of Test Cases
 
Agility ≠ Speed
Agility ≠ SpeedAgility ≠ Speed
Agility ≠ Speed
 
Refactoring to Immutability
Refactoring to ImmutabilityRefactoring to Immutability
Refactoring to Immutability
 
Old Is the New New
Old Is the New NewOld Is the New New
Old Is the New New
 
Turning Development Outside-In
Turning Development Outside-InTurning Development Outside-In
Turning Development Outside-In
 
Giving Code a Good Name
Giving Code a Good NameGiving Code a Good Name
Giving Code a Good Name
 
Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...
Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...
Clean Coders Hate What Happens To Your Code When You Use These Enterprise Pro...
 
Thinking Outside the Synchronisation Quadrant
Thinking Outside the Synchronisation QuadrantThinking Outside the Synchronisation Quadrant
Thinking Outside the Synchronisation Quadrant
 
Code as Risk
Code as RiskCode as Risk
Code as Risk
 
Software Is Details
Software Is DetailsSoftware Is Details
Software Is Details
 
Game of Sprints
Game of SprintsGame of Sprints
Game of Sprints
 
Good Code
Good CodeGood Code
Good Code
 
The Error of Our Ways
The Error of Our WaysThe Error of Our Ways
The Error of Our Ways
 
Seven Ineffective Coding Habits of Many Programmers
Seven Ineffective Coding Habits of Many ProgrammersSeven Ineffective Coding Habits of Many Programmers
Seven Ineffective Coding Habits of Many Programmers
 
SOLID Deconstruction
SOLID DeconstructionSOLID Deconstruction
SOLID Deconstruction
 
Declarative Thinking, Declarative Practice
Declarative Thinking, Declarative PracticeDeclarative Thinking, Declarative Practice
Declarative Thinking, Declarative Practice
 
Object? You Keep Using that Word
Object? You Keep Using that WordObject? You Keep Using that Word
Object? You Keep Using that Word
 
Driven to Tests
Driven to TestsDriven to Tests
Driven to Tests
 
Learning Curve
Learning CurveLearning Curve
Learning Curve
 
Unequal Equivalence
Unequal EquivalenceUnequal Equivalence
Unequal Equivalence
 

Recently uploaded

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
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
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
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
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
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
 
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
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
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
 
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
 
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
 

Recently uploaded (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
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
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
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-...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
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
 
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 ☂️
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
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
 
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
 
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
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 

The Passions of Programming

  • 5. https://www.linkedin.com/jobs/search/?keywords=passionate%20software%20developer ... want talented individuals who are passionate... Are you passionate...? Be passionate...
  • 6. https://www.linkedin.com/jobs/search/?keywords=passionate%20software%20developer ... want talented individuals who are passionate... Are you passionate...? Be passionate... ... looking for a passionate and driven full stack web developer...
  • 7.
  • 11. passion, noun ▪ an intense enthusiasm for something Concise Oxford English Dictionary
  • 12. passion, noun ▪ strong and barely controllable emotion Concise Oxford English Dictionary
  • 13. passion, noun ▪ intense sexual love Concise Oxford English Dictionary
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20. Joe Giddens (@jjgiddens) / UK Press Association
  • 21. Sometimes it’s more important to smile than to shout. Saffiyah Khan
  • 22. dispassion, noun ▪ absence of passion Merriam–Webster’s Collegiate Dictionary
  • 24. dispassion, noun ▪ the state or quality of being emotionally uninvolved Dictionary.com
  • 27. dispassion, noun ▪ freedom from passion, bias, or emotion The Free Dictionary
  • 28.
  • 29.
  • 30. There is an art, craft, and science to programming that extends far beyond the program. The act of programming marries the discrete world of computers with the fluid world of human affairs.
  • 31. Programmers mediate between the negotiated and uncertain truths of business and the crisp, uncompromising domain of bits and bytes and higher constructed types.
  • 32.
  • 33. People in high tech take pride in their work. They are individuals who see the details of the things they produce in the light of the trials and triumphs they experience while creating products. In the courage of creation, they find a place to hang their individuality. Programmers and techno types appreciate elegant, spare code and the occasional well-turned architectural hack.
  • 34.
  • 35. If a plot works out exactly as you first planned, you're not working loosely enough to give room to your imagination and instincts.
  • 37. pantser, noun ▪ Writer who writes by the seat of their pants. ▪ In contrast to a plotter, a pantser doesn't work to (or have) an outline.
  • 38.
  • 39. On two occasions I have been asked, — “Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?” I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question. Charles Babbage
  • 40.
  • 41. Schiaparelli’s Inertial Measurement Unit (IMU) went about its business of calculating the lander’s rotation rate. For some reason, the IMU calculated a saturation- maximum period that persisted for one second longer than what would normally be expected at this stage. When the IMU sent this bogus information to the craft’s navigation system, it calculated a negative altitude. http://gizmodo.com/a-crazy-miscalculation-doomed-the-sciaparelli-lander-1789319670
  • 42.
  • 43. Because of the error in the estimated attitude that occurred at parachute inflation, the GNC Software projected the RDA range measurements with an erroneous off-vertical angle and deduced a negative altitude (cosinus of angles > 90 degrees are negative).
  • 44. That fateful miscalculation set off a cascade of despair, triggering the premature release of the parachute and the backshell, a brief firing of the braking thrusters, and activation of the on-ground systems as if Schiaparelli had already reached the surface. This all happened while the vehicle was still two miles (3.7 km) above ground. http://gizmodo.com/a-crazy-miscalculation-doomed-the-sciaparelli-lander-1789319670
  • 45. Simple Testing Can Prevent Most Critical Failures An Analysis of Production Failures in Distributed Data-Intensive Systems https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
  • 46. Almost all catastrophic failures are the result of incorrect handling of non-fatal errors explicitly signalled in software. https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
  • 47. A majority of the production failures (77%) can be reproduced by a unit test. https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf
  • 48. TDD is fun! James Grenning
  • 49. TDD is fun! It’s like a game where you navigate a maze of technical decisions that lead to highly robust software while avoiding the quagmire of long debug sessions. James Grenning
  • 50. TDD is fun! It’s like a game where you navigate a maze of technical decisions that lead to highly robust software while avoiding the quagmire of long debug sessions. With each test there is a renewed sense of accomplishment and clear progress toward the goal. James Grenning
  • 51. TDD is fun! It’s like a game where you navigate a maze of technical decisions that lead to highly robust software while avoiding the quagmire of long debug sessions. With each test there is a renewed sense of accomplishment and clear progress toward the goal. Automated tests record assumptions, capture decisions, and free the mind to focus on the next challenge. James Grenning
  • 52. TDD is fun! James Grenning
  • 53.
  • 54. Are human beings “noble in reason” and “infinite in faculty” as William Shakespeare famously wrote? Perfect,“in God’s image,” as some biblical scholars have asserted? Hardly.
  • 55.
  • 56. compassion, noun ▪ sympathetic consciousness of others’ distress together with a desire to alleviate it Merriam–Webster’s Collegiate Dictionary
  • 57. If someone shows kindness, caring, and a willingness to help others, they’re showing compassion. Vocabulary.com
  • 60. If there is such a phenomenon as absolute evil, it consists in treating another human being as a thing. John Brunner
  • 61. Getting money is not all a man’s business: to cultivate kindness is a valuable part of the business of life. Samuel Johnson
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68. Everyone you meet is fighting a battle you know nothing about. Be kind. Always.
  • 69. If your compassion does not include yourself, it is incomplete. Jack Kornfield
  • 70. One of my most controversial software opinions is that your sleep quality and stress level matter far, far more than the languages you use or the practices you follow. Nothing else comes close: not type systems, not TDD, not formal methods, not ANYTHING. Hillel Wayne https://twitter.com/hillelogram/status/1119709859979714560
  • 71.
  • 72. We don't develop proper recognition for the skills and qualities of mind that in fact help make collaboration successful, productive and enjoyable.
  • 73. The task of collaboration is, in fact, beautiful and serious. It is one of the grandest undertakings to coordinate the efforts of groups of people.
  • 74. The biggest advantage of autonomously working teams is risk reduction through increased group intelligence. Kevlin Henney https://jaxlondon.com/blog/java-core-languages/the-error-of-our-ways-kevlin-henney/
  • 75. To be a 10x developer, be a good developer who helps 10 other people get better at what they do. Branden Schwartz
  • 76. There’s little correlation between a group’s collective intelligence and the IQs of its individual members. But if a group includes more women, its collective intelligence rises. “What Makes a Team Smarter? More Women” Anita Woolley & Thomas W Malone http://hbr.org/2011/06/defend-your-research-what-makes-a-team-smarter-more-women/
  • 77. People from diverse backgrounds might actually alter the behavior of a group’s social majority in ways that lead to improved and more accurate group thinking. “Why Diverse Teams Are Smarter” David Rock & Heidi Grant https://hbr.org/2016/11/why-diverse-teams-are-smarter
  • 78. Diverse teams are more likely to constantly reexamine facts and remain objective. “Why Diverse Teams Are Smarter” David Rock & Heidi Grant https://hbr.org/2016/11/why-diverse-teams-are-smarter
  • 79. Development needs to go further than the technical stack; the full stack includes the world and people around the software. Kevlin Henney https://jaxlondon.com/blog/java-core-languages/the-error-of-our-ways-kevlin-henney/