Archives
- Tue 17 December 2024
- Best Practices for Notebook Users
- Thu 12 December 2024
- Log Graphs and Grokkability
- Thu 14 November 2024
- Jupyter Notebooks Considered Harmful: The Parables of Anne and Beth
- Sun 22 September 2024
- An Adware Malware Story Featuring Safari, Notification Centre, and Box Plots
- Sun 21 July 2024
- PyData London 2024 TDDA Tutorial
- Thu 20 June 2024
- Learning the Hard Way: Regression to the Mean
- Mon 04 March 2024
- Name Styles
- Sun 16 July 2023
- TOMLParams: TOML-based parameter files made better
- Tue 11 July 2023
- TDDA on the Coding for Thought Podcast
- Sun 08 January 2023
- Overcast Logged-in iCloud Users: Self-Selection Bias and Customer Stickiness
- Fri 25 February 2022
- Gentest Talk at 2022 Toronto Workshop on Reproducibility
- Mon 21 February 2022
- Unix & Linux Survival Guide for Data Science etc.
- Wed 16 February 2022
- One Tiny Bug Fix etc.
- Mon 07 February 2022
- Why Code Rusts
- Fri 16 July 2021
- Flat Files (a.k.a. CSV files)
- Sun 30 August 2020
- Sharing Tests across Implementations by Externalizing Test Data
- Thu 31 October 2019
- Reference Testing Exercise 2 (pytest flavour)
- Wed 30 October 2019
- Reference Testing Exercise 2 (unittest flavour)
- Tue 29 October 2019
- Reference Testing Exercise 1 (pytest flavour)
- Mon 28 October 2019
- Reference Testing Exercise 1 (unittest flavour)
- Fri 25 October 2019
- Screencasts and Exercises
- Thu 24 October 2019
- Installation
- Wed 20 February 2019
- Rexpy for Generating Regular Expressions: Postcodes
- Tue 22 May 2018
- Tagging PyTest Tests
- Fri 04 May 2018
- Detecting Bad Data and Anomalies with the TDDA Library (Part I)
- Tue 01 May 2018
- Saving Time Running Subsets of Tests with Tagging
- Tue 12 December 2017
- Our Approach to Data Provenance
- Thu 30 November 2017
- Data Provenance and Data Lineage: the View from the Podcasts
- Fri 06 October 2017
- Automatic Constraint Generation and Verification White Paper
- Thu 21 September 2017
- Constraint Generation in the Presence of Bad Data
- Thu 14 September 2017
- Obtaining the Python tdda Library
- Fri 08 September 2017
- GDPR, Consent and Microformats: A Half-Baked Idea
- Thu 04 May 2017
- Quick Reference for TDDA Library
- Thu 09 March 2017
- Improving Rexpy
- Wed 08 March 2017
- An Error of Process
- Mon 20 February 2017
- Errors of Interpretation: Bad Graphs with Dual Scales
- Fri 10 February 2017
- TDDA 1-pager
- Tue 31 January 2017
- Coverage information for Rexpy
- Thu 26 January 2017
- The New ReferenceTest class for TDDA
- Fri 11 November 2016
- Introducing Rexpy: Automatic Discovery of Regular Expressions
- Fri 04 November 2016
- The TDDA Constraints File Format
- Thu 03 November 2016
- Constraint Discovery and Verification for Pandas DataFrames
- Sun 18 September 2016
- WritableTestCase: Example Use
- Sat 17 September 2016
- Slides and Rough Transcript of TDDA talk from PyCon UK 2016
- Wed 20 April 2016
- Extracting More Apple Health Data
- Tue 19 April 2016
- Unit Tests
- Mon 18 April 2016
- First Test
- Fri 15 April 2016
- In Defence of XML: Exporting and Analysing Apple Health Data
- Mon 15 February 2016
- Lessons Learned: Bad Data and other SNAFUs
- Wed 06 January 2016
- How far in advance are flights cheapest? An error of interpretation
- Wed 16 December 2015
- Tools and Tooling
- Mon 14 December 2015
- Generalized Overfitting: Errors of Applicability
- Fri 11 December 2015
- Overview of TDDA in Predictive Analytics Times
- Tue 01 December 2015
- Anomaly Detection
- Sat 28 November 2015
- Unit Testing
- Thu 26 November 2015
- Constraints and Assertions
- Mon 23 November 2015
- Site News: Glossary; Table of Contents; Feeds
- Mon 16 November 2015
- Infinite Gain: The First Test
- Fri 13 November 2015
- How is this Misleading Data Misleading Me?
- Mon 09 November 2015
- Test-Driven Development: A Review
- Thu 05 November 2015
- Why Test-Driven Data Analysis?
- Thu 05 November 2015
- Test-Driven Data Analysis