SlideShare a Scribd company logo
1 of 7
Download to read offline
Live TDD Demo


Arithmetic Expression Evaluator


  Ionut G. Stan & Andrei Savu
Mindset change

Think about the smallest feature that you want to
implement and express it in test code.
 
Implement it.
 
This leads to emergent design.
Problem
1 + 2 * 5 - 4 = ? 


Tools
Python, unittest, TextMate


Data Flow
Expression > Split in tokens > Postfix notation > Evaluate

1+2*5-4  >  (1, +, 2, *, 5, -, 4)  >  (1, 2, 5, *, +, 4, -)  >  7
Postfix Notation !?


     1 + 2             >   1 2 +
     1 + 2 - 3        >   1 2 + 3 -
     1 + 2 * 3        >   1 2 3 * + 
     1 + 2 * 3 - 4  >   1 2 3 * + 4 -
Conclusions




      TDD is no silver bullet
Questions?

  thanks :)

More Related Content

Viewers also liked

Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...
Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...
Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...Learning Everywhere
 
Kata - Devops CDSummit LA 2015
Kata - Devops CDSummit LA 2015 Kata - Devops CDSummit LA 2015
Kata - Devops CDSummit LA 2015 John Willis
 
Design Fiction As a Service Prototyping Approach - Gert Pasman
Design Fiction As a Service Prototyping Approach - Gert PasmanDesign Fiction As a Service Prototyping Approach - Gert Pasman
Design Fiction As a Service Prototyping Approach - Gert PasmanServDes
 
Service Design Challenge: Transitioning from Concept to Implementation Innova...
Service Design Challenge: Transitioning from Concept to Implementation Innova...Service Design Challenge: Transitioning from Concept to Implementation Innova...
Service Design Challenge: Transitioning from Concept to Implementation Innova...ServDes
 
Service Design in Public Sector: Boosting organisational Change Through Desig...
Service Design in Public Sector: Boosting organisational Change Through Desig...Service Design in Public Sector: Boosting organisational Change Through Desig...
Service Design in Public Sector: Boosting organisational Change Through Desig...ServDes
 
Group's Presentation FINAL
Group's Presentation FINALGroup's Presentation FINAL
Group's Presentation FINALyin wang
 
How Kata Fits In
How Kata Fits InHow Kata Fits In
How Kata Fits InMike Rother
 
Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...
Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...
Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...ServDes
 
Striving for Ideal Behaviors: A Lean Management System Supported By KaiNexus
Striving for Ideal Behaviors: A Lean Management System Supported By KaiNexusStriving for Ideal Behaviors: A Lean Management System Supported By KaiNexus
Striving for Ideal Behaviors: A Lean Management System Supported By KaiNexusKaiNexus
 
How cynefin model improves lean implementation
How cynefin model improves lean implementationHow cynefin model improves lean implementation
How cynefin model improves lean implementationPierre E. NEIS
 
Toyota kata and beyond
Toyota kata and beyondToyota kata and beyond
Toyota kata and beyondWilliam Judd
 
Complexity versus Lean
Complexity versus LeanComplexity versus Lean
Complexity versus LeanJurgen Appelo
 
Why Your A3 Needs the IK
Why Your A3 Needs the IKWhy Your A3 Needs the IK
Why Your A3 Needs the IKMike Rother
 
A Representation Framework of Product-Service Systems for Classification and ...
A Representation Framework of Product-Service Systems for Classification and ...A Representation Framework of Product-Service Systems for Classification and ...
A Representation Framework of Product-Service Systems for Classification and ...ServDes
 
SMED or Single Minute Exchange of Dies and Set-up Reduction Process
SMED or Single Minute Exchange of Dies and Set-up Reduction ProcessSMED or Single Minute Exchange of Dies and Set-up Reduction Process
SMED or Single Minute Exchange of Dies and Set-up Reduction ProcessW3 Group Canada Inc.
 
Connecting Kata with Hoshin Kanri and True North
Connecting Kata with Hoshin Kanri and True NorthConnecting Kata with Hoshin Kanri and True North
Connecting Kata with Hoshin Kanri and True NorthW3 Group Canada Inc.
 

