GET /api/v2/video/1625
HTTP 200 OK Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, PUT, PATCH, HEAD, OPTIONS
{ "category": "PyCon AU 2012", "language": "English", "slug": "path-dependent-development-why-on-earth-are-you", "speakers": [ "Nick Coghlan" ], "tags": [ "pulpdist" ], "id": 1625, "state": 1, "title": "Path Dependent Development: Why on Earth are you using SQL Alchemy as a JSON validator?", "summary": "The PulpDist project uses SQL Alchemy as part of a custom JSON validator. This\ncould be seen as an unusual choice, so it's worth exploring the way this\napproach came to be adopted. Practicing iterative development means coping\nwith the tension between \"doing the simplest thing that could possibly work\"\nto meet immediate project requirements and avoiding \"reinventing the wheel\".\n\n", "description": "The PulpDist project uses SQL Alchemy as part of a custom JSON validator. This\ncould be seen as an unusual choice, so it's worth exploring the way this\napproach came to be adopted.\n\nPracticing iterative development means coping with the inevitable tension\nbetween \"doing the simplest thing that could possibly work\" to meet immediate\nproject requirements and avoiding \"reinventing the wheel\" in order to take\nfull advantage of existing software components.\n\nThis means that iterative software designs are inevitably path dependent:\ndecisions made in early iterations can shape later aspects of a project in\nunexpected ways. These early influences may even predate the project itself,\ninstead being a consequence of wider organisational policies and the personal\npreferences and abilities of key developers.\n\nUnderstanding some of these factors can help with understanding why:\n\n * \"good enough\" is usually a better target than \"perfect\"\n * \"Not Invented Here\" syndrome is not always the villain it is frequently made out to be\n * the need to extensively rewrite existing components is not always a sign of past failure\n\n", "quality_notes": "", "copyright_text": "http://www.youtube.com/t/terms", "embed": "<object width=\"640\" height=\"390\"><param name=\"movie\" value=\"http://youtube.com/v/PYw2K0_ZZ0w?version=3&amp;hl=en_US\"></param><param name=\"allowFullScreen\" value=\"true\"></param><param name=\"allowscriptaccess\" value=\"always\"></param><embed src=\"http://youtube.com/v/PYw2K0_ZZ0w?version=3&amp;hl=en_US\" type=\"application/x-shockwave-flash\" width=\"640\" height=\"390\" allowscriptaccess=\"always\" allowfullscreen=\"true\"></embed></object>", "thumbnail_url": "http://i.ytimg.com/vi/PYw2K0_ZZ0w/hqdefault.jpg", "duration": null, "video_ogv_length": null, "video_ogv_url": null, "video_ogv_download_only": false, "video_mp4_length": null, "video_mp4_url": null, "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": "http://www.youtube.com/watch?v=PYw2K0_ZZ0w", "whiteboard": "", "recorded": "2012-08-22", "added": "2013-01-15T14:29:49", "updated": "2014-04-08T20:28:27.029" }