SlideShare a Scribd company logo
1 of 13
Testing with Math::Combinatorics Anirvan Chatterjee www.chatterjee.net
We run a comparison shopping site for new and used books
Booksellers give us icky data ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Lots and lots of icky data ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Longfellow, Henry Wadsworth Longfellow, Henry Wadsworth [Signed] Longfellow, Henry W. Longfellow,Henry Wadsworth Henry Wadsworth Longfellow Henry, Wadsworth Longfellow Henry, Wadsworth Longfellow Longfellow, Henry Wadsworh LONGFELLOW, H.W. LONGFELLOW WADSWORTH, Henry LONGFELLOW,H.W. LONGFELLOW, Henry Longfellow H. W Longfellow, H.W. LONGFELLOW Henry Wadsworth H.W.Longfellow Longfellow, Henry, W. LONGFELLOW, Henry Wadsworrth Longfellow, Henry Wadsworth [1807 - 1882]., Longfellow. H. LONGFELLOW, Henry Wadsworth Longfellow, Henry Wadsworth (translated) Henry Wadworth Longfellow Longfellow Henry W Henri Longfellow Longfellow, (Henry Wadsworth) Longfellow, Henry Wadsworth; LONGFELLOW, H. W Longfellow. H.W Longfellow Henry W. Longfellow, Henry Wadsworth, H.W. LONGFELLOW LONGFELLOW, HENRY WA. Longfellow, Henry W.[adsworth] Longfellow, H.W Longfellow, (H. W.) Longfellow, Henry Wadsworth" HENRY WADSWORTH LONGFELLOW LONGFELLOW, H. W. longfellow, Henry Wadsworth Longfellow, Henry W Longfellow, Henry Longfellow HENRY W. LONGFELLOW Longfellow, , Henry W Longfellow, Henry. Wadsworth. Longfellow , Henry Wadsworth Longfellow, Henry Wadsworth [Signed], Longfellow, Henry W., Wadsworth Longfellow, Henry WADSWORTH LONGFELLOW, HENRY LONGFELLOW, Henry W. Longfellow, Henry, Wadsworth LONGFELLOW, (HENRY WADSWORTH) Longfellow, Henry Wadssworth. Longfellow H LONGFELLOW, H.W
We use clustering algorithms ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Testing is critical ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
We want to test combinations ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
We want to test permutations ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Math::Combinatorics makes things easy
Iterate through combinations ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Add every permutation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Plug in the tests ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Tested code means happier users. Yay, testing.

More Related Content

Viewers also liked

Deconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key Metrics
Deconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key MetricsDeconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key Metrics
Deconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key Metricsanirvanchatterjee
 
Seo state of the union 2015
Seo state of the union 2015Seo state of the union 2015
Seo state of the union 2015Brian Turner
 
AMIA Panel: Usability Enhancements
AMIA Panel: Usability EnhancementsAMIA Panel: Usability Enhancements
AMIA Panel: Usability EnhancementsBrian Turner
 
Profile Locally Network Globally
Profile Locally Network GloballyProfile Locally Network Globally
Profile Locally Network Globallyericmeeks
 
Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...
Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...
Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...anirvanchatterjee
 
VIVO2015 - Leveraging Personalized Google Analytics for Greater RNS Engagement
VIVO2015 - Leveraging Personalized Google Analytics for Greater RNS EngagementVIVO2015 - Leveraging Personalized Google Analytics for Greater RNS Engagement
VIVO2015 - Leveraging Personalized Google Analytics for Greater RNS EngagementBrian Turner
 
5 Secrets of a Successful UCSF Profiles page 2015
5 Secrets of a Successful UCSF Profiles page 20155 Secrets of a Successful UCSF Profiles page 2015
5 Secrets of a Successful UCSF Profiles page 2015anirvanchatterjee
 
The Impact of OpenSocial at UCSF
The Impact of OpenSocial at UCSFThe Impact of OpenSocial at UCSF
The Impact of OpenSocial at UCSFericmeeks
 

Viewers also liked (9)

Deconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key Metrics
Deconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key MetricsDeconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key Metrics
Deconstructing a Dashboard:
 Inside the UCSF Profiles Team’s Monthly Key Metrics
 
Seo state of the union 2015
Seo state of the union 2015Seo state of the union 2015
Seo state of the union 2015
 
AMIA Panel: Usability Enhancements
AMIA Panel: Usability EnhancementsAMIA Panel: Usability Enhancements
AMIA Panel: Usability Enhancements
 
Profile Locally Network Globally
Profile Locally Network GloballyProfile Locally Network Globally
Profile Locally Network Globally
 
Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...
Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...
Plumage: Open Source Web App Leveraging eagle-i to Make Core Resources Discov...
 
VIVO2015 - Leveraging Personalized Google Analytics for Greater RNS Engagement
VIVO2015 - Leveraging Personalized Google Analytics for Greater RNS EngagementVIVO2015 - Leveraging Personalized Google Analytics for Greater RNS Engagement
VIVO2015 - Leveraging Personalized Google Analytics for Greater RNS Engagement
 
Crosslinks
Crosslinks Crosslinks
Crosslinks
 
5 Secrets of a Successful UCSF Profiles page 2015
5 Secrets of a Successful UCSF Profiles page 20155 Secrets of a Successful UCSF Profiles page 2015
5 Secrets of a Successful UCSF Profiles page 2015
 
The Impact of OpenSocial at UCSF
The Impact of OpenSocial at UCSFThe Impact of OpenSocial at UCSF
The Impact of OpenSocial at UCSF
 

Recently uploaded

SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingTeacherCyreneCayanan
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.MateoGardella
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docxPoojaSen20
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Shubhangi Sonawane
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxnegromaestrong
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfAyushMahapatra5
 

Recently uploaded (20)

SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 

Testing with Math::Combinatorics