Viewers also liked (20)

Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...
Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...
Lean Coaching: the Wheel of Life and Harada Method - A new approach from the ...
 
Kata - Devops CDSummit LA 2015
Kata - Devops CDSummit LA 2015 Kata - Devops CDSummit LA 2015
Kata - Devops CDSummit LA 2015
 
Design Fiction As a Service Prototyping Approach - Gert Pasman
Design Fiction As a Service Prototyping Approach - Gert PasmanDesign Fiction As a Service Prototyping Approach - Gert Pasman
Design Fiction As a Service Prototyping Approach - Gert Pasman
 
Service Design Challenge: Transitioning from Concept to Implementation Innova...
Service Design Challenge: Transitioning from Concept to Implementation Innova...Service Design Challenge: Transitioning from Concept to Implementation Innova...
Service Design Challenge: Transitioning from Concept to Implementation Innova...
 
HAN Lean Event 2015 Suzanne van Egmond
HAN Lean Event 2015 Suzanne van EgmondHAN Lean Event 2015 Suzanne van Egmond
HAN Lean Event 2015 Suzanne van Egmond
 
Service Design in Public Sector: Boosting organisational Change Through Desig...
Service Design in Public Sector: Boosting organisational Change Through Desig...Service Design in Public Sector: Boosting organisational Change Through Desig...
Service Design in Public Sector: Boosting organisational Change Through Desig...
 
How Lean are you?
How Lean are you?How Lean are you?
How Lean are you?
 
Group's Presentation FINAL
Group's Presentation FINALGroup's Presentation FINAL
Group's Presentation FINAL
 
How Kata Fits In
How Kata Fits InHow Kata Fits In
How Kata Fits In
 
Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...
Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...
Moving Towards Service Dominant Logic in Manufacturing Sector: Development of...
 
This is lean
This is lean This is lean
This is lean
 
Striving for Ideal Behaviors: A Lean Management System Supported By KaiNexus
Striving for Ideal Behaviors: A Lean Management System Supported By KaiNexusStriving for Ideal Behaviors: A Lean Management System Supported By KaiNexus
Striving for Ideal Behaviors: A Lean Management System Supported By KaiNexus
 
Lean Management Kata Training
Lean Management Kata Training Lean Management Kata Training
Lean Management Kata Training
 
How cynefin model improves lean implementation
How cynefin model improves lean implementationHow cynefin model improves lean implementation
How cynefin model improves lean implementation
 
Toyota kata and beyond
Toyota kata and beyondToyota kata and beyond
Toyota kata and beyond
 
Complexity versus Lean
Complexity versus LeanComplexity versus Lean
Complexity versus Lean
 
Why Your A3 Needs the IK
Why Your A3 Needs the IKWhy Your A3 Needs the IK
Why Your A3 Needs the IK
 
A Representation Framework of Product-Service Systems for Classification and ...
A Representation Framework of Product-Service Systems for Classification and ...A Representation Framework of Product-Service Systems for Classification and ...
A Representation Framework of Product-Service Systems for Classification and ...
 
SMED or Single Minute Exchange of Dies and Set-up Reduction Process
SMED or Single Minute Exchange of Dies and Set-up Reduction ProcessSMED or Single Minute Exchange of Dies and Set-up Reduction Process
SMED or Single Minute Exchange of Dies and Set-up Reduction Process
 
Connecting Kata with Hoshin Kanri and True North
Connecting Kata with Hoshin Kanri and True NorthConnecting Kata with Hoshin Kanri and True North
Connecting Kata with Hoshin Kanri and True North
 

More from Andrei Savu

The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringAndrei Savu
 
The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringAndrei Savu
 
Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015Andrei Savu
 
One Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data MeetupOne Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data MeetupAndrei Savu
 
Introducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data BashIntroducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data BashAndrei Savu
 
APIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSFAPIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSFAndrei Savu
 
Challenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS MeetupChallenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS MeetupAndrei Savu
 
