document.write('\x3cmeta http-equiv=\x22x-dns-prefetch-control\x22 content=\x22off\x22/\x3e\x3col class=\x22tumblr_posts\x22\x3e\x0a \x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_photo_post\x22\x3e\x0a \x3cimg src=\x22http://29.media.tumblr.com/tumblr_lqdvbnoWsY1qz4cuyo1_400.png\x22 alt=\x22laughingsquid:\x0a\x0aNative Foods of San Francisco\x0a\x22 class=\x22tumblr_photo\x22/\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_caption\x22\x3e\x0a \x3cp\x3e\x3ca href=\x22http://links.laughingsquid.com/post/9301607214\x22\x3elaughingsquid\x3c/a\x3e:\x3c/p\x3e\x0a\x3cblockquote\x3e\x0a\x3cp\x3e\x3ca href=\x22http://thebolditalic.com/Laura_Mason/stories/686-native-foods-of-san-francisco\x22\x3eNative Foods of San Francisco\x3c/a\x3e\x3c/p\x3e\x0a\x3c/blockquote\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a\x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_link_post\x22\x3e\x0a \x3ca href=\x22http://daringfireball.net/linked/2011/06/28/swiffy\x22 class=\x22tumblr_link\x22 \x3eGoogle Swiffy\x3c/a\x3e\x0a \x0a \x0a \x3c/li\x3e\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a \x3cli class=\x22tumblr_post tumblr_text_post\x22\x3e\x0a \x0a \x3cdiv class=\x22tumblr_title\x22\x3eDebugging with NodeJS and Expresso\x3c/div\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_body\x22\x3e\x0a \x3ch3\x3eNodeJS\x3c/h3\x3e\x0a\x3cpre\x3egit clone \x3ca href=\x22https://github.com/joyent/node.git\x22\x3ehttps://github.com/joyent/node.git\x3c/a\x3e\x3c/pre\x3e\x0a\x3ch3\x3eExpresso\x3c/h3\x3e\x0a\x3cpre\x3egit clone \x3ca href=\x22https://github.com/visionmedia/expresso.git\x22\x3ehttps://github.com/visionmedia/expresso.git\x3c/a\x3e\x3c/pre\x3e\x0a\x3cp\x3eAfter installing NodeJS and Expresso you will have to make a change to your Expresso file to allow for debugging.\x3c/p\x3e\x0a\x3cp\x3eAdd the following statement to your code to set a breakpoint in the debugger:\x3c/p\x3e\x0a\x3cpre\x3edebugger;\x3c/pre\x3e\x0a\x3cp\x3eNext, run the following to start up the NodeJS debugger and use Expresso for your unit tests.\x3c/p\x3e\x0a\x3ch3\x3eUsing TextMate\x3c/h3\x3e\x0a\x3cpre\x3emate $(which expresso)\x3c/pre\x3e\x0a\x3ch3\x3eUsing vim\x3c/h3\x3e\x0a\x3cpre\x3evim $(which expresso)\x3c/pre\x3e\x0a\x3cp\x3eChange the first line to read:\x3c/p\x3e\x0a\x3cblockquote\x3e#!/usr/bin/env node \x3cem\x3edebug\x3c/em\x3e\x3c/blockquote\x3e\x0a\x3cp\x3eExecuting your tests with expresso now uses the node debugger.\x3csup\x3e*\x3c/sup\x3e\x3c/p\x3e\x0a\x3cpre\x3eexpresso \x3cem\x3etest.js\x3c/em\x3e\x3c/pre\x3e\x0a\x3cp\x3eFor those looking for a browser based debugging environment, check out node-inspector.\x3c/p\x3e\x0a\x3ch3\x3eNode Inspector\x3c/h3\x3e\x0a\x3cpre\x3egit clone \x3ca href=\x22https://github.com/dannycoates/node-inspector.git\x22\x3ehttps://github.com/dannycoates/node-inspector.git\x3c/a\x3e\x3c/pre\x3e\x0a\x3cp\x3eTo get this to work with Expresso, I had to change the \x3ca href=\x22#hb\x22\x3ehashbang\x3c/a\x3e to be:\x3c/p\x3e\x0a\x3cblockquote\x3e#!/usr/bin/env node \x3cem\x3e\x26#8212;debug-brk\x3c/em\x3e\x3c/blockquote\x3e\x0a\x3cpre\x3enode-inspector \x26amp;\x3c/pre\x3e\x0a\x3cp\x3eNow, running \x3cem\x3eexpresso test.js\x3c/em\x3e will open \x3cu\x3eyour\x3c/u\x3e file in a web browser for debugging. You will have to point your browser to \x3ca href=\x22http://127.0.0.1:8080/?port=5858\x22\x3enode-inspector\x3c/a\x3e and you can explore your breakpoints and watch variables just like you were in WebKit.\x3c/p\x3e\x0a\x3cp\x3eHappy coding, twitternets!\x3c/p\x3e\x0a\x3cp\x3e\x3csmall\x3e* There are mixed feelings about this in the develosphere, as debugging unit tests is a bit like betting on black /and/ red. I am illustrating how to do it, not advocating its use. Personally I think its better to rely on the unit testing framework to surface errors but stepping through with debugger; statements is sometimes the only way to dive deep into the problem.\x3c/small\x3e\x3c/p\x3e\x0a \x3c/div\x3e\x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_photo_post\x22\x3e\x0a \x3cimg src=\x22http://26.media.tumblr.com/tumblr_lmg09bFd4E1qz6kw1o1_400.png\x22 alt=\x22Screenshot of a tree I built in the #creativejs class with @seb_ly.\x22 class=\x22tumblr_photo\x22/\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_caption\x22\x3e\x0a \x3cp\x3eScreenshot of a tree I built in the #creativejs class with @seb_ly.\x3c/p\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_photo_post\x22\x3e\x0a \x3cimg src=\x22http://30.media.tumblr.com/tumblr_lmec7ojSk21qz6kw1o1_400.png\x22 alt=\x22Kinect capture from Cinder. Looking into finding a way recognize the skeletal composition of the image.\x26nbsp;\x22 class=\x22tumblr_photo\x22/\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_caption\x22\x3e\x0a \x3cp\x3eKinect capture from Cinder. Looking into finding a way recognize the skeletal composition of the image.\u00a0\x3c/p\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_quote_post\x22\x3e\x0a \x3cdiv class=\x22tumblr_quote\x22\x3e\x0a \x3cspan class=\x22tumblr_open_quote\x22\x3e\x26#147;\x3c/span\x3e@brunofonzi solves some reoccurring developer issues with creating new projects and keeping up-to-date with their dependencies. Worth checking out and can apply to non-flash projects as well.\x3cspan class=\x22tumblr_close_quote\x22\x3e\x26#148;\x3c/span\x3e\x0a \x3c/div\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_source\x22\x3e\x0a \x3ca href=\x22http://blog.base42.nl/2011/05/17/lessons-learned-starting-a-new-project/\x22\x3eLessons learned; starting a new project base42.nl\x3c/a\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_photo_post\x22\x3e\x0a \x3cimg src=\x22http://28.media.tumblr.com/tumblr_llqli1r2OW1qf7dauo1_r1_400.jpg\x22 alt=\x22motherjones:\x0a\x0adoodleofboredom:\x0a\x0aBarack Obama\x26rsquo;s signature is totally a cartoon baby Tyrannosaurus playing with a ball of yarn.\x26nbsp;\x0a\x0aOh, goodness.\x0a\x22 class=\x22tumblr_photo\x22/\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_caption\x22\x3e\x0a \x3cp\x3e\x3ca href=\x22http://motherjones.tumblr.com/post/5833357276\x22\x3emotherjones\x3c/a\x3e:\x3c/p\x3e\x0a\x3cblockquote\x3e\x0a\x3cp\x3e\x3ca href=\x22http://doodleofboredom.com/post/5826032185\x22\x3edoodleofboredom\x3c/a\x3e:\x3c/p\x3e\x0a\x3cblockquote\x3e\x0a\x3cp\x3eBarack Obama\u2019s signature is totally a cartoon baby Tyrannosaurus playing with a ball of yarn.\u00a0\x3c/p\x3e\x0a\x3c/blockquote\x3e\x0a\x3cp\x3eOh, goodness.\x3c/p\x3e\x0a\x3c/blockquote\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_photo_post\x22\x3e\x0a \x3cimg src=\x22http://26.media.tumblr.com/tumblr_lle43gH4mR1qboy45o1_400.jpg\x22 alt=\x22\x22 class=\x22tumblr_photo\x22/\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_caption\x22\x3e\x0a \x3cp\x3e(Source: \x3ca href=\x22http://www.clock3.com/index.php?option=com_k2\x26amp;view=item\x26amp;id=59:big-wheel-revolving-gear-clock\x26amp;Itemid=184\x22 title=\x22clock3.com\x22\x3eclock3.com\x3c/a\x3e, via \x3ca href=\'http://einmalistkeinmaleinmalistkeinmal.tumblr.com/post/5604748571\'\x3eeinmalistkeinmaleinmalistkeinmal\x3c/a\x3e)\x3c/p\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_photo_post\x22\x3e\x0a \x3cimg src=\x22http://26.media.tumblr.com/tumblr_llfau1taoS1qgvwk9o1_400.jpg\x22 alt=\x22ilikeartalot:\x0a\x0aPeaceful Days by Kokuu\x0a\x22 class=\x22tumblr_photo\x22/\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_caption\x22\x3e\x0a \x3cp\x3e\x3ca href=\x22http://ilikeartalot.tumblr.com/post/5627983904\x22\x3eilikeartalot\x3c/a\x3e:\x3c/p\x3e\x0a\x3cblockquote\x3e\x0a\x3cp\x3e\x3ca target=\x22_top\x22 href=\x22http://cghub.com/images/view/24563\x22\x3ePeaceful Days\x3c/a\x3e by \x3ca target=\x22_top\x22 href=\x22http://kokuu.cghub.com/\x22\x3eKokuu\x3c/a\x3e\x3c/p\x3e\x0a\x3c/blockquote\x3e\x3cp\x3e(via \x3ca href=\'http://ilikeartalot-deactivated2011102.tumblr.com/post/5627983904/peaceful-days-by-kokuu\'\x3eilikeartalot-deactivated2011102\x3c/a\x3e)\x3c/p\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a \x0a\x0a \x0a \x3cli class=\x22tumblr_post tumblr_photo_post\x22\x3e\x0a \x3cimg src=\x22http://26.media.tumblr.com/tumblr_lletipDnx41qc00jno1_400.jpg\x22 alt=\x22americandrink:\x0a\x0aThe Graffiti Cocktail Shaker by William Kellog\x0a($20 at Amazon)\x0a\x22 class=\x22tumblr_photo\x22/\x3e\x0a \x0a \x0a \x3cdiv class=\x22tumblr_caption\x22\x3e\x0a \x3cp\x3e\x3ca href=\x22http://americandrink.net/post/5615643577\x22\x3eamericandrink\x3c/a\x3e:\x3c/p\x3e\x0a\x3cblockquote\x3e\x0a\x3cp\x3eThe Graffiti Cocktail Shaker by \x3ca href=\x22http://www.kikkerland.com/designers/william-kellogg/\x22\x3eWilliam Kellog\x3c/a\x3e\x3c/p\x3e\x0a\x3cp\x3e(\x3ca href=\x22http://www.amazon.com/gp/product/B004OIN7XQ/ref=as_li_ss_tl?ie=UTF8\x26amp;tag=americandrink-20\x26amp;linkCode=as2\x26amp;camp=217145\x26amp;creative=399349\x26amp;creativeASIN=B004OIN7XQ\x22\x3e$20 at Amazon\x3c/a\x3e)\x3c/p\x3e\x0a\x3c/blockquote\x3e\x0a \x3c/div\x3e\x0a \x0a \x3c/li\x3e\x0a \x0a\x0a \x0a\x0a \x0a \x0a \x0a \x0a \x0a\x0a \x0a \x0a\x3c/ol\x3e');