GET /api/v2/video/398
HTTP 200 OK Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, PUT, PATCH, HEAD, OPTIONS
{ "category": "PyCon US 2011", "language": "English", "slug": "pycon-2011--how-to-write-obfuscated-python", "speakers": [ "Rev. Johnny Healey" ], "tags": [ "obfuscated", "obfuscation", "pycon", "pycon2011" ], "id": 398, "state": 1, "title": "How to write obfuscated python", "summary": "", "description": "How to write obfuscated python\n\nPresented by Rev. Johnny Healey\n\nWith its clean, highly readable syntax, Python would seem to be quite a\nchallenge for a programmer attempting to write obfuscated code. Fortunately,\nit provides a wide variety of high-level abstractions that can be misused in\nexciting ways. This survey of obfuscation strategies will include topics such\nas decorator abuse, lambda calculus, and bytecode manipulation.\n\nAbstract\n\nPython's clean syntax can make traditional approaches to writing obfuscated\ncode much more challenging. Fortunately, Python provides many useful\nabstractions that can be misused to write code that is unreadable or even\ndeliberately misleading. This talk will provide a survey of silly python\ntricks that explore the boundaries of the language.\n\nTopics\n\n * Redefining builtins \n * Rarely used syntax \n * Comparison edge cases \n * Things you probably shouldn't do with decorators \n * Fun with lambdas \n * Bytecode manipulation \n\n", "quality_notes": "", "copyright_text": "Creative Commons Attribution-NonCommercial-ShareAlike 3.0", "embed": "", "thumbnail_url": "http://a.images.blip.tv/Pycon-PyCon2011HowToWriteObfuscatedPython160.png", "duration": null, "video_ogv_length": 137062698, "video_ogv_url": null, "video_ogv_download_only": false, "video_mp4_length": null, "video_mp4_url": "http://05d2db1380b6504cc981-8cbed8cf7e3a131cd8f1c3e383d10041.r93.cf2.rackcdn.com/pycon-us-2011/398_how-to-write-obfuscated-python.mp4", "video_mp4_download_only": false, "video_webm_length": null, "video_webm_url": null, "video_webm_download_only": false, "video_flv_length": null, "video_flv_url": null, "video_flv_download_only": false, "source_url": "", "whiteboard": "", "recorded": "2011-03-11", "added": "2012-02-23T04:20:00", "updated": "2014-04-08T20:28:27.987" }