Cloud as a Data Platform
Cloud as a Data PlatformCloud as a Data Platform
Cloud as a Data PlatformAndrei Savu
 
Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10Andrei Savu
 
Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013Andrei Savu
 
Data Scientist Toolbox
Data Scientist ToolboxData Scientist Toolbox
Data Scientist ToolboxAndrei Savu
 
Axemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x OverviewAxemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x OverviewAndrei Savu
 
2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUG2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUGAndrei Savu
 
Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012Andrei Savu
 
Counters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at HackoverCounters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at HackoverAndrei Savu
 
Simple REST with Dropwizard
Simple REST with DropwizardSimple REST with Dropwizard
Simple REST with DropwizardAndrei Savu
 
Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2 Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2 Andrei Savu
 
Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Andrei Savu
 
Polyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the CloudPolyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the CloudAndrei Savu
 
Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011Andrei Savu
 

More from Andrei Savu (20)

The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data Engineering
 
The Evolving Landscape of Data Engineering
The Evolving Landscape of Data EngineeringThe Evolving Landscape of Data Engineering
The Evolving Landscape of Data Engineering
 
Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015Recap on AWS Lambda after re:Invent 2015
Recap on AWS Lambda after re:Invent 2015
 
One Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data MeetupOne Hadoop, Multiple Clouds - NYC Big Data Meetup
One Hadoop, Multiple Clouds - NYC Big Data Meetup
 
Introducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data BashIntroducing Cloudera Director at Big Data Bash
Introducing Cloudera Director at Big Data Bash
 
APIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSFAPIs & Underlying Protocols #APICraftSF
APIs & Underlying Protocols #APICraftSF
 
Challenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS MeetupChallenges for running Hadoop on AWS - AdvancedAWS Meetup
Challenges for running Hadoop on AWS - AdvancedAWS Meetup
 
Cloud as a Data Platform
Cloud as a Data PlatformCloud as a Data Platform
Cloud as a Data Platform
 
Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10
 
Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013Creating pools of Virtual Machines - ApacheCon NA 2013
Creating pools of Virtual Machines - ApacheCon NA 2013
 
Data Scientist Toolbox
Data Scientist ToolboxData Scientist Toolbox
Data Scientist Toolbox
 
Axemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x OverviewAxemblr Provisionr 0.3.x Overview
Axemblr Provisionr 0.3.x Overview
 
2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUG2012 in Review - Bucharest JUG
2012 in Review - Bucharest JUG
 
Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012Metrics for Web Applications - Netcamp 2012
Metrics for Web Applications - Netcamp 2012
 
Counters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at HackoverCounters with Riak on Amazon EC2 at Hackover
Counters with Riak on Amazon EC2 at Hackover
 
Simple REST with Dropwizard
Simple REST with DropwizardSimple REST with Dropwizard
Simple REST with Dropwizard
 
Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2 Guava Overview Part 2 Bucharest JUG #2
Guava Overview Part 2 Bucharest JUG #2
 
Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1
 
Polyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the CloudPolyglot Persistence & Big Data in the Cloud
Polyglot Persistence & Big Data in the Cloud
 
Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011Building a Great Team in Open Source - Open Agile 2011
Building a Great Team in Open Source - Open Agile 2011
 

Recently uploaded

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Recently uploaded (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

TDD Performance Kata

  • 1. Live TDD Demo Arithmetic Expression Evaluator Ionut G. Stan & Andrei Savu
  • 2.
  • 3. Mindset change Think about the smallest feature that you want to implement and express it in test code.   Implement it.   This leads to emergent design.
  • 4. Problem 1 + 2 * 5 - 4 = ?  Tools Python, unittest, TextMate Data Flow Expression > Split in tokens > Postfix notation > Evaluate 1+2*5-4  >  (1, +, 2, *, 5, -, 4)  >  (1, 2, 5, *, +, 4, -)  >  7
  • 5. Postfix Notation !?  1 + 2             >   1 2 +  1 + 2 - 3        >   1 2 + 3 -  1 + 2 * 3        >   1 2 3 * +   1 + 2 * 3 - 4  >   1 2 3 * + 4 -
  • 6. Conclusions TDD is no silver bullet