PyConUK 2016: Recipy: completely effortless provenance for Python
Robin Wilson
Imagine the situation: You’ve written some wonderful Python code which produces a beautiful output: a graph, some wonderful data, a lovely musical composition, or whatever. You save that output, naturally enough, as awesome_output.png. You run the code a couple of times, each time making minor modifications. You come back to it the next week/month/year. Do you know how you created that output? What input data? What version of your code? If you’re anything like me then the answer will often, frustratingly, be “no”.
This talk will introduce ReciPy, a Python module that will save you from this situation! With the addition of a single line of code to the top of your Python files, ReciPy will log each run of your code to a database, keeping track of all of your input files, output files and the code that was used - as well as a lot of other useful information. You can then query this easily and find out exactly how that output was created.
ReciPy was originally developed at the Collaborations Workshop 2015 Hack Day, run by the Software Sustainability Institute - a UK-based institute focused on improving the way that computational science is carried out. ReciPy won the Hack Day competition, and has been developed further to make it fully useable, even by novice programmers - and even by those outside of computational science.
ReciPy is built of three separate components: a Python module that hooks into the Python import system so that it can ‘monkey patch’ input/output functions to write to a log before actually doing the input/output, a database stored in MongoDB and a range of interfaces to allow you to find out exactly how you did produce that output.
This talk will be suitable for programmers at all levels: you will hear how to install and use ReciPy and how it will help you (novice), how it hooks into Python (intermediate/advanced) and how you can help with further development (intermediate/advanced)
Slides: https://speakerdeck.com/robintw/recipy-completely-effortless-provenance-for-python
Видео PyConUK 2016: Recipy: completely effortless provenance for Python канала PyCon UK
Imagine the situation: You’ve written some wonderful Python code which produces a beautiful output: a graph, some wonderful data, a lovely musical composition, or whatever. You save that output, naturally enough, as awesome_output.png. You run the code a couple of times, each time making minor modifications. You come back to it the next week/month/year. Do you know how you created that output? What input data? What version of your code? If you’re anything like me then the answer will often, frustratingly, be “no”.
This talk will introduce ReciPy, a Python module that will save you from this situation! With the addition of a single line of code to the top of your Python files, ReciPy will log each run of your code to a database, keeping track of all of your input files, output files and the code that was used - as well as a lot of other useful information. You can then query this easily and find out exactly how that output was created.
ReciPy was originally developed at the Collaborations Workshop 2015 Hack Day, run by the Software Sustainability Institute - a UK-based institute focused on improving the way that computational science is carried out. ReciPy won the Hack Day competition, and has been developed further to make it fully useable, even by novice programmers - and even by those outside of computational science.
ReciPy is built of three separate components: a Python module that hooks into the Python import system so that it can ‘monkey patch’ input/output functions to write to a log before actually doing the input/output, a database stored in MongoDB and a range of interfaces to allow you to find out exactly how you did produce that output.
This talk will be suitable for programmers at all levels: you will hear how to install and use ReciPy and how it will help you (novice), how it hooks into Python (intermediate/advanced) and how you can help with further development (intermediate/advanced)
Slides: https://speakerdeck.com/robintw/recipy-completely-effortless-provenance-for-python
Видео PyConUK 2016: Recipy: completely effortless provenance for Python канала PyCon UK
Показать
Комментарии отсутствуют
Информация о видео
Другие видео канала
![PYCON UK 2017: Lazy Sequences working hard](https://i.ytimg.com/vi/P0SvDXp7dF8/default.jpg)
![PYCON UK 2017: Handling Database Concurrency With Django](https://i.ytimg.com/vi/5g9fwYcF3r8/default.jpg)
![Reproducible Science The Good The Bad The Ugly and The Untold](https://i.ytimg.com/vi/XOJ_0cwpuw4/default.jpg)
![Do not trust my or any computational research: Vincent Knight](https://i.ytimg.com/vi/kHxXdMA2LvI/default.jpg)
![EduBlocks Making the transition to Python easier](https://i.ytimg.com/vi/RtQTt5i2Kfc/default.jpg)
![PYCON UK 2017: Accessible Python Instruction](https://i.ytimg.com/vi/6EE_66iQC48/default.jpg)
![PYCON UK 2022: Friday Lightning Talks](https://i.ytimg.com/vi/bDo0FKmosnA/default.jpg)
![Python in Medicine: A toolkit for exploring neonatal ventilator data](https://i.ytimg.com/vi/3UceCKu6Gfk/default.jpg)
![Pycon UK 2016: Python in Education](https://i.ytimg.com/vi/6OSCB7StzYQ/default.jpg)
![Pycon UK 2016: Developing CS education, how can you help](https://i.ytimg.com/vi/kuE2VnsOLf4/default.jpg)
![Don't Cross The Streams - An Introduction to Virtual Environments](https://i.ytimg.com/vi/T-zaepH-lHc/default.jpg)
![PYCON UK 2017: Code With Mu](https://i.ytimg.com/vi/HrblTJnAnPw/default.jpg)
![Peer Learning in CS Education: A Students’ Perspective](https://i.ytimg.com/vi/p8895Xe5G6w/default.jpg)
![Data Scientist Career Path: How to find your way through the data science maze](https://i.ytimg.com/vi/zfBlyw8JUfw/default.jpg)
![PYCON UK 2017: John Pinner Awards](https://i.ytimg.com/vi/Kn9qTz2pYHs/default.jpg)
![PyCon UK Society 2018 AGM](https://i.ytimg.com/vi/TFdnGcnP_5M/default.jpg)
![PYCON UK 2017: Managing Machine Learning Models in Production](https://i.ytimg.com/vi/xMe9depppWs/default.jpg)
![Pycon UK 2016: An Introduction to web scraping using Python (audio only)](https://i.ytimg.com/vi/h2YR55IFKpU/default.jpg)
![PYCON UK 2015: Why I have an unhealthy love of tests](https://i.ytimg.com/vi/vPND9aq6QOw/default.jpg)
![Sunday Keynote - Programming in schools](https://i.ytimg.com/vi/2xI42pfz5Ec/default.jpg)