title: "Sloppy Python: Using Dynamic Analysis to Automatically Add Error Tolerance to Ad-Hoc Data Processing Scripts" authors: Philip J. Guo venue: International Workshop on Dynamic Analysis (WODA) year: 2011 links: - Blog post tweet: SlopPy lets existing Python data analysis scripts tolerate and recover from errors without crashing abstract: > Programmers and data analysts get frustrated when their long-running data processing scripts crash without producing results, due to either bugs in their code or inconsistencies in data sources. To alleviate this frustration, we developed a dynamic analysis technique that guarantees scripts will never crash: It converts all uncaught exceptions into special NA (Not Available) objects and continues executing rather than crashing. Thus, imperfect scripts will run to completion and produce partial results and an error log, which is more informative than simply crashing with no results. We implemented our technique as a "Sloppy" Python interpreter that automatically adds error tolerance to existing scripts without any programmer effort or run-time slowdown. bibtex: > @inproceedings{GuoSlopPy2011, author = {Guo, Philip J.}, title = {{Sloppy Python}: Using Dynamic Analysis to Automatically Add Error Tolerance to Ad-hoc Data Processing Scripts}, booktitle = {Proceedings of the Ninth International Workshop on Dynamic Analysis}, series = {WODA '11}, year = {2011}, isbn = {978-1-4503-0811-3}, location = {Toronto, Ontario, Canada}, pages = {35--40}, numpages = {6}, url = {http://doi.acm.org/10.1145/2002951.2002961}, doi = {10.1145/2002951.2002961}, acmid = {2002961}, publisher = {ACM}, address = {New York, NY, USA}, keywords = {data processing, fault tolerance, scripting}, }