GET /api/v2/video/289
HTTP 200 OK Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, PUT, PATCH, HEAD, OPTIONS
{ "category": "PyCon US 2010", "language": "English", "slug": "pycon-2010--mastering-python-3-i-o", "speakers": [ "David Beazley" ], "tags": [ "io", "pycon", "pycon2010", "python3", "tutorial" ], "id": 289, "state": 1, "title": "Mastering Python 3 I/O (part 1)", "summary": "", "description": "Mastering Python 3 I/O\r\n\r\n \r\nPresented by David Beazley\r\n\r\n \r\nAs most Python programmers know, Python 3 breaks backwards compatibility with\r\nPython 2 in a number of significant ways. Although guides to Python 3 tend to\r\nfocus on superficial incompatibilities such as the new print function, changes\r\nto exception handling, or new language features, the most substantial changes\r\nconcern the strict separation of Unicode and bytes as well as the new I/O\r\nstack. Not only do these changes have far-reaching effects throughout the\r\nstandard library, but changes to I/O are likely to be the most major source of\r\nproblems for anyone porting an existing Python application to Python 3. In\r\nthis tutorial, we're going to take a top-to-bottom tour of the entire Python 3\r\nI/O system. We'll focus on how to properly handle both text and binary data,\r\nchanges to standard library modules, examine advanced features such as the\r\nbuffer API, perform some performance experiments, and end with practical\r\nadvice for programmers working on porting applications from Python 2 to 3.\r\nIntended Audience\r\n\r\n \r\nIntermediate to advanced Python programmers who are either developing new\r\napplications or contemplating a migration to Python 3. Attendees should\r\nalready be familiar with the basics of Python programming including standard\r\ndatatypes and commonly used library modules. A background in systems\r\nprogramming topics such as file handling, subprocesses, and socket programming\r\nis also recommended. Class Outline\r\n\r\n * Introducing Python 3 (with a focus on I/O) \r\n * Text Processing \r\n * Binary Data Handling \r\n * Dealing with System Interfaces and External Programs \r\n * The New io library \r\n * Network programming \r\n * The revised buffer API and direct I/O \r\n * Porting from Python 2 to 3. \r\n\r\n", "quality_notes": "This is the first part of a two-part tutorial. The second part doesn't seem to be available. (If you have a copy of the second part, please let us know.)", "copyright_text": "Creative Commons Attribution-NonCommercial-ShareAlike 3.0", "embed": "", "thumbnail_url": "http://a.images.blip.tv/Pycon-PyCon2010MasteringPython3IO499.png", "duration": null, "video_ogv_length": 411662419, "video_ogv_url": "http://05d2db1380b6504cc981-8cbed8cf7e3a131cd8f1c3e383d10041.r93.cf2.rackcdn.com/pycon-us-2010/289_mastering-python-3-i-o.ogv", "video_ogv_download_only": false, "video_mp4_length": null, "video_mp4_url": "http://05d2db1380b6504cc981-8cbed8cf7e3a131cd8f1c3e383d10041.r93.cf2.rackcdn.com/pycon-us-2010/289_mastering-python-3-i-o.m4v", "video_mp4_download_only": false, "video_webm_length": null, "video_webm_url": "", "video_webm_download_only": false, "video_flv_length": null, "video_flv_url": "", "video_flv_download_only": false, "source_url": "", "whiteboard": "", "recorded": "2010-02-19", "added": "2012-02-23T04:20:00", "updated": "2014-04-22T10:49:09.824" }