diff --git a/.DS_Store b/.DS_Store index ed5b9fce..133e1478 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/.doit.db.bak b/.doit.db.bak index d7af0955..55ae2587 100644 --- a/.doit.db.bak +++ b/.doit.db.bak @@ -8,14 +8,14 @@ 'render_pages:output/es/posts/zen-mode-extension-for-the-ipython-notebook.html', (17891328, 14863) 'render_tags:output/es/categories/slideshow.html', (4967424, 8656) 'render_galleries:output/es/galleries/index.html', (18304000, 13893) -'render_sources:output/posts/rise-meets-jupyterlab.ipynb', (8466432, 272) +'render_sources:output/posts/rise-meets-jupyterlab.ipynb', (8466432, 273) 'render_posts:cache/posts/under-the-sea-en-la-plata.html.es', (331264, 555) 'render_tags:output/es/categories/first_post.xml', (823296, 1047) 'render_tags:output/categories/git.xml', (1048576, 3941) 'render_tags:output/categories/blog.xml', (1778688, 6909) 'render_taxonomies:output/categories/pdf.html', (14875136, 5390) -'render_pages:output/es/posts/hello-world-again.html', (17524224, 15080) -'render_pages:output/es/posts/viper.html', (19108352, 14925) +'render_pages:output/es/posts/hello-world-again.html', (22219776, 15379) +'render_pages:output/es/posts/viper.html', (19108352, 15187) 'render_pages:output/posts/we-are-above-1000-stars.html', (19042304, 9831) 'render_tags:output/categories/family.html', (2807808, 3962) 'render_tags:output/categories/videos.html', (3086336, 3544) @@ -27,7 +27,7 @@ 'render_taxonomies:output/categories/nbviewer.xml', (5170176, 916) 'render_galleries:output/es/galleries/rise', (9375232, 145) 'render_taxonomies:output/categories/pip.html', (20664320, 7051) -'render_pages:output/es/posts/a-simple-overview-of-viper.html', (19618304, 15198) +'render_pages:output/es/posts/a-simple-overview-of-viper.html', (22023680, 15523) 'render_archive:output/2013/08/index.html', (2963968, 2575) 'render_indexes:output/index-2.html', (3585024, 13504) 'render_taxonomies:output/categories/performance.html', (18250752, 6244) @@ -46,14 +46,14 @@ 'render_pages:output/es/posts/zen-themes-updated.html', (19601408, 14690) 'render_sources:output/es/posts/under-the-sea-en-la-plata.ipynb', (39424, 281) 'render_taxonomies:output/es/categories/minimap.html', (17297408, 5334) -'render_pages:output/es/posts/nikola-nbconvert.html', (16004608, 14817) +'render_pages:output/es/posts/nikola-nbconvert.html', (22491648, 15018) 'render_taxonomies:output/es/index-4.html', (17604096, 16121) 'render_tags:output/es/categories/videos.html', (4097024, 3544) -'render_pages:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (16977920, 15004) +'render_pages:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (16977920, 15003) 'render_posts:timeline_changes', (2141696, 109) -'create_bundles:output/assets/css/all.css', (1443840, 776) +'create_bundles:output/assets/css/all.css', (1443840, 777) 'render_pages:output/posts/my-ipython-powered-semi-automatic-git-workflow.html', (18288640, 14886) -'render_galleries:output/galleries/bokehmagic/index.html', (19014144, 15076) +'render_galleries:output/galleries/bokehmagic/index.html', (19014144, 15075) 'render_tags:output/es/categories/talks.xml', (433664, 1181) 'render_tags:output/categories/config.xml', (575488, 3082) 'render_posts:cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html', (2059776, 740) @@ -66,39 +66,39 @@ 'render_sources:output/posts/zen-mode-extension-for-the-ipython-notebook.ipynb', (164864, 317) 'redirect', (56832, 56) 'render_tags:output/categories/pdf.html', (4884480, 3816) -'render_sources:output/posts/we-are-above-1000-stars.ipynb', (9292288, 276) +'render_sources:output/posts/we-are-above-1000-stars.ipynb', (9292288, 277) 'render_tags:output/categories/pinned.xml', (2697728, 526) 'render_tags:output/es/categories/config.xml', (606208, 3082) 'render_taxonomies:output/categories/pdf.xml', (6673920, 902) -'render_galleries:output/galleries/loadwrite/index.html', (14920704, 14807) +'render_galleries:output/galleries/loadwrite/index.html', (14920704, 14804) 'render_posts:cache/posts/viper-is-now-using-ipythonnbconvert.html.es', (1043456, 605) 'render_taxonomies:output/categories/connectivity.html', (16308224, 5418) -'render_galleries:output/es/galleries/loadwrite/index.html', (15290880, 14807) +'render_galleries:output/es/galleries/loadwrite/index.html', (15290880, 14804) 'render_sources:output/posts/under-the-sea-en-la-plata.ipynb', (139776, 281) 'render_tags:output/categories/trading.html', (4249088, 4239) 'render_taxonomies:output/categories/rise.html', (21064704, 8254) -'render_galleries:output/galleries/Facu_RN/DSC05928.JPG', (897536, 276) +'render_galleries:output/galleries/Facu_RN/DSC05928.JPG', (897536, 282) 'render_indexes', (586752, 56) 'render_tags:output/categories/less.html', (3739136, 4343) 'render_posts:cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.html.es', (123904, 705) 'render_tags:output/categories/flood.xml', (1332224, 708) -'render_sources:output/es/posts/a-simple-overview-of-viper.txt', (883200, 278) +'render_sources:output/es/posts/a-simple-overview-of-viper.txt', (883200, 487) 'render_tags:output/categories/slideshow.xml', (4760064, 5735) 'render_galleries:output/es/galleries/.ipynb_checkpoints/rss.xml', (9370112, 4439) -'render_taxonomies:output/es/2012/10/index.html', (17620480, 4809) +'render_taxonomies:output/es/2012/10/index.html', (17620480, 5044) 'render_archive:output/es/2016/08/index.html', (3737088, 1798) 'render_taxonomies:output/categories/local.html', (13010944, 5418) 'render_posts:cache/posts/mimic-the-ipython-notebook-cell-execution.html', (899584, 635) 'render_tags:output/categories/spellcheck.xml', (585216, 882) 'render_tags:output/es/categories/connectivity.html', (4724736, 3845) -'render_taxonomies:output/es/index-1.html', (18789376, 16549) +'render_taxonomies:output/es/index-1.html', (22321152, 18712) 'render_archive:output/2013/12/index.html', (4862464, 2575) 'render_tags:output/es/categories/politics.xml', (909824, 928) 'render_taxonomies:output/es/categories/index.html', (11169792, 2535) 'render_taxonomies:output/es/2012/12/index.html', (14974464, 4400) 'render_taxonomies:output/es/2012/11/index.html', (12927488, 4335) 'render_sources:output/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.ipynb', (1717760, 333) -'render_sources:output/posts/powered-by-nikola.txt', (42496, 254) +'render_sources:output/posts/powered-by-nikola.txt', (42496, 260) 'render_tags:output/es/categories/life.xml', (842240, 1041) 'render_taxonomies:output/categories/connectivity.xml', (5730304, 930) 'render_posts:cache/posts/trading-logbook-update-22-nov-2013.html.es', (953344, 600) @@ -106,29 +106,29 @@ 'copy_assets:output/assets/css/rst.css', (13465088, 1096) 'render_galleries:output/galleries/loadwrite', (1909248, 145) 'render_galleries:output/es/galleries/trades', (2388992, 145) -'render_sources:output/es/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2033152, 316) +'render_sources:output/es/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2033152, 317) 'render_galleries:output/es/galleries/deploy/rss.xml', (18625536, 14172) -'render_sources:output/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (1254912, 313) +'render_sources:output/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (1254912, 319) 'render_posts:cache/posts/different-ways-to-lead-an-open-source-project.html.es', (1119744, 655) -'render_sources:output/es/posts/we-are-above-1000-stars.ipynb', (9346560, 276) +'render_sources:output/es/posts/we-are-above-1000-stars.ipynb', (9346560, 277) 'render_galleries:output/galleries/trades/1.png', (2037760, 265) 'render_taxonomies:output/categories/politics.html', (15793152, 5080) 'render_taxonomies:output/categories/pyconar.xml', (5970432, 629) 'render_taxonomies:output/categories/zen.xml', (6849024, 1960) 'render_sources:output/es/posts/blogging-with-nikola-and-ipython.ipynb', (284160, 296) -'render_taxonomies:output/es/rss.xml', (21024768, 36312) +'render_taxonomies:output/es/rss.xml', (22169600, 38986) 'render_pages:output/es/posts/slider-for-nbconvert.html', (16681984, 14563) 'render_taxonomies:output/2013/11/index.html', (18206208, 5180) 'render_taxonomies:output/categories/nikola.html', (16396288, 15160) 'render_taxonomies:output/es/categories/slideshow.html', (21114368, 12992) -'render_galleries:output/galleries/zenmode/pic2.png', (1044480, 268) +'render_galleries:output/galleries/zenmode/pic2.png', (1044480, 274) 'render_taxonomies:output/es/categories/ipyscript.xml', (5711872, 825) 'render_pages:output/posts/beginning.html', (16748032, 14614) 'render_tags:output/es/categories/css.html', (2908160, 4327) 'render_galleries:output/galleries/zenmode', (1408512, 145) 'render_sources:output/es/posts/rise-510-is-out.ipynb', (12780544, 261) 'render_pages:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html', (19034624, 7651) -'render_sources:output/posts/nikolas-zen-theme-finally-released.ipynb', (1796096, 298) +'render_sources:output/posts/nikolas-zen-theme-finally-released.ipynb', (1796096, 299) 'render_pages:output/posts/hello-world-again.html', (16832512, 14671) 'render_archive:output/es/2013/01/index.html', (4068864, 2575) 'render_galleries:output/es/galleries/.ipynb_checkpoints/index.html', (9280512, 4443) @@ -138,8 +138,8 @@ 'render_tags:output/es/categories/daniela.xml', (2170880, 501) 'render_archive:output/2013/09/index.html', (4065792, 2575) 'render_tags:output/es/categories/politics.html', (2959872, 3849) -'render_sources:output/es/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (995840, 332) -'render_galleries:output/es/galleries/Inundacion/rss.xml', (17139712, 14567) +'render_sources:output/es/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (995840, 333) +'render_galleries:output/es/galleries/Inundacion/rss.xml', (17139712, 14565) 'render_posts', (1870848, 56) 'render_taxonomies:output/categories/scipycon.html', (17906688, 5193) 'render_tags:output/categories/local.xml', (738816, 924) @@ -149,7 +149,7 @@ 'render_sources', (448000, 56) 'render_posts:cache/posts/powered-by-nikola.html.es', (1808896, 760) 'render_taxonomies:output/categories/pyconar.html', (12974592, 5117) -'render_galleries:output/galleries/loadwrite/themes1.thumbnail.png', (976384, 284) +'render_galleries:output/galleries/loadwrite/themes1.thumbnail.png', (976384, 285) 'render_taxonomies:output/es/categories/zenmode.xml', (5310464, 846) 'render_tags:output/es/categories/minimap.xml', (1729536, 839) 'render_posts:cache/posts/trading-logbook-update-3.html.es', (8869888, 409) @@ -161,35 +161,35 @@ 'render_tags:output/es/categories/flood.html', (3667968, 3629) 'render_tags:output/es/categories/threads.html', (4843520, 3705) 'render_taxonomies:output/categories/viper.html', (18136064, 6752) -'render_galleries:output/galleries/bokehmagic/sin2.thumbnail.png', (704512, 280) -'render_sources:output/posts/live-trading-logbook.ipynb', (292352, 270) +'render_galleries:output/galleries/bokehmagic/sin2.thumbnail.png', (704512, 281) +'render_sources:output/posts/live-trading-logbook.ipynb', (292352, 271) 'render_tags:output/categories/format.xml', (379392, 980) 'render_posts:cache/posts/rise-500-is-out.html', (8189952, 381) 'render_tags:output/categories/workflow.html', (4315648, 7002) -'render_galleries:output/galleries/loadwrite/themes1.png', (984064, 282) +'render_galleries:output/galleries/loadwrite/themes1.png', (984064, 283) 'render_taxonomies:output/es/categories/trading.xml', (8719872, 1756) 'render_galleries:output/galleries/twitter/rss.xml', (16637440, 14175) -'render_pages:output/es/posts/improving-viper-slideshows-styling.html', (17355776, 14972) +'render_pages:output/es/posts/improving-viper-slideshows-styling.html', (17355776, 15207) 'render_tags:output/es/categories/less.xml', (1848832, 1422) 'render_taxonomies:output/categories/config.xml', (18713088, 3090) -'render_taxonomies:output/categories/workflow.xml', (16477696, 4678) +'render_taxonomies:output/categories/workflow.xml', (16477696, 4677) 'render_galleries:output/es/galleries/spellchecker', (2387456, 145) 'copy_assets:output/assets/js/jquery-1.10.2.min.js', (2032640, 306) 'render_galleries:output/galleries/rise/1004.png', (9037824, 267) -'render_taxonomies:output/categories/workflow.html', (16184320, 9166) +'render_taxonomies:output/categories/workflow.html', (16184320, 9165) 'render_galleries:output/galleries', (560640, 145) -'render_galleries:output/galleries/Inundacion/inundacion1.png', (1082880, 288) +'render_galleries:output/galleries/Inundacion/inundacion1.png', (1082880, 294) 'render_posts:cache/posts/customizing-your-ipython-slides.html', (1243136, 585) -'render_galleries:output/es/galleries/trades/rss.xml', (18366976, 14450) +'render_galleries:output/es/galleries/trades/rss.xml', (18366976, 14451) 'render_posts:cache/posts/paraguay.html.es', (290304, 677) 'render_galleries:output/galleries/bokehmagic/sin.thumbnail.png', (1837056, 278) 'render_posts:cache/stories/about-me.html', (843776, 467) -'render_galleries:output/es/galleries/rise/index.html', (17371136, 9052) +'render_galleries:output/es/galleries/rise/index.html', (17371136, 9051) 'render_archive', (1409024, 56) 'render_taxonomies:output/es/categories/gh-pages.xml', (15968768, 3134) 'render_taxonomies:output/categories/win.html', (20512256, 7051) 'render_tags:output/es/categories/ipython.html', (4888576, 27669) -'render_sources:output/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (1758208, 312) +'render_sources:output/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (1758208, 311) 'render_tags:output/categories/ipytmpl.html', (3333120, 3784) 'render_posts:cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.html.es', (1846272, 684) 'render_pages:output/es/posts/blogging-with-nikola-and-ipython.html', (18381824, 14788) @@ -208,13 +208,13 @@ 'render_tags:output/es/categories/local.html', (3694080, 3845) 'copy_assets:output/assets/css/baguetteBox.css', (11335168, 781) 'render_posts:cache/posts/blogging-with-nikola-and-ipython.html.es', (480768, 591) -'render_sources:output/es/posts/scipycon-argentina-2013.ipynb', (795648, 271) +'render_sources:output/es/posts/scipycon-argentina-2013.ipynb', (795648, 276) 'render_taxonomies:output/es/categories/typescript.xml', (8305152, 557) 'render_pages:output/posts/different-ways-to-lead-an-open-source-project.html', (19521024, 14875) 'render_taxonomies:output/es/categories/videos.xml', (7241216, 629) 'render_posts:cache/posts/rise-meets-jupyterlab.html.es', (8299008, 399) 'render_taxonomies:output/es/categories/less.xml', (5920768, 1429) -'render_sources:output/posts/slider-for-nbconvert.txt', (941568, 261) +'render_sources:output/posts/slider-for-nbconvert.txt', (941568, 267) 'render_tags:output/categories/conda.xml', (4847616, 1026) 'render_pages:output/posts/dont-write-scripts-just-write-ipyscripts.html', (12885504, 14842) 'render_posts:cache/posts/mimic-the-ipython-notebook-cell-execution.html.es', (1252864, 635) @@ -222,19 +222,19 @@ 'render_posts:cache/posts/nikola-nbconvert.html.es', (2232832, 602) 'render_pages:output/es/posts/trading-logbook-update-22-nov-2013.html', (15663104, 14800) 'render_pages:output/posts/rise-510-is-out.html', (16892928, 7445) -'render_sources:output/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (597504, 360) +'render_sources:output/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (597504, 361) 'render_tags:output/es/categories/extension.xml', (934912, 4879) -'render_taxonomies:output/es/categories/first_post.html', (13797376, 5551) +'render_taxonomies:output/es/categories/first_post.html', (22213632, 5850) 'render_tags:output/categories/python.html', (4524544, 28647) 'render_tags:output/es/categories/pinned.xml', (2667008, 526) -'render_galleries:output/galleries/twitter/1.thumbnail.png', (267776, 267) +'render_galleries:output/galleries/twitter/1.thumbnail.png', (267776, 268) 'render_archive:output/2016/index.html', (4100608, 2560) 'render_galleries:output/es/galleries/binder/index.html', (18178560, 6740) 'render_taxonomies:output/es/categories/twitter.xml', (7297024, 902) 'render_posts:cache/posts/paraguay.html', (61440, 456) 'render_taxonomies:output/categories/theme.xml', (6200832, 1429) 'render_tag_cloud', (5043200, 56) -'render_galleries:output/galleries/binder/terminal.png', (16535040, 274) +'render_galleries:output/galleries/binder/terminal.png', (16535040, 280) 'render_tags:output/categories/politics.html', (4629504, 3501) 'render_taxonomies:output/es/categories/reveal.html', (21010944, 13396) 'render_taxonomies:output/es/2016/08/index.html', (15964160, 4495) @@ -246,7 +246,7 @@ 'render_pages:output/posts/blogging-with-nikola-and-ipython.html', (18318336, 14788) 'render_galleries:output/galleries/deploy/1.thumbnail.png', (2145792, 268) 'render_taxonomies:output/es/categories/connectivity.html', (13775360, 5418) -'copy_files:output/Test.html', (640000, 236) +'copy_files:output/Test.html', (640000, 241) 'render_taxonomies:output/es/2016/06/index.html', (15857152, 4385) 'sitemap', (2054656, 56) 'render_taxonomies:output/categories/life.xml', (7225856, 1059) @@ -257,39 +257,39 @@ 'render_galleries:output/es/galleries/twitter/index.html', (17876992, 14163) 'render_pages:output/es/posts/teasers-with-the-ipython-notebook-plugin.html', (13547520, 14841) 'render_posts:cache/posts/teasers-with-the-ipython-notebook-plugin.html.es', (242688, 624) -'render_sources:output/posts/paraguay.txt', (271872, 236) -'render_taxonomies:output/rss.xml', (21385216, 33364) +'render_sources:output/posts/paraguay.txt', (271872, 242) +'render_taxonomies:output/rss.xml', (21840896, 33577) 'render_posts:cache/posts/pyconar-2013.html', (1847296, 490) 'render_taxonomies:output/categories/reveal.html', (21090816, 13396) -'render_galleries:output/galleries/Facu_RN/DSC05917.thumbnail.JPG', (1649152, 278) +'render_galleries:output/galleries/Facu_RN/DSC05917.thumbnail.JPG', (1649152, 283) 'render_taxonomies:output/es/categories/jinja.html', (14362112, 7578) 'render_tags:output/es/categories/toggle.xml', (1232896, 1542) 'render_tags:output/es/categories/jinja.xml', (264192, 3082) 'render_tags:output/es/categories/index.html', (3168768, 2564) 'render_pages:output/es/posts/scipycon-argentina-2013.html', (18716672, 14722) 'render_pages:output/es/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html', (17797120, 14933) -'render_sources:output/es/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (897024, 305) +'render_sources:output/es/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (897024, 311) 'render_pages:output/posts/pyconar-2013.html', (18526720, 14646) 'render_galleries:output/galleries/spellchecker/index.html', (17303040, 14478) 'render_tags:output/categories/ipyscript.html', (4690432, 3742) 'render_taxonomies:output/archive.html', (16349184, 3969) -'render_sources:output/es/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (1159680, 360) +'render_sources:output/es/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (1159680, 361) 'render_tags:output/categories/threads.xml', (1158656, 784) -'render_taxonomies:output/es/categories/extension.html', (18731520, 9376) +'render_taxonomies:output/es/categories/extension.html', (18731520, 9375) 'render_galleries:output/galleries/loadwrite/writer1.png', (2055168, 284) 'render_posts:cache/posts/teasers-with-the-ipython-notebook-plugin.html', (558080, 624) -'render_sources:output/es/posts/facundo.txt', (1487872, 235) +'render_sources:output/es/posts/facundo.txt', (1487872, 241) 'render_galleries:output/galleries/.ipynb_checkpoints', (9271296, 145) 'render_taxonomies:output/es/categories/theme.xml', (6377472, 1429) 'render_taxonomies:output/es/categories/zen.xml', (7110144, 1960) 'robots_file', (1241600, 56) -'render_galleries:output/galleries/trades/rss.xml', (17491456, 14450) +'render_galleries:output/galleries/trades/rss.xml', (17491456, 14451) 'copy_assets:output/assets/css/baguetteBox.min.css', (11592704, 797) 'render_pages:output/es/posts/live-trading-logbook.html', (16600064, 14702) 'render_archive:output/2013/05/index.html', (4859392, 2575) 'render_archive:output/2013/04/index.html', (3793408, 2575) 'render_tags:output/categories/magic.html', (3636224, 3742) -'render_galleries:output/galleries/Facu_RN/DSC05903.thumbnail.JPG', (1571840, 278) +'render_galleries:output/galleries/Facu_RN/DSC05903.thumbnail.JPG', (1571840, 284) 'render_tags:output/es/categories/linux.html', (4337664, 2594) 'render_taxonomies:output/2012/11/index.html', (12833280, 4335) 'render_galleries:output/galleries/binder/rss.xml', (19137024, 6750) @@ -298,12 +298,12 @@ 'render_taxonomies', (6202368, 56) 'render_taxonomies:output/es/categories/spellcheck.html', (12988928, 5377) 'render_pages:output/es/posts/different-ways-to-lead-an-open-source-project.html', (17551872, 14875) -'create_bundles:output/assets/css/all-nocdn.css', (598016, 902) +'create_bundles:output/assets/css/all-nocdn.css', (598016, 903) 'render_taxonomies:output/es/categories/jupyter.xml', (20727296, 5036) 'render_taxonomies:output/categories/zenmode.xml', (5421568, 846) 'render_posts:cache/posts/live-trading-logbook.html', (1222144, 529) -'render_sources:output/es/posts/ipython-plugin-for-nikola-updated.ipynb', (2060800, 291) -'render_galleries:output/galleries/Facu_RN/DSC05903.JPG', (193536, 276) +'render_sources:output/es/posts/ipython-plugin-for-nikola-updated.ipynb', (2060800, 297) +'render_galleries:output/galleries/Facu_RN/DSC05903.JPG', (193536, 282) 'render_tags:output/es/categories/magic.html', (4823552, 3742) 'render_galleries', (1016832, 56) 'render_posts:cache/posts/hello-world-again.html', (859648, 502) @@ -313,15 +313,15 @@ 'render_tags:output/es/categories/pdf.xml', (1089024, 895) 'render_pages:output/es/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html', (17094656, 14996) 'render_indexes:output/es/index-3.html', (3154432, 14063) -'render_taxonomies:output/es/categories/ipython.xml', (20136960, 25497) +'render_taxonomies:output/es/categories/ipython.xml', (22235648, 26520) 'render_archive:output/es/2014/03/index.html', (3451904, 2575) 'render_taxonomies:output/categories/linux.html', (20311552, 7051) 'render_tags:output/es/categories/reveal.html', (2845696, 9053) -'render_galleries:output/galleries/twitter/1.png', (292864, 265) -'render_sources:output/es/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (999424, 299) +'render_galleries:output/galleries/twitter/1.png', (292864, 266) +'render_sources:output/es/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (999424, 301) 'render_sources:output/es/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.ipynb', (60416, 333) -'render_taxonomies:output/es/categories/aikido.html', (21592064, 5409) -'render_galleries:output/es/galleries/rise/rss.xml', (17346560, 9062) +'render_taxonomies:output/es/categories/aikido.html', (21705216, 5920) +'render_galleries:output/es/galleries/rise/rss.xml', (17346560, 9061) 'render_posts:cache/posts/scipycon-argentina-2013.html.es', (991744, 539) 'render_tags:output/es/categories/toggle.html', (3655168, 4463) 'render_taxonomies:output/categories/jupyterlab.html', (20067328, 5724) @@ -329,20 +329,20 @@ 'render_taxonomies:output/es/2014/03/index.html', (18597376, 4770) 'render_archive:output/es/2013/11/index.html', (2749952, 2575) 'render_archive:output/2014/index.html', (4032000, 2560) -'render_sources:output/posts/hello-world-again.txt', (60928, 254) +'render_sources:output/posts/hello-world-again.txt', (60928, 260) 'render_taxonomies:output/categories/ipytmpl.xml', (6865408, 869) 'copy_assets:output/assets/js/jquery.timeago.js', (2031616, 298) 'render_tags:output/es/categories/blog.xml', (770560, 7665) 'render_tags:output/es/categories/python.xml', (2932224, 27527) 'render_tags:output/es/categories/zenmode.xml', (1253888, 840) -'sitemap:output/sitemap.xml', (21509632, 75537) +'sitemap:output/sitemap.xml', (21756928, 75512) 'render_tags:output/es/categories/facu.xml', (2298368, 501) 'render_pages:output/posts/one-line-deployment-of-your-site-to-gh-pages.html', (17986560, 14870) 'render_tags:output/categories/viper.html', (4916736, 5163) 'render_posts:cache/posts/rise-500-is-out.html.es', (7987712, 381) 'copy_assets:output/assets/fonts/fontawesome-webfont.ttf', (1816576, 317) -'render_taxonomies:output/es/categories/nikola.xml', (14221312, 11698) -'render_sources:output/es/posts/hello-world-again.txt', (968192, 260) +'render_taxonomies:output/es/categories/nikola.xml', (22352896, 12432) +'render_sources:output/es/posts/hello-world-again.txt', (968192, 451) 'render_tags:output/es/categories/aikido.html', (2796032, 3422) 'render_taxonomies:output/es/categories/slideshow.xml', (21073408, 8504) 'render_taxonomies:output/es/categories/twitter.html', (16221696, 5390) @@ -379,7 +379,7 @@ 'render_posts:cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.html.es', (907776, 644) 'copy_assets:output/assets/css/nikola_ipython.css', (163840, 307) 'render_tags:output/categories/connectivity.xml', (567808, 924) -'copy_files:output/CNAME', (1718272, 224) +'copy_files:output/CNAME', (1718272, 229) 'render_taxonomies:output/es/index-3.html', (19236864, 16075) 'render_galleries:output/galleries/Facu_RN', (622080, 145) 'render_archive:output/es/archive.html', (4063232, 2560) @@ -387,7 +387,7 @@ 'render_tags:output/es/categories/workflow.xml', (2025984, 4081) 'render_taxonomies:output/categories/jupyter.html', (21270528, 9524) 'render_tags:output/es/categories/conda.xml', (4712448, 1026) -'render_taxonomies:output/es/categories/format.html', (12907008, 5475) +'render_taxonomies:output/es/categories/format.html', (12907008, 5474) 'render_pages:output/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html', (19324928, 14933) 'render_pages:output/posts/how-to-pin-conda.html', (17172480, 14745) 'render_posts:cache/posts/nikolas-zen-theme-finally-released.html.es', (1192448, 599) @@ -397,9 +397,9 @@ 'render_indexes:output/index-3.html', (4986368, 14063) 'render_taxonomies:output/index-2.html', (18030592, 15549) 'render_posts:cache/posts/rise-510-is-out.html', (12781056, 382) -'render_galleries:output/galleries/Facu_RN/DSC05917.JPG', (1221632, 276) -'render_taxonomies:output/categories/format.xml', (7325696, 987) -'render_sources:output/es/posts/live-trading-logbook.ipynb', (788992, 270) +'render_galleries:output/galleries/Facu_RN/DSC05917.JPG', (1221632, 281) +'render_taxonomies:output/categories/format.xml', (7325696, 986) +'render_sources:output/es/posts/live-trading-logbook.ipynb', (788992, 271) 'render_taxonomies:output/categories/theme.html', (14484992, 5917) 'render_taxonomies:output/es/2013/11/index.html', (18838016, 5180) 'render_tags:output/es/categories/local.xml', (1265152, 924) @@ -434,78 +434,78 @@ 'render_sources:output/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.ipynb', (1795584, 354) 'render_sources:output/es/posts/hide-the-input-cells-from-your-ipython-slides.ipynb', (2059264, 320) 'copy_assets:output/assets/css/code.css', (884736, 141) -'render_galleries:output/galleries/Inundacion/rss.xml', (17157632, 14567) +'render_galleries:output/galleries/Inundacion/rss.xml', (17157632, 14565) 'render_galleries:output/galleries/bokehmagic/themes.png', (1718784, 282) 'render_tags:output/categories/mipyex.xml', (135680, 3343) 'render_posts:cache/posts/blogging-with-nikola-and-ipython.html', (156672, 591) 'render_taxonomies:output/es/categories/github.html', (16828416, 4072) -'render_posts:cache/posts/nikola-nbconvert.html', (466432, 475) -'render_taxonomies:output/categories/extension.xml', (6691328, 4888) +'render_posts:cache/posts/nikola-nbconvert.html', (466432, 480) +'render_taxonomies:output/categories/extension.xml', (6691328, 4887) 'scale_images', (55296, 56) 'render_taxonomies:output/index-1.html', (17332736, 13601) 'render_tags:output/es/categories/mipyex.html', (2735104, 6264) 'copy_assets:output/assets/js/moment-with-locales.min.js', (11616256, 1220) 'render_taxonomies:output/es/categories/zen.html', (15886848, 6448) 'render_galleries:output/es/galleries/.ipynb_checkpoints', (9374720, 145) -'render_taxonomies:output/es/categories/workflow.xml', (16529920, 4678) -'render_taxonomies:output/es/categories/nikola.html', (16411648, 16186) +'render_taxonomies:output/es/categories/workflow.xml', (16529920, 4677) +'render_taxonomies:output/es/categories/nikola.html', (22473216, 16920) 'render_archive:output/2012/12/index.html', (4964352, 2575) 'render_tags:output/categories/reveal.html', (3304448, 9053) 'render_taxonomies:output/es/categories/family.html', (15631360, 5547) 'render_tags:output/es/categories/tutorials.html', (3640320, 3615) 'render_taxonomies:output/categories/reveal.xml', (20998656, 8908) -'render_taxonomies:output/2014/04/index.html', (15657472, 5490) +'render_taxonomies:output/2014/04/index.html', (15657472, 5489) 'render_tags:output/categories/pdf.xml', (559616, 895) 'render_tags:output/categories/linux.html', (3313664, 2594) -'render_galleries:output/galleries/Facu_RN/rss.xml', (16614912, 17277) -'render_taxonomies:output/categories/javascript.html', (17859072, 11070) +'render_galleries:output/galleries/Facu_RN/rss.xml', (16614912, 17279) +'render_taxonomies:output/categories/javascript.html', (17859072, 11069) 'render_taxonomies:output/categories/themes.html', (19182592, 5810) 'render_archive:output/2013/01/index.html', (4369920, 2575) 'render_taxonomies:output/es/categories/css.html', (14491136, 5899) 'render_archive:output/es/2013/12/index.html', (4700672, 2575) 'render_taxonomies:output/2017/06/index.html', (17061376, 5225) 'render_taxonomies:output/2012/09/index.html', (14369792, 4379) -'render_sources:output/posts/viper.txt', (1142272, 230) -'render_taxonomies:output/es/2014/04/index.html', (15368192, 5490) +'render_sources:output/posts/viper.txt', (1142272, 236) +'render_taxonomies:output/es/2014/04/index.html', (15368192, 5489) 'render_sources:output/es/posts/trading-logbook-update-3.ipynb', (8629760, 279) 'render_posts:cache/posts/rise-400b1-is-available-please-test-it.html', (4866560, 451) 'render_sources:output/posts/reveal-converter-mini-tutorial.ipynb', (33280, 291) 'render_taxonomies:output/categories/toggle.html', (13723136, 6037) -'render_sources:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (2032128, 357) -'render_galleries:output/es/galleries/bokehmagic/rss.xml', (18185728, 15131) +'render_sources:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (2032128, 356) +'render_galleries:output/es/galleries/bokehmagic/rss.xml', (18185728, 15130) 'render_sources:output/es/posts/my-ipython-powered-semi-automatic-git-workflow.ipynb', (2160128, 324) 'render_taxonomies:output/categories/osx.html', (20326912, 7051) -'render_sources:output/es/stories/about-me.txt', (1090048, 247) +'render_sources:output/es/stories/about-me.txt', (1090048, 332) 'render_tags:output/categories/osx.html', (4674560, 2594) 'render_tags:output/es/categories/javascript.xml', (609792, 6156) 'render_taxonomies:output/es/categories/zenmode.html', (18541568, 5334) 'render_tags:output/categories/performance.html', (4595712, 4239) 'render_pages:output/posts/facundo.html', (17046528, 14498) 'render_sources:output/posts/customizing-your-ipython-slides.ipynb', (975872, 293) -'copy_files:output/portfolio/Humor-Sans.ttf', (41984, 265) +'copy_files:output/portfolio/Humor-Sans.ttf', (41984, 271) 'render_posts:cache/posts/a-new-nikolas-theme-for-my-site-zen.html', (948736, 603) 'render_indexes:output/es/index.html', (4468224, 14199) 'render_taxonomies:output/es/categories/flood.xml', (5279232, 720) -'render_sources:output/posts/beginning.txt', (441344, 238) +'render_sources:output/posts/beginning.txt', (441344, 243) 'render_posts:cache/posts/scipycon-argentina-2013.html', (933888, 539) 'render_taxonomies:output/es/2012/index.html', (13653504, 3969) 'render_taxonomies:output/es/2013/10/index.html', (18825728, 6249) 'render_taxonomies:output/categories/jupyterlab.xml', (20237824, 1236) -'render_galleries:output/galleries/Facu_RN/DSC05925.thumbnail.JPG', (1847808, 278) +'render_galleries:output/galleries/Facu_RN/DSC05925.thumbnail.JPG', (1847808, 284) 'render_posts:cache/posts/How-to-pin-Conda.html.es', (2448896, 385) -'render_galleries:output/galleries/spellchecker/1.thumbnail.png', (691200, 279) +'render_galleries:output/galleries/spellchecker/1.thumbnail.png', (691200, 280) 'render_posts:cache/posts/viper.html.es', (1575424, 650) 'copy_assets:output/assets/css/theme.css', (14187520, 1114) -'render_sources:output/es/posts/beginning.txt', (272896, 244) +'render_sources:output/es/posts/beginning.txt', (272896, 417) 'render_pages:output/es/posts/one-line-deployment-of-your-site-to-gh-pages.html', (17390592, 14870) 'render_posts:cache/posts/under-the-sea-en-la-plata.html', (378368, 555) 'render_taxonomies:output/es/categories/themes.xml', (6389760, 1322) 'render_archive:output/2014/03/index.html', (3986944, 2575) -'render_taxonomies:output/es/categories/first_post.xml', (5620224, 1063) +'render_taxonomies:output/es/categories/first_post.xml', (22365696, 1362) 'render_taxonomies:output/es/categories/facundo.xml', (5173248, 1059) -'render_galleries:output/galleries/Inundacion/index.html', (19691008, 14543) +'render_galleries:output/galleries/Inundacion/index.html', (19691008, 14542) 'render_posts:cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html', (822272, 674) -'render_taxonomies:output/es/categories/blog.html', (17539584, 12191) +'render_taxonomies:output/es/categories/blog.html', (22340096, 12761) 'render_tags:output/es/categories/twitter.html', (2828288, 3817) 'render_tags:output/categories/scipycon.html', (3260928, 3615) 'render_tags:output/es/categories/javascript.html', (4281344, 9077) @@ -513,12 +513,12 @@ 'copy_assets:output/assets/images/blue-mocha-grunge-reversed.jpg', (1757184, 337) 'render_archive:output/es/2013/10/index.html', (3620864, 2575) 'render_taxonomies:output/es/categories/performance.xml', (8614400, 1756) -'render_sources:output/es/posts/paraguay.txt', (272384, 242) +'render_sources:output/es/posts/paraguay.txt', (272384, 415) 'render_taxonomies:output/es/categories/ipytmpl.xml', (7161344, 869) 'render_pages:output/posts/make-your-slides-with-ipython.html', (19475968, 14765) 'render_tags:output/categories/aikido.html', (5000704, 3422) 'render_taxonomies:output/2012/index.html', (13527040, 3969) -'render_taxonomies:output/es/categories/aikido.xml', (21488128, 921) +'render_taxonomies:output/es/categories/aikido.xml', (21640192, 1432) 'render_sources:output/es/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.ipynb', (948224, 354) 'render_taxonomies:output/categories/tutorials.html', (19319296, 5193) 'render_taxonomies:output/index-3.html', (19395584, 16075) @@ -535,7 +535,7 @@ 'render_galleries:output/galleries/Inundacion', (559104, 145) 'render_tags:output/categories/slideshow.html', (3711488, 8656) 'render_taxonomies:output/categories/minimap.xml', (5835776, 846) -'render_sources:output/posts/a-simple-overview-of-viper.txt', (1264128, 272) +'render_sources:output/posts/a-simple-overview-of-viper.txt', (1264128, 278) 'render_taxonomies:output/es/categories/typescript.html', (16344064, 5045) 'copy_assets:output/assets/fonts/eMS0tViDqryBl0EG1pqFZfesZW2xOQ-xsNqO47m55DA.woff', (1499136, 368) 'render_tags:output/categories/ipython.xml', (2355200, 23350) @@ -543,70 +543,70 @@ 'render_tags:output/es/categories/win.html', (3072000, 2594) 'render_tags:output/es/categories/trading.html', (3037696, 4239) 'render_tags:output/categories/extension.xml', (1499648, 4879) -'render_galleries:output/galleries/Facu_RN/DSC05925.JPG', (1264640, 276) +'render_galleries:output/galleries/Facu_RN/DSC05925.JPG', (1264640, 282) 'render_tags:output/es/categories/less.html', (4184064, 4343) 'render_indexes:output/es/index-2.html', (4323840, 13504) 'render_taxonomies:output/es/2013/01/index.html', (18201088, 4625) 'render_galleries:output/es/galleries/spellchecker/index.html', (17625600, 14478) 'render_tags:output/es/categories/tutorials.xml', (700416, 694) -'render_pages:output/es/posts/paraguay.html', (17697280, 14963) +'render_pages:output/es/posts/paraguay.html', (17697280, 15234) 'render_archive:output/es/2014/04/index.html', (4804096, 2575) 'render_pages:output/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html', (19058176, 14996) 'render_taxonomies:output/es/categories/ipyscript.html', (19199488, 5313) -'copy_files:output/ShortCV_English.pdf', (115200, 255) +'copy_files:output/ShortCV_English.pdf', (115200, 261) 'render_sources:output/posts/rise-400b1-is-available-please-test-it.ipynb', (3584512, 307) 'render_taxonomies:output/es/categories/scipycon.xml', (5172224, 705) 'render_sources:output/posts/nikola-nbconvert.txt', (605696, 257) 'render_posts:cache/posts/a-simple-overview-of-viper.html.es', (2065408, 841) 'render_authors', (95744, 56) -'render_sources:output/es/posts/coming-back.ipynb', (212992, 253) -'render_galleries:output/galleries/spellchecker/2.png', (1757696, 277) +'render_sources:output/es/posts/coming-back.ipynb', (212992, 252) +'render_galleries:output/galleries/spellchecker/2.png', (1757696, 278) 'render_tags:output/categories/ipython.html', (2967040, 26271) 'render_tags:output/categories/ipytmpl.xml', (1839616, 863) 'render_indexes:output/index.html', (2769408, 14199) -'render_galleries:output/galleries/Facu_RN/Facu3.png', (739840, 270) -'render_taxonomies:output/es/categories/mipyex.xml', (5679104, 3352) +'render_galleries:output/galleries/Facu_RN/Facu3.png', (739840, 276) +'render_taxonomies:output/es/categories/mipyex.xml', (5679104, 3351) 'render_taxonomies:output/categories/pinned.html', (16148992, 5019) -'render_galleries:output/galleries/binder/terminal.thumbnail.png', (16536064, 276) +'render_galleries:output/galleries/binder/terminal.thumbnail.png', (16536064, 282) 'render_tags:output/es/categories/pip.html', (2993664, 2594) 'render_posts:cache/posts/a-new-nikolas-theme-for-my-site-zen.html.es', (1497088, 603) '_switch to py3', (1401856, 56) 'render_taxonomies:output/2017/12/index.html', (19299840, 3618) 'render_taxonomies:output/categories/ipytmpl.html', (15694336, 5357) -'render_galleries:output/galleries/Facu_RN/DSC05901.JPG', (1436160, 276) -'render_galleries:output/galleries/Facu_RN/DSC05901.thumbnail.JPG', (1797120, 278) +'render_galleries:output/galleries/Facu_RN/DSC05901.JPG', (1436160, 282) +'render_galleries:output/galleries/Facu_RN/DSC05901.thumbnail.JPG', (1797120, 284) 'render_taxonomies:output/es/categories/ipytmpl.html', (14880768, 5357) 'render_taxonomies:output/categories/family.html', (13562368, 5547) -'render_galleries:output/galleries/Facu_RN/Facu2.thumbnail.png', (1463296, 272) +'render_galleries:output/galleries/Facu_RN/Facu2.thumbnail.png', (1463296, 278) 'render_taxonomies:output/2012/06/index.html', (18925568, 6932) 'render_tags:output/es/categories/ipytmpl.html', (3769344, 3784) 'render_tags:output/categories/minimap.html', (3150336, 3760) 'render_taxonomies:output/es/categories/base16.html', (19470336, 5279) -'render_galleries:output/galleries/Facu_RN/Facu5.thumbnail.png', (2123264, 272) +'render_galleries:output/galleries/Facu_RN/Facu5.thumbnail.png', (2123264, 278) 'render_galleries:output/es/galleries/binder/rss.xml', (18914304, 6750) 'copy_files', (1055744, 56) 'render_archive:output/es/2013/05/index.html', (2714624, 2575) 'render_taxonomies:output/categories/css.xml', (5630976, 1411) -'render_taxonomies:output/es/categories/javascript.xml', (5990400, 6582) +'render_taxonomies:output/es/categories/javascript.xml', (5990400, 6581) 'render_posts:cache/posts/zen-mode-extension-for-the-ipython-notebook.html', (779776, 645) 'render_taxonomies:output/es/2017/07/index.html', (15247360, 4420) -'render_galleries:output/galleries/Facu_RN/DSC05918.JPG', (2062848, 276) +'render_galleries:output/galleries/Facu_RN/DSC05918.JPG', (2062848, 282) 'render_taxonomies:output/categories/threads.html', (18832384, 5277) 'render_taxonomies:output/categories/conda.xml', (20471808, 2952) 'render_tags:output/categories/python.xml', (3278336, 25726) -'render_galleries:output/es/galleries/zenmode/rss.xml', (16940032, 14485) +'render_galleries:output/es/galleries/zenmode/rss.xml', (16940032, 14487) 'render_taxonomies:output/es/categories/pyconar.html', (14244352, 5117) 'render_taxonomies:output/categories/blog.xml', (5116928, 6936) 'render_pages:output/posts/ipython-plugin-for-nikola-updated.html', (17267712, 14793) 'render_tags:output/es/categories/gh-pages.xml', (2069504, 2529) -'render_galleries:output/es/galleries/Inundacion/index.html', (18746368, 14543) +'render_galleries:output/es/galleries/Inundacion/index.html', (18746368, 14542) 'render_galleries:output/es/galleries/twitter/rss.xml', (19411968, 14175) 'render_pages:output/posts/slider-for-nbconvert.html', (17199616, 14563) 'render_tags:output/es/categories/pyconar.xml', (1728512, 623) 'render_sources:output/posts/48-themes-for-your-ipython-notebook.ipynb', (1488384, 302) 'render_tags:output/es/categories/ipython.xml', (2298880, 24748) 'copy_assets:output/assets/images/glyphicons-halflings-white.png', (1126912, 333) -'render_sources:output/es/posts/improving-viper-slideshows-styling.txt', (329216, 294) +'render_sources:output/es/posts/improving-viper-slideshows-styling.txt', (22318592, 519) 'render_taxonomies:output/es/categories/performance.html', (19007488, 6244) 'render_tags:output/categories/jinja.xml', (1428992, 3082) 'render_tags:output/categories/nbconvert.html', (4072960, 12463) @@ -614,7 +614,7 @@ 'render_taxonomies:output/es/categories/pyconar.xml', (5351936, 629) 'render_taxonomies:output/es/categories/pinned.html', (15909376, 5019) 'render_tags:output/categories/first_post.html', (4855808, 3565) -'render_sources:output/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (870400, 328) +'render_sources:output/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (870400, 329) 'render_taxonomies:output/categories/performance.xml', (8798720, 1756) 'render_posts:cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html', (9216, 695) 'render_tags:output/es/categories/nbconvert.html', (4372992, 12463) @@ -623,7 +623,7 @@ 'render_tags:output/categories/javascript.html', (2916864, 9077) 'render_pages:output/posts/live-trading-logbook.html', (18884096, 14702) 'render_taxonomies:output/categories/binder.xml', (19995136, 1412) -'render_galleries:output/galleries/zenmode/pic1.thumbnail.png', (954880, 270) +'render_galleries:output/galleries/zenmode/pic1.thumbnail.png', (954880, 276) 'render_posts:cache/posts/one-line-deployment-of-your-site-to-gh-pages.html', (1442816, 644) 'render_taxonomies:output/es/categories/magic.xml', (7242240, 825) 'render_pages:output/posts/powered-by-nikola.html', (18947584, 14673) @@ -636,29 +636,29 @@ 'render_tags:output/categories/mipyex.html', (3614208, 6264) 'copy_assets', (568832, 56) 'render_pages:output/posts/viper-is-now-using-ipythonnbconvert.html', (14905856, 14806) -'render_galleries:output/galleries/bokehmagic/rss.xml', (16962560, 15131) +'render_galleries:output/galleries/bokehmagic/rss.xml', (16962560, 15130) 'render_posts:cache/posts/viper.html', (1648640, 441) 'render_taxonomies:output/categories/win.xml', (21007872, 2563) 'render_sources:output/es/posts/mimic-the-ipython-notebook-cell-execution.ipynb', (139264, 313) 'render_taxonomies:output/categories/blog.html', (17957376, 11424) 'render_tags:output/es/categories/conda.html', (2880000, 3947) 'render_tags:output/categories/jupyter.html', (4747776, 3922) -'render_taxonomies:output/es/categories/viper.xml', (6460928, 3407) +'render_taxonomies:output/es/categories/viper.xml', (22209024, 4229) 'render_tags:output/es/categories/nbviewer.xml', (47616, 910) 'render_pages:output/es/posts/facundo.html', (17589248, 14498) 'render_posts:cache/posts/zen-mode-extension-for-the-ipython-notebook.html.es', (55808, 645) 'render_pages:output/es/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.html', (17912320, 14919) 'render_galleries:output/galleries/binder', (16535552, 145) 'copy_assets:output/assets/css/ipython.min.css', (844288, 301) -'render_galleries:output/galleries/bokehmagic/sin2.png', (283648, 278) +'render_galleries:output/galleries/bokehmagic/sin2.png', (283648, 279) 'render_taxonomies:output/es/categories/scipycon.html', (19573248, 5193) -'render_galleries:output/galleries/rise/index.html', (17482240, 9052) +'render_galleries:output/galleries/rise/index.html', (17482240, 9051) 'render_taxonomies:output/es/categories/git.xml', (15972352, 4544) 'render_taxonomies:output/es/categories/nbviewer.xml', (5678080, 916) 'render_pages:output/posts/rise-meets-jupyterlab.html', (18688000, 9822) 'render_tags:output/es/categories/blog.html', (3016192, 10586) 'render_taxonomies:output/categories/git.html', (16327168, 9032) -'render_taxonomies:output/es/categories/ipython.html', (19868672, 29985) +'render_taxonomies:output/es/categories/ipython.html', (22378496, 31008) 'render_pages:output/posts/a-new-nikolas-theme-for-my-site-zen.html', (14595072, 14806) 'render_taxonomies:output/categories/flood.html', (19052544, 5208) 'render_taxonomies:output/categories/gh-pages.xml', (14303744, 3134) @@ -674,7 +674,7 @@ 'copy_assets:output/assets/xml/rss.xsl', (13917184, 1102) 'render_taxonomies:output/es/categories/life.xml', (6868992, 1059) 'render_taxonomies:output/es/categories/binder.html', (20080128, 4751) -'copy_files:output/ShortCV_Spanish.pdf', (1565184, 255) +'copy_files:output/ShortCV_Spanish.pdf', (1565184, 260) 'render_posts:cache/posts/powered-by-nikola.html', (98816, 502) 'copy_assets:output/assets/css/main.css', (206336, 284) 'render_taxonomies:output/categories/local.xml', (5594112, 930) @@ -682,7 +682,7 @@ 'render_taxonomies:output/es/categories/css.xml', (5621760, 1411) 'render_tags:output/es/categories/opensource.xml', (2146304, 854) 'render_taxonomies:output/categories/gh-pages.html', (14135808, 7622) -'render_taxonomies:output/es/categories/extension.xml', (7115264, 4888) +'render_taxonomies:output/es/categories/extension.xml', (7115264, 4887) 'render_tags:output/categories/themes.html', (3214848, 4236) 'render_taxonomies:output/es/categories/git.html', (14992896, 9032) 'robots_file:output/robots.txt', (198144, 136) @@ -694,25 +694,25 @@ 'render_indexes:output/index-4.html', (4482560, 11003) 'render_archive:output/2013/11/index.html', (4751872, 2575) 'render_taxonomies:output/categories/github.xml', (14987264, 733) -'render_galleries:output/galleries/Facu_RN/DSC05928.thumbnail.JPG', (684544, 278) +'render_galleries:output/galleries/Facu_RN/DSC05928.thumbnail.JPG', (684544, 284) 'render_tags:output/categories/magic.xml', (1338880, 821) 'render_posts:cache/posts/How-to-pin-Conda.html', (2448384, 385) 'render_tags:output/es/categories/slideshow.xml', (2701312, 5735) -'render_taxonomies:output/categories/extension.html', (18550784, 9376) +'render_taxonomies:output/categories/extension.html', (18550784, 9375) 'render_taxonomies:output/categories/jinja.xml', (16744448, 3090) 'render_taxonomies:output/es/categories/github.xml', (13124096, 733) -'render_galleries:output/galleries/Facu_RN/Facu3.thumbnail.png', (273408, 272) +'render_galleries:output/galleries/Facu_RN/Facu3.thumbnail.png', (273408, 278) 'render_tags:output/es/categories/config.html', (4405760, 6003) 'render_taxonomies:output/categories/videos.html', (15089152, 5117) 'render_taxonomies:output/es/categories/rise.xml', (21243904, 3766) -'render_galleries:output/galleries/Facu_RN/Facu2.png', (954368, 270) +'render_galleries:output/galleries/Facu_RN/Facu2.png', (954368, 276) 'render_taxonomies:output/categories/zen.html', (12900352, 6448) 'render_pages:output/es/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html', (19505664, 14906) 'render_tags:output/categories/twitter.html', (4743680, 3817) 'render_posts:cache/posts/live-trading-logbook.html.es', (1605120, 529) 'render_taxonomies:output/es/2013/05/index.html', (15490560, 4559) 'render_taxonomies:output/es/categories/config.xml', (18547200, 3090) -'render_galleries:output/galleries/Facu_RN/DSC05918.thumbnail.JPG', (2129920, 278) +'render_galleries:output/galleries/Facu_RN/DSC05918.thumbnail.JPG', (2129920, 284) 'render_sources:output/posts/how-to-pin-the-conda.ipynb', (2402304, 271) 'render_galleries:output/galleries/rss.xml', (16778240, 13889) 'render_taxonomies:output/es/categories/linux.xml', (21291008, 2563) @@ -724,8 +724,8 @@ 'render_taxonomies:output/categories/binder.html', (19910144, 4751) 'render_tags:output/categories/index.html', (4663296, 2564) 'render_galleries:output/galleries/twitter/index.html', (18991104, 14163) -'_scan_locs:sitemap', (21446656, 41415) -'render_sources:output/posts/improving-viper-slideshows-styling.txt', (1576448, 288) +'_scan_locs:sitemap', (21711360, 40841) +'render_sources:output/posts/improving-viper-slideshows-styling.txt', (1576448, 294) 'render_archive:output/es/2013/08/index.html', (4740608, 2575) 'render_pages:output/posts/customizing-your-ipython-slides.html', (18333184, 14779) 'render_tags:output/es/categories/viper.xml', (115712, 3367) @@ -737,7 +737,7 @@ 'render_sources:output/posts/blogging-with-nikola-and-ipython.ipynb', (322048, 296) 'render_posts:cache/posts/dont-write-scripts-just-write-ipyscripts.html', (983040, 631) 'render_tags:output/es/categories/themes.xml', (1978880, 1315) -'render_taxonomies:output/categories/mipyex.html', (18518528, 7840) +'render_taxonomies:output/categories/mipyex.html', (18518528, 7839) 'render_taxonomies:output/2014/index.html', (13780992, 3969) 'copy_assets:output/assets/fonts/fontawesome-webfont.eot', (1308672, 318) 'render_tags:output/categories/javascript.xml', (633344, 6156) @@ -750,10 +750,10 @@ 'render_posts:cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html', (220672, 736) 'render_taxonomies:output/categories/spellcheck.xml', (6881280, 889) 'render_taxonomies:output/es/categories/daniela.html', (13587456, 4994) -'copy_files:output/portfolio/.ipynb_checkpoints/portfolio-checkpoint.ipynb', (1894912, 326) +'copy_files:output/portfolio/.ipynb_checkpoints/portfolio-checkpoint.ipynb', (1894912, 332) 'render_pages:output/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html', (17812480, 14991) -'render_galleries:output/galleries/zenmode/rss.xml', (18143232, 14485) -'render_sources:output/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (1435648, 305) +'render_galleries:output/galleries/zenmode/rss.xml', (18143232, 14487) +'render_sources:output/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (1435648, 311) 'render_galleries:output/galleries/deploy', (1408000, 145) 'render_taxonomies:output/2017/11/index.html', (13597184, 3412) 'render_tags:output/categories/zen.xml', (1530368, 1951) @@ -763,7 +763,7 @@ 'render_pages:output/posts/rise-500-is-out.html', (17930752, 9791) 'render_taxonomies:output/es/archive.html', (14255616, 3969) 'render_tags:output/categories/nbviewer.xml', (329728, 910) -'render_sources:output/es/posts/nikolas-zen-theme-finally-released.ipynb', (908800, 298) +'render_sources:output/es/posts/nikolas-zen-theme-finally-released.ipynb', (908800, 299) 'render_taxonomies:output/es/2013/08/index.html', (14853120, 8093) 'render_archive:output/es/2016/index.html', (4572160, 2560) 'render_sources:output/es/posts/reveal-converter-mini-tutorial.ipynb', (622592, 291) @@ -775,15 +775,15 @@ 'render_taxonomies:output/categories/typescript.xml', (8477696, 557) 'render_tags:output/es/categories/extension.html', (4237824, 7800) 'render_taxonomies:output/es/2013/12/index.html', (16877568, 8258) -'render_galleries:output/galleries/spellchecker/2.thumbnail.png', (135168, 279) +'render_galleries:output/galleries/spellchecker/2.thumbnail.png', (135168, 280) 'render_galleries:output/galleries/deploy/rss.xml', (18274304, 14172) -'render_pages:output/es/posts/powered-by-nikola.html', (17405952, 15081) +'render_pages:output/es/posts/powered-by-nikola.html', (22262272, 15379) 'render_tags:output/categories/pinned.html', (3859968, 3447) 'copy_assets:output/assets/js/fancydates.js', (14691840, 1127) 'render_tags:output/categories/facu.html', (2884096, 3422) 'render_tags:output/es/categories/jupyter.xml', (3348480, 1001) 'render_galleries:output/galleries/bokehmagic/sin.png', (879616, 276) -'render_taxonomies:output/es/categories/javascript.html', (19459072, 11070) +'render_taxonomies:output/es/categories/javascript.html', (19459072, 11069) 'render_posts:cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html.es', (1367040, 674) 'render_posts:cache/posts/trading-logbook-update-22-nov-2013.html', (1314816, 600) 'render_tags:output/categories/base16.xml', (780800, 786) @@ -794,18 +794,18 @@ 'render_taxonomies:output/2013/04/index.html', (15305728, 4574) 'render_tags:output/es/categories/trading.xml', (794112, 1318) 'render_tags:output/es/categories/theme.xml', (1255424, 1422) -'render_galleries:output/galleries/Inundacion/inundacion1.thumbnail.png', (1184768, 290) +'render_galleries:output/galleries/Inundacion/inundacion1.thumbnail.png', (1184768, 296) 'render_tags:output/es/categories/base16.html', (3632128, 3707) 'render_taxonomies:output/categories/git.xml', (14628352, 4544) 'render_taxonomies:output/es/categories/less.html', (14259712, 5917) 'render_taxonomies:output/categories/nbviewer.html', (13749248, 5404) 'render_sources:output/es/posts/how-to-pin-the-conda.ipynb', (2401792, 271) 'render_indexes:output/index-1.html', (3440128, 11539) -'copy_files:output/portfolio/portfolio.ipynb', (1917952, 266) +'copy_files:output/portfolio/portfolio.ipynb', (1917952, 271) 'render_taxonomies:output/es/index-2.html', (19675136, 15549) 'render_tags:output/categories/blog.html', (3127808, 9830) 'render_archive:output/es/2014/05/index.html', (4246016, 2575) -'render_taxonomies:output/es/categories/blog.xml', (18602496, 7703) +'render_taxonomies:output/es/categories/blog.xml', (22464512, 8273) 'render_sources:output/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.ipynb', (330752, 337) 'render_tags:output/es/categories/pinned.html', (4766208, 3447) 'render_taxonomies:output/categories/daniela.xml', (5731328, 506) @@ -813,37 +813,37 @@ 'render_galleries:output/es/galleries/bokehmagic', (2385408, 145) 'render_tags:output/es/categories/opensource.html', (3171840, 3775) 'render_taxonomies:output/categories/spellcheck.html', (13125120, 5377) -'render_taxonomies:output/categories/format.html', (14535680, 5475) +'render_taxonomies:output/categories/format.html', (14535680, 5474) 'render_taxonomies:output/categories/facu.html', (14351360, 4994) -'render_galleries:output/es/galleries/Facu_RN/rss.xml', (17969152, 17277) -'render_galleries:output/galleries/Inundacion/inundacion2.thumbnail.png', (10240, 290) +'render_galleries:output/es/galleries/Facu_RN/rss.xml', (17969152, 17279) +'render_galleries:output/galleries/Inundacion/inundacion2.thumbnail.png', (10240, 296) 'render_sources:output/es/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.ipynb', (377856, 355) 'render_taxonomies:output/categories/base16.xml', (6212096, 791) -'render_sources:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (38912, 357) +'render_sources:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (38912, 356) 'render_tags:output/categories/base16.html', (2783744, 3707) 'post_render', (1257472, 56) 'render_taxonomies:output/categories/threads.xml', (6009344, 789) 'render_pages:output/posts/teasers-with-the-ipython-notebook-plugin.html', (15598592, 14841) -'render_taxonomies:output/es/categories/mipyex.html', (17067008, 7840) +'render_taxonomies:output/es/categories/mipyex.html', (17067008, 7839) 'render_sources:output/posts/mimic-the-ipython-notebook-cell-execution.ipynb', (1899008, 313) 'render_taxonomies:output/categories/rise.xml', (21236736, 3766) 'render_posts:cache/posts/a-simple-overview-of-viper.html', (1654784, 547) 'render_taxonomies:output/2017/07/index.html', (12950528, 4420) 'render_pages:output/stories/about-me.html', (17282560, 14769) 'render_pages:output/es/posts/nikolas-zen-theme-finally-released.html', (15328768, 14799) -'render_galleries:output/galleries/Facu_RN/Facu5.png', (677888, 270) +'render_galleries:output/galleries/Facu_RN/Facu5.png', (677888, 276) 'render_pages:output/es/posts/ipython-plugin-for-nikola-updated.html', (16716800, 14793) -'render_galleries:output/es/galleries/bokehmagic/index.html', (17229312, 15076) +'render_galleries:output/es/galleries/bokehmagic/index.html', (17229312, 15075) 'render_tags:output/categories/theme.html', (3067392, 4343) 'render_taxonomies:output/es/categories/facu.xml', (5619712, 506) 'render_archive:output/2012/10/index.html', (3782144, 2575) 'render_sources:output/es/posts/zen-mode-extension-for-the-ipython-notebook.ipynb', (796160, 317) -'render_taxonomies:output/es/index.html', (21429248, 17062) +'render_taxonomies:output/es/index.html', (21916160, 17573) 'copy_assets:output/assets/images/blue-mocha-grunge.jpg', (909312, 316) -'render_taxonomies:output/categories/aikido.html', (21598208, 5409) -'render_galleries:output/galleries/zenmode/index.html', (17317888, 14462) -'render_sources:output/es/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (268288, 312) -'render_sources:output/es/posts/slider-for-nbconvert.txt', (1185280, 261) +'render_taxonomies:output/categories/aikido.html', (21658624, 5622) +'render_galleries:output/galleries/zenmode/index.html', (17317888, 14463) +'render_sources:output/es/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (268288, 311) +'render_sources:output/es/posts/slider-for-nbconvert.txt', (1185280, 267) 'generate_rss:output/es/rss.xml', (4205056, 7273) 'render_archive:output/es/2012/11/index.html', (4827648, 2575) 'render_taxonomies:output/2013/05/index.html', (14331904, 4559) @@ -851,8 +851,8 @@ 'render_pages:output/es/posts/dont-write-scripts-just-write-ipyscripts.html', (13657600, 14842) 'render_pages:output/posts/paraguay.html', (17008640, 14609) 'render_posts:cache/posts/rise-510-is-out.html.es', (12781568, 382) -'render_galleries:output/es/galleries/Facu_RN/index.html', (19253248, 17131) -'copy_files:output/portfolio/portfolio.slides.html', (335360, 280) +'render_galleries:output/es/galleries/Facu_RN/index.html', (19253248, 17132) +'copy_files:output/portfolio/portfolio.slides.html', (335360, 286) 'render_archive:output/es/2016/06/index.html', (4687360, 2575) 'render_pages:output/posts/rise-400b1-is-available-please-test-it.html', (13111808, 12239) 'render_posts:cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.html', (1989632, 644) @@ -863,13 +863,13 @@ 'render_galleries:output/es/galleries/Inundacion', (2386944, 145) 'sitemap:output/sitemapindex.xml', (1487360, 256) 'render_taxonomies:output/categories/ipyscript.html', (18783744, 5313) -'render_sources:output/es/posts/powered-by-nikola.txt', (43008, 260) +'render_sources:output/es/posts/powered-by-nikola.txt', (43008, 450) 'render_galleries:output/galleries/deploy/index.html', (17767936, 14162) 'render_posts:cache/posts/48-themes-for-your-ipython-notebook.html.es', (1188352, 606) 'render_tags:output/categories/scipycon.xml', (1899520, 694) 'render_posts:cache/posts/zen-themes-updated.html', (1242112, 520) 'render_pages:output/es/posts/customizing-your-ipython-slides.html', (18673152, 14779) -'render_sources:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (15472640, 344) +'render_sources:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (15472640, 343) 'render_tags:output/categories/nikola.html', (3265024, 12962) 'render_tags:output/es/categories/jinja.html', (2926080, 6003) 'render_tags:output/categories/pip.xml', (4174848, 636) @@ -878,7 +878,7 @@ 'render_taxonomies:output/categories/toggle.xml', (19005440, 1549) 'render_taxonomies:output/2016/08/index.html', (14988288, 4495) 'render_pages:output/es/posts/my-ipython-powered-semi-automatic-git-workflow.html', (19729408, 14886) -'render_sources:output/es/posts/viper.txt', (321536, 236) +'render_sources:output/es/posts/viper.txt', (321536, 403) 'render_pages:output/es/posts/how-to-pin-the-conda.html', (2390528, 5548) 'render_posts:cache/posts/ipython-plugin-for-nikola-updated.html', (1127424, 589) 'render_tags:output/es/categories/reveal.xml', (4010496, 6132) @@ -889,7 +889,7 @@ 'render_tags:output/es/categories/python.html', (3184128, 30448) 'render_pages:output/es/posts/make-your-slides-with-ipython.html', (18976256, 14765) 'render_posts:cache/posts/pyconar-2013.html.es', (1230336, 490) -'render_galleries:output/galleries/Facu_RN/Facu1.thumbnail.png', (163328, 272) +'render_galleries:output/galleries/Facu_RN/Facu1.thumbnail.png', (163328, 278) 'render_taxonomies:output/es/categories/jupyterlab.xml', (20042752, 1236) 'render_posts:cache/posts/one-line-deployment-of-your-site-to-gh-pages.html.es', (1529344, 644) 'render_taxonomies:output/es/categories/opensource.html', (20044288, 6025) @@ -900,18 +900,18 @@ 'render_tags:output/categories/minimap.xml', (517632, 839) 'render_tags:output/es/categories/base16.xml', (2035712, 786) 'render_tags:output/es/categories/family.html', (3042304, 3962) -'render_galleries:output/es/galleries/loadwrite/rss.xml', (16353280, 14844) -'render_taxonomies:output/es/categories/viper.html', (19191296, 7895) +'render_galleries:output/es/galleries/loadwrite/rss.xml', (16353280, 14841) +'render_taxonomies:output/es/categories/viper.html', (22452224, 8717) 'render_galleries:output/galleries/loadwrite/loader1.png', (466944, 284) -'render_sources:output/posts/facundo.txt', (220160, 235) -'render_taxonomies:output/es/categories/python.xml', (21343232, 31486) +'render_sources:output/posts/facundo.txt', (220160, 241) +'render_taxonomies:output/es/categories/python.xml', (22285312, 32807) 'copy_assets:output/assets/css/nikola_rst.css', (12457472, 777) 'render_tags:output/categories/life.xml', (940032, 1041) 'render_tags:output/categories/toggle.xml', (1385472, 1542) 'render_pages:output/posts/trading-logbook-update-22-nov-2013.html', (14777856, 14800) 'render_archive:output/es/2013/04/index.html', (2732032, 2575) 'render_tags:output/categories/performance.xml', (192000, 1318) -'render_taxonomies:output/es/categories/politics.html', (15541248, 5434) +'render_taxonomies:output/es/categories/politics.html', (22278144, 5705) 'render_posts:cache/posts/dont-write-scripts-just-write-ipyscripts.html.es', (1817088, 631) 'render_galleries:output/galleries/.ipynb_checkpoints/index.html', (9021440, 4443) 'render_posts:cache/posts/48-themes-for-your-ipython-notebook.html', (251392, 606) @@ -922,10 +922,10 @@ 'render_sources:output/posts/make-your-slides-with-ipython.ipynb', (967168, 289) 'render_tags:output/categories/tutorials.html', (4708352, 3615) 'render_taxonomies:output/es/categories/spellcheck.xml', (6563328, 889) -'render_sources:output/es/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (677376, 328) +'render_sources:output/es/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (677376, 329) 'render_taxonomies:output/es/categories/magic.html', (16954880, 5313) 'render_taxonomies:output/categories/less.xml', (6266368, 1429) -'render_galleries:output/galleries/Facu_RN/Facu4.thumbnail.png', (967680, 272) +'render_galleries:output/galleries/Facu_RN/Facu4.thumbnail.png', (967680, 277) 'render_taxonomies:output/es/categories/osx.html', (20535808, 7051) 'render_listings', (778240, 56) 'render_tags:output/categories/tutorials.xml', (2122240, 694) @@ -933,23 +933,23 @@ 'render_taxonomies:output/es/categories/conda.xml', (20519424, 2952) 'render_galleries:output/galleries/trades/2.thumbnail.png', (855552, 267) 'render_archive:output/2013/02/index.html', (3345408, 2575) -'render_sources:output/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (273920, 332) -'render_pages:output/es/stories/about-me.html', (17464832, 15136) +'render_sources:output/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (273920, 333) +'render_pages:output/es/stories/about-me.html', (17464832, 15047) 'render_taxonomies:output/es/categories/toggle.html', (15082496, 6037) 'render_tags:output/categories/rise.xml', (4071936, 1001) -'render_galleries:output/galleries/Facu_RN/index.html', (18560512, 17131) +'render_galleries:output/galleries/Facu_RN/index.html', (18560512, 17132) 'render_galleries:output/es/galleries/Facu_RN', (2389504, 145) -'render_galleries:output/galleries/Inundacion/inundacion2.png', (1717248, 288) +'render_galleries:output/galleries/Inundacion/inundacion2.png', (1717248, 294) 'render_pages:output/posts/under-the-sea-en-la-plata.html', (16862720, 14737) 'render_tags:output/categories/nikola.xml', (124928, 10041) 'render_pages:output/es/posts/mimic-the-ipython-notebook-cell-execution.html', (18235392, 14849) 'render_posts:cache/posts/my-ipython-powered-semi-automatic-git-workflow.html.es', (1105408, 661) -'render_taxonomies:output/es/2012/06/index.html', (18577920, 9262) +'render_taxonomies:output/es/2012/06/index.html', (22367232, 10989) 'render_taxonomies:output/es/categories/base16.xml', (5997056, 791) 'render_tags:output/es/categories/talks.html', (3119104, 4102) -'render_taxonomies:output/categories/aikido.xml', (21499904, 921) +'render_taxonomies:output/categories/aikido.xml', (21641728, 1134) 'render_tags:output/es/categories/css.xml', (871936, 1406) -'render_taxonomies:output/es/2012/09/index.html', (19586048, 4654) +'render_taxonomies:output/es/2012/09/index.html', (22409728, 4855) 'render_tags:output/es/categories/nikola.html', (3398144, 13975) 'render_galleries:output/galleries/rise', (9315840, 145) 'render_sources:output/es/posts/zen-themes-updated.ipynb', (479744, 268) @@ -960,22 +960,22 @@ 'render_tags:output/es/categories/themes.html', (3952640, 4236) 'render_taxonomies:output/2013/02/index.html', (16632320, 4609) 'render_galleries:output/galleries/trades/2.png', (1778176, 265) -'render_taxonomies:output/es/categories/politics.xml', (6735872, 946) +'render_taxonomies:output/es/categories/politics.xml', (22319616, 1217) 'render_taxonomies:output/es/2017/index.html', (15677952, 3969) 'render_tags:output/categories/jinja.html', (2717696, 6003) -'render_taxonomies:output/categories/javascript.xml', (5731840, 6582) -'render_galleries:output/galleries/rise/rss.xml', (19144192, 9062) +'render_taxonomies:output/categories/javascript.xml', (5731840, 6581) +'render_galleries:output/galleries/rise/rss.xml', (19144192, 9061) 'render_taxonomies:output/es/categories/win.html', (20607488, 7051) 'render_taxonomies:output/categories/flood.xml', (5311488, 720) 'render_taxonomies:output/es/categories/opensource.xml', (19837440, 1537) 'render_pages:output/posts/zen-themes-updated.html', (17244672, 14690) 'render_posts:cache/posts/beginning.html', (1732608, 461) -'render_sources:output/posts/ipython-plugin-for-nikola-updated.ipynb', (323072, 291) -'render_sources:output/posts/coming-back.ipynb', (1463808, 253) +'render_sources:output/posts/ipython-plugin-for-nikola-updated.ipynb', (323072, 297) +'render_sources:output/posts/coming-back.ipynb', (1463808, 252) 'render_tags:output/categories/zen.html', (3511808, 4872) 'render_pages:output/posts/48-themes-for-your-ipython-notebook.html', (13491712, 14808) -'render_sources:output/stories/about-me.txt', (1596416, 241) -'render_sources:output/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (194048, 299) +'render_sources:output/stories/about-me.txt', (1596416, 247) +'render_sources:output/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (194048, 301) 'render_taxonomies:output/categories/jupyter.xml', (20674048, 5036) 'render_tags:output/es/categories/family.xml', (61952, 1041) 'render_galleries:output/galleries/bokehmagic/sin3.png', (197632, 278) @@ -996,8 +996,8 @@ 'render_sources:output/es/posts/48-themes-for-your-ipython-notebook.ipynb', (2085888, 302) 'render_taxonomies:output/categories/linux.xml', (21294080, 2563) 'render_archive:output/es/2012/06/index.html', (2996736, 2575) -'render_taxonomies:output/index-5.html', (21626880, 10382) -'render_sources:output/es/posts/nikola-nbconvert.txt', (1185792, 262) +'render_taxonomies:output/index-5.html', (21643776, 10589) +'render_sources:output/es/posts/nikola-nbconvert.txt', (1185792, 449) 'render_archive:output/es/2012/09/index.html', (4502016, 2575) 'render_taxonomies:output/es/categories/threads.xml', (5326336, 789) 'render_taxonomies:output/categories/opensource.html', (20036608, 6025) @@ -1015,7 +1015,7 @@ 'render_posts:cache/posts/facundo.html', (883712, 346) 'render_pages:output/es/posts/we-are-above-1000-stars.html', (19591168, 9831) 'render_taxonomies:output/es/categories/videos.html', (15861760, 5117) -'copy_files:output/portfolio/damian.jpg', (2061312, 257) +'copy_files:output/portfolio/damian.jpg', (2061312, 263) 'render_pages:output/posts/hide-the-input-cells-from-your-ipython-slides.html', (17075200, 14876) 'render_indexes:output/es/index-1.html', (3797504, 14444) 'copy_assets:output/assets/js/toggle.js', (1214976, 285) @@ -1030,17 +1030,17 @@ 'render_posts:cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html.es', (213504, 695) 'render_taxonomies:output/es/categories/jupyterlab.html', (19900928, 5724) 'render_taxonomies:output/es/2014/05/index.html', (15352320, 4527) -'render_galleries:output/es/galleries/zenmode/index.html', (19270656, 14462) +'render_galleries:output/es/galleries/zenmode/index.html', (19270656, 14463) 'render_pages:output/es/posts/viper-is-now-using-ipythonnbconvert.html', (13366784, 14806) 'render_galleries:output/es/galleries/deploy/index.html', (17640448, 14162) -'render_galleries:output/galleries/Facu_RN/Facu1.png', (1464320, 270) -'render_pages:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (17713152, 15004) +'render_galleries:output/galleries/Facu_RN/Facu1.png', (1464320, 276) +'render_pages:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (17713152, 15003) 'render_tags:output/categories/extension.html', (3844096, 7800) -'render_taxonomies:output/es/index-5.html', (21489152, 10382) +'render_taxonomies:output/es/index-5.html', (21879296, 10589) 'render_taxonomies:output/categories/trading.xml', (8616448, 1756) 'render_taxonomies:output/es/categories/reveal.xml', (21334016, 8908) 'render_taxonomies:output/categories/ipython.html', (19915264, 28567) -'render_sources:output/posts/scipycon-argentina-2013.ipynb', (1016320, 271) +'render_sources:output/posts/scipycon-argentina-2013.ipynb', (1016320, 276) 'render_galleries:output/es/galleries/loadwrite', (2384896, 145) 'render_pages:output/posts/viper.html', (17214464, 14588) 'render_posts:cache/posts/hello-world-again.html.es', (155648, 760) @@ -1051,28 +1051,28 @@ 'copy_assets:output/assets/xml/atom.xsl', (12945920, 1108) 'render_galleries:output/galleries/.ipynb_checkpoints/rss.xml', (9092096, 4439) 'render_tags:output/categories/git.html', (2707456, 6862) -'render_sources:output/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2063872, 316) +'render_sources:output/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2063872, 317) 'render_tags:output/es/categories/twitter.xml', (19456, 896) 'render_archive:output/2012/index.html', (2698752, 2560) 'render_pages:output/es/posts/trading-logbook-update-3.html', (19646464, 9837) 'render_tags:output/categories/css.html', (4443648, 4327) -'render_taxonomies:output/es/categories/python.html', (21297664, 35974) +'render_taxonomies:output/es/categories/python.html', (22414848, 37295) 'render_taxonomies:output/categories/twitter.html', (15958528, 5390) 'render_taxonomies:output/es/categories/family.xml', (6445568, 1059) 'render_pages:output/es/posts/rise-meets-jupyterlab.html', (19073536, 9822) 'render_tags:output/es/categories/win.xml', (3831808, 636) -'copy_files:output/portfolio/custom.css', (569344, 255) +'copy_files:output/portfolio/custom.css', (569344, 261) 'render_posts:cache/posts/trading-logbook-update-3.html', (8721920, 409) 'render_posts:cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.html.es', (1532416, 754) 'render_taxonomies:output/es/categories/daniela.xml', (7462912, 506) 'render_sources:output/es/posts/viper-is-now-using-ipythonnbconvert.ipynb', (1142784, 301) 'render_archive:output/2012/11/index.html', (3454976, 2575) -'render_galleries:output/galleries/loadwrite/rss.xml', (15147520, 14844) +'render_galleries:output/galleries/loadwrite/rss.xml', (15147520, 14841) 'render_taxonomies:output/categories/life.html', (14356480, 5547) 'render_posts:cache/posts/slider-for-nbconvert.html', (2084864, 385) 'render_tags:output/categories/gh-pages.xml', (1250304, 2529) -'render_pages:output/es/posts/beginning.html', (17427968, 14973) -'render_taxonomies:output/index.html', (21603840, 17062) +'render_pages:output/es/posts/beginning.html', (17427968, 15245) +'render_taxonomies:output/index.html', (21603840, 17275) 'render_taxonomies:output/es/categories/rise.html', (21258752, 8254) 'copy_assets:output/assets/js/baguetteBox.min.js', (10212864, 789) 'render_galleries:output/galleries/bokehmagic/themes.thumbnail.png', (907264, 284) @@ -1085,7 +1085,7 @@ 'render_galleries:output/galleries/spellchecker/rss.xml', (18158080, 14502) 'render_pages:output/posts/using-a-local-revealjs-library-with-your-ipython-slides.html', (16651776, 14947) 'render_tags:output/es/categories/zen.html', (4769792, 4872) -'render_sources:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (14029312, 344) +'render_sources:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (14029312, 343) 'render_taxonomies:output/es/categories/conda.html', (21283328, 7440) 'render_tags:output/es/categories/rise.html', (4703744, 3922) 'render_archive:output/2014/05/index.html', (4028928, 2575) @@ -1098,15 +1098,15 @@ 'render_taxonomies:output/es/categories/local.html', (13016576, 5418) 'render_tags:output/es/categories/spellcheck.xml', (280576, 882) 'render_taxonomies:output/es/2017/12/index.html', (18921472, 3618) -'render_taxonomies:output/es/categories/format.xml', (6801408, 987) +'render_taxonomies:output/es/categories/format.xml', (6801408, 986) 'render_archive:output/es/2013/09/index.html', (4652032, 2575) 'render_taxonomies:output/es/categories/pinned.xml', (6669312, 531) -'render_galleries:output/galleries/zenmode/pic2.thumbnail.png', (2147328, 270) +'render_galleries:output/galleries/zenmode/pic2.thumbnail.png', (2147328, 276) 'render_taxonomies:output/es/categories/tutorials.html', (19102720, 5193) 'render_tags:output/categories/spellcheck.html', (4839424, 3803) 'render_taxonomies:output/categories/nbconvert.html', (18211840, 14053) 'render_tags:output/es/categories/git.html', (4253696, 6862) -'render_taxonomies:output/categories/mipyex.xml', (6107136, 3352) +'render_taxonomies:output/categories/mipyex.xml', (6107136, 3351) 'render_taxonomies:output/2013/12/index.html', (19159040, 8258) 'render_taxonomies:output/es/categories/talks.xml', (5101568, 1192) 'render_tags:output/categories/theme.xml', (1427456, 1422) @@ -1125,16 +1125,16 @@ 'render_posts:cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html.es', (841216, 736) 'render_tags:output/es/categories/magic.xml', (1384448, 821) 'render_taxonomies:output/es/2017/06/index.html', (16703488, 5225) -'render_galleries:output/galleries/zenmode/pic1.png', (2085376, 268) -'render_galleries:output/galleries/trades/index.html', (17844224, 14426) +'render_galleries:output/galleries/zenmode/pic1.png', (2085376, 274) +'render_galleries:output/galleries/trades/index.html', (17844224, 14427) 'generate_rss', (834560, 56) 'render_archive:output/es/2012/index.html', (4026368, 2560) 'copy_assets:output/assets/js/flowr.js', (10707456, 752) 'render_tags:output/categories/config.html', (4694528, 6003) 'render_tags:output/es/categories/threads.xml', (1014272, 784) 'render_galleries:output/es/galleries/twitter', (2386432, 145) -'render_taxonomies:output/es/categories/workflow.html', (14265856, 9166) -'render_galleries:output/galleries/Facu_RN/Facu4.png', (1595904, 270) +'render_taxonomies:output/es/categories/workflow.html', (14265856, 9165) +'render_galleries:output/galleries/Facu_RN/Facu4.png', (1595904, 275) 'render_tags:output/es/categories/zen.xml', (96768, 1951) 'render_tags:output/categories/trading.xml', (1619456, 1318) 'render_taxonomies:output/es/2013/04/index.html', (13466624, 4574) @@ -1143,7 +1143,7 @@ 'render_posts:cache/posts/improving-viper-slideshows-styling.html.es', (94208, 585) 'render_taxonomies:output/2012/10/index.html', (13592576, 4466) 'render_taxonomies:output/categories/trading.html', (19668480, 6244) -'render_sources:output/es/posts/rise-meets-jupyterlab.ipynb', (8233472, 272) +'render_sources:output/es/posts/rise-meets-jupyterlab.ipynb', (8233472, 273) 'render_pages:output/es/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html', (18806272, 14991) 'render_pages:output/es/posts/under-the-sea-en-la-plata.html', (19750400, 14737) 'render_posts:cache/posts/slider-for-nbconvert.html.es', (1796608, 385) @@ -1156,7 +1156,7 @@ 'render_taxonomies:output/2014/05/index.html', (13006336, 4527) 'render_posts:cache/posts/how-to-pin-the-conda.html.es', (2390016, 397) 'render_tags:output/categories/win.html', (4600320, 2594) -'render_sources:output/es/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (757760, 313) +'render_sources:output/es/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (757760, 319) 'copy_assets:output/assets/fonts/fontawesome-webfont.svg', (751104, 319) 'render_pages:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html', (19357696, 7651) 'render_posts:cache/posts/ipython-plugin-for-nikola-updated.html.es', (43520, 589) @@ -1172,12 +1172,12 @@ 'render_tags:output/es/categories/facundo.xml', (861184, 1041) 'render_posts:cache/posts/coming-back.html.es', (599040, 370) 'render_posts:cache/posts/we-are-above-1000-stars.html.es', (8946688, 405) -'render_galleries:output/es/galleries/trades/index.html', (19490816, 14426) +'render_galleries:output/es/galleries/trades/index.html', (19490816, 14427) 'copy_assets:output/assets/fonts/SHIcXhdd5RknatSgOzyEkA.woff', (1978368, 326) 'render_tags:output/categories/facu.xml', (2166784, 501) 'render_posts:cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html.es', (860160, 745) 'render_pages:output/es/posts/a-simple-minimap-for-your-nbconverted-ipynb.html', (18768384, 14863) -'render_galleries:output/galleries/spellchecker/1.png', (1900544, 277) +'render_galleries:output/galleries/spellchecker/1.png', (1900544, 278) 'render_taxonomies:output/es/categories/flood.html', (18962432, 5208) 'render_tags:output/categories/first_post.xml', (44544, 644) 'render_archive:output/2016/06/index.html', (4607488, 2575) @@ -1227,23 +1227,86 @@ 'render_taxonomies:output/es/2018/08/index.html', (21240832, 2603) 'render_sources:output/es/posts/rise-541-is-out.ipynb', (21248000, 261) 'render_posts:cache/posts/rise-541-is-out.html.es', (21297152, 382) -'render_taxonomies:output/es/categories/shodan.html', (21374976, 2939) -'render_taxonomies:output/es/categories/cordobaaikikai.xml', (21378048, 557) +'render_taxonomies:output/es/categories/shodan.html', (21837312, 3450) +'render_taxonomies:output/es/categories/cordobaaikikai.xml', (21901824, 1068) 'render_pages:output/posts/my-aikido-shodan-test.html', (21379072, 5512) 'render_posts:cache/posts/my-aikido-shodan-test.html', (21384704, 400) -'render_taxonomies:output/es/categories/cordobaaikikai.html', (21419008, 2939) -'render_taxonomies:output/categories/asaikido.html', (21422080, 2939) -'render_taxonomies:output/categories/asaikido.xml', (21425152, 557) -'render_taxonomies:output/categories/shodan.html', (21426176, 2939) -'render_taxonomies:output/2018/09/index.html', (21500928, 2633) -'render_taxonomies:output/es/categories/shodan.xml', (21504000, 557) -'render_taxonomies:output/categories/cordobaaikikai.xml', (21505024, 557) -'render_sources:output/es/posts/my-aikido-shodan-test.ipynb', (21506048, 273) -'render_taxonomies:output/es/2018/09/index.html', (21506560, 2633) -'render_taxonomies:output/es/categories/asaikido.html', (21585408, 2939) -'render_taxonomies:output/categories/cordobaaikikai.html', (21588480, 2939) +'render_taxonomies:output/es/categories/cordobaaikikai.html', (21875200, 3450) +'render_taxonomies:output/categories/asaikido.html', (21655040, 3152) +'render_taxonomies:output/categories/asaikido.xml', (21425152, 770) +'render_taxonomies:output/categories/shodan.html', (21753344, 3152) +'render_taxonomies:output/2018/09/index.html', (21500928, 2846) +'render_taxonomies:output/es/categories/shodan.xml', (21903360, 1068) +'render_taxonomies:output/categories/cordobaaikikai.xml', (21505024, 770) +'render_sources:output/es/posts/my-aikido-shodan-test.ipynb', (21506048, 484) +'render_taxonomies:output/es/2018/09/index.html', (21904896, 3144) +'render_taxonomies:output/es/categories/asaikido.html', (21701632, 3450) +'render_taxonomies:output/categories/cordobaaikikai.html', (21833216, 3152) 'render_sources:output/posts/my-aikido-shodan-test.ipynb', (21591552, 273) -'render_posts:cache/posts/my-aikido-shodan-test.html.es', (21597696, 400) -'render_pages:output/es/posts/my-aikido-shodan-test.html', (21621248, 5512) -'render_taxonomies:output/es/categories/asaikido.xml', (21637632, 557) -'render_taxonomies:output/categories/shodan.xml', (21638656, 557) +'render_posts:cache/posts/my-aikido-shodan-test.html.es', (21934080, 544) +'render_pages:output/es/posts/my-aikido-shodan-test.html', (21908480, 6023) +'render_taxonomies:output/es/categories/asaikido.xml', (21914624, 1068) +'render_taxonomies:output/categories/shodan.xml', (21638656, 770) +'render_sources:output/es/posts/mi-examen-de-aikido-para-1er-dan.ipynb', (21639680, 279) +'render_sources:output/posts/mi-examen-de-aikido-para-1er-dan.ipynb', (21643264, 279) +'render_posts:cache/posts/my-aikido-shodan-test.es.html.es', (21836800, 409) +'render_posts:cache/posts/my-aikido-shodan-test.es.html', (21936640, 544) +'render_pages:output/es/posts/mi-examen-de-aikido-para-1er-dan.html', (21890560, 5527) +'render_pages:output/posts/mi-examen-de-aikido-para-1er-dan.html', (21896192, 5527) +'render_posts:cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.es.html', (21935104, 645) +'render_posts:cache/posts/slider-for-nbconvert.es.html', (21936128, 391) +'render_posts:cache/posts/rise-500-is-out.es.html', (21937664, 381) +'render_posts:cache/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.es.html', (21938176, 558) +'render_posts:cache/posts/a-new-nikolas-theme-for-my-site-zen.es.html', (21939200, 604) +'render_posts:cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.es.html', (21940224, 695) +'render_posts:cache/posts/48-themes-for-your-ipython-notebook.es.html', (21941248, 605) +'render_posts:cache/posts/make-your-slides-with-ipython.es.html', (21942272, 575) +'render_posts:cache/posts/improving-viper-slideshows-styling.es.html', (22167552, 597) +'render_posts:cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.es.html', (21943808, 685) +'render_posts:cache/posts/we-are-above-1000-stars.es.html', (21944832, 406) +'render_posts:cache/posts/trading-logbook-update-22-nov-2013.es.html', (21945344, 600) +'render_posts:cache/posts/my-ipython-powered-semi-automatic-git-workflow.es.html', (21946368, 661) +'render_posts:cache/posts/scipycon-argentina-2013.es.html', (21947392, 544) +'render_posts:cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.es.html', (21948416, 744) +'render_posts:cache/posts/live-trading-logbook.es.html', (21949440, 530) +'render_posts:cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.es.html', (21950464, 505) +'render_posts:cache/posts/different-ways-to-lead-an-open-source-project.es.html', (21950976, 654) +'render_posts:cache/posts/rise-510-is-out.es.html', (21952000, 382) +'render_posts:cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.es.html', (21952512, 740) +'render_posts:cache/posts/zen-themes-updated.es.html', (21953536, 521) +'render_posts:cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.es.html', (21954560, 705) +'render_posts:cache/posts/hide-the-input-cells-from-your-ipython-slides.es.html', (21955584, 654) +'render_posts:cache/posts/coming-back.es.html', (21956608, 369) +'render_posts:cache/posts/rise-520-is-out.es.html', (21957120, 381) +'render_posts:cache/posts/zen-mode-extension-for-the-ipython-notebook.es.html', (21957632, 645) +'render_posts:cache/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.es.html', (21958656, 685) +'render_posts:cache/posts/reveal_converter-mini-tutorial.es.html', (21959680, 580) +'render_posts:cache/posts/how-to-pin-conda.es.html', (21960704, 385) +'render_posts:cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.es.html', (21961216, 675) +'render_posts:cache/posts/pyconar-2013.es.html', (21962240, 490) +'render_posts:cache/posts/rise-400b1-is-available-please-test-it.es.html', (21962752, 451) +'render_posts:cache/posts/viper-is-now-using-ipythonnbconvert.es.html', (21963264, 604) +'render_posts:cache/posts/ipython-plugin-for-nikola-updated.es.html', (21964288, 595) +'render_posts:cache/posts/rise-meets-jupyterlab.es.html', (21965312, 400) +'render_posts:cache/posts/rise-530-is-out.es.html', (21965824, 382) +'render_posts:cache/posts/trading-logbook-update-3.es.html', (21966336, 409) +'render_posts:cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.es.html', (21966848, 755) +'render_posts:cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.es.html', (21967872, 736) +'render_posts:cache/posts/teasers-with-the-ipython-notebook-plugin.es.html', (21968896, 630) +'render_posts:cache/posts/nikolas-zen-theme-finally-released.es.html', (21969920, 600) +'render_posts:cache/posts/mimic-the-ipython-notebook-cell-execution.es.html', (21970944, 635) +'render_posts:cache/posts/one-line-deployment-of-your-site-to-gh-pages.es.html', (21971968, 650) +'render_posts:cache/posts/facundo.es.html', (21972992, 352) +'render_posts:cache/posts/blogging-with-nikola-and-ipython.es.html', (21973504, 591) +'render_posts:cache/posts/customizing-your-ipython-slides.es.html', (21974528, 585) +'render_posts:cache/posts/dont-write-scripts-just-write-ipyscripts.es.html', (21975552, 630) +'render_posts:cache/posts/rise-541-is-out.es.html', (21976576, 382) +'render_posts:cache/posts/under-the-sea-en-la-plata.es.html', (21977088, 555) +'render_posts:cache/posts/powered-by-nikola.es.html', (22462464, 771) +'render_posts:cache/posts/viper.es.html', (22168576, 662) +'render_posts:cache/posts/hello-world-again.es.html', (22284288, 772) +'render_posts:cache/posts/nikola-nbconvert.es.html', (22461440, 608) +'render_posts:cache/stories/about-me.es.html', (21980160, 473) +'render_posts:cache/posts/beginning.es.html', (22490624, 696) +'render_posts:cache/posts/a-simple-overview-of-viper.es.html', (21981184, 853) +'render_posts:cache/posts/paraguay.es.html', (22463488, 689) diff --git a/.doit.db.dat b/.doit.db.dat index 1af28a90..952577fb 100644 Binary files a/.doit.db.dat and b/.doit.db.dat differ diff --git a/.doit.db.dir b/.doit.db.dir index a4e6d880..ec9b8b9a 100644 --- a/.doit.db.dir +++ b/.doit.db.dir @@ -8,14 +8,14 @@ 'render_pages:output/es/posts/zen-mode-extension-for-the-ipython-notebook.html', (17891328, 14863) 'render_tags:output/es/categories/slideshow.html', (4967424, 8656) 'render_galleries:output/es/galleries/index.html', (18304000, 13893) -'render_sources:output/posts/rise-meets-jupyterlab.ipynb', (8466432, 272) +'render_sources:output/posts/rise-meets-jupyterlab.ipynb', (8466432, 273) 'render_posts:cache/posts/under-the-sea-en-la-plata.html.es', (331264, 555) 'render_tags:output/es/categories/first_post.xml', (823296, 1047) 'render_tags:output/categories/git.xml', (1048576, 3941) 'render_tags:output/categories/blog.xml', (1778688, 6909) 'render_taxonomies:output/categories/pdf.html', (14875136, 5390) -'render_pages:output/es/posts/hello-world-again.html', (17524224, 15080) -'render_pages:output/es/posts/viper.html', (19108352, 14925) +'render_pages:output/es/posts/hello-world-again.html', (22219776, 15379) +'render_pages:output/es/posts/viper.html', (19108352, 15187) 'render_pages:output/posts/we-are-above-1000-stars.html', (19042304, 9831) 'render_tags:output/categories/family.html', (2807808, 3962) 'render_tags:output/categories/videos.html', (3086336, 3544) @@ -27,7 +27,7 @@ 'render_taxonomies:output/categories/nbviewer.xml', (5170176, 916) 'render_galleries:output/es/galleries/rise', (9375232, 145) 'render_taxonomies:output/categories/pip.html', (20664320, 7051) -'render_pages:output/es/posts/a-simple-overview-of-viper.html', (19618304, 15198) +'render_pages:output/es/posts/a-simple-overview-of-viper.html', (22023680, 15523) 'render_archive:output/2013/08/index.html', (2963968, 2575) 'render_indexes:output/index-2.html', (3585024, 13504) 'render_taxonomies:output/categories/performance.html', (18250752, 6244) @@ -46,14 +46,14 @@ 'render_pages:output/es/posts/zen-themes-updated.html', (19601408, 14690) 'render_sources:output/es/posts/under-the-sea-en-la-plata.ipynb', (39424, 281) 'render_taxonomies:output/es/categories/minimap.html', (17297408, 5334) -'render_pages:output/es/posts/nikola-nbconvert.html', (16004608, 14817) +'render_pages:output/es/posts/nikola-nbconvert.html', (22491648, 15018) 'render_taxonomies:output/es/index-4.html', (17604096, 16121) 'render_tags:output/es/categories/videos.html', (4097024, 3544) -'render_pages:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (16977920, 15004) +'render_pages:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (16977920, 15003) 'render_posts:timeline_changes', (2141696, 109) -'create_bundles:output/assets/css/all.css', (1443840, 776) +'create_bundles:output/assets/css/all.css', (1443840, 777) 'render_pages:output/posts/my-ipython-powered-semi-automatic-git-workflow.html', (18288640, 14886) -'render_galleries:output/galleries/bokehmagic/index.html', (19014144, 15076) +'render_galleries:output/galleries/bokehmagic/index.html', (19014144, 15075) 'render_tags:output/es/categories/talks.xml', (433664, 1181) 'render_tags:output/categories/config.xml', (575488, 3082) 'render_posts:cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html', (2059776, 740) @@ -66,39 +66,39 @@ 'render_sources:output/posts/zen-mode-extension-for-the-ipython-notebook.ipynb', (164864, 317) 'redirect', (56832, 56) 'render_tags:output/categories/pdf.html', (4884480, 3816) -'render_sources:output/posts/we-are-above-1000-stars.ipynb', (9292288, 276) +'render_sources:output/posts/we-are-above-1000-stars.ipynb', (9292288, 277) 'render_tags:output/categories/pinned.xml', (2697728, 526) 'render_tags:output/es/categories/config.xml', (606208, 3082) 'render_taxonomies:output/categories/pdf.xml', (6673920, 902) -'render_galleries:output/galleries/loadwrite/index.html', (14920704, 14807) +'render_galleries:output/galleries/loadwrite/index.html', (14920704, 14804) 'render_posts:cache/posts/viper-is-now-using-ipythonnbconvert.html.es', (1043456, 605) 'render_taxonomies:output/categories/connectivity.html', (16308224, 5418) -'render_galleries:output/es/galleries/loadwrite/index.html', (15290880, 14807) +'render_galleries:output/es/galleries/loadwrite/index.html', (15290880, 14804) 'render_sources:output/posts/under-the-sea-en-la-plata.ipynb', (139776, 281) 'render_tags:output/categories/trading.html', (4249088, 4239) 'render_taxonomies:output/categories/rise.html', (21064704, 8254) -'render_galleries:output/galleries/Facu_RN/DSC05928.JPG', (897536, 276) +'render_galleries:output/galleries/Facu_RN/DSC05928.JPG', (897536, 282) 'render_indexes', (586752, 56) 'render_tags:output/categories/less.html', (3739136, 4343) 'render_posts:cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.html.es', (123904, 705) 'render_tags:output/categories/flood.xml', (1332224, 708) -'render_sources:output/es/posts/a-simple-overview-of-viper.txt', (883200, 278) +'render_sources:output/es/posts/a-simple-overview-of-viper.txt', (883200, 487) 'render_tags:output/categories/slideshow.xml', (4760064, 5735) 'render_galleries:output/es/galleries/.ipynb_checkpoints/rss.xml', (9370112, 4439) -'render_taxonomies:output/es/2012/10/index.html', (17620480, 4809) +'render_taxonomies:output/es/2012/10/index.html', (17620480, 5044) 'render_archive:output/es/2016/08/index.html', (3737088, 1798) 'render_taxonomies:output/categories/local.html', (13010944, 5418) 'render_posts:cache/posts/mimic-the-ipython-notebook-cell-execution.html', (899584, 635) 'render_tags:output/categories/spellcheck.xml', (585216, 882) 'render_tags:output/es/categories/connectivity.html', (4724736, 3845) -'render_taxonomies:output/es/index-1.html', (18789376, 16549) +'render_taxonomies:output/es/index-1.html', (22321152, 18712) 'render_archive:output/2013/12/index.html', (4862464, 2575) 'render_tags:output/es/categories/politics.xml', (909824, 928) 'render_taxonomies:output/es/categories/index.html', (11169792, 2535) 'render_taxonomies:output/es/2012/12/index.html', (14974464, 4400) 'render_taxonomies:output/es/2012/11/index.html', (12927488, 4335) 'render_sources:output/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.ipynb', (1717760, 333) -'render_sources:output/posts/powered-by-nikola.txt', (42496, 254) +'render_sources:output/posts/powered-by-nikola.txt', (42496, 260) 'render_tags:output/es/categories/life.xml', (842240, 1041) 'render_taxonomies:output/categories/connectivity.xml', (5730304, 930) 'render_posts:cache/posts/trading-logbook-update-22-nov-2013.html.es', (953344, 600) @@ -106,29 +106,29 @@ 'copy_assets:output/assets/css/rst.css', (13465088, 1096) 'render_galleries:output/galleries/loadwrite', (1909248, 145) 'render_galleries:output/es/galleries/trades', (2388992, 145) -'render_sources:output/es/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2033152, 316) +'render_sources:output/es/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2033152, 317) 'render_galleries:output/es/galleries/deploy/rss.xml', (18625536, 14172) -'render_sources:output/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (1254912, 313) +'render_sources:output/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (1254912, 319) 'render_posts:cache/posts/different-ways-to-lead-an-open-source-project.html.es', (1119744, 655) -'render_sources:output/es/posts/we-are-above-1000-stars.ipynb', (9346560, 276) +'render_sources:output/es/posts/we-are-above-1000-stars.ipynb', (9346560, 277) 'render_galleries:output/galleries/trades/1.png', (2037760, 265) 'render_taxonomies:output/categories/politics.html', (15793152, 5080) 'render_taxonomies:output/categories/pyconar.xml', (5970432, 629) 'render_taxonomies:output/categories/zen.xml', (6849024, 1960) 'render_sources:output/es/posts/blogging-with-nikola-and-ipython.ipynb', (284160, 296) -'render_taxonomies:output/es/rss.xml', (21024768, 36312) +'render_taxonomies:output/es/rss.xml', (22169600, 38985) 'render_pages:output/es/posts/slider-for-nbconvert.html', (16681984, 14563) 'render_taxonomies:output/2013/11/index.html', (18206208, 5180) 'render_taxonomies:output/categories/nikola.html', (16396288, 15160) 'render_taxonomies:output/es/categories/slideshow.html', (21114368, 12992) -'render_galleries:output/galleries/zenmode/pic2.png', (1044480, 268) +'render_galleries:output/galleries/zenmode/pic2.png', (1044480, 274) 'render_taxonomies:output/es/categories/ipyscript.xml', (5711872, 825) 'render_pages:output/posts/beginning.html', (16748032, 14614) 'render_tags:output/es/categories/css.html', (2908160, 4327) 'render_galleries:output/galleries/zenmode', (1408512, 145) 'render_sources:output/es/posts/rise-510-is-out.ipynb', (12780544, 261) 'render_pages:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html', (19034624, 7651) -'render_sources:output/posts/nikolas-zen-theme-finally-released.ipynb', (1796096, 298) +'render_sources:output/posts/nikolas-zen-theme-finally-released.ipynb', (1796096, 299) 'render_pages:output/posts/hello-world-again.html', (16832512, 14671) 'render_archive:output/es/2013/01/index.html', (4068864, 2575) 'render_galleries:output/es/galleries/.ipynb_checkpoints/index.html', (9280512, 4443) @@ -138,8 +138,8 @@ 'render_tags:output/es/categories/daniela.xml', (2170880, 501) 'render_archive:output/2013/09/index.html', (4065792, 2575) 'render_tags:output/es/categories/politics.html', (2959872, 3849) -'render_sources:output/es/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (995840, 332) -'render_galleries:output/es/galleries/Inundacion/rss.xml', (17139712, 14567) +'render_sources:output/es/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (995840, 333) +'render_galleries:output/es/galleries/Inundacion/rss.xml', (17139712, 14565) 'render_posts', (1870848, 56) 'render_taxonomies:output/categories/scipycon.html', (17906688, 5193) 'render_tags:output/categories/local.xml', (738816, 924) @@ -149,7 +149,7 @@ 'render_sources', (448000, 56) 'render_posts:cache/posts/powered-by-nikola.html.es', (1808896, 760) 'render_taxonomies:output/categories/pyconar.html', (12974592, 5117) -'render_galleries:output/galleries/loadwrite/themes1.thumbnail.png', (976384, 284) +'render_galleries:output/galleries/loadwrite/themes1.thumbnail.png', (976384, 285) 'render_taxonomies:output/es/categories/zenmode.xml', (5310464, 846) 'render_tags:output/es/categories/minimap.xml', (1729536, 839) 'render_posts:cache/posts/trading-logbook-update-3.html.es', (8869888, 409) @@ -161,35 +161,35 @@ 'render_tags:output/es/categories/flood.html', (3667968, 3629) 'render_tags:output/es/categories/threads.html', (4843520, 3705) 'render_taxonomies:output/categories/viper.html', (18136064, 6752) -'render_galleries:output/galleries/bokehmagic/sin2.thumbnail.png', (704512, 280) -'render_sources:output/posts/live-trading-logbook.ipynb', (292352, 270) +'render_galleries:output/galleries/bokehmagic/sin2.thumbnail.png', (704512, 281) +'render_sources:output/posts/live-trading-logbook.ipynb', (292352, 271) 'render_tags:output/categories/format.xml', (379392, 980) 'render_posts:cache/posts/rise-500-is-out.html', (8189952, 381) 'render_tags:output/categories/workflow.html', (4315648, 7002) -'render_galleries:output/galleries/loadwrite/themes1.png', (984064, 282) +'render_galleries:output/galleries/loadwrite/themes1.png', (984064, 283) 'render_taxonomies:output/es/categories/trading.xml', (8719872, 1756) 'render_galleries:output/galleries/twitter/rss.xml', (16637440, 14175) -'render_pages:output/es/posts/improving-viper-slideshows-styling.html', (17355776, 14972) +'render_pages:output/es/posts/improving-viper-slideshows-styling.html', (17355776, 15207) 'render_tags:output/es/categories/less.xml', (1848832, 1422) 'render_taxonomies:output/categories/config.xml', (18713088, 3090) -'render_taxonomies:output/categories/workflow.xml', (16477696, 4678) +'render_taxonomies:output/categories/workflow.xml', (16477696, 4677) 'render_galleries:output/es/galleries/spellchecker', (2387456, 145) 'copy_assets:output/assets/js/jquery-1.10.2.min.js', (2032640, 306) 'render_galleries:output/galleries/rise/1004.png', (9037824, 267) -'render_taxonomies:output/categories/workflow.html', (16184320, 9166) +'render_taxonomies:output/categories/workflow.html', (16184320, 9165) 'render_galleries:output/galleries', (560640, 145) -'render_galleries:output/galleries/Inundacion/inundacion1.png', (1082880, 288) +'render_galleries:output/galleries/Inundacion/inundacion1.png', (1082880, 294) 'render_posts:cache/posts/customizing-your-ipython-slides.html', (1243136, 585) -'render_galleries:output/es/galleries/trades/rss.xml', (18366976, 14450) +'render_galleries:output/es/galleries/trades/rss.xml', (18366976, 14451) 'render_posts:cache/posts/paraguay.html.es', (290304, 677) 'render_galleries:output/galleries/bokehmagic/sin.thumbnail.png', (1837056, 278) 'render_posts:cache/stories/about-me.html', (843776, 467) -'render_galleries:output/es/galleries/rise/index.html', (17371136, 9052) +'render_galleries:output/es/galleries/rise/index.html', (17371136, 9051) 'render_archive', (1409024, 56) 'render_taxonomies:output/es/categories/gh-pages.xml', (15968768, 3134) 'render_taxonomies:output/categories/win.html', (20512256, 7051) 'render_tags:output/es/categories/ipython.html', (4888576, 27669) -'render_sources:output/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (1758208, 312) +'render_sources:output/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (1758208, 311) 'render_tags:output/categories/ipytmpl.html', (3333120, 3784) 'render_posts:cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.html.es', (1846272, 684) 'render_pages:output/es/posts/blogging-with-nikola-and-ipython.html', (18381824, 14788) @@ -208,13 +208,13 @@ 'render_tags:output/es/categories/local.html', (3694080, 3845) 'copy_assets:output/assets/css/baguetteBox.css', (11335168, 781) 'render_posts:cache/posts/blogging-with-nikola-and-ipython.html.es', (480768, 591) -'render_sources:output/es/posts/scipycon-argentina-2013.ipynb', (795648, 271) +'render_sources:output/es/posts/scipycon-argentina-2013.ipynb', (795648, 276) 'render_taxonomies:output/es/categories/typescript.xml', (8305152, 557) 'render_pages:output/posts/different-ways-to-lead-an-open-source-project.html', (19521024, 14875) 'render_taxonomies:output/es/categories/videos.xml', (7241216, 629) 'render_posts:cache/posts/rise-meets-jupyterlab.html.es', (8299008, 399) 'render_taxonomies:output/es/categories/less.xml', (5920768, 1429) -'render_sources:output/posts/slider-for-nbconvert.txt', (941568, 261) +'render_sources:output/posts/slider-for-nbconvert.txt', (941568, 267) 'render_tags:output/categories/conda.xml', (4847616, 1026) 'render_pages:output/posts/dont-write-scripts-just-write-ipyscripts.html', (12885504, 14842) 'render_posts:cache/posts/mimic-the-ipython-notebook-cell-execution.html.es', (1252864, 635) @@ -222,19 +222,19 @@ 'render_posts:cache/posts/nikola-nbconvert.html.es', (2232832, 602) 'render_pages:output/es/posts/trading-logbook-update-22-nov-2013.html', (15663104, 14800) 'render_pages:output/posts/rise-510-is-out.html', (16892928, 7445) -'render_sources:output/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (597504, 360) +'render_sources:output/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (597504, 361) 'render_tags:output/es/categories/extension.xml', (934912, 4879) -'render_taxonomies:output/es/categories/first_post.html', (13797376, 5551) +'render_taxonomies:output/es/categories/first_post.html', (22213632, 5850) 'render_tags:output/categories/python.html', (4524544, 28647) 'render_tags:output/es/categories/pinned.xml', (2667008, 526) -'render_galleries:output/galleries/twitter/1.thumbnail.png', (267776, 267) +'render_galleries:output/galleries/twitter/1.thumbnail.png', (267776, 268) 'render_archive:output/2016/index.html', (4100608, 2560) 'render_galleries:output/es/galleries/binder/index.html', (18178560, 6740) 'render_taxonomies:output/es/categories/twitter.xml', (7297024, 902) 'render_posts:cache/posts/paraguay.html', (61440, 456) 'render_taxonomies:output/categories/theme.xml', (6200832, 1429) 'render_tag_cloud', (5043200, 56) -'render_galleries:output/galleries/binder/terminal.png', (16535040, 274) +'render_galleries:output/galleries/binder/terminal.png', (16535040, 280) 'render_tags:output/categories/politics.html', (4629504, 3501) 'render_taxonomies:output/es/categories/reveal.html', (21010944, 13396) 'render_taxonomies:output/es/2016/08/index.html', (15964160, 4495) @@ -246,7 +246,7 @@ 'render_pages:output/posts/blogging-with-nikola-and-ipython.html', (18318336, 14788) 'render_galleries:output/galleries/deploy/1.thumbnail.png', (2145792, 268) 'render_taxonomies:output/es/categories/connectivity.html', (13775360, 5418) -'copy_files:output/Test.html', (640000, 236) +'copy_files:output/Test.html', (640000, 241) 'render_taxonomies:output/es/2016/06/index.html', (15857152, 4385) 'sitemap', (2054656, 56) 'render_taxonomies:output/categories/life.xml', (7225856, 1059) @@ -257,39 +257,39 @@ 'render_galleries:output/es/galleries/twitter/index.html', (17876992, 14163) 'render_pages:output/es/posts/teasers-with-the-ipython-notebook-plugin.html', (13547520, 14841) 'render_posts:cache/posts/teasers-with-the-ipython-notebook-plugin.html.es', (242688, 624) -'render_sources:output/posts/paraguay.txt', (271872, 236) -'render_taxonomies:output/rss.xml', (21385216, 33364) +'render_sources:output/posts/paraguay.txt', (271872, 242) +'render_taxonomies:output/rss.xml', (21840896, 33577) 'render_posts:cache/posts/pyconar-2013.html', (1847296, 490) 'render_taxonomies:output/categories/reveal.html', (21090816, 13396) -'render_galleries:output/galleries/Facu_RN/DSC05917.thumbnail.JPG', (1649152, 278) +'render_galleries:output/galleries/Facu_RN/DSC05917.thumbnail.JPG', (1649152, 283) 'render_taxonomies:output/es/categories/jinja.html', (14362112, 7578) 'render_tags:output/es/categories/toggle.xml', (1232896, 1542) 'render_tags:output/es/categories/jinja.xml', (264192, 3082) 'render_tags:output/es/categories/index.html', (3168768, 2564) 'render_pages:output/es/posts/scipycon-argentina-2013.html', (18716672, 14722) 'render_pages:output/es/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html', (17797120, 14933) -'render_sources:output/es/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (897024, 305) +'render_sources:output/es/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (897024, 311) 'render_pages:output/posts/pyconar-2013.html', (18526720, 14646) 'render_galleries:output/galleries/spellchecker/index.html', (17303040, 14478) 'render_tags:output/categories/ipyscript.html', (4690432, 3742) 'render_taxonomies:output/archive.html', (16349184, 3969) -'render_sources:output/es/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (1159680, 360) +'render_sources:output/es/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.ipynb', (1159680, 361) 'render_tags:output/categories/threads.xml', (1158656, 784) -'render_taxonomies:output/es/categories/extension.html', (18731520, 9376) +'render_taxonomies:output/es/categories/extension.html', (18731520, 9375) 'render_galleries:output/galleries/loadwrite/writer1.png', (2055168, 284) 'render_posts:cache/posts/teasers-with-the-ipython-notebook-plugin.html', (558080, 624) -'render_sources:output/es/posts/facundo.txt', (1487872, 235) +'render_sources:output/es/posts/facundo.txt', (1487872, 241) 'render_galleries:output/galleries/.ipynb_checkpoints', (9271296, 145) 'render_taxonomies:output/es/categories/theme.xml', (6377472, 1429) 'render_taxonomies:output/es/categories/zen.xml', (7110144, 1960) 'robots_file', (1241600, 56) -'render_galleries:output/galleries/trades/rss.xml', (17491456, 14450) +'render_galleries:output/galleries/trades/rss.xml', (17491456, 14451) 'copy_assets:output/assets/css/baguetteBox.min.css', (11592704, 797) 'render_pages:output/es/posts/live-trading-logbook.html', (16600064, 14702) 'render_archive:output/2013/05/index.html', (4859392, 2575) 'render_archive:output/2013/04/index.html', (3793408, 2575) 'render_tags:output/categories/magic.html', (3636224, 3742) -'render_galleries:output/galleries/Facu_RN/DSC05903.thumbnail.JPG', (1571840, 278) +'render_galleries:output/galleries/Facu_RN/DSC05903.thumbnail.JPG', (1571840, 284) 'render_tags:output/es/categories/linux.html', (4337664, 2594) 'render_taxonomies:output/2012/11/index.html', (12833280, 4335) 'render_galleries:output/galleries/binder/rss.xml', (19137024, 6750) @@ -298,12 +298,12 @@ 'render_taxonomies', (6202368, 56) 'render_taxonomies:output/es/categories/spellcheck.html', (12988928, 5377) 'render_pages:output/es/posts/different-ways-to-lead-an-open-source-project.html', (17551872, 14875) -'create_bundles:output/assets/css/all-nocdn.css', (598016, 902) +'create_bundles:output/assets/css/all-nocdn.css', (598016, 903) 'render_taxonomies:output/es/categories/jupyter.xml', (20727296, 5036) 'render_taxonomies:output/categories/zenmode.xml', (5421568, 846) 'render_posts:cache/posts/live-trading-logbook.html', (1222144, 529) -'render_sources:output/es/posts/ipython-plugin-for-nikola-updated.ipynb', (2060800, 291) -'render_galleries:output/galleries/Facu_RN/DSC05903.JPG', (193536, 276) +'render_sources:output/es/posts/ipython-plugin-for-nikola-updated.ipynb', (2060800, 297) +'render_galleries:output/galleries/Facu_RN/DSC05903.JPG', (193536, 282) 'render_tags:output/es/categories/magic.html', (4823552, 3742) 'render_galleries', (1016832, 56) 'render_posts:cache/posts/hello-world-again.html', (859648, 502) @@ -313,15 +313,15 @@ 'render_tags:output/es/categories/pdf.xml', (1089024, 895) 'render_pages:output/es/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html', (17094656, 14996) 'render_indexes:output/es/index-3.html', (3154432, 14063) -'render_taxonomies:output/es/categories/ipython.xml', (20136960, 25497) +'render_taxonomies:output/es/categories/ipython.xml', (22235648, 26520) 'render_archive:output/es/2014/03/index.html', (3451904, 2575) 'render_taxonomies:output/categories/linux.html', (20311552, 7051) 'render_tags:output/es/categories/reveal.html', (2845696, 9053) -'render_galleries:output/galleries/twitter/1.png', (292864, 265) -'render_sources:output/es/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (999424, 299) +'render_galleries:output/galleries/twitter/1.png', (292864, 266) +'render_sources:output/es/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (999424, 301) 'render_sources:output/es/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.ipynb', (60416, 333) -'render_taxonomies:output/es/categories/aikido.html', (21592064, 5409) -'render_galleries:output/es/galleries/rise/rss.xml', (17346560, 9062) +'render_taxonomies:output/es/categories/aikido.html', (21705216, 5919) +'render_galleries:output/es/galleries/rise/rss.xml', (17346560, 9061) 'render_posts:cache/posts/scipycon-argentina-2013.html.es', (991744, 539) 'render_tags:output/es/categories/toggle.html', (3655168, 4463) 'render_taxonomies:output/categories/jupyterlab.html', (20067328, 5724) @@ -329,20 +329,20 @@ 'render_taxonomies:output/es/2014/03/index.html', (18597376, 4770) 'render_archive:output/es/2013/11/index.html', (2749952, 2575) 'render_archive:output/2014/index.html', (4032000, 2560) -'render_sources:output/posts/hello-world-again.txt', (60928, 254) +'render_sources:output/posts/hello-world-again.txt', (60928, 260) 'render_taxonomies:output/categories/ipytmpl.xml', (6865408, 869) 'copy_assets:output/assets/js/jquery.timeago.js', (2031616, 298) 'render_tags:output/es/categories/blog.xml', (770560, 7665) 'render_tags:output/es/categories/python.xml', (2932224, 27527) 'render_tags:output/es/categories/zenmode.xml', (1253888, 840) -'sitemap:output/sitemap.xml', (21509632, 75539) +'sitemap:output/sitemap.xml', (21756928, 75514) 'render_tags:output/es/categories/facu.xml', (2298368, 501) 'render_pages:output/posts/one-line-deployment-of-your-site-to-gh-pages.html', (17986560, 14870) 'render_tags:output/categories/viper.html', (4916736, 5163) 'render_posts:cache/posts/rise-500-is-out.html.es', (7987712, 381) 'copy_assets:output/assets/fonts/fontawesome-webfont.ttf', (1816576, 317) -'render_taxonomies:output/es/categories/nikola.xml', (14221312, 11698) -'render_sources:output/es/posts/hello-world-again.txt', (968192, 260) +'render_taxonomies:output/es/categories/nikola.xml', (22352896, 12432) +'render_sources:output/es/posts/hello-world-again.txt', (968192, 451) 'render_tags:output/es/categories/aikido.html', (2796032, 3422) 'render_taxonomies:output/es/categories/slideshow.xml', (21073408, 8504) 'render_taxonomies:output/es/categories/twitter.html', (16221696, 5390) @@ -379,7 +379,7 @@ 'render_posts:cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.html.es', (907776, 644) 'copy_assets:output/assets/css/nikola_ipython.css', (163840, 307) 'render_tags:output/categories/connectivity.xml', (567808, 924) -'copy_files:output/CNAME', (1718272, 224) +'copy_files:output/CNAME', (1718272, 229) 'render_taxonomies:output/es/index-3.html', (19236864, 16075) 'render_galleries:output/galleries/Facu_RN', (622080, 145) 'render_archive:output/es/archive.html', (4063232, 2560) @@ -387,7 +387,7 @@ 'render_tags:output/es/categories/workflow.xml', (2025984, 4081) 'render_taxonomies:output/categories/jupyter.html', (21270528, 9524) 'render_tags:output/es/categories/conda.xml', (4712448, 1026) -'render_taxonomies:output/es/categories/format.html', (12907008, 5475) +'render_taxonomies:output/es/categories/format.html', (12907008, 5474) 'render_pages:output/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html', (19324928, 14933) 'render_pages:output/posts/how-to-pin-conda.html', (17172480, 14745) 'render_posts:cache/posts/nikolas-zen-theme-finally-released.html.es', (1192448, 599) @@ -397,9 +397,9 @@ 'render_indexes:output/index-3.html', (4986368, 14063) 'render_taxonomies:output/index-2.html', (18030592, 15549) 'render_posts:cache/posts/rise-510-is-out.html', (12781056, 382) -'render_galleries:output/galleries/Facu_RN/DSC05917.JPG', (1221632, 276) -'render_taxonomies:output/categories/format.xml', (7325696, 987) -'render_sources:output/es/posts/live-trading-logbook.ipynb', (788992, 270) +'render_galleries:output/galleries/Facu_RN/DSC05917.JPG', (1221632, 281) +'render_taxonomies:output/categories/format.xml', (7325696, 986) +'render_sources:output/es/posts/live-trading-logbook.ipynb', (788992, 271) 'render_taxonomies:output/categories/theme.html', (14484992, 5917) 'render_taxonomies:output/es/2013/11/index.html', (18838016, 5180) 'render_tags:output/es/categories/local.xml', (1265152, 924) @@ -434,78 +434,78 @@ 'render_sources:output/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.ipynb', (1795584, 354) 'render_sources:output/es/posts/hide-the-input-cells-from-your-ipython-slides.ipynb', (2059264, 320) 'copy_assets:output/assets/css/code.css', (884736, 141) -'render_galleries:output/galleries/Inundacion/rss.xml', (17157632, 14567) +'render_galleries:output/galleries/Inundacion/rss.xml', (17157632, 14565) 'render_galleries:output/galleries/bokehmagic/themes.png', (1718784, 282) 'render_tags:output/categories/mipyex.xml', (135680, 3343) 'render_posts:cache/posts/blogging-with-nikola-and-ipython.html', (156672, 591) 'render_taxonomies:output/es/categories/github.html', (16828416, 4072) -'render_posts:cache/posts/nikola-nbconvert.html', (466432, 475) -'render_taxonomies:output/categories/extension.xml', (6691328, 4888) +'render_posts:cache/posts/nikola-nbconvert.html', (466432, 480) +'render_taxonomies:output/categories/extension.xml', (6691328, 4887) 'scale_images', (55296, 56) 'render_taxonomies:output/index-1.html', (17332736, 13601) 'render_tags:output/es/categories/mipyex.html', (2735104, 6264) 'copy_assets:output/assets/js/moment-with-locales.min.js', (11616256, 1220) 'render_taxonomies:output/es/categories/zen.html', (15886848, 6448) 'render_galleries:output/es/galleries/.ipynb_checkpoints', (9374720, 145) -'render_taxonomies:output/es/categories/workflow.xml', (16529920, 4678) -'render_taxonomies:output/es/categories/nikola.html', (16411648, 16186) +'render_taxonomies:output/es/categories/workflow.xml', (16529920, 4677) +'render_taxonomies:output/es/categories/nikola.html', (22473216, 16920) 'render_archive:output/2012/12/index.html', (4964352, 2575) 'render_tags:output/categories/reveal.html', (3304448, 9053) 'render_taxonomies:output/es/categories/family.html', (15631360, 5547) 'render_tags:output/es/categories/tutorials.html', (3640320, 3615) 'render_taxonomies:output/categories/reveal.xml', (20998656, 8908) -'render_taxonomies:output/2014/04/index.html', (15657472, 5490) +'render_taxonomies:output/2014/04/index.html', (15657472, 5489) 'render_tags:output/categories/pdf.xml', (559616, 895) 'render_tags:output/categories/linux.html', (3313664, 2594) -'render_galleries:output/galleries/Facu_RN/rss.xml', (16614912, 17277) -'render_taxonomies:output/categories/javascript.html', (17859072, 11070) +'render_galleries:output/galleries/Facu_RN/rss.xml', (16614912, 17279) +'render_taxonomies:output/categories/javascript.html', (17859072, 11069) 'render_taxonomies:output/categories/themes.html', (19182592, 5810) 'render_archive:output/2013/01/index.html', (4369920, 2575) 'render_taxonomies:output/es/categories/css.html', (14491136, 5899) 'render_archive:output/es/2013/12/index.html', (4700672, 2575) 'render_taxonomies:output/2017/06/index.html', (17061376, 5225) 'render_taxonomies:output/2012/09/index.html', (14369792, 4379) -'render_sources:output/posts/viper.txt', (1142272, 230) -'render_taxonomies:output/es/2014/04/index.html', (15368192, 5490) +'render_sources:output/posts/viper.txt', (1142272, 236) +'render_taxonomies:output/es/2014/04/index.html', (15368192, 5489) 'render_sources:output/es/posts/trading-logbook-update-3.ipynb', (8629760, 279) 'render_posts:cache/posts/rise-400b1-is-available-please-test-it.html', (4866560, 451) 'render_sources:output/posts/reveal-converter-mini-tutorial.ipynb', (33280, 291) 'render_taxonomies:output/categories/toggle.html', (13723136, 6037) -'render_sources:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (2032128, 357) -'render_galleries:output/es/galleries/bokehmagic/rss.xml', (18185728, 15131) +'render_sources:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (2032128, 356) +'render_galleries:output/es/galleries/bokehmagic/rss.xml', (18185728, 15130) 'render_sources:output/es/posts/my-ipython-powered-semi-automatic-git-workflow.ipynb', (2160128, 324) 'render_taxonomies:output/categories/osx.html', (20326912, 7051) -'render_sources:output/es/stories/about-me.txt', (1090048, 247) +'render_sources:output/es/stories/about-me.txt', (1090048, 332) 'render_tags:output/categories/osx.html', (4674560, 2594) 'render_tags:output/es/categories/javascript.xml', (609792, 6156) 'render_taxonomies:output/es/categories/zenmode.html', (18541568, 5334) 'render_tags:output/categories/performance.html', (4595712, 4239) 'render_pages:output/posts/facundo.html', (17046528, 14498) 'render_sources:output/posts/customizing-your-ipython-slides.ipynb', (975872, 293) -'copy_files:output/portfolio/Humor-Sans.ttf', (41984, 265) +'copy_files:output/portfolio/Humor-Sans.ttf', (41984, 271) 'render_posts:cache/posts/a-new-nikolas-theme-for-my-site-zen.html', (948736, 603) 'render_indexes:output/es/index.html', (4468224, 14199) 'render_taxonomies:output/es/categories/flood.xml', (5279232, 720) -'render_sources:output/posts/beginning.txt', (441344, 238) +'render_sources:output/posts/beginning.txt', (441344, 243) 'render_posts:cache/posts/scipycon-argentina-2013.html', (933888, 539) 'render_taxonomies:output/es/2012/index.html', (13653504, 3969) 'render_taxonomies:output/es/2013/10/index.html', (18825728, 6249) 'render_taxonomies:output/categories/jupyterlab.xml', (20237824, 1236) -'render_galleries:output/galleries/Facu_RN/DSC05925.thumbnail.JPG', (1847808, 278) +'render_galleries:output/galleries/Facu_RN/DSC05925.thumbnail.JPG', (1847808, 284) 'render_posts:cache/posts/How-to-pin-Conda.html.es', (2448896, 385) -'render_galleries:output/galleries/spellchecker/1.thumbnail.png', (691200, 279) +'render_galleries:output/galleries/spellchecker/1.thumbnail.png', (691200, 280) 'render_posts:cache/posts/viper.html.es', (1575424, 650) 'copy_assets:output/assets/css/theme.css', (14187520, 1114) -'render_sources:output/es/posts/beginning.txt', (272896, 244) +'render_sources:output/es/posts/beginning.txt', (272896, 417) 'render_pages:output/es/posts/one-line-deployment-of-your-site-to-gh-pages.html', (17390592, 14870) 'render_posts:cache/posts/under-the-sea-en-la-plata.html', (378368, 555) 'render_taxonomies:output/es/categories/themes.xml', (6389760, 1322) 'render_archive:output/2014/03/index.html', (3986944, 2575) -'render_taxonomies:output/es/categories/first_post.xml', (5620224, 1063) +'render_taxonomies:output/es/categories/first_post.xml', (22365696, 1362) 'render_taxonomies:output/es/categories/facundo.xml', (5173248, 1059) -'render_galleries:output/galleries/Inundacion/index.html', (19691008, 14543) +'render_galleries:output/galleries/Inundacion/index.html', (19691008, 14542) 'render_posts:cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html', (822272, 674) -'render_taxonomies:output/es/categories/blog.html', (17539584, 12191) +'render_taxonomies:output/es/categories/blog.html', (22340096, 12761) 'render_tags:output/es/categories/twitter.html', (2828288, 3817) 'render_tags:output/categories/scipycon.html', (3260928, 3615) 'render_tags:output/es/categories/javascript.html', (4281344, 9077) @@ -513,12 +513,12 @@ 'copy_assets:output/assets/images/blue-mocha-grunge-reversed.jpg', (1757184, 337) 'render_archive:output/es/2013/10/index.html', (3620864, 2575) 'render_taxonomies:output/es/categories/performance.xml', (8614400, 1756) -'render_sources:output/es/posts/paraguay.txt', (272384, 242) +'render_sources:output/es/posts/paraguay.txt', (272384, 415) 'render_taxonomies:output/es/categories/ipytmpl.xml', (7161344, 869) 'render_pages:output/posts/make-your-slides-with-ipython.html', (19475968, 14765) 'render_tags:output/categories/aikido.html', (5000704, 3422) 'render_taxonomies:output/2012/index.html', (13527040, 3969) -'render_taxonomies:output/es/categories/aikido.xml', (21488128, 921) +'render_taxonomies:output/es/categories/aikido.xml', (21640192, 1431) 'render_sources:output/es/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.ipynb', (948224, 354) 'render_taxonomies:output/categories/tutorials.html', (19319296, 5193) 'render_taxonomies:output/index-3.html', (19395584, 16075) @@ -535,7 +535,7 @@ 'render_galleries:output/galleries/Inundacion', (559104, 145) 'render_tags:output/categories/slideshow.html', (3711488, 8656) 'render_taxonomies:output/categories/minimap.xml', (5835776, 846) -'render_sources:output/posts/a-simple-overview-of-viper.txt', (1264128, 272) +'render_sources:output/posts/a-simple-overview-of-viper.txt', (1264128, 278) 'render_taxonomies:output/es/categories/typescript.html', (16344064, 5045) 'copy_assets:output/assets/fonts/eMS0tViDqryBl0EG1pqFZfesZW2xOQ-xsNqO47m55DA.woff', (1499136, 368) 'render_tags:output/categories/ipython.xml', (2355200, 23350) @@ -543,70 +543,70 @@ 'render_tags:output/es/categories/win.html', (3072000, 2594) 'render_tags:output/es/categories/trading.html', (3037696, 4239) 'render_tags:output/categories/extension.xml', (1499648, 4879) -'render_galleries:output/galleries/Facu_RN/DSC05925.JPG', (1264640, 276) +'render_galleries:output/galleries/Facu_RN/DSC05925.JPG', (1264640, 282) 'render_tags:output/es/categories/less.html', (4184064, 4343) 'render_indexes:output/es/index-2.html', (4323840, 13504) 'render_taxonomies:output/es/2013/01/index.html', (18201088, 4625) 'render_galleries:output/es/galleries/spellchecker/index.html', (17625600, 14478) 'render_tags:output/es/categories/tutorials.xml', (700416, 694) -'render_pages:output/es/posts/paraguay.html', (17697280, 14963) +'render_pages:output/es/posts/paraguay.html', (17697280, 15234) 'render_archive:output/es/2014/04/index.html', (4804096, 2575) 'render_pages:output/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html', (19058176, 14996) 'render_taxonomies:output/es/categories/ipyscript.html', (19199488, 5313) -'copy_files:output/ShortCV_English.pdf', (115200, 255) +'copy_files:output/ShortCV_English.pdf', (115200, 261) 'render_sources:output/posts/rise-400b1-is-available-please-test-it.ipynb', (3584512, 307) 'render_taxonomies:output/es/categories/scipycon.xml', (5172224, 705) 'render_sources:output/posts/nikola-nbconvert.txt', (605696, 257) 'render_posts:cache/posts/a-simple-overview-of-viper.html.es', (2065408, 841) 'render_authors', (95744, 56) -'render_sources:output/es/posts/coming-back.ipynb', (212992, 253) -'render_galleries:output/galleries/spellchecker/2.png', (1757696, 277) +'render_sources:output/es/posts/coming-back.ipynb', (212992, 252) +'render_galleries:output/galleries/spellchecker/2.png', (1757696, 278) 'render_tags:output/categories/ipython.html', (2967040, 26271) 'render_tags:output/categories/ipytmpl.xml', (1839616, 863) 'render_indexes:output/index.html', (2769408, 14199) -'render_galleries:output/galleries/Facu_RN/Facu3.png', (739840, 270) -'render_taxonomies:output/es/categories/mipyex.xml', (5679104, 3352) +'render_galleries:output/galleries/Facu_RN/Facu3.png', (739840, 276) +'render_taxonomies:output/es/categories/mipyex.xml', (5679104, 3351) 'render_taxonomies:output/categories/pinned.html', (16148992, 5019) -'render_galleries:output/galleries/binder/terminal.thumbnail.png', (16536064, 276) +'render_galleries:output/galleries/binder/terminal.thumbnail.png', (16536064, 282) 'render_tags:output/es/categories/pip.html', (2993664, 2594) 'render_posts:cache/posts/a-new-nikolas-theme-for-my-site-zen.html.es', (1497088, 603) '_switch to py3', (1401856, 56) 'render_taxonomies:output/2017/12/index.html', (19299840, 3618) 'render_taxonomies:output/categories/ipytmpl.html', (15694336, 5357) -'render_galleries:output/galleries/Facu_RN/DSC05901.JPG', (1436160, 276) -'render_galleries:output/galleries/Facu_RN/DSC05901.thumbnail.JPG', (1797120, 278) +'render_galleries:output/galleries/Facu_RN/DSC05901.JPG', (1436160, 282) +'render_galleries:output/galleries/Facu_RN/DSC05901.thumbnail.JPG', (1797120, 284) 'render_taxonomies:output/es/categories/ipytmpl.html', (14880768, 5357) 'render_taxonomies:output/categories/family.html', (13562368, 5547) -'render_galleries:output/galleries/Facu_RN/Facu2.thumbnail.png', (1463296, 272) +'render_galleries:output/galleries/Facu_RN/Facu2.thumbnail.png', (1463296, 278) 'render_taxonomies:output/2012/06/index.html', (18925568, 6932) 'render_tags:output/es/categories/ipytmpl.html', (3769344, 3784) 'render_tags:output/categories/minimap.html', (3150336, 3760) 'render_taxonomies:output/es/categories/base16.html', (19470336, 5279) -'render_galleries:output/galleries/Facu_RN/Facu5.thumbnail.png', (2123264, 272) +'render_galleries:output/galleries/Facu_RN/Facu5.thumbnail.png', (2123264, 278) 'render_galleries:output/es/galleries/binder/rss.xml', (18914304, 6750) 'copy_files', (1055744, 56) 'render_archive:output/es/2013/05/index.html', (2714624, 2575) 'render_taxonomies:output/categories/css.xml', (5630976, 1411) -'render_taxonomies:output/es/categories/javascript.xml', (5990400, 6582) +'render_taxonomies:output/es/categories/javascript.xml', (5990400, 6581) 'render_posts:cache/posts/zen-mode-extension-for-the-ipython-notebook.html', (779776, 645) 'render_taxonomies:output/es/2017/07/index.html', (15247360, 4420) -'render_galleries:output/galleries/Facu_RN/DSC05918.JPG', (2062848, 276) +'render_galleries:output/galleries/Facu_RN/DSC05918.JPG', (2062848, 282) 'render_taxonomies:output/categories/threads.html', (18832384, 5277) 'render_taxonomies:output/categories/conda.xml', (20471808, 2952) 'render_tags:output/categories/python.xml', (3278336, 25726) -'render_galleries:output/es/galleries/zenmode/rss.xml', (16940032, 14485) +'render_galleries:output/es/galleries/zenmode/rss.xml', (16940032, 14487) 'render_taxonomies:output/es/categories/pyconar.html', (14244352, 5117) 'render_taxonomies:output/categories/blog.xml', (5116928, 6936) 'render_pages:output/posts/ipython-plugin-for-nikola-updated.html', (17267712, 14793) 'render_tags:output/es/categories/gh-pages.xml', (2069504, 2529) -'render_galleries:output/es/galleries/Inundacion/index.html', (18746368, 14543) +'render_galleries:output/es/galleries/Inundacion/index.html', (18746368, 14542) 'render_galleries:output/es/galleries/twitter/rss.xml', (19411968, 14175) 'render_pages:output/posts/slider-for-nbconvert.html', (17199616, 14563) 'render_tags:output/es/categories/pyconar.xml', (1728512, 623) 'render_sources:output/posts/48-themes-for-your-ipython-notebook.ipynb', (1488384, 302) 'render_tags:output/es/categories/ipython.xml', (2298880, 24748) 'copy_assets:output/assets/images/glyphicons-halflings-white.png', (1126912, 333) -'render_sources:output/es/posts/improving-viper-slideshows-styling.txt', (329216, 294) +'render_sources:output/es/posts/improving-viper-slideshows-styling.txt', (22318592, 519) 'render_taxonomies:output/es/categories/performance.html', (19007488, 6244) 'render_tags:output/categories/jinja.xml', (1428992, 3082) 'render_tags:output/categories/nbconvert.html', (4072960, 12463) @@ -614,7 +614,7 @@ 'render_taxonomies:output/es/categories/pyconar.xml', (5351936, 629) 'render_taxonomies:output/es/categories/pinned.html', (15909376, 5019) 'render_tags:output/categories/first_post.html', (4855808, 3565) -'render_sources:output/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (870400, 328) +'render_sources:output/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (870400, 329) 'render_taxonomies:output/categories/performance.xml', (8798720, 1756) 'render_posts:cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html', (9216, 695) 'render_tags:output/es/categories/nbconvert.html', (4372992, 12463) @@ -623,7 +623,7 @@ 'render_tags:output/categories/javascript.html', (2916864, 9077) 'render_pages:output/posts/live-trading-logbook.html', (18884096, 14702) 'render_taxonomies:output/categories/binder.xml', (19995136, 1412) -'render_galleries:output/galleries/zenmode/pic1.thumbnail.png', (954880, 270) +'render_galleries:output/galleries/zenmode/pic1.thumbnail.png', (954880, 276) 'render_posts:cache/posts/one-line-deployment-of-your-site-to-gh-pages.html', (1442816, 644) 'render_taxonomies:output/es/categories/magic.xml', (7242240, 825) 'render_pages:output/posts/powered-by-nikola.html', (18947584, 14673) @@ -636,29 +636,29 @@ 'render_tags:output/categories/mipyex.html', (3614208, 6264) 'copy_assets', (568832, 56) 'render_pages:output/posts/viper-is-now-using-ipythonnbconvert.html', (14905856, 14806) -'render_galleries:output/galleries/bokehmagic/rss.xml', (16962560, 15131) +'render_galleries:output/galleries/bokehmagic/rss.xml', (16962560, 15130) 'render_posts:cache/posts/viper.html', (1648640, 441) 'render_taxonomies:output/categories/win.xml', (21007872, 2563) 'render_sources:output/es/posts/mimic-the-ipython-notebook-cell-execution.ipynb', (139264, 313) 'render_taxonomies:output/categories/blog.html', (17957376, 11424) 'render_tags:output/es/categories/conda.html', (2880000, 3947) 'render_tags:output/categories/jupyter.html', (4747776, 3922) -'render_taxonomies:output/es/categories/viper.xml', (6460928, 3407) +'render_taxonomies:output/es/categories/viper.xml', (22209024, 4229) 'render_tags:output/es/categories/nbviewer.xml', (47616, 910) 'render_pages:output/es/posts/facundo.html', (17589248, 14498) 'render_posts:cache/posts/zen-mode-extension-for-the-ipython-notebook.html.es', (55808, 645) 'render_pages:output/es/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.html', (17912320, 14919) 'render_galleries:output/galleries/binder', (16535552, 145) 'copy_assets:output/assets/css/ipython.min.css', (844288, 301) -'render_galleries:output/galleries/bokehmagic/sin2.png', (283648, 278) +'render_galleries:output/galleries/bokehmagic/sin2.png', (283648, 279) 'render_taxonomies:output/es/categories/scipycon.html', (19573248, 5193) -'render_galleries:output/galleries/rise/index.html', (17482240, 9052) +'render_galleries:output/galleries/rise/index.html', (17482240, 9051) 'render_taxonomies:output/es/categories/git.xml', (15972352, 4544) 'render_taxonomies:output/es/categories/nbviewer.xml', (5678080, 916) 'render_pages:output/posts/rise-meets-jupyterlab.html', (18688000, 9822) 'render_tags:output/es/categories/blog.html', (3016192, 10586) 'render_taxonomies:output/categories/git.html', (16327168, 9032) -'render_taxonomies:output/es/categories/ipython.html', (19868672, 29985) +'render_taxonomies:output/es/categories/ipython.html', (22378496, 31008) 'render_pages:output/posts/a-new-nikolas-theme-for-my-site-zen.html', (14595072, 14806) 'render_taxonomies:output/categories/flood.html', (19052544, 5208) 'render_taxonomies:output/categories/gh-pages.xml', (14303744, 3134) @@ -674,7 +674,7 @@ 'copy_assets:output/assets/xml/rss.xsl', (13917184, 1102) 'render_taxonomies:output/es/categories/life.xml', (6868992, 1059) 'render_taxonomies:output/es/categories/binder.html', (20080128, 4751) -'copy_files:output/ShortCV_Spanish.pdf', (1565184, 255) +'copy_files:output/ShortCV_Spanish.pdf', (1565184, 260) 'render_posts:cache/posts/powered-by-nikola.html', (98816, 502) 'copy_assets:output/assets/css/main.css', (206336, 284) 'render_taxonomies:output/categories/local.xml', (5594112, 930) @@ -682,7 +682,7 @@ 'render_taxonomies:output/es/categories/css.xml', (5621760, 1411) 'render_tags:output/es/categories/opensource.xml', (2146304, 854) 'render_taxonomies:output/categories/gh-pages.html', (14135808, 7622) -'render_taxonomies:output/es/categories/extension.xml', (7115264, 4888) +'render_taxonomies:output/es/categories/extension.xml', (7115264, 4887) 'render_tags:output/categories/themes.html', (3214848, 4236) 'render_taxonomies:output/es/categories/git.html', (14992896, 9032) 'robots_file:output/robots.txt', (198144, 136) @@ -694,25 +694,25 @@ 'render_indexes:output/index-4.html', (4482560, 11003) 'render_archive:output/2013/11/index.html', (4751872, 2575) 'render_taxonomies:output/categories/github.xml', (14987264, 733) -'render_galleries:output/galleries/Facu_RN/DSC05928.thumbnail.JPG', (684544, 278) +'render_galleries:output/galleries/Facu_RN/DSC05928.thumbnail.JPG', (684544, 284) 'render_tags:output/categories/magic.xml', (1338880, 821) 'render_posts:cache/posts/How-to-pin-Conda.html', (2448384, 385) 'render_tags:output/es/categories/slideshow.xml', (2701312, 5735) -'render_taxonomies:output/categories/extension.html', (18550784, 9376) +'render_taxonomies:output/categories/extension.html', (18550784, 9375) 'render_taxonomies:output/categories/jinja.xml', (16744448, 3090) 'render_taxonomies:output/es/categories/github.xml', (13124096, 733) -'render_galleries:output/galleries/Facu_RN/Facu3.thumbnail.png', (273408, 272) +'render_galleries:output/galleries/Facu_RN/Facu3.thumbnail.png', (273408, 278) 'render_tags:output/es/categories/config.html', (4405760, 6003) 'render_taxonomies:output/categories/videos.html', (15089152, 5117) 'render_taxonomies:output/es/categories/rise.xml', (21243904, 3766) -'render_galleries:output/galleries/Facu_RN/Facu2.png', (954368, 270) +'render_galleries:output/galleries/Facu_RN/Facu2.png', (954368, 276) 'render_taxonomies:output/categories/zen.html', (12900352, 6448) 'render_pages:output/es/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html', (19505664, 14906) 'render_tags:output/categories/twitter.html', (4743680, 3817) 'render_posts:cache/posts/live-trading-logbook.html.es', (1605120, 529) 'render_taxonomies:output/es/2013/05/index.html', (15490560, 4559) 'render_taxonomies:output/es/categories/config.xml', (18547200, 3090) -'render_galleries:output/galleries/Facu_RN/DSC05918.thumbnail.JPG', (2129920, 278) +'render_galleries:output/galleries/Facu_RN/DSC05918.thumbnail.JPG', (2129920, 284) 'render_sources:output/posts/how-to-pin-the-conda.ipynb', (2402304, 271) 'render_galleries:output/galleries/rss.xml', (16778240, 13889) 'render_taxonomies:output/es/categories/linux.xml', (21291008, 2563) @@ -724,8 +724,8 @@ 'render_taxonomies:output/categories/binder.html', (19910144, 4751) 'render_tags:output/categories/index.html', (4663296, 2564) 'render_galleries:output/galleries/twitter/index.html', (18991104, 14163) -'_scan_locs:sitemap', (21446656, 41415) -'render_sources:output/posts/improving-viper-slideshows-styling.txt', (1576448, 288) +'_scan_locs:sitemap', (21711360, 40841) +'render_sources:output/posts/improving-viper-slideshows-styling.txt', (1576448, 294) 'render_archive:output/es/2013/08/index.html', (4740608, 2575) 'render_pages:output/posts/customizing-your-ipython-slides.html', (18333184, 14779) 'render_tags:output/es/categories/viper.xml', (115712, 3367) @@ -737,7 +737,7 @@ 'render_sources:output/posts/blogging-with-nikola-and-ipython.ipynb', (322048, 296) 'render_posts:cache/posts/dont-write-scripts-just-write-ipyscripts.html', (983040, 631) 'render_tags:output/es/categories/themes.xml', (1978880, 1315) -'render_taxonomies:output/categories/mipyex.html', (18518528, 7840) +'render_taxonomies:output/categories/mipyex.html', (18518528, 7839) 'render_taxonomies:output/2014/index.html', (13780992, 3969) 'copy_assets:output/assets/fonts/fontawesome-webfont.eot', (1308672, 318) 'render_tags:output/categories/javascript.xml', (633344, 6156) @@ -750,10 +750,10 @@ 'render_posts:cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html', (220672, 736) 'render_taxonomies:output/categories/spellcheck.xml', (6881280, 889) 'render_taxonomies:output/es/categories/daniela.html', (13587456, 4994) -'copy_files:output/portfolio/.ipynb_checkpoints/portfolio-checkpoint.ipynb', (1894912, 326) +'copy_files:output/portfolio/.ipynb_checkpoints/portfolio-checkpoint.ipynb', (1894912, 332) 'render_pages:output/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html', (17812480, 14991) -'render_galleries:output/galleries/zenmode/rss.xml', (18143232, 14485) -'render_sources:output/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (1435648, 305) +'render_galleries:output/galleries/zenmode/rss.xml', (18143232, 14487) +'render_sources:output/posts/teasers-with-the-ipython-notebook-plugin.ipynb', (1435648, 311) 'render_galleries:output/galleries/deploy', (1408000, 145) 'render_taxonomies:output/2017/11/index.html', (13597184, 3412) 'render_tags:output/categories/zen.xml', (1530368, 1951) @@ -763,7 +763,7 @@ 'render_pages:output/posts/rise-500-is-out.html', (17930752, 9791) 'render_taxonomies:output/es/archive.html', (14255616, 3969) 'render_tags:output/categories/nbviewer.xml', (329728, 910) -'render_sources:output/es/posts/nikolas-zen-theme-finally-released.ipynb', (908800, 298) +'render_sources:output/es/posts/nikolas-zen-theme-finally-released.ipynb', (908800, 299) 'render_taxonomies:output/es/2013/08/index.html', (14853120, 8093) 'render_archive:output/es/2016/index.html', (4572160, 2560) 'render_sources:output/es/posts/reveal-converter-mini-tutorial.ipynb', (622592, 291) @@ -775,15 +775,15 @@ 'render_taxonomies:output/categories/typescript.xml', (8477696, 557) 'render_tags:output/es/categories/extension.html', (4237824, 7800) 'render_taxonomies:output/es/2013/12/index.html', (16877568, 8258) -'render_galleries:output/galleries/spellchecker/2.thumbnail.png', (135168, 279) +'render_galleries:output/galleries/spellchecker/2.thumbnail.png', (135168, 280) 'render_galleries:output/galleries/deploy/rss.xml', (18274304, 14172) -'render_pages:output/es/posts/powered-by-nikola.html', (17405952, 15081) +'render_pages:output/es/posts/powered-by-nikola.html', (22262272, 15379) 'render_tags:output/categories/pinned.html', (3859968, 3447) 'copy_assets:output/assets/js/fancydates.js', (14691840, 1127) 'render_tags:output/categories/facu.html', (2884096, 3422) 'render_tags:output/es/categories/jupyter.xml', (3348480, 1001) 'render_galleries:output/galleries/bokehmagic/sin.png', (879616, 276) -'render_taxonomies:output/es/categories/javascript.html', (19459072, 11070) +'render_taxonomies:output/es/categories/javascript.html', (19459072, 11069) 'render_posts:cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html.es', (1367040, 674) 'render_posts:cache/posts/trading-logbook-update-22-nov-2013.html', (1314816, 600) 'render_tags:output/categories/base16.xml', (780800, 786) @@ -794,18 +794,18 @@ 'render_taxonomies:output/2013/04/index.html', (15305728, 4574) 'render_tags:output/es/categories/trading.xml', (794112, 1318) 'render_tags:output/es/categories/theme.xml', (1255424, 1422) -'render_galleries:output/galleries/Inundacion/inundacion1.thumbnail.png', (1184768, 290) +'render_galleries:output/galleries/Inundacion/inundacion1.thumbnail.png', (1184768, 296) 'render_tags:output/es/categories/base16.html', (3632128, 3707) 'render_taxonomies:output/categories/git.xml', (14628352, 4544) 'render_taxonomies:output/es/categories/less.html', (14259712, 5917) 'render_taxonomies:output/categories/nbviewer.html', (13749248, 5404) 'render_sources:output/es/posts/how-to-pin-the-conda.ipynb', (2401792, 271) 'render_indexes:output/index-1.html', (3440128, 11539) -'copy_files:output/portfolio/portfolio.ipynb', (1917952, 266) +'copy_files:output/portfolio/portfolio.ipynb', (1917952, 271) 'render_taxonomies:output/es/index-2.html', (19675136, 15549) 'render_tags:output/categories/blog.html', (3127808, 9830) 'render_archive:output/es/2014/05/index.html', (4246016, 2575) -'render_taxonomies:output/es/categories/blog.xml', (18602496, 7703) +'render_taxonomies:output/es/categories/blog.xml', (22464512, 8273) 'render_sources:output/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.ipynb', (330752, 337) 'render_tags:output/es/categories/pinned.html', (4766208, 3447) 'render_taxonomies:output/categories/daniela.xml', (5731328, 506) @@ -813,37 +813,37 @@ 'render_galleries:output/es/galleries/bokehmagic', (2385408, 145) 'render_tags:output/es/categories/opensource.html', (3171840, 3775) 'render_taxonomies:output/categories/spellcheck.html', (13125120, 5377) -'render_taxonomies:output/categories/format.html', (14535680, 5475) +'render_taxonomies:output/categories/format.html', (14535680, 5474) 'render_taxonomies:output/categories/facu.html', (14351360, 4994) -'render_galleries:output/es/galleries/Facu_RN/rss.xml', (17969152, 17277) -'render_galleries:output/galleries/Inundacion/inundacion2.thumbnail.png', (10240, 290) +'render_galleries:output/es/galleries/Facu_RN/rss.xml', (17969152, 17279) +'render_galleries:output/galleries/Inundacion/inundacion2.thumbnail.png', (10240, 296) 'render_sources:output/es/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.ipynb', (377856, 355) 'render_taxonomies:output/categories/base16.xml', (6212096, 791) -'render_sources:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (38912, 357) +'render_sources:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.ipynb', (38912, 356) 'render_tags:output/categories/base16.html', (2783744, 3707) 'post_render', (1257472, 56) 'render_taxonomies:output/categories/threads.xml', (6009344, 789) 'render_pages:output/posts/teasers-with-the-ipython-notebook-plugin.html', (15598592, 14841) -'render_taxonomies:output/es/categories/mipyex.html', (17067008, 7840) +'render_taxonomies:output/es/categories/mipyex.html', (17067008, 7839) 'render_sources:output/posts/mimic-the-ipython-notebook-cell-execution.ipynb', (1899008, 313) 'render_taxonomies:output/categories/rise.xml', (21236736, 3766) 'render_posts:cache/posts/a-simple-overview-of-viper.html', (1654784, 547) 'render_taxonomies:output/2017/07/index.html', (12950528, 4420) 'render_pages:output/stories/about-me.html', (17282560, 14769) 'render_pages:output/es/posts/nikolas-zen-theme-finally-released.html', (15328768, 14799) -'render_galleries:output/galleries/Facu_RN/Facu5.png', (677888, 270) +'render_galleries:output/galleries/Facu_RN/Facu5.png', (677888, 276) 'render_pages:output/es/posts/ipython-plugin-for-nikola-updated.html', (16716800, 14793) -'render_galleries:output/es/galleries/bokehmagic/index.html', (17229312, 15076) +'render_galleries:output/es/galleries/bokehmagic/index.html', (17229312, 15075) 'render_tags:output/categories/theme.html', (3067392, 4343) 'render_taxonomies:output/es/categories/facu.xml', (5619712, 506) 'render_archive:output/2012/10/index.html', (3782144, 2575) 'render_sources:output/es/posts/zen-mode-extension-for-the-ipython-notebook.ipynb', (796160, 317) -'render_taxonomies:output/es/index.html', (21429248, 17062) +'render_taxonomies:output/es/index.html', (21916160, 17572) 'copy_assets:output/assets/images/blue-mocha-grunge.jpg', (909312, 316) -'render_taxonomies:output/categories/aikido.html', (21598208, 5409) -'render_galleries:output/galleries/zenmode/index.html', (17317888, 14462) -'render_sources:output/es/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (268288, 312) -'render_sources:output/es/posts/slider-for-nbconvert.txt', (1185280, 261) +'render_taxonomies:output/categories/aikido.html', (21658624, 5622) +'render_galleries:output/galleries/zenmode/index.html', (17317888, 14463) +'render_sources:output/es/posts/dont-write-scripts-just-write-ipyscripts.ipynb', (268288, 311) +'render_sources:output/es/posts/slider-for-nbconvert.txt', (1185280, 267) 'generate_rss:output/es/rss.xml', (4205056, 7273) 'render_archive:output/es/2012/11/index.html', (4827648, 2575) 'render_taxonomies:output/2013/05/index.html', (14331904, 4559) @@ -851,8 +851,8 @@ 'render_pages:output/es/posts/dont-write-scripts-just-write-ipyscripts.html', (13657600, 14842) 'render_pages:output/posts/paraguay.html', (17008640, 14609) 'render_posts:cache/posts/rise-510-is-out.html.es', (12781568, 382) -'render_galleries:output/es/galleries/Facu_RN/index.html', (19253248, 17131) -'copy_files:output/portfolio/portfolio.slides.html', (335360, 280) +'render_galleries:output/es/galleries/Facu_RN/index.html', (19253248, 17132) +'copy_files:output/portfolio/portfolio.slides.html', (335360, 286) 'render_archive:output/es/2016/06/index.html', (4687360, 2575) 'render_pages:output/posts/rise-400b1-is-available-please-test-it.html', (13111808, 12239) 'render_posts:cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.html', (1989632, 644) @@ -861,15 +861,15 @@ 'render_tags:output/es/categories/rise.xml', (4396544, 1001) 'render_tags:output/categories/zenmode.html', (4340736, 3761) 'render_galleries:output/es/galleries/Inundacion', (2386944, 145) -'sitemap:output/sitemapindex.xml', (1487360, 256) +'sitemap:output/sitemapindex.xml', (1487360, 255) 'render_taxonomies:output/categories/ipyscript.html', (18783744, 5313) -'render_sources:output/es/posts/powered-by-nikola.txt', (43008, 260) +'render_sources:output/es/posts/powered-by-nikola.txt', (43008, 450) 'render_galleries:output/galleries/deploy/index.html', (17767936, 14162) 'render_posts:cache/posts/48-themes-for-your-ipython-notebook.html.es', (1188352, 606) 'render_tags:output/categories/scipycon.xml', (1899520, 694) 'render_posts:cache/posts/zen-themes-updated.html', (1242112, 520) 'render_pages:output/es/posts/customizing-your-ipython-slides.html', (18673152, 14779) -'render_sources:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (15472640, 344) +'render_sources:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (15472640, 343) 'render_tags:output/categories/nikola.html', (3265024, 12962) 'render_tags:output/es/categories/jinja.html', (2926080, 6003) 'render_tags:output/categories/pip.xml', (4174848, 636) @@ -878,7 +878,7 @@ 'render_taxonomies:output/categories/toggle.xml', (19005440, 1549) 'render_taxonomies:output/2016/08/index.html', (14988288, 4495) 'render_pages:output/es/posts/my-ipython-powered-semi-automatic-git-workflow.html', (19729408, 14886) -'render_sources:output/es/posts/viper.txt', (321536, 236) +'render_sources:output/es/posts/viper.txt', (321536, 403) 'render_pages:output/es/posts/how-to-pin-the-conda.html', (2390528, 5548) 'render_posts:cache/posts/ipython-plugin-for-nikola-updated.html', (1127424, 589) 'render_tags:output/es/categories/reveal.xml', (4010496, 6132) @@ -889,7 +889,7 @@ 'render_tags:output/es/categories/python.html', (3184128, 30448) 'render_pages:output/es/posts/make-your-slides-with-ipython.html', (18976256, 14765) 'render_posts:cache/posts/pyconar-2013.html.es', (1230336, 490) -'render_galleries:output/galleries/Facu_RN/Facu1.thumbnail.png', (163328, 272) +'render_galleries:output/galleries/Facu_RN/Facu1.thumbnail.png', (163328, 278) 'render_taxonomies:output/es/categories/jupyterlab.xml', (20042752, 1236) 'render_posts:cache/posts/one-line-deployment-of-your-site-to-gh-pages.html.es', (1529344, 644) 'render_taxonomies:output/es/categories/opensource.html', (20044288, 6025) @@ -900,18 +900,18 @@ 'render_tags:output/categories/minimap.xml', (517632, 839) 'render_tags:output/es/categories/base16.xml', (2035712, 786) 'render_tags:output/es/categories/family.html', (3042304, 3962) -'render_galleries:output/es/galleries/loadwrite/rss.xml', (16353280, 14844) -'render_taxonomies:output/es/categories/viper.html', (19191296, 7895) +'render_galleries:output/es/galleries/loadwrite/rss.xml', (16353280, 14841) +'render_taxonomies:output/es/categories/viper.html', (22452224, 8717) 'render_galleries:output/galleries/loadwrite/loader1.png', (466944, 284) -'render_sources:output/posts/facundo.txt', (220160, 235) -'render_taxonomies:output/es/categories/python.xml', (21343232, 31486) +'render_sources:output/posts/facundo.txt', (220160, 241) +'render_taxonomies:output/es/categories/python.xml', (22285312, 32807) 'copy_assets:output/assets/css/nikola_rst.css', (12457472, 777) 'render_tags:output/categories/life.xml', (940032, 1041) 'render_tags:output/categories/toggle.xml', (1385472, 1542) 'render_pages:output/posts/trading-logbook-update-22-nov-2013.html', (14777856, 14800) 'render_archive:output/es/2013/04/index.html', (2732032, 2575) 'render_tags:output/categories/performance.xml', (192000, 1318) -'render_taxonomies:output/es/categories/politics.html', (15541248, 5434) +'render_taxonomies:output/es/categories/politics.html', (22278144, 5705) 'render_posts:cache/posts/dont-write-scripts-just-write-ipyscripts.html.es', (1817088, 631) 'render_galleries:output/galleries/.ipynb_checkpoints/index.html', (9021440, 4443) 'render_posts:cache/posts/48-themes-for-your-ipython-notebook.html', (251392, 606) @@ -922,10 +922,10 @@ 'render_sources:output/posts/make-your-slides-with-ipython.ipynb', (967168, 289) 'render_tags:output/categories/tutorials.html', (4708352, 3615) 'render_taxonomies:output/es/categories/spellcheck.xml', (6563328, 889) -'render_sources:output/es/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (677376, 328) +'render_sources:output/es/posts/a-poor-man-spell-checker-for-the-ipython-notebook.ipynb', (677376, 329) 'render_taxonomies:output/es/categories/magic.html', (16954880, 5313) 'render_taxonomies:output/categories/less.xml', (6266368, 1429) -'render_galleries:output/galleries/Facu_RN/Facu4.thumbnail.png', (967680, 272) +'render_galleries:output/galleries/Facu_RN/Facu4.thumbnail.png', (967680, 277) 'render_taxonomies:output/es/categories/osx.html', (20535808, 7051) 'render_listings', (778240, 56) 'render_tags:output/categories/tutorials.xml', (2122240, 694) @@ -933,23 +933,23 @@ 'render_taxonomies:output/es/categories/conda.xml', (20519424, 2952) 'render_galleries:output/galleries/trades/2.thumbnail.png', (855552, 267) 'render_archive:output/2013/02/index.html', (3345408, 2575) -'render_sources:output/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (273920, 332) -'render_pages:output/es/stories/about-me.html', (17464832, 15136) +'render_sources:output/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.ipynb', (273920, 333) +'render_pages:output/es/stories/about-me.html', (17464832, 15047) 'render_taxonomies:output/es/categories/toggle.html', (15082496, 6037) 'render_tags:output/categories/rise.xml', (4071936, 1001) -'render_galleries:output/galleries/Facu_RN/index.html', (18560512, 17131) +'render_galleries:output/galleries/Facu_RN/index.html', (18560512, 17132) 'render_galleries:output/es/galleries/Facu_RN', (2389504, 145) -'render_galleries:output/galleries/Inundacion/inundacion2.png', (1717248, 288) +'render_galleries:output/galleries/Inundacion/inundacion2.png', (1717248, 294) 'render_pages:output/posts/under-the-sea-en-la-plata.html', (16862720, 14737) 'render_tags:output/categories/nikola.xml', (124928, 10041) 'render_pages:output/es/posts/mimic-the-ipython-notebook-cell-execution.html', (18235392, 14849) 'render_posts:cache/posts/my-ipython-powered-semi-automatic-git-workflow.html.es', (1105408, 661) -'render_taxonomies:output/es/2012/06/index.html', (18577920, 9262) +'render_taxonomies:output/es/2012/06/index.html', (22367232, 10989) 'render_taxonomies:output/es/categories/base16.xml', (5997056, 791) 'render_tags:output/es/categories/talks.html', (3119104, 4102) -'render_taxonomies:output/categories/aikido.xml', (21499904, 921) +'render_taxonomies:output/categories/aikido.xml', (21641728, 1134) 'render_tags:output/es/categories/css.xml', (871936, 1406) -'render_taxonomies:output/es/2012/09/index.html', (19586048, 4654) +'render_taxonomies:output/es/2012/09/index.html', (22409728, 4855) 'render_tags:output/es/categories/nikola.html', (3398144, 13975) 'render_galleries:output/galleries/rise', (9315840, 145) 'render_sources:output/es/posts/zen-themes-updated.ipynb', (479744, 268) @@ -960,22 +960,22 @@ 'render_tags:output/es/categories/themes.html', (3952640, 4236) 'render_taxonomies:output/2013/02/index.html', (16632320, 4609) 'render_galleries:output/galleries/trades/2.png', (1778176, 265) -'render_taxonomies:output/es/categories/politics.xml', (6735872, 946) +'render_taxonomies:output/es/categories/politics.xml', (22319616, 1217) 'render_taxonomies:output/es/2017/index.html', (15677952, 3969) 'render_tags:output/categories/jinja.html', (2717696, 6003) -'render_taxonomies:output/categories/javascript.xml', (5731840, 6582) -'render_galleries:output/galleries/rise/rss.xml', (19144192, 9062) +'render_taxonomies:output/categories/javascript.xml', (5731840, 6581) +'render_galleries:output/galleries/rise/rss.xml', (19144192, 9061) 'render_taxonomies:output/es/categories/win.html', (20607488, 7051) 'render_taxonomies:output/categories/flood.xml', (5311488, 720) 'render_taxonomies:output/es/categories/opensource.xml', (19837440, 1537) 'render_pages:output/posts/zen-themes-updated.html', (17244672, 14690) 'render_posts:cache/posts/beginning.html', (1732608, 461) -'render_sources:output/posts/ipython-plugin-for-nikola-updated.ipynb', (323072, 291) -'render_sources:output/posts/coming-back.ipynb', (1463808, 253) +'render_sources:output/posts/ipython-plugin-for-nikola-updated.ipynb', (323072, 297) +'render_sources:output/posts/coming-back.ipynb', (1463808, 252) 'render_tags:output/categories/zen.html', (3511808, 4872) 'render_pages:output/posts/48-themes-for-your-ipython-notebook.html', (13491712, 14808) -'render_sources:output/stories/about-me.txt', (1596416, 241) -'render_sources:output/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (194048, 299) +'render_sources:output/stories/about-me.txt', (1596416, 247) +'render_sources:output/posts/a-new-nikolas-theme-for-my-site-zen.ipynb', (194048, 301) 'render_taxonomies:output/categories/jupyter.xml', (20674048, 5036) 'render_tags:output/es/categories/family.xml', (61952, 1041) 'render_galleries:output/galleries/bokehmagic/sin3.png', (197632, 278) @@ -996,8 +996,8 @@ 'render_sources:output/es/posts/48-themes-for-your-ipython-notebook.ipynb', (2085888, 302) 'render_taxonomies:output/categories/linux.xml', (21294080, 2563) 'render_archive:output/es/2012/06/index.html', (2996736, 2575) -'render_taxonomies:output/index-5.html', (21626880, 10382) -'render_sources:output/es/posts/nikola-nbconvert.txt', (1185792, 262) +'render_taxonomies:output/index-5.html', (21643776, 10589) +'render_sources:output/es/posts/nikola-nbconvert.txt', (1185792, 449) 'render_archive:output/es/2012/09/index.html', (4502016, 2575) 'render_taxonomies:output/es/categories/threads.xml', (5326336, 789) 'render_taxonomies:output/categories/opensource.html', (20036608, 6025) @@ -1015,7 +1015,7 @@ 'render_posts:cache/posts/facundo.html', (883712, 346) 'render_pages:output/es/posts/we-are-above-1000-stars.html', (19591168, 9831) 'render_taxonomies:output/es/categories/videos.html', (15861760, 5117) -'copy_files:output/portfolio/damian.jpg', (2061312, 257) +'copy_files:output/portfolio/damian.jpg', (2061312, 263) 'render_pages:output/posts/hide-the-input-cells-from-your-ipython-slides.html', (17075200, 14876) 'render_indexes:output/es/index-1.html', (3797504, 14444) 'copy_assets:output/assets/js/toggle.js', (1214976, 285) @@ -1030,17 +1030,17 @@ 'render_posts:cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html.es', (213504, 695) 'render_taxonomies:output/es/categories/jupyterlab.html', (19900928, 5724) 'render_taxonomies:output/es/2014/05/index.html', (15352320, 4527) -'render_galleries:output/es/galleries/zenmode/index.html', (19270656, 14462) +'render_galleries:output/es/galleries/zenmode/index.html', (19270656, 14463) 'render_pages:output/es/posts/viper-is-now-using-ipythonnbconvert.html', (13366784, 14806) 'render_galleries:output/es/galleries/deploy/index.html', (17640448, 14162) -'render_galleries:output/galleries/Facu_RN/Facu1.png', (1464320, 270) -'render_pages:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (17713152, 15004) +'render_galleries:output/galleries/Facu_RN/Facu1.png', (1464320, 276) +'render_pages:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html', (17713152, 15003) 'render_tags:output/categories/extension.html', (3844096, 7800) -'render_taxonomies:output/es/index-5.html', (21489152, 10382) +'render_taxonomies:output/es/index-5.html', (21879296, 10589) 'render_taxonomies:output/categories/trading.xml', (8616448, 1756) 'render_taxonomies:output/es/categories/reveal.xml', (21334016, 8908) 'render_taxonomies:output/categories/ipython.html', (19915264, 28567) -'render_sources:output/posts/scipycon-argentina-2013.ipynb', (1016320, 271) +'render_sources:output/posts/scipycon-argentina-2013.ipynb', (1016320, 276) 'render_galleries:output/es/galleries/loadwrite', (2384896, 145) 'render_pages:output/posts/viper.html', (17214464, 14588) 'render_posts:cache/posts/hello-world-again.html.es', (155648, 760) @@ -1051,28 +1051,28 @@ 'copy_assets:output/assets/xml/atom.xsl', (12945920, 1108) 'render_galleries:output/galleries/.ipynb_checkpoints/rss.xml', (9092096, 4439) 'render_tags:output/categories/git.html', (2707456, 6862) -'render_sources:output/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2063872, 316) +'render_sources:output/posts/a-simple-minimap-for-your-nbconverted-ipynb.ipynb', (2063872, 317) 'render_tags:output/es/categories/twitter.xml', (19456, 896) 'render_archive:output/2012/index.html', (2698752, 2560) 'render_pages:output/es/posts/trading-logbook-update-3.html', (19646464, 9837) 'render_tags:output/categories/css.html', (4443648, 4327) -'render_taxonomies:output/es/categories/python.html', (21297664, 35974) +'render_taxonomies:output/es/categories/python.html', (22414848, 37295) 'render_taxonomies:output/categories/twitter.html', (15958528, 5390) 'render_taxonomies:output/es/categories/family.xml', (6445568, 1059) 'render_pages:output/es/posts/rise-meets-jupyterlab.html', (19073536, 9822) 'render_tags:output/es/categories/win.xml', (3831808, 636) -'copy_files:output/portfolio/custom.css', (569344, 255) +'copy_files:output/portfolio/custom.css', (569344, 261) 'render_posts:cache/posts/trading-logbook-update-3.html', (8721920, 409) 'render_posts:cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.html.es', (1532416, 754) 'render_taxonomies:output/es/categories/daniela.xml', (7462912, 506) 'render_sources:output/es/posts/viper-is-now-using-ipythonnbconvert.ipynb', (1142784, 301) 'render_archive:output/2012/11/index.html', (3454976, 2575) -'render_galleries:output/galleries/loadwrite/rss.xml', (15147520, 14844) +'render_galleries:output/galleries/loadwrite/rss.xml', (15147520, 14841) 'render_taxonomies:output/categories/life.html', (14356480, 5547) 'render_posts:cache/posts/slider-for-nbconvert.html', (2084864, 385) 'render_tags:output/categories/gh-pages.xml', (1250304, 2529) -'render_pages:output/es/posts/beginning.html', (17427968, 14973) -'render_taxonomies:output/index.html', (21603840, 17062) +'render_pages:output/es/posts/beginning.html', (17427968, 15245) +'render_taxonomies:output/index.html', (21603840, 17275) 'render_taxonomies:output/es/categories/rise.html', (21258752, 8254) 'copy_assets:output/assets/js/baguetteBox.min.js', (10212864, 789) 'render_galleries:output/galleries/bokehmagic/themes.thumbnail.png', (907264, 284) @@ -1085,7 +1085,7 @@ 'render_galleries:output/galleries/spellchecker/rss.xml', (18158080, 14502) 'render_pages:output/posts/using-a-local-revealjs-library-with-your-ipython-slides.html', (16651776, 14947) 'render_tags:output/es/categories/zen.html', (4769792, 4872) -'render_sources:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (14029312, 344) +'render_sources:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb', (14029312, 343) 'render_taxonomies:output/es/categories/conda.html', (21283328, 7440) 'render_tags:output/es/categories/rise.html', (4703744, 3922) 'render_archive:output/2014/05/index.html', (4028928, 2575) @@ -1098,15 +1098,15 @@ 'render_taxonomies:output/es/categories/local.html', (13016576, 5418) 'render_tags:output/es/categories/spellcheck.xml', (280576, 882) 'render_taxonomies:output/es/2017/12/index.html', (18921472, 3618) -'render_taxonomies:output/es/categories/format.xml', (6801408, 987) +'render_taxonomies:output/es/categories/format.xml', (6801408, 986) 'render_archive:output/es/2013/09/index.html', (4652032, 2575) 'render_taxonomies:output/es/categories/pinned.xml', (6669312, 531) -'render_galleries:output/galleries/zenmode/pic2.thumbnail.png', (2147328, 270) +'render_galleries:output/galleries/zenmode/pic2.thumbnail.png', (2147328, 276) 'render_taxonomies:output/es/categories/tutorials.html', (19102720, 5193) 'render_tags:output/categories/spellcheck.html', (4839424, 3803) 'render_taxonomies:output/categories/nbconvert.html', (18211840, 14053) 'render_tags:output/es/categories/git.html', (4253696, 6862) -'render_taxonomies:output/categories/mipyex.xml', (6107136, 3352) +'render_taxonomies:output/categories/mipyex.xml', (6107136, 3351) 'render_taxonomies:output/2013/12/index.html', (19159040, 8258) 'render_taxonomies:output/es/categories/talks.xml', (5101568, 1192) 'render_tags:output/categories/theme.xml', (1427456, 1422) @@ -1125,16 +1125,16 @@ 'render_posts:cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html.es', (841216, 736) 'render_tags:output/es/categories/magic.xml', (1384448, 821) 'render_taxonomies:output/es/2017/06/index.html', (16703488, 5225) -'render_galleries:output/galleries/zenmode/pic1.png', (2085376, 268) -'render_galleries:output/galleries/trades/index.html', (17844224, 14426) +'render_galleries:output/galleries/zenmode/pic1.png', (2085376, 274) +'render_galleries:output/galleries/trades/index.html', (17844224, 14427) 'generate_rss', (834560, 56) 'render_archive:output/es/2012/index.html', (4026368, 2560) 'copy_assets:output/assets/js/flowr.js', (10707456, 752) 'render_tags:output/categories/config.html', (4694528, 6003) 'render_tags:output/es/categories/threads.xml', (1014272, 784) 'render_galleries:output/es/galleries/twitter', (2386432, 145) -'render_taxonomies:output/es/categories/workflow.html', (14265856, 9166) -'render_galleries:output/galleries/Facu_RN/Facu4.png', (1595904, 270) +'render_taxonomies:output/es/categories/workflow.html', (14265856, 9165) +'render_galleries:output/galleries/Facu_RN/Facu4.png', (1595904, 275) 'render_tags:output/es/categories/zen.xml', (96768, 1951) 'render_tags:output/categories/trading.xml', (1619456, 1318) 'render_taxonomies:output/es/2013/04/index.html', (13466624, 4574) @@ -1143,7 +1143,7 @@ 'render_posts:cache/posts/improving-viper-slideshows-styling.html.es', (94208, 585) 'render_taxonomies:output/2012/10/index.html', (13592576, 4466) 'render_taxonomies:output/categories/trading.html', (19668480, 6244) -'render_sources:output/es/posts/rise-meets-jupyterlab.ipynb', (8233472, 272) +'render_sources:output/es/posts/rise-meets-jupyterlab.ipynb', (8233472, 273) 'render_pages:output/es/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html', (18806272, 14991) 'render_pages:output/es/posts/under-the-sea-en-la-plata.html', (19750400, 14737) 'render_posts:cache/posts/slider-for-nbconvert.html.es', (1796608, 385) @@ -1156,7 +1156,7 @@ 'render_taxonomies:output/2014/05/index.html', (13006336, 4527) 'render_posts:cache/posts/how-to-pin-the-conda.html.es', (2390016, 397) 'render_tags:output/categories/win.html', (4600320, 2594) -'render_sources:output/es/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (757760, 313) +'render_sources:output/es/posts/one-line-deployment-of-your-site-to-gh-pages.ipynb', (757760, 319) 'copy_assets:output/assets/fonts/fontawesome-webfont.svg', (751104, 319) 'render_pages:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html', (19357696, 7651) 'render_posts:cache/posts/ipython-plugin-for-nikola-updated.html.es', (43520, 589) @@ -1172,12 +1172,12 @@ 'render_tags:output/es/categories/facundo.xml', (861184, 1041) 'render_posts:cache/posts/coming-back.html.es', (599040, 370) 'render_posts:cache/posts/we-are-above-1000-stars.html.es', (8946688, 405) -'render_galleries:output/es/galleries/trades/index.html', (19490816, 14426) +'render_galleries:output/es/galleries/trades/index.html', (19490816, 14427) 'copy_assets:output/assets/fonts/SHIcXhdd5RknatSgOzyEkA.woff', (1978368, 326) 'render_tags:output/categories/facu.xml', (2166784, 501) 'render_posts:cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html.es', (860160, 745) 'render_pages:output/es/posts/a-simple-minimap-for-your-nbconverted-ipynb.html', (18768384, 14863) -'render_galleries:output/galleries/spellchecker/1.png', (1900544, 277) +'render_galleries:output/galleries/spellchecker/1.png', (1900544, 278) 'render_taxonomies:output/es/categories/flood.html', (18962432, 5208) 'render_tags:output/categories/first_post.xml', (44544, 644) 'render_archive:output/2016/06/index.html', (4607488, 2575) @@ -1227,23 +1227,86 @@ 'render_taxonomies:output/es/2018/08/index.html', (21240832, 2603) 'render_sources:output/es/posts/rise-541-is-out.ipynb', (21248000, 261) 'render_posts:cache/posts/rise-541-is-out.html.es', (21297152, 382) -'render_taxonomies:output/es/categories/shodan.html', (21374976, 2939) -'render_taxonomies:output/es/categories/cordobaaikikai.xml', (21378048, 557) +'render_taxonomies:output/es/categories/shodan.html', (21837312, 3449) +'render_taxonomies:output/es/categories/cordobaaikikai.xml', (21901824, 1067) 'render_pages:output/posts/my-aikido-shodan-test.html', (21379072, 5512) 'render_posts:cache/posts/my-aikido-shodan-test.html', (21384704, 400) -'render_taxonomies:output/es/categories/cordobaaikikai.html', (21419008, 2939) -'render_taxonomies:output/categories/asaikido.html', (21422080, 2939) -'render_taxonomies:output/categories/asaikido.xml', (21425152, 557) -'render_taxonomies:output/categories/shodan.html', (21426176, 2939) -'render_taxonomies:output/2018/09/index.html', (21500928, 2633) -'render_taxonomies:output/es/categories/shodan.xml', (21504000, 557) -'render_taxonomies:output/categories/cordobaaikikai.xml', (21505024, 557) -'render_sources:output/es/posts/my-aikido-shodan-test.ipynb', (21506048, 273) -'render_taxonomies:output/es/2018/09/index.html', (21506560, 2633) -'render_taxonomies:output/es/categories/asaikido.html', (21585408, 2939) -'render_taxonomies:output/categories/cordobaaikikai.html', (21588480, 2939) +'render_taxonomies:output/es/categories/cordobaaikikai.html', (21875200, 3449) +'render_taxonomies:output/categories/asaikido.html', (21655040, 3152) +'render_taxonomies:output/categories/asaikido.xml', (21425152, 770) +'render_taxonomies:output/categories/shodan.html', (21753344, 3152) +'render_taxonomies:output/2018/09/index.html', (21500928, 2846) +'render_taxonomies:output/es/categories/shodan.xml', (21903360, 1067) +'render_taxonomies:output/categories/cordobaaikikai.xml', (21505024, 770) +'render_sources:output/es/posts/my-aikido-shodan-test.ipynb', (21506048, 483) +'render_taxonomies:output/es/2018/09/index.html', (21904896, 3143) +'render_taxonomies:output/es/categories/asaikido.html', (21701632, 3449) +'render_taxonomies:output/categories/cordobaaikikai.html', (21833216, 3152) 'render_sources:output/posts/my-aikido-shodan-test.ipynb', (21591552, 273) -'render_posts:cache/posts/my-aikido-shodan-test.html.es', (21597696, 400) -'render_pages:output/es/posts/my-aikido-shodan-test.html', (21621248, 5512) -'render_taxonomies:output/es/categories/asaikido.xml', (21637632, 557) -'render_taxonomies:output/categories/shodan.xml', (21638656, 557) +'render_posts:cache/posts/my-aikido-shodan-test.html.es', (21934080, 544) +'render_pages:output/es/posts/my-aikido-shodan-test.html', (21908480, 6022) +'render_taxonomies:output/es/categories/asaikido.xml', (21914624, 1067) +'render_taxonomies:output/categories/shodan.xml', (21638656, 770) +'render_sources:output/es/posts/mi-examen-de-aikido-para-1er-dan.ipynb', (21639680, 279) +'render_sources:output/posts/mi-examen-de-aikido-para-1er-dan.ipynb', (21643264, 279) +'render_posts:cache/posts/my-aikido-shodan-test.es.html.es', (21836800, 409) +'render_posts:cache/posts/my-aikido-shodan-test.es.html', (21936640, 543) +'render_pages:output/es/posts/mi-examen-de-aikido-para-1er-dan.html', (21890560, 5527) +'render_pages:output/posts/mi-examen-de-aikido-para-1er-dan.html', (21896192, 5527) +'render_posts:cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.es.html', (21935104, 645) +'render_posts:cache/posts/slider-for-nbconvert.es.html', (21936128, 391) +'render_posts:cache/posts/rise-500-is-out.es.html', (21937664, 381) +'render_posts:cache/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.es.html', (21938176, 558) +'render_posts:cache/posts/a-new-nikolas-theme-for-my-site-zen.es.html', (21939200, 604) +'render_posts:cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.es.html', (21940224, 695) +'render_posts:cache/posts/48-themes-for-your-ipython-notebook.es.html', (21941248, 605) +'render_posts:cache/posts/make-your-slides-with-ipython.es.html', (21942272, 575) +'render_posts:cache/posts/improving-viper-slideshows-styling.es.html', (22167552, 597) +'render_posts:cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.es.html', (21943808, 685) +'render_posts:cache/posts/we-are-above-1000-stars.es.html', (21944832, 406) +'render_posts:cache/posts/trading-logbook-update-22-nov-2013.es.html', (21945344, 600) +'render_posts:cache/posts/my-ipython-powered-semi-automatic-git-workflow.es.html', (21946368, 661) +'render_posts:cache/posts/scipycon-argentina-2013.es.html', (21947392, 544) +'render_posts:cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.es.html', (21948416, 744) +'render_posts:cache/posts/live-trading-logbook.es.html', (21949440, 530) +'render_posts:cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.es.html', (21950464, 505) +'render_posts:cache/posts/different-ways-to-lead-an-open-source-project.es.html', (21950976, 654) +'render_posts:cache/posts/rise-510-is-out.es.html', (21952000, 382) +'render_posts:cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.es.html', (21952512, 740) +'render_posts:cache/posts/zen-themes-updated.es.html', (21953536, 521) +'render_posts:cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.es.html', (21954560, 705) +'render_posts:cache/posts/hide-the-input-cells-from-your-ipython-slides.es.html', (21955584, 654) +'render_posts:cache/posts/coming-back.es.html', (21956608, 369) +'render_posts:cache/posts/rise-520-is-out.es.html', (21957120, 381) +'render_posts:cache/posts/zen-mode-extension-for-the-ipython-notebook.es.html', (21957632, 645) +'render_posts:cache/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.es.html', (21958656, 685) +'render_posts:cache/posts/reveal_converter-mini-tutorial.es.html', (21959680, 580) +'render_posts:cache/posts/how-to-pin-conda.es.html', (21960704, 385) +'render_posts:cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.es.html', (21961216, 675) +'render_posts:cache/posts/pyconar-2013.es.html', (21962240, 490) +'render_posts:cache/posts/rise-400b1-is-available-please-test-it.es.html', (21962752, 451) +'render_posts:cache/posts/viper-is-now-using-ipythonnbconvert.es.html', (21963264, 604) +'render_posts:cache/posts/ipython-plugin-for-nikola-updated.es.html', (21964288, 595) +'render_posts:cache/posts/rise-meets-jupyterlab.es.html', (21965312, 400) +'render_posts:cache/posts/rise-530-is-out.es.html', (21965824, 382) +'render_posts:cache/posts/trading-logbook-update-3.es.html', (21966336, 409) +'render_posts:cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.es.html', (21966848, 755) +'render_posts:cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.es.html', (21967872, 736) +'render_posts:cache/posts/teasers-with-the-ipython-notebook-plugin.es.html', (21968896, 630) +'render_posts:cache/posts/nikolas-zen-theme-finally-released.es.html', (21969920, 600) +'render_posts:cache/posts/mimic-the-ipython-notebook-cell-execution.es.html', (21970944, 635) +'render_posts:cache/posts/one-line-deployment-of-your-site-to-gh-pages.es.html', (21971968, 650) +'render_posts:cache/posts/facundo.es.html', (21972992, 352) +'render_posts:cache/posts/blogging-with-nikola-and-ipython.es.html', (21973504, 591) +'render_posts:cache/posts/customizing-your-ipython-slides.es.html', (21974528, 585) +'render_posts:cache/posts/dont-write-scripts-just-write-ipyscripts.es.html', (21975552, 630) +'render_posts:cache/posts/rise-541-is-out.es.html', (21976576, 382) +'render_posts:cache/posts/under-the-sea-en-la-plata.es.html', (21977088, 555) +'render_posts:cache/posts/powered-by-nikola.es.html', (22462464, 771) +'render_posts:cache/posts/viper.es.html', (22168576, 662) +'render_posts:cache/posts/hello-world-again.es.html', (22284288, 772) +'render_posts:cache/posts/nikola-nbconvert.es.html', (22461440, 608) +'render_posts:cache/stories/about-me.es.html', (21980160, 473) +'render_posts:cache/posts/beginning.es.html', (22490624, 696) +'render_posts:cache/posts/a-simple-overview-of-viper.es.html', (21981184, 853) +'render_posts:cache/posts/paraguay.es.html', (22463488, 689) diff --git a/__pycache__/conf.cpython-36.pyc b/__pycache__/conf.cpython-36.pyc index e6f614ae..8b4243f7 100644 Binary files a/__pycache__/conf.cpython-36.pyc and b/__pycache__/conf.cpython-36.pyc differ diff --git a/cache/posts/48-themes-for-your-ipython-notebook.es.html b/cache/posts/48-themes-for-your-ipython-notebook.es.html new file mode 100644 index 00000000..b9020b9b --- /dev/null +++ b/cache/posts/48-themes-for-your-ipython-notebook.es.html @@ -0,0 +1,468 @@ + +
+
+
+
+

OK, a short post to give you some material to play with over the weekend ;-).

+

Today, I woke up early and whereas I was drinking a mate (a native drink here in Argentina) for breakfast, I remember a tweet from Nikhil Sonnad where I was mentioned:

+ + +

+

Essentially, he made available 48 IPython notebook themes based in the base16 color scheme generator. Thanks Nikhil for your work!!!

+

Well, I want to try them all and quickly, so I wrote some little code to do it:

+

First, some imports...

+ +
+
+
+
+
+
In [1]:
+
+
+
import os
+import subprocess
+import urllib
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

Second, make a list with all the theme names...

+ +
+
+
+
+
+
In [2]:
+
+
+
theme_names = ['3024-dark',
+               '3024-light',
+               'atelierdune-dark',
+               'atelierdune-light',
+               'atelierforest-dark',
+               'atelierforest-light',
+               'atelierheath-dark',
+               'atelierheath-light',
+               'atelierlakeside-dark',
+               'atelierlakeside-light',
+               'atelierseaside-dark',
+               'atelierseaside-light',
+               'bespin-dark',
+               'bespin-light',
+               'chalk-dark',
+               'chalk-light',
+               'default-dark',
+               'default-light',
+               'eighties-dark',
+               'eighties-light',
+               'grayscale-dark',
+               'grayscale-light',
+               'greenscreen-dark',
+               'greenscreen-light',
+               'isotope-dark',
+               'isotope-light',
+               'londontube-dark',
+               'londontube-light',
+               'marrakesh-dark',
+               'marrakesh-light',
+               'mocha-dark',
+               'mocha-light',
+               'monokai-dark',
+               'monokai-light',
+               'ocean-dark',
+               'ocean-light',
+               'paraiso-dark',
+               'paraiso-light',
+               'railscasts-dark',
+               'railscasts-light',
+               'shapeshifter-dark',
+               'shapeshifter-light',
+               'solarized-dark',
+               'solarized-light',
+               'tomorrow-dark',
+               'tomorrow-light',
+               'twilight-dark',
+               'twilight-light']
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

The themes are css files, so we can create a new profile for each theme and add the css content to the custom.css file inside each profile. +To do it, I use some little magic tricks from IPython...

+ +
+
+
+
+
+
In [3]:
+
+
+
for i in theme_names:
+    !ipython profile create $i
+    profile_dir = !ipython locate profile $i
+    url = "https://raw.githubusercontent.com/nsonnad/base16-ipython-notebook/master/base16-" + i + ".css"
+    tgt = os.path.join(profile_dir[0], 'static', 'custom', "custom.css")
+    urllib.urlretrieve (url, tgt)
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_3024-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_3024-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_3024-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_3024-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_3024-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_3024-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierdune-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierdune-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierdune-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierdune-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierdune-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierdune-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierforest-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierforest-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierforest-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierforest-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierforest-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierforest-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierheath-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierheath-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierheath-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierheath-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierheath-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierheath-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierlakeside-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierlakeside-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierlakeside-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierlakeside-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierlakeside-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierlakeside-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierseaside-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierseaside-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierseaside-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierseaside-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierseaside-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_atelierseaside-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_bespin-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_bespin-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_bespin-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_bespin-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_bespin-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_bespin-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_chalk-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_chalk-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_chalk-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_chalk-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_chalk-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_chalk-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_default-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_default-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_default-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_default-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_default-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_default-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_eighties-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_eighties-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_eighties-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_eighties-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_eighties-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_eighties-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_grayscale-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_grayscale-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_grayscale-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_grayscale-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_grayscale-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_grayscale-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_greenscreen-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_greenscreen-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_greenscreen-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_greenscreen-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_greenscreen-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_greenscreen-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_isotope-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_isotope-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_isotope-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_isotope-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_isotope-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_isotope-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_londontube-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_londontube-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_londontube-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_londontube-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_londontube-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_londontube-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_marrakesh-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_marrakesh-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_marrakesh-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_marrakesh-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_marrakesh-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_marrakesh-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_mocha-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_mocha-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_mocha-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_mocha-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_mocha-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_mocha-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_monokai-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_monokai-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_monokai-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_monokai-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_monokai-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_monokai-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_ocean-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_ocean-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_ocean-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_ocean-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_ocean-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_ocean-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_paraiso-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_paraiso-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_paraiso-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_paraiso-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_paraiso-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_paraiso-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_railscasts-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_railscasts-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_railscasts-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_railscasts-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_railscasts-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_railscasts-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_shapeshifter-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_shapeshifter-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_shapeshifter-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_shapeshifter-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_shapeshifter-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_shapeshifter-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_solarized-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_solarized-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_solarized-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_solarized-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_solarized-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_solarized-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_tomorrow-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_tomorrow-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_tomorrow-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_tomorrow-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_tomorrow-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_tomorrow-light/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_twilight-dark/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_twilight-dark/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_twilight-dark/ipython_nbconvert_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_twilight-light/ipython_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_twilight-light/ipython_notebook_config.py'
+[ProfileCreate] Generating default config file: u'/home/damian/.ipython/profile_twilight-light/ipython_nbconvert_config.py'
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Now, I want to try it... quickly... so I launch a new IPython server for each profile in specific ports. I also pass the --no-browser option to avoid opening 48 tabs in a row (depending of your computing power this can be problematic).

+ +
+
+
+
+
+
In [4]:
+
+
+
for i, name in enumerate(theme_names):
+    port = str(9000 + i) 
+    subprocess.Popen(["ipython", "notebook", "--profile=" + name, "--port=" + port, "--no-browser"])
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

Finally, because I am lazy ;-), I build the urls to see this same notebook with each different theme (don't forget to use the incognito mode of your browser to avoid css caching and at least IPython 2.0).

+ +
+
+
+
+
+
In [5]:
+
+
+
base_url = "http://127.0.0.1:"
+notebook = "/notebooks/48-themes-for-your-ipython-notebook.ipynb"
+
+for i, name in enumerate(theme_names):
+    port = str(9000 + i) 
+    url = base_url + port + notebook
+    print url, name
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
http://127.0.0.1:9000/notebooks/48-themes-for-your-ipython-notebook.ipynb 3024-dark
+http://127.0.0.1:9001/notebooks/48-themes-for-your-ipython-notebook.ipynb 3024-light
+http://127.0.0.1:9002/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierdune-dark
+http://127.0.0.1:9003/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierdune-light
+http://127.0.0.1:9004/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierforest-dark
+http://127.0.0.1:9005/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierforest-light
+http://127.0.0.1:9006/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierheath-dark
+http://127.0.0.1:9007/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierheath-light
+http://127.0.0.1:9008/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierlakeside-dark
+http://127.0.0.1:9009/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierlakeside-light
+http://127.0.0.1:9010/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierseaside-dark
+http://127.0.0.1:9011/notebooks/48-themes-for-your-ipython-notebook.ipynb atelierseaside-light
+http://127.0.0.1:9012/notebooks/48-themes-for-your-ipython-notebook.ipynb bespin-dark
+http://127.0.0.1:9013/notebooks/48-themes-for-your-ipython-notebook.ipynb bespin-light
+http://127.0.0.1:9014/notebooks/48-themes-for-your-ipython-notebook.ipynb chalk-dark
+http://127.0.0.1:9015/notebooks/48-themes-for-your-ipython-notebook.ipynb chalk-light
+http://127.0.0.1:9016/notebooks/48-themes-for-your-ipython-notebook.ipynb default-dark
+http://127.0.0.1:9017/notebooks/48-themes-for-your-ipython-notebook.ipynb default-light
+http://127.0.0.1:9018/notebooks/48-themes-for-your-ipython-notebook.ipynb eighties-dark
+http://127.0.0.1:9019/notebooks/48-themes-for-your-ipython-notebook.ipynb eighties-light
+http://127.0.0.1:9020/notebooks/48-themes-for-your-ipython-notebook.ipynb grayscale-dark
+http://127.0.0.1:9021/notebooks/48-themes-for-your-ipython-notebook.ipynb grayscale-light
+http://127.0.0.1:9022/notebooks/48-themes-for-your-ipython-notebook.ipynb greenscreen-dark
+http://127.0.0.1:9023/notebooks/48-themes-for-your-ipython-notebook.ipynb greenscreen-light
+http://127.0.0.1:9024/notebooks/48-themes-for-your-ipython-notebook.ipynb isotope-dark
+http://127.0.0.1:9025/notebooks/48-themes-for-your-ipython-notebook.ipynb isotope-light
+http://127.0.0.1:9026/notebooks/48-themes-for-your-ipython-notebook.ipynb londontube-dark
+http://127.0.0.1:9027/notebooks/48-themes-for-your-ipython-notebook.ipynb londontube-light
+http://127.0.0.1:9028/notebooks/48-themes-for-your-ipython-notebook.ipynb marrakesh-dark
+http://127.0.0.1:9029/notebooks/48-themes-for-your-ipython-notebook.ipynb marrakesh-light
+http://127.0.0.1:9030/notebooks/48-themes-for-your-ipython-notebook.ipynb mocha-dark
+http://127.0.0.1:9031/notebooks/48-themes-for-your-ipython-notebook.ipynb mocha-light
+http://127.0.0.1:9032/notebooks/48-themes-for-your-ipython-notebook.ipynb monokai-dark
+http://127.0.0.1:9033/notebooks/48-themes-for-your-ipython-notebook.ipynb monokai-light
+http://127.0.0.1:9034/notebooks/48-themes-for-your-ipython-notebook.ipynb ocean-dark
+http://127.0.0.1:9035/notebooks/48-themes-for-your-ipython-notebook.ipynb ocean-light
+http://127.0.0.1:9036/notebooks/48-themes-for-your-ipython-notebook.ipynb paraiso-dark
+http://127.0.0.1:9037/notebooks/48-themes-for-your-ipython-notebook.ipynb paraiso-light
+http://127.0.0.1:9038/notebooks/48-themes-for-your-ipython-notebook.ipynb railscasts-dark
+http://127.0.0.1:9039/notebooks/48-themes-for-your-ipython-notebook.ipynb railscasts-light
+http://127.0.0.1:9040/notebooks/48-themes-for-your-ipython-notebook.ipynb shapeshifter-dark
+http://127.0.0.1:9041/notebooks/48-themes-for-your-ipython-notebook.ipynb shapeshifter-light
+http://127.0.0.1:9042/notebooks/48-themes-for-your-ipython-notebook.ipynb solarized-dark
+http://127.0.0.1:9043/notebooks/48-themes-for-your-ipython-notebook.ipynb solarized-light
+http://127.0.0.1:9044/notebooks/48-themes-for-your-ipython-notebook.ipynb tomorrow-dark
+http://127.0.0.1:9045/notebooks/48-themes-for-your-ipython-notebook.ipynb tomorrow-light
+http://127.0.0.1:9046/notebooks/48-themes-for-your-ipython-notebook.ipynb twilight-dark
+http://127.0.0.1:9047/notebooks/48-themes-for-your-ipython-notebook.ipynb twilight-light
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Easy and quick, don't you think?

+

OK, a lot of IPython servers opened, let's kill them all!!! I feel like George R. R. Martin ;-).

+ +
+
+
+
+
+
In [ ]:
+
+
+
!killall -9 ipython
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

Obviously, this command also killed the current notebook (remember, this post is in fact an IPython notebook, and you can get it from the source link at the top of the post)... but I am right with that... this is the end of this post.

+

Final note: I did not like any complete theme, but I really like some part from several themes, so it worths to see them to take each nice part and make my own theme in the future.

+

Good weekend!

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/48-themes-for-your-ipython-notebook.es.html.dep b/cache/posts/48-themes-for-your-ipython-notebook.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.es.html b/cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.es.html new file mode 100644 index 00000000..f28ec323 --- /dev/null +++ b/cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.es.html @@ -0,0 +1,27 @@ + +
+
+
+
+

A lot of users of the slides option in IPython.nbconvert asked me about how to get a pdf from the generated Reveal.js-based slideshow.

+

To make the story short, here you have the detailed steps: +

+ +

Do you want to get this little hack integrated to IPython? @fperez, the IPython BDFL does:

+

+

So, time to write some code and do a PR... in the meantime use this hack ;-)

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.es.html.dep b/cache/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/a-new-nikolas-theme-for-my-site-zen.es.html b/cache/posts/a-new-nikolas-theme-for-my-site-zen.es.html new file mode 100644 index 00000000..8f322a08 --- /dev/null +++ b/cache/posts/a-new-nikolas-theme-for-my-site-zen.es.html @@ -0,0 +1,20 @@ + +
+
+
+
+

Some days ago, Aru Sahni wrote to Nikola's forum and posted a link to his site... I really like the theme he was using so I though to take it as a starting point to develop my own theme. +

+

I had to re-wrote some things to accommodate the templates to the last Nikola v6.0.0 release (in fact, I usually use master from Github, but I recommend you to use the released code for production), and to make the theme more generic one and easy to re-use by others.

+

I got a clean and (I think) easy to read theme, with awesome icons (Font-awesome's if you didn't recognize yet), supporting both desktops/laptops and mobile devices and... I like it very much ;-)

+

It was a great exercise to learn more about html, js, css and less (a very interesting approach to deal with css).

+

I will publish the generic zen theme and the zen-ipython theme (which I'm using and you are seeing... right now) at the Nikola theme repository in a few days, after some more testing and customization.

+

Thanks again Aru Sahni, you are in some way the trigger for this theme... and very fun hours I experienced developing and learning by doing.

+

Damián.

+

PS: If you have any to say about the overall design, ideas for improvements, things you hate about this theme, just let me know in the comments. Thanks.

+ +
+
+
+ + diff --git a/cache/posts/a-new-nikolas-theme-for-my-site-zen.es.html.dep b/cache/posts/a-new-nikolas-theme-for-my-site-zen.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.es.html b/cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.es.html new file mode 100644 index 00000000..55ceabb2 --- /dev/null +++ b/cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.es.html @@ -0,0 +1,190 @@ + +
+
+
+
+

OK, today I will release another IPython js extension: Spellchecker, which obviously do what you are thinking... spell check the content of your IPython notebook cells.

+

And why it is a poor man extension? Because it is a simple workaround to get the spell checker functionality and not a broad solution... but it works, and solve my spelling problems! +

+

The main idea here is to use the spell checker functionality provided by your browser [yes, let to the others the complex things ;-)]. But, as you know, the spell checking functionality is disable inside the IPython notebook... and this is because each cell you actually see is a codemirror instance... and codemirror does not support spell checking by design... in fact, the codemirror text area (editor) is not a common html text area, hence the browser can not actually run the spell checker in this new text area.

+

So, are we prohibited to apply a spell checker functionality over a codemirror instance? In fact, no... there is a way to do it applying something called codemirror layouts and using js spell checker libraries...

+

But, I don't want to do this job yet (because of several causes which I do not describe here now), so I thought workaround and use the IPython js machinery to get a simple, narrow but useful solution.

+

The workaround is simple:

+
    +
  • The spell checker will do its job at the cell level.
  • +
+

+
    +
  • We need a way to get the content of the selected IPython notebook cell:

    +
    24      var input = IPython.notebook.get_selected_cell().get_text()
    +
    +
  • +
  • Put the content in a common html text area, and use the spell checker capabilities from the browser:

    +
    26      var textarea = $('<textarea/>')
    +  27          .attr('rows','15')
    +  28          .attr('cols','80')
    +  29          .attr('name','source')
    +  30          .text(input);
    +
    +
  • +
  • Make the corrections.

    +
  • +
+

+
    +
  • Get back the corrected content into the selected IPython notebook cell.

    +
    60      var corr_input = `$`.trim(`$`(textarea).val()); // note: backticks to avoid mathjax rendering, sorry.
    +  61      console.log(corr_input);
    +  62      IPython.notebook.get_selected_cell().set_text(corr_input);
    +
    +
  • +
+

And that's all... the complete code below:

+ +
+
+
+
+
+
In [1]:
+
+
+
cat -n /media/datos/Desarrollos/mIPyex/custom/spellchecker/main.js
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
     1	/*
+     2	* ----------------------------------------------------------------------------
+     3	* Copyright (c) 2013 - Damián Avila
+     4	*
+     5	* Distributed under the terms of the Modified BSD License.
+     6	*
+     7	* A little extension to spell check the selected cell from the IPython notebook.
+     8	* ----------------------------------------------------------------------------
+     9	*/
+    10	
+    11	function spellCheckerCSS() {
+    12	    var link = document.createElement("link");
+    13	    link.type = "text/css";
+    14	    link.rel = "stylesheet";
+    15	    link.href = require.toUrl("./custom/spellchecker/main.css");
+    16	    document.getElementsByTagName("head")[0].appendChild(link);
+    17	}
+    18	
+    19	function spellChecker(dummy) {
+    20	    console.log(dummy);
+    21	
+    22	    spellCheckerCSS();
+    23	
+    24	    var input = IPython.notebook.get_selected_cell().get_text()
+    25	
+    26	    var textarea = $('<textarea/>')
+    27	        .attr('rows','15')
+    28	        .attr('cols','80')
+    29	        .attr('name','source')
+    30	        .text(input);
+    31	
+    32	    var dialogform = $('<div/>')
+    33	        .append(
+    34	            $('<form/>').append(
+    35	                $('<fieldset/>').append(
+    36	                    $('<label/>')
+    37	                    .attr('for','source')
+    38	                    .text("Now you can edit the cell content and use " +
+    39	                    "the spellchecker support of your browser over it. " +
+    40	                    "In Chromium, just focus in the text area and " +
+    41	                    "select the text you want to spell check. Then you will " +
+    42	                    "be able to use the contextual menu (right click) to get " +
+    43	                    "words suggestion and other configuration options (lang). " +
+    44	                    "Finally press OK to get the corrected cell content into " +
+    45	                    "your selected IPython notebook cell.")
+    46	                    )
+    47	                    .append($('<br/>'))
+    48	                    .append(
+    49	                        textarea
+    50	                    )
+    51	                )
+    52	        );
+    53	
+    54	    IPython.dialog.modal({
+    55	        title: "Edit and spell check your cell content",
+    56	        body: dialogform,
+    57	            buttons: {
+    58	                "OK": { class : "btn-primary",
+    59	                    click: function() {
+    60	                       var corr_input = $.trim($(textarea).val());
+    61	                       console.log(corr_input);
+    62	                       IPython.notebook.get_selected_cell().set_text(corr_input);
+    63	                }},
+    64	                Cancel: {}
+    65	            }
+    66	    });
+    67	
+    68	}
+    69	
+    70	define(function() {
+    71	  return {
+    72	    parameters: function setup(param1) {
+    73	      IPython.toolbar.add_buttons_group([
+    74	        {
+    75	        'label'   : 'Spell check your selected cell content',
+    76	        'icon'    : 'icon-check-sign',
+    77	        'callback': function(){spellChecker(param1)},
+    78	        'id'      : 'start_spellcheck'
+    79	        },
+    80	      ]);
+    81	      var document_keydown = function(event) {
+    82	        if (event.which == 83 && event.altKey) {
+    83	          spellChecker(param1);
+    84	          return false;
+    85	        };
+    86	        return true;
+    87	      };
+    88	      $(document).keydown(document_keydown);
+    89	    }
+    90	  }
+    91	});
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

As you can see at the end of the code... you have not only a button but also a keyboard shortcut to activate the spell checker extension: ALT + S (remember that the same goes for the Tweet me extension, but with ALT + T).

+

Again, the extension lives in this new repo: mIPyex, where I will upload the development versions of my own extensions. When I get them enough stable, I will make a copy of them in the IPython notebook extensions repo where you can get a lot of and useful interesting extensions.

+

OK, I hope you enjoy and use this extension... because the IPython notebook is not only for write code... it is also powered to write other things, such as this blog post, and we have to keep spelling mistakes as low as possible to make the read of our content pleasant...

+

See you...

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.es.html.dep b/cache/posts/a-poor-man-spell-checker-for-the-ipython-notebook.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.es.html b/cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.es.html new file mode 100644 index 00000000..a364e90c --- /dev/null +++ b/cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.es.html @@ -0,0 +1,95 @@ + +
+
+
+
+

Some days ago, I presented a way to mimic the execution of nbconverted IPython notebooks (ipynb). Today, I will show you how to add a simple minimap to these static html documents.

+

But, what is a minimap? Do you know SublimeText or Ninja-IDE? They are IDEs with a thin column to the right (of the main window) which provides an overview of the code we are working on... OK, you don't have an idea what am I talking about? Just go ahead and you will see... +

+

Addendum note: There are some performance issues with Firefox, but in Chromium it is working OK! Simplicity comes with some hidden costs ;-)

+

NOTE: if you are impatient, just go the beginning of this post and press the Minimap link next to the Source link... and surprise!

+

Well, my first thought to develop this feature was to look if anybody had this same idea (a minimap for html-based documents) before, and obviously, there was somebody ;-)

+

Mr. Google pointed me to a blog where I found a nice js-based (working) solution.

+

The implementation was very simple and we used the same strategy from the last blog posts: pass a template in the IPython.nbconvert call from the command line (but please, do not forget that you can also use a config file to pass the template name -and other things - to the IPython.nbconvert infrastructure).

+

OK, but we needed to write the template before passing it, so we did it:

+ +
+
+
+
+
+
In [1]:
+
+
+
!cat /media/datos/Ejemplos/minimap.tpl
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
{%- extends 'html_full.tpl' -%}
+
+{%- block header -%}
+{{ super() }}
+
+<script src="http://dropthebit.com/demos/mini_page_nav/miniPageNav.js"></script>
+
+<style type="text/css">
+body{
+position: static;
+}
+</style>
+
+{%- endblock header -%}
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

We extended the html_full template adding two things to the block header:

+
    +
  • the url of the script which makes all of this happens
  • +
  • a simple css overwrite over body.position attribute to prevent the malfunction of the script.
  • +
+

And as a the final step, we just wrote:

+

ipython nbconvert 3_NumPy.ipynb --to html --template minimap.tpl --post serve

+

in our console, and we saw something like THIS

+

Do not forget!: There are some performance issues with Firefox, but in Chromium it is working OK! Simplicity comes with some hidden costs ;-)

+

Nice, don't you think?

+

We also did the same (with minor modifications) with our Nikola Zen theme (probably you had already tested it because I assume you are impatient!).

+

Now, with this simple feature, you not only can quickly get an idea of the length of your documents (blog post, article, lecture, whatever...) but also they are easier to scroll and navigate!

+

NOTE: If you are thinking "I want this minimap with in my IPython notebooks", you will have to hack the source code of the js library I used because it was designed for simple windows and not for more complex structures such as the notebook itself.

+

Enjoy your minimaps!

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.es.html.dep b/cache/posts/a-simple-minimap-for-your-nbconverted-ipynb.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/a-simple-overview-of-viper.es.html b/cache/posts/a-simple-overview-of-viper.es.html new file mode 100644 index 00000000..6efcb6d6 --- /dev/null +++ b/cache/posts/a-simple-overview-of-viper.es.html @@ -0,0 +1,7 @@ +

La idea de este post es mostrar, a través de un simple video, algunas de las +principales funciones de vIPer.

+

Aquí va:

+ +

La "limpieza" del código esta casi lista, por lo que lo liberaré en los próximos días...

+

Nos vemos pronto.

+

Damián.

diff --git a/cache/posts/a-simple-overview-of-viper.es.html.dep b/cache/posts/a-simple-overview-of-viper.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/beginning.es.html b/cache/posts/beginning.es.html new file mode 100644 index 00000000..f5bb7337 --- /dev/null +++ b/cache/posts/beginning.es.html @@ -0,0 +1,13 @@ +

Durante 5 años, prácticamente todos los dias hábiles, +he viajado desde La Plata hasta C.A.B.A. (ida y vuelta). +He utilizado múltiples medios de locomoción: auto, colectivo, subte, tren... +Muchas horas de transporte público han corrido "bajo el puente". +Como podrán imaginar, durante estos "tiempos" he leído muchos papers, libros y diarios. +He escuchado cientos de canciones. He charlado con varios amigos. +También he dormido (mucho)... Pero no he escrito (en realidad, he escrito algunas cosas, +pero esta actividad ha ocupado niveles de tiempo mínimos comparado con las +actividades anteriormente mencionadas). +Por lo tanto, he decidido que, desde este instante, y hasta que termine mi trabajo en C.A.B.A., +invertiré mis "tiempos" de viaje para escribir algunas "cosas" que luego publicaré en este blog.

+

Así que, ¡nos vemos pronto!

+

Damián.

diff --git a/cache/posts/beginning.es.html.dep b/cache/posts/beginning.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.es.html b/cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.es.html new file mode 100644 index 00000000..ffe24ac1 --- /dev/null +++ b/cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.es.html @@ -0,0 +1,278 @@ + +
+
+
+
+

The idea of this blog post is to show you how you can achieve an efficient bidirectional workflow to write your blog posts using great tools/features derived from IPython and Nikola.

+

Probably, this would be interesting not only for the people using IPython and Nikola to write their blog post, but also to other people because this would be a simple but nice example of how you can integrate this two applications to better suit your needs.

+

OK, first of all, let's go to the folder containing my blog: +

+ +
+
+
+
+
+
+
+ +
damian@damian-S400CA:~$ cd /media/datos/Desarrollos/damian_blog
+
+damian@damian-S400CA:/media/datos/Desarrollos/damian_blog$
+ +
+
+
+
+
+
+
+

Then I activate my virtualenv specifically filled to build my blog:

+ +
+
+
+
+
+
+
+ +
damian@damian-S400CA:/media/datos/Desarrollos/damian_blog$ workon blog
+
+(blog)damian@damian-S400CA:/media/datos/Desarrollos/damian_blog$ 
+ +
+
+
+
+
+
+
+

Now, we are ready to the next step, calling the nikola console:

+ +
+
+
+
+
+
+
+ +
(blog)damian@damian-S400CA:/media/datos/Desarrollos/damian_blog$ nikola console
+Scanning posts......done!
+Python 2.7.4 (default, Apr 19 2013, 18:28:01) 
+Type "copyright", "credits" or "license" for more information.
+
+IPython 1.1.0 -- An enhanced Interactive Python.
+?         -> Introduction and overview of IPython's features.
+%quickref -> Quick reference.
+help      -> Python's own help system.
+object?   -> Details about 'object', use 'object??' for extra details.
+
+
+Nikola v6.1.1 -- IPython Console (conf = configuration, SITE = site engine)
+ +
+
+
+
+
+
+
+

Yes... Nikola offers a feature called nikola console which immediately opens an IPython console (if you have installed IPython, of course) where you can do a lot of things, as I will show you later, but also have direct access to Nikola internals through the conf (configuration) and SITE (site engine) objects. We can explore this objects using the tab completion from the IPython machinery:

+ +
+
+
+
+
+
+
+ +
In [1]: conf.<TAB>
+conf.BLOG_AUTHOR             conf.LICENSE
+conf.BLOG_DESCRIPTION        conf.MATHJAX_CONFIG
+conf.BLOG_EMAIL              conf.NAVIGATION_LINKS
+conf.BLOG_TITLE              conf.PAGES
+conf.BODY_END                conf.POSTS
+conf.COMMENT_SYSTEM_ID       conf.py
+conf.COMPILERS               conf.pyc
+conf.CONTENT_FOOTER          conf.SITE_URL
+conf.CREATE_MONTHLY_ARCHIVE  conf.SOCIAL_BUTTONS_CODE
+conf.DEFAULT_LANG            conf.THEME
+conf.DEPLOY_COMMANDS         conf.time
+conf.GLOBAL_CONTEXT          conf.TRANSLATIONS
+conf.INDEX_TEASERS           conf.unicode_literals
+conf.IPYNB_CONFIG 
+ +
+
+
+
+
+
+
+ +
In [1]: SITE.<TAB>
+SITE.abs_link                    SITE.MESSAGES
+SITE.clean_task_paths            SITE.pages
+SITE.commands                    SITE.path
+SITE.compilers                   SITE.plugin_manager
+SITE.config                      SITE.post_per_file
+SITE.configured                  SITE.posts_per_category
+SITE.current_lang                SITE.posts_per_month
+SITE.default_lang                SITE.posts_per_tag
+SITE.EXTRA_PLUGINS               SITE.posts_per_year
+SITE.file_exists                 SITE.rel_link
+SITE.generic_page_renderer       SITE.render_template
+SITE.generic_post_list_renderer  SITE.scan_posts
+SITE.gen_tasks                   SITE.strict
+SITE.get_compiler                SITE.template_system
+SITE.GLOBAL_CONTEXT              SITE.THEMES
+SITE.global_data                 SITE.timeline
+SITE.inverse_compilers           SITE.translations
+SITE.link 
+ +
+
+
+
+
+
+
+

But, we will probably go back to these objects in another blog post... now, we go again to the Nikola IPython console because we want to create a new post. The easiest way to do it is just calling the proper Nikola command using the ! to pass it from the Nikola IPython console to the shell.

+ +
In [1]: !nikola new_post -f ipynb
+
+
+

But we can do it better ;-) +We can pass arguments to the nikola new_post command such as the title, tags, format (we have already pass the format with -f ipynb), etc. So, let me create some variables for these arguments inside my Nikola IPython console session:

+ +
In [1]: title = "Bidirectional IPython-Nikola workflow to write your blog post"
+
+In [2]: tags_list = ['python', 'IPython', 'nikola', 'blog', 'extension', 'gh-pages', 'git', 'workflow']
+
+In [3]: tags = ', '.join(tags_list)
+
+In [4]: tags
+Out[4]: u'python, IPython, nikola, blog, extension, gh-pages, git, workflow'
+
+
+

Here I have the string title containing the title for the current blog post and a list called tags_list containing the corresponding tags. Later I call the .join method because I will need to pass a string with the tags sepatarated by commas to the nikola new_post command.

+

But, wait a minute... I have Python variables containing the title and the tags for my blog post. How can pass this variables to the shell to use them as arguments of the nikola new_post command???

+

OK, to solve this problem we will use an exciting feature from IPython, just see the following line:

+ +
In [5]: !nikola new_post -f ipynb -t "{title}" --tags="{tags}"
+
+
+

which will create the desired ipynb and the corresponding .meta file containing the title and tags.

+ +
Creating New Post
+-----------------
+
+Title: Bidirectional IPython-Nikola workflow to write your blog post
+Scanning posts......done!
+Your post's metadata is at:  posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.meta
+[2013-10-15T19:21:28Z] NOTICE: new_post: Your post's text is at: posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.ipynb
+
+
+

Que me contusi! (or... do you see the bidirectional nature of this interaction? Nice, don't you think?)

+

Yes, inside IPython, we can use the braces to pass Python variables to the shell... ;-)

+

Do you see the possibilities we have with this little feature?

+

Now, I cd into the post folder of my site and open the IPython notebook with my custom extensions.

+ +
In [6]: cd posts/
+/media/datos/Desarrollos/damian_blog/posts
+
+In [7]: !ipython notebook --profile=myext
+
+
+

In the IPython Dashboard, I will open the new ipynb called bidirectional-ipython-nikola-workflow-to-write-your-blog-post.ipynb and write the content (I am writing right now).

+

Then, when I am done with the blog post, I need to deploy my new content to somewhere to make available to the public...

+

And this is very easy...

+

First, Nikola have a nikola deploy command which you can customize with your conf.py file. You can see it here my configuration:

+ +
+
+
+
+
+
In [8]:
+
+
+
!sed -n 197,208p conf.py
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
# Commands to execute to deploy. Can be anything, for example,
+# you may use rsync:
+# "rsync -rav output/* joe@my.site:/srv/www/site"
+# And then do a backup, or ping pingomatic.
+# To do manual deployment, set it to []
+DEPLOY_COMMANDS = ["git add .",
+                   "git commit -am 'Update'",
+                   "git push origin master",
+                   "git subtree split --prefix output -b gh-pages",
+                   "git push -f origin gh-pages:gh-pages",
+                   "git branch -D gh-pages"]
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

The instructions are very easy to understand, if you need more details just read this post I wrote some weeks ago.

+

I am essentially pushing the content to master, creating a split and deploy it later to gh-pages.

+

OK, but because I am lazy ;-), some weeks ago I wrote an IPython javascript extension which let me execute this nikola deploy command from a button in the IPython notebook toolbar. Essentially something like this (don't worry, I will release the extension soon):

+ +
function nikolaDeploy(path, clean) {
+  IPython.notebook.kernel.execute('cd ' + path);
+  if (clean=="True") {
+    IPython.notebook.kernel.execute('!nikola clean');
+  }else{
+  //do nothing
+  }
+  IPython.notebook.kernel.execute('!nikola build');
+  IPython.notebook.kernel.execute('!nikola deploy');
+  messager();
+}
+
+
+

As you can see, I call nikola clean to clean my site, the I built it with nikola build, and deploy it with my customized nikola deploy... and all these actions with just a click!

+

And now you have the complete workflow! A very simple one, because you can make a lot of modifications to improve it. However, this workflow show you how you can integrate two exciting projects, communicate one with the other and viceversa, and get beautiful results.

+

Hope you enjoy it!

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.es.html.dep b/cache/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.es.html b/cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.es.html new file mode 100644 index 00000000..ff71796e --- /dev/null +++ b/cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.es.html @@ -0,0 +1,1674 @@ + +
+
+
+
+

You are in vacation time but you want to blog something nice to share with your friends.

+

And your blog is powered by Nikola.

+

And you are a Jupyter Notebook user.

+

But you don't have your laptop with you, because you are on vacation time, remember? ;-)

+

But you still have your phone and some connectivity.

+

What do you think if I say that you have a complete workflow to write your blogpost, build the site and deploy it just using your phone? But without using computational resources from it (that would be also interesting, btw).

+

Don't you believe me? Just read this post and I will show you how you can make this possible... and fun! +

+

NOTE: This post is long but I promise will be interesting! Also, there are multiple cells generating a lot of output, remember that you can hide the output clicking on "Click me to hide the output" button at the bottom/right conner of each cell.

+

Ingredients

First, as with any other recipe, we need some ingredients.

+
    +
  1. Jupyter Notebook, as our UI to write and manage the computational resources
  2. +
  3. Nikola, to build the static site
  4. +
  5. Binder, to provide the computational resources, and secondarily, the UI mentioned in the first item
  6. +
  7. Github, to persist the whole site
  8. +
+

Method

Let's summarize the whole idea:

+

We launch a binder instance from a Github repo containing my Nikola-powered blog site and write some content into a new blog post (using the Jupyter Notebook), then I rebuild the site using Nikola (already installed in my binder instance) and finally push the updated site to Github's gh-pages to finally publish the new content (from my binder instance as well).

+
+

Sounds good, isn't it?

+

Create a binder for my blog site

Do you know Binder, right? In simple words it Turn a GitHub repo into a collection of interactive notebooks. You can find more info about Binder at https://mybinder.readthedocs.io/en/latest/. +For the purpose of this post (and the next ones), I just created a new binder filling my blog site Github repo url into the URL field at mybinder.org (and the path to a specific notebook file) and I got a new url to access my binder instance at https://mybinder.org/v2/gh/damianavila/damian_blog/master?filepath=Start.ipynb

+

In fact, I am writing this blog post in a binder instance (I love to do meta stuff ;-)

+
+

That url pointed me to a Start.ipynb notebook file where I have some cells to create a new post with some Nikola tags. I run those cells and I have a new ipynb file under the posts directory, in this case: binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb where I can write my new content.

+

Write the new content

OK, this is one is easy, it is this very same post ;-) as you probably expected.

+

BTW, one interesting note, since your binder is using git for internal stuff, you have git installed and ready to do your stuff as well. For instance, if my connection is flaky and given that my binder in transient. I can commit the work done so far. Just save the notebook file and run:

+ +
+
+
+
+
+
In [1]:
+
+
+
!git status
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
On branch master
+Your branch is up-to-date with 'origin/master'.
+Changes not staged for commit:
+  (use "git add <file>..." to update what will be committed)
+  (use "git checkout -- <file>..." to discard changes in working directory)
+
+	modified:   ../.ipynb_checkpoints/Start-checkpoint.ipynb
+	modified:   ../Start.ipynb
+	modified:   ../__pycache__/conf.cpython-35.pyc
+	modified:   ../plugins/upgrade_metadata/__pycache__/upgrade_metadata.cpython-35.pyc
+
+Untracked files:
+  (use "git add <file>..." to include in what will be committed)
+
+	../.bash_logout
+	../.bashrc
+	../.ipython/
+	../.local/
+	../.profile
+	.ipynb_checkpoints/binder-+-nikola-+-jupyter-+-github-blogging-resourceless-checkpoint.ipynb
+	binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+
+no changes added to commit (use "git add" and/or "git commit -a")
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [2]:
+
+
+
!git add "binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [3]:
+
+
+
!git commit -m "Add (incomplete) new post"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[master 7c7f9890] Add (incomplete) new post
+ 1 file changed, 146 insertions(+)
+ create mode 100644 posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

OK, now you need to push this content and if you try to git push it, it will fail unless you have permissions to push to your own repo. To achieve that from a binder instance you need to create a personal access token from Github: https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/. And now you will be able to push your stuff.

+

Note this personal access token will be useful for further pushes down the road, so keep it close.

+

Also, we need a terminal to be able to provide the username and the token. And the Jupyter interface give us that terminal pretty easily, you just go to the /tree (dashboard) and start a terminal from the dropdown menu (I can probably write a little extension to perform this step from the notebook itself... but going to the terminal is pretty easy and quick).

+

+

Now your repository is updated, so next time you launch a binder from it, it will contain your new post, meaning you can write your stuff iteratevely even in a transient platform, sweet!

+

Rebuild your site with Nikola

When your post is ready, you need to rebuild the site using Nikola, but how Nikola end up in my binder instance? +Easy as well, you just need to provide a requirements.txt file with the dependencies you need and those ones will be included in your binder instance: https://mybinder.readthedocs.io/en/latest/using.html#simple-python-dependencies

+

In my case, the requirement.txt file is pretty easy: https://github.com/damianavila/damian_blog/blob/master/requirements.txt. Because all the other pieces I need are already included by default: Jupyter stuff and git.

+

OK, now to rebuild your site you just need to run:

+ +
+
+
+
+
+
In [4]:
+
+
+
!nikola build
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[2017-12-17T22:28:50Z] WARNING: Nikola: The RSS_LINKS_APPEND_QUERY option is deprecated, use FEED_LINKS_APPEND_QUERY instead.
+[2017-12-17T22:28:50Z] WARNING: Nikola: The RSS_READ_MORE_LINK option is deprecated, use FEED_READ_MORE_LINK instead.
+[2017-12-17T22:28:50Z] WARNING: Nikola: Could not guess locale for language es, using locale en_US.UTF-8
+[2017-12-17T22:28:50Z] WARNING: Nikola: Please fix your OS locale configuration or use the LOCALES option in conf.py to specify your preferred locale.
+[2017-12-17T22:28:50Z] WARNING: Nikola: Make sure to use an UTF-8 locale to ensure Unicode support.
+Scanning posts......done!
+.  render_sources:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+.  render_sources:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+.  render_galleries:output/es/galleries
+.  render_galleries:output/es/galleries/spellchecker
+.  render_galleries:output/es/galleries/trades
+.  render_galleries:output/es/galleries/Facu_RN
+.  render_galleries:output/es/galleries/Inundacion
+.  render_galleries:output/es/galleries/bokehmagic
+.  render_galleries:output/es/galleries/rise
+.  render_galleries:output/es/galleries/twitter
+.  render_galleries:output/es/galleries/loadwrite
+.  render_galleries:output/es/galleries/deploy
+.  render_galleries:output/es/galleries/zenmode
+.  render_galleries:output/galleries/index.html
+.  render_galleries:output/galleries/rss.xml
+.  render_galleries:output/es/galleries/index.html
+.  render_galleries:output/es/galleries/rss.xml
+.  render_galleries:output/galleries/spellchecker/index.html
+.  render_galleries:output/galleries/spellchecker/rss.xml
+.  render_galleries:output/es/galleries/spellchecker/index.html
+.  render_galleries:output/es/galleries/spellchecker/rss.xml
+.  render_galleries:output/galleries/trades/index.html
+.  render_galleries:output/galleries/trades/rss.xml
+.  render_galleries:output/es/galleries/trades/index.html
+.  render_galleries:output/es/galleries/trades/rss.xml
+.  render_galleries:output/galleries/Facu_RN/index.html
+.  render_galleries:output/galleries/Facu_RN/rss.xml
+.  render_galleries:output/es/galleries/Facu_RN/index.html
+.  render_galleries:output/es/galleries/Facu_RN/rss.xml
+.  render_galleries:output/galleries/Inundacion/index.html
+.  render_galleries:output/galleries/Inundacion/rss.xml
+.  render_galleries:output/es/galleries/Inundacion/index.html
+.  render_galleries:output/es/galleries/Inundacion/rss.xml
+.  render_galleries:output/galleries/bokehmagic/index.html
+.  render_galleries:output/galleries/bokehmagic/rss.xml
+.  render_galleries:output/es/galleries/bokehmagic/index.html
+.  render_galleries:output/es/galleries/bokehmagic/rss.xml
+.  render_galleries:output/galleries/rise/index.html
+.  render_galleries:output/galleries/rise/rss.xml
+.  render_galleries:output/es/galleries/rise/index.html
+.  render_galleries:output/es/galleries/rise/rss.xml
+.  render_galleries:output/galleries/twitter/index.html
+.  render_galleries:output/galleries/twitter/rss.xml
+.  render_galleries:output/es/galleries/twitter/index.html
+.  render_galleries:output/es/galleries/twitter/rss.xml
+.  render_galleries:output/galleries/loadwrite/index.html
+.  render_galleries:output/galleries/loadwrite/rss.xml
+.  render_galleries:output/es/galleries/loadwrite/index.html
+.  render_galleries:output/es/galleries/loadwrite/rss.xml
+.  render_galleries:output/galleries/deploy/index.html
+.  render_galleries:output/galleries/deploy/rss.xml
+.  render_galleries:output/es/galleries/deploy/index.html
+.  render_galleries:output/es/galleries/deploy/rss.xml
+.  render_galleries:output/galleries/zenmode/index.html
+.  render_galleries:output/galleries/zenmode/rss.xml
+.  render_galleries:output/es/galleries/zenmode/index.html
+.  render_galleries:output/es/galleries/zenmode/rss.xml
+.  render_posts:timeline_changes
+.  render_posts:cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+.  render_posts:cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html.es
+.  copy_assets:output/assets/js/toggle.js
+.  copy_assets:output/assets/js/miniPageNav.js
+.  copy_assets:output/assets/images/blue-mocha-grunge-reversed.jpg
+.  copy_assets:output/assets/css/ipython.min.css
+.  copy_assets:output/assets/css/nikola_ipython.css
+.  copy_assets:output/assets/fonts/fontawesome-webfont.svg
+.  copy_assets:output/assets/fonts/SHIcXhdd5RknatSgOzyEkA.woff
+.  copy_assets:output/assets/fonts/fontawesome-webfont.woff
+.  copy_assets:output/assets/fonts/FontAwesome.otf
+.  copy_assets:output/assets/fonts/fontawesome-webfont.ttf
+.  copy_assets:output/assets/fonts/evC1haE-MsorTl_A7_uSGT8E0i7KZn-EPnyo3HZu7kw.woff
+.  copy_assets:output/assets/fonts/eMS0tViDqryBl0EG1pqFZfesZW2xOQ-xsNqO47m55DA.woff
+.  copy_assets:output/assets/fonts/fontawesome-webfont.eot
+.  copy_assets:output/assets/js/jquery-1.10.2.min.js
+.  copy_assets:output/assets/js/jquery.timeago.js
+.  copy_assets:output/assets/images/blue-mocha-grunge.jpg
+.  copy_assets:output/assets/images/cream-dust.png
+.  copy_assets:output/assets/images/glyphicons-halflings.png
+.  copy_assets:output/assets/images/glyphicons-halflings-white.png
+.  copy_assets:output/assets/css/main.css
+.  copy_assets:output/assets/css/bitter.css
+.  copy_assets:output/assets/js/moment-with-locales.min.js
+.  copy_assets:output/assets/js/baguetteBox.js
+.  copy_assets:output/assets/js/html5shiv-printshiv.min.js
+.  copy_assets:output/assets/js/baguetteBox.min.js
+.  copy_assets:output/assets/js/fancydates.js
+.  copy_assets:output/assets/js/flowr.js
+.  copy_assets:output/assets/js/html5.js
+.  copy_assets:output/assets/css/baguetteBox.min.css
+.  copy_assets:output/assets/css/baguetteBox.css
+.  copy_assets:output/assets/css/rst.css
+.  copy_assets:output/assets/css/theme.css
+.  copy_assets:output/assets/css/nikola_rst.css
+.  copy_assets:output/assets/css/html4css1.css
+.  copy_assets:output/assets/xml/atom.xsl
+.  copy_assets:output/assets/xml/rss.xsl
+.  copy_assets:output/assets/css/code.css
+.  render_taxonomies:output/categories/blog.html
+.  render_taxonomies:output/categories/jupyter.html
+.  render_taxonomies:output/categories/typescript.html
+.  render_taxonomies:output/categories/threads.html
+.  render_taxonomies:output/categories/local.html
+.  render_taxonomies:output/categories/flood.html
+.  render_taxonomies:output/categories/opensource.html
+.  render_taxonomies:output/categories/ipyscript.html
+.  render_taxonomies:output/categories/less.html
+.  render_taxonomies:output/categories/viper.html
+.  render_taxonomies:output/categories/toggle.html
+.  render_taxonomies:output/categories/twitter.html
+.  render_taxonomies:output/categories/daniela.html
+.  render_taxonomies:output/categories/jinja.html
+.  render_taxonomies:output/categories/css.html
+.  render_taxonomies:output/categories/family.html
+.  render_taxonomies:output/categories/nikola.html
+.  render_taxonomies:output/categories/win.html
+.  render_taxonomies:output/categories/first_post.html
+.  render_taxonomies:output/categories/scipycon.html
+.  render_taxonomies:output/categories/git.html
+.  render_taxonomies:output/categories/facundo.html
+.  render_taxonomies:output/categories/config.html
+.  render_taxonomies:output/categories/tutorials.html
+.  render_taxonomies:output/categories/python.html
+.  render_taxonomies:output/categories/talks.html
+.  render_taxonomies:output/categories/themes.html
+.  render_taxonomies:output/categories/extension.html
+.  render_taxonomies:output/categories/pdf.html
+.  render_taxonomies:output/categories/rise.html
+.  render_taxonomies:output/categories/pip.html
+.  render_taxonomies:output/categories/connectivity.html
+.  render_taxonomies:output/categories/workflow.html
+.  render_taxonomies:output/categories/politics.html
+.  render_taxonomies:output/categories/pyconar.html
+.  render_taxonomies:output/categories/reveal.html
+.  render_taxonomies:output/categories/linux.html
+.  render_taxonomies:output/categories/spellcheck.html
+.  render_taxonomies:output/categories/base16.html
+.  render_taxonomies:output/categories/life.html
+.  render_taxonomies:output/categories/facu.html
+.  render_taxonomies:output/categories/ipython.html
+.  render_taxonomies:output/categories/slideshow.html
+.  render_taxonomies:output/categories/conda.html
+.  render_taxonomies:output/categories/nbviewer.html
+.  render_taxonomies:output/categories/format.html
+.  render_taxonomies:output/categories/javascript.html
+.  render_taxonomies:output/categories/mipyex.html
+.  render_taxonomies:output/categories/videos.html
+.  render_taxonomies:output/categories/trading.html
+.  render_taxonomies:output/categories/minimap.html
+.  render_taxonomies:output/categories/aikido.html
+.  render_taxonomies:output/categories/magic.html
+.  render_taxonomies:output/categories/ipytmpl.html
+.  render_taxonomies:output/categories/zen.html
+.  render_taxonomies:output/categories/pinned.html
+.  render_taxonomies:output/categories/osx.html
+.  render_taxonomies:output/categories/jupyterlab.html
+.  render_taxonomies:output/categories/nbconvert.html
+.  render_taxonomies:output/categories/zenmode.html
+.  render_taxonomies:output/categories/theme.html
+.  render_taxonomies:output/categories/gh-pages.html
+.  render_taxonomies:output/categories/github.html
+.  render_taxonomies:output/categories/binder.html
+.  render_taxonomies:output/categories/performance.html
+.  render_taxonomies:output/index.html
+.  render_taxonomies:output/index-1.html
+.  render_taxonomies:output/index-2.html
+.  render_taxonomies:output/index-3.html
+.  render_taxonomies:output/index-4.html
+.  render_taxonomies:output/index-5.html
+.  render_taxonomies:output/archive.html
+.  render_taxonomies:output/2017/12/index.html
+.  render_taxonomies:output/2016/08/index.html
+.  render_taxonomies:output/2016/05/index.html
+.  render_taxonomies:output/2012/11/index.html
+.  render_taxonomies:output/2012/10/index.html
+.  render_taxonomies:output/2014/04/index.html
+.  render_taxonomies:output/2017/11/index.html
+.  render_taxonomies:output/2013/01/index.html
+.  render_taxonomies:output/2016/06/index.html
+.  render_taxonomies:output/2013/12/index.html
+.  render_taxonomies:output/2014/05/index.html
+.  render_taxonomies:output/2014/index.html
+.  render_taxonomies:output/2012/12/index.html
+.  render_taxonomies:output/2013/10/index.html
+.  render_taxonomies:output/2017/06/index.html
+.  render_taxonomies:output/2017/index.html
+.  render_taxonomies:output/2012/09/index.html
+.  render_taxonomies:output/2013/02/index.html
+.  render_taxonomies:output/2013/11/index.html
+.  render_taxonomies:output/2012/06/index.html
+.  render_taxonomies:output/2013/08/index.html
+.  render_taxonomies:output/2012/index.html
+.  render_taxonomies:output/2013/09/index.html
+.  render_taxonomies:output/2017/07/index.html
+.  render_taxonomies:output/2013/04/index.html
+.  render_taxonomies:output/2014/03/index.html
+.  render_taxonomies:output/2013/05/index.html
+.  render_taxonomies:output/2016/index.html
+.  render_taxonomies:output/2013/index.html
+.  render_taxonomies:output/categories/index.html
+.  render_taxonomies:output/es/categories/blog.html
+.  render_taxonomies:output/es/categories/jupyter.html
+.  render_taxonomies:output/es/categories/typescript.html
+.  render_taxonomies:output/es/categories/threads.html
+.  render_taxonomies:output/es/categories/local.html
+.  render_taxonomies:output/es/categories/flood.html
+.  render_taxonomies:output/es/categories/opensource.html
+.  render_taxonomies:output/es/categories/ipyscript.html
+.  render_taxonomies:output/es/categories/less.html
+.  render_taxonomies:output/es/categories/viper.html
+.  render_taxonomies:output/es/categories/toggle.html
+.  render_taxonomies:output/es/categories/twitter.html
+.  render_taxonomies:output/es/categories/daniela.html
+.  render_taxonomies:output/es/categories/jinja.html
+.  render_taxonomies:output/es/categories/css.html
+.  render_taxonomies:output/es/categories/family.html
+.  render_taxonomies:output/es/categories/nikola.html
+.  render_taxonomies:output/es/categories/win.html
+.  render_taxonomies:output/es/categories/first_post.html
+.  render_taxonomies:output/es/categories/scipycon.html
+.  render_taxonomies:output/es/categories/git.html
+.  render_taxonomies:output/es/categories/facundo.html
+.  render_taxonomies:output/es/categories/config.html
+.  render_taxonomies:output/es/categories/tutorials.html
+.  render_taxonomies:output/es/categories/python.html
+.  render_taxonomies:output/es/categories/talks.html
+.  render_taxonomies:output/es/categories/themes.html
+.  render_taxonomies:output/es/categories/extension.html
+.  render_taxonomies:output/es/categories/pdf.html
+.  render_taxonomies:output/es/categories/rise.html
+.  render_taxonomies:output/es/categories/pip.html
+.  render_taxonomies:output/es/categories/connectivity.html
+.  render_taxonomies:output/es/categories/workflow.html
+.  render_taxonomies:output/es/categories/politics.html
+.  render_taxonomies:output/es/categories/pyconar.html
+.  render_taxonomies:output/es/categories/reveal.html
+.  render_taxonomies:output/es/categories/linux.html
+.  render_taxonomies:output/es/categories/spellcheck.html
+.  render_taxonomies:output/es/categories/base16.html
+.  render_taxonomies:output/es/categories/life.html
+.  render_taxonomies:output/es/categories/facu.html
+.  render_taxonomies:output/es/categories/ipython.html
+.  render_taxonomies:output/es/categories/slideshow.html
+.  render_taxonomies:output/es/categories/conda.html
+.  render_taxonomies:output/es/categories/nbviewer.html
+.  render_taxonomies:output/es/categories/format.html
+.  render_taxonomies:output/es/categories/javascript.html
+.  render_taxonomies:output/es/categories/mipyex.html
+.  render_taxonomies:output/es/categories/videos.html
+.  render_taxonomies:output/es/categories/trading.html
+.  render_taxonomies:output/es/categories/minimap.html
+.  render_taxonomies:output/es/categories/aikido.html
+.  render_taxonomies:output/es/categories/magic.html
+.  render_taxonomies:output/es/categories/ipytmpl.html
+.  render_taxonomies:output/es/categories/zen.html
+.  render_taxonomies:output/es/categories/pinned.html
+.  render_taxonomies:output/es/categories/osx.html
+.  render_taxonomies:output/es/categories/jupyterlab.html
+.  render_taxonomies:output/es/categories/nbconvert.html
+.  render_taxonomies:output/es/categories/zenmode.html
+.  render_taxonomies:output/es/categories/theme.html
+.  render_taxonomies:output/es/categories/gh-pages.html
+.  render_taxonomies:output/es/categories/github.html
+.  render_taxonomies:output/es/categories/binder.html
+.  render_taxonomies:output/es/categories/performance.html
+.  render_taxonomies:output/es/index.html
+.  render_taxonomies:output/es/index-1.html
+.  render_taxonomies:output/es/index-2.html
+.  render_taxonomies:output/es/index-3.html
+.  render_taxonomies:output/es/index-4.html
+.  render_taxonomies:output/es/index-5.html
+.  render_taxonomies:output/es/archive.html
+.  render_taxonomies:output/es/2017/12/index.html
+.  render_taxonomies:output/es/2016/08/index.html
+.  render_taxonomies:output/es/2016/05/index.html
+.  render_taxonomies:output/es/2012/11/index.html
+.  render_taxonomies:output/es/2012/10/index.html
+.  render_taxonomies:output/es/2014/04/index.html
+.  render_taxonomies:output/es/2017/11/index.html
+.  render_taxonomies:output/es/2013/01/index.html
+.  render_taxonomies:output/es/2016/06/index.html
+.  render_taxonomies:output/es/2013/12/index.html
+.  render_taxonomies:output/es/2014/05/index.html
+.  render_taxonomies:output/es/2014/index.html
+.  render_taxonomies:output/es/2012/12/index.html
+.  render_taxonomies:output/es/2013/10/index.html
+.  render_taxonomies:output/es/2017/06/index.html
+.  render_taxonomies:output/es/2017/index.html
+.  render_taxonomies:output/es/2012/09/index.html
+.  render_taxonomies:output/es/2013/02/index.html
+.  render_taxonomies:output/es/2013/11/index.html
+.  render_taxonomies:output/es/2012/06/index.html
+.  render_taxonomies:output/es/2013/08/index.html
+.  render_taxonomies:output/es/2012/index.html
+.  render_taxonomies:output/es/2013/09/index.html
+.  render_taxonomies:output/es/2017/07/index.html
+.  render_taxonomies:output/es/2013/04/index.html
+.  render_taxonomies:output/es/2014/03/index.html
+.  render_taxonomies:output/es/2013/05/index.html
+.  render_taxonomies:output/es/2016/index.html
+.  render_taxonomies:output/es/2013/index.html
+.  render_taxonomies:output/es/categories/index.html
+.  render_taxonomies:output/categories/jinja.xml
+.  render_taxonomies:output/categories/trading.xml
+.  render_taxonomies:output/categories/css.xml
+.  render_taxonomies:output/categories/minimap.xml
+.  render_taxonomies:output/categories/family.xml
+.  render_taxonomies:output/categories/aikido.xml
+.  render_taxonomies:output/categories/nikola.xml
+.  render_taxonomies:output/categories/magic.xml
+.  render_taxonomies:output/categories/win.xml
+.  render_taxonomies:output/categories/ipytmpl.xml
+.  render_taxonomies:output/categories/first_post.xml
+.  render_taxonomies:output/categories/zen.xml
+.  render_taxonomies:output/categories/scipycon.xml
+.  render_taxonomies:output/categories/pinned.xml
+.  render_taxonomies:output/categories/git.xml
+.  render_taxonomies:output/categories/osx.xml
+.  render_taxonomies:output/categories/facundo.xml
+.  render_taxonomies:output/categories/jupyterlab.xml
+.  render_taxonomies:output/categories/config.xml
+.  render_taxonomies:output/categories/nbconvert.xml
+.  render_taxonomies:output/categories/tutorials.xml
+.  render_taxonomies:output/categories/zenmode.xml
+.  render_taxonomies:output/categories/python.xml
+.  render_taxonomies:output/categories/theme.xml
+.  render_taxonomies:output/categories/talks.xml
+.  render_taxonomies:output/categories/gh-pages.xml
+.  render_taxonomies:output/categories/themes.xml
+.  render_taxonomies:output/categories/github.xml
+.  render_taxonomies:output/categories/extension.xml
+.  render_taxonomies:output/categories/binder.xml
+.  render_taxonomies:output/categories/pdf.xml
+.  render_taxonomies:output/categories/performance.xml
+.  render_taxonomies:output/categories/rise.xml
+.  render_taxonomies:output/rss.xml
+.  render_taxonomies:output/categories/pip.xml
+.  render_taxonomies:output/es/categories/linux.xml
+.  render_taxonomies:output/categories/connectivity.xml
+.  render_taxonomies:output/categories/workflow.xml
+.  render_taxonomies:output/categories/politics.xml
+.  render_taxonomies:output/categories/pyconar.xml
+.  render_taxonomies:output/categories/reveal.xml
+.  render_taxonomies:output/categories/linux.xml
+.  render_taxonomies:output/categories/spellcheck.xml
+.  render_taxonomies:output/categories/base16.xml
+.  render_taxonomies:output/categories/life.xml
+.  render_taxonomies:output/categories/facu.xml
+.  render_taxonomies:output/categories/ipython.xml
+.  render_taxonomies:output/categories/slideshow.xml
+.  render_taxonomies:output/categories/conda.xml
+.  render_taxonomies:output/categories/nbviewer.xml
+.  render_taxonomies:output/categories/format.xml
+.  render_taxonomies:output/categories/javascript.xml
+.  render_taxonomies:output/categories/mipyex.xml
+.  render_pages:output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+.  render_pages:output/posts/rise-510-is-out.html
+.  render_taxonomies:output/categories/videos.xml
+.  render_taxonomies:output/es/categories/blog.xml
+.  render_pages:output/posts/we-are-above-1000-stars.html
+.  render_pages:output/posts/trading-logbook-update-3.html
+.  render_pages:output/es/posts/hide-the-input-cells-from-your-ipython-slides.html
+.  render_taxonomies:output/es/categories/jupyter.xml
+.  render_taxonomies:output/es/categories/spellcheck.xml
+.  render_pages:output/posts/rise-meets-jupyterlab.html
+.  render_pages:output/es/posts/a-simple-minimap-for-your-nbconverted-ipynb.html
+.  render_pages:output/posts/rise-500-is-out.html
+.  render_pages:output/es/posts/mimic-the-ipython-notebook-cell-execution.html
+.  render_taxonomies:output/es/categories/typescript.xml
+.  render_taxonomies:output/es/categories/base16.xml
+.  render_pages:output/posts/rise-400b1-is-available-please-test-it.html
+.  render_pages:output/es/posts/nikolas-zen-theme-finally-released.html
+.  render_pages:output/posts/how-to-pin-conda.html
+.  render_pages:output/es/posts/viper-is-now-using-ipythonnbconvert.html
+.  render_taxonomies:output/es/categories/threads.xml
+.  render_taxonomies:output/es/categories/life.xml
+.  render_pages:output/posts/coming-back.html
+.  render_pages:output/es/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html
+.  render_pages:output/posts/zen-themes-updated.html
+.  render_pages:output/es/posts/using-a-local-revealjs-library-with-your-ipython-slides.html
+.  render_taxonomies:output/es/categories/local.xml
+.  render_taxonomies:output/es/categories/facu.xml
+.  render_pages:output/posts/48-themes-for-your-ipython-notebook.html
+.  render_pages:output/es/posts/different-ways-to-lead-an-open-source-project.html
+.  render_pages:output/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html
+.  render_pages:output/es/posts/a-new-nikolas-theme-for-my-site-zen.html
+.  render_taxonomies:output/es/categories/flood.xml
+.  render_taxonomies:output/es/categories/ipython.xml
+.  render_pages:output/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html
+.  render_pages:output/es/posts/customizing-your-ipython-slides.html
+.  render_pages:output/posts/my-ipython-powered-semi-automatic-git-workflow.html
+.  render_pages:output/es/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.html
+.  render_taxonomies:output/es/categories/opensource.xml
+.  render_taxonomies:output/es/categories/slideshow.xml
+.  render_pages:output/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.html
+.  render_pages:output/es/posts/zen-mode-extension-for-the-ipython-notebook.html
+.  render_pages:output/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html
+.  render_pages:output/es/posts/make-your-slides-with-ipython.html
+.  render_taxonomies:output/es/categories/ipyscript.xml
+.  render_taxonomies:output/es/categories/conda.xml
+.  render_pages:output/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.html
+.  render_pages:output/es/posts/one-line-deployment-of-your-site-to-gh-pages.html
+.  render_pages:output/posts/dont-write-scripts-just-write-ipyscripts.html
+.  render_pages:output/es/posts/ipython-plugin-for-nikola-updated.html
+.  render_taxonomies:output/es/categories/less.xml
+.  render_taxonomies:output/es/categories/nbviewer.xml
+.  render_pages:output/posts/pyconar-2013.html
+.  render_pages:output/es/posts/teasers-with-the-ipython-notebook-plugin.html
+.  render_pages:output/posts/trading-logbook-update-22-nov-2013.html
+.  render_pages:output/es/posts/scipycon-argentina-2013.html
+.  render_taxonomies:output/categories/daniela.xml
+.  render_taxonomies:output/es/categories/viper.xml
+.  render_pages:output/posts/live-trading-logbook.html
+.  render_pages:output/es/posts/under-the-sea-en-la-plata.html
+.  render_taxonomies:output/es/categories/format.xml
+.  render_pages:output/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html
+.  render_pages:output/es/posts/reveal-converter-mini-tutorial.html
+.  render_taxonomies:output/es/categories/toggle.xml
+.  render_taxonomies:output/es/categories/javascript.xml
+.  render_pages:output/posts/hide-the-input-cells-from-your-ipython-slides.html
+.  render_pages:output/es/posts/blogging-with-nikola-and-ipython.html
+.  render_pages:output/posts/a-simple-minimap-for-your-nbconverted-ipynb.html
+.  render_pages:output/es/posts/slider-for-nbconvert.html
+.  render_taxonomies:output/es/categories/twitter.xml
+.  render_taxonomies:output/es/categories/mipyex.xml
+.  render_pages:output/posts/mimic-the-ipython-notebook-cell-execution.html
+.  render_pages:output/es/posts/facundo.html
+.  render_pages:output/posts/nikolas-zen-theme-finally-released.html
+.  render_pages:output/es/posts/improving-viper-slideshows-styling.html
+.  render_taxonomies:output/es/categories/daniela.xml
+.  render_taxonomies:output/es/categories/videos.xml
+.  render_pages:output/posts/viper-is-now-using-ipythonnbconvert.html
+.  render_pages:output/es/posts/nikola-nbconvert.html
+.  render_pages:output/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.html
+.  render_pages:output/es/posts/a-simple-overview-of-viper.html
+.  render_taxonomies:output/es/categories/jinja.xml
+.  render_taxonomies:output/es/categories/trading.xml
+.  render_pages:output/posts/using-a-local-revealjs-library-with-your-ipython-slides.html
+.  render_pages:output/es/posts/viper.html
+.  render_pages:output/posts/different-ways-to-lead-an-open-source-project.html
+.  render_pages:output/es/posts/paraguay.html
+.  render_taxonomies:output/es/categories/css.xml
+.  render_taxonomies:output/es/categories/minimap.xml
+.  render_pages:output/posts/a-new-nikolas-theme-for-my-site-zen.html
+.  render_pages:output/es/posts/powered-by-nikola.html
+.  render_pages:output/posts/customizing-your-ipython-slides.html
+.  render_pages:output/es/posts/beginning.html
+.  render_taxonomies:output/es/categories/family.xml
+.  render_taxonomies:output/es/categories/aikido.xml
+.  render_pages:output/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.html
+.  render_pages:output/es/stories/about-me.html
+.  render_pages:output/posts/zen-mode-extension-for-the-ipython-notebook.html
+.  render_pages:output/es/posts/hello-world-again.html
+.  render_taxonomies:output/es/categories/nikola.xml
+.  render_taxonomies:output/es/categories/magic.xml
+.  render_pages:output/posts/make-your-slides-with-ipython.html
+.  render_pages:output/posts/one-line-deployment-of-your-site-to-gh-pages.html
+.  render_taxonomies:output/es/categories/win.xml
+.  render_taxonomies:output/es/categories/ipytmpl.xml
+.  render_pages:output/posts/ipython-plugin-for-nikola-updated.html
+.  render_pages:output/posts/teasers-with-the-ipython-notebook-plugin.html
+.  render_taxonomies:output/es/categories/first_post.xml
+.  render_taxonomies:output/es/categories/zen.xml
+.  render_pages:output/posts/scipycon-argentina-2013.html
+.  render_pages:output/posts/under-the-sea-en-la-plata.html
+.  render_taxonomies:output/es/categories/scipycon.xml
+.  render_taxonomies:output/es/categories/pinned.xml
+.  render_pages:output/posts/reveal-converter-mini-tutorial.html
+.  render_pages:output/posts/blogging-with-nikola-and-ipython.html
+.  render_taxonomies:output/es/categories/git.xml
+.  render_taxonomies:output/es/categories/osx.xml
+.  render_pages:output/posts/slider-for-nbconvert.html
+.  render_pages:output/posts/facundo.html
+.  render_taxonomies:output/es/categories/facundo.xml
+.  render_taxonomies:output/es/categories/jupyterlab.xml
+.  render_pages:output/posts/improving-viper-slideshows-styling.html
+.  render_pages:output/posts/nikola-nbconvert.html
+.  render_taxonomies:output/es/categories/config.xml
+.  render_taxonomies:output/es/categories/nbconvert.xml
+.  render_pages:output/posts/a-simple-overview-of-viper.html
+.  render_pages:output/posts/viper.html
+.  render_taxonomies:output/es/categories/tutorials.xml
+.  render_taxonomies:output/es/categories/zenmode.xml
+.  render_pages:output/posts/paraguay.html
+.  render_pages:output/posts/powered-by-nikola.html
+.  render_taxonomies:output/categories/blog.xml
+.  render_taxonomies:output/es/categories/python.xml
+.  render_taxonomies:output/es/categories/theme.xml
+.  render_pages:output/posts/beginning.html
+.  render_pages:output/stories/about-me.html
+.  render_taxonomies:output/categories/jupyter.xml
+.  render_taxonomies:output/es/categories/talks.xml
+.  render_taxonomies:output/es/categories/gh-pages.xml
+.  render_pages:output/posts/hello-world-again.html
+.  render_pages:output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+.  render_taxonomies:output/categories/typescript.xml
+.  render_taxonomies:output/es/categories/themes.xml
+.  render_taxonomies:output/es/categories/github.xml
+.  render_pages:output/es/posts/rise-510-is-out.html
+.  render_pages:output/es/posts/we-are-above-1000-stars.html
+.  render_taxonomies:output/categories/threads.xml
+.  render_taxonomies:output/es/categories/extension.xml
+.  render_taxonomies:output/es/categories/binder.xml
+.  render_pages:output/es/posts/trading-logbook-update-3.html
+.  render_pages:output/es/posts/rise-meets-jupyterlab.html
+.  render_taxonomies:output/categories/local.xml
+.  render_taxonomies:output/es/categories/pdf.xml
+.  render_taxonomies:output/es/categories/performance.xml
+.  render_pages:output/es/posts/rise-500-is-out.html
+.  render_pages:output/es/posts/rise-400b1-is-available-please-test-it.html
+.  render_taxonomies:output/categories/flood.xml
+.  render_taxonomies:output/es/categories/rise.xml
+.  render_taxonomies:output/es/rss.xml
+.  render_pages:output/es/posts/how-to-pin-conda.html
+.  render_pages:output/es/posts/coming-back.html
+.  render_taxonomies:output/categories/opensource.xml
+.  render_taxonomies:output/es/categories/pip.xml
+.  render_pages:output/es/posts/zen-themes-updated.html
+.  render_pages:output/es/posts/48-themes-for-your-ipython-notebook.html
+.  render_taxonomies:output/categories/ipyscript.xml
+.  render_taxonomies:output/es/categories/connectivity.xml
+.  render_pages:output/es/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.html
+.  render_pages:output/es/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.html
+.  render_taxonomies:output/categories/less.xml
+.  render_taxonomies:output/es/categories/workflow.xml
+.  render_pages:output/es/posts/my-ipython-powered-semi-automatic-git-workflow.html
+.  render_pages:output/es/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.html
+.  render_taxonomies:output/categories/viper.xml
+.  render_taxonomies:output/es/categories/politics.xml
+.  render_pages:output/es/posts/a-poor-man-spell-checker-for-the-ipython-notebook.html
+.  render_pages:output/es/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.html
+.  render_taxonomies:output/categories/toggle.xml
+.  render_taxonomies:output/es/categories/pyconar.xml
+.  render_pages:output/es/posts/dont-write-scripts-just-write-ipyscripts.html
+.  render_pages:output/es/posts/pyconar-2013.html
+.  render_taxonomies:output/categories/twitter.xml
+.  render_taxonomies:output/es/categories/reveal.xml
+.  render_pages:output/es/posts/trading-logbook-update-22-nov-2013.html
+.  render_pages:output/es/posts/live-trading-logbook.html
+.  render_pages:output/es/posts/bidirectional-ipython-nikola-workflow-to-write-your-blog-post.html
+.  create_bundles:output/assets/js/all-nocdn.js
+.  create_bundles:output/assets/css/all-nocdn.css
+.  create_bundles:output/assets/css/all.css
+.  sitemap:output/sitemap.xml
+.  sitemap:output/sitemapindex.xml
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Now you have your site rebuilt, let's commit the changes so we don't loss the new content.

+ +
+
+
+
+
+
In [5]:
+
+
+
!git add -u
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [6]:
+
+
+
!git status
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
On branch master
+Your branch is up-to-date with 'origin/master'.
+Changes to be committed:
+  (use "git reset HEAD <file>..." to unstage)
+
+	modified:   ../.doit.db.bak
+	modified:   ../.doit.db.dat
+	modified:   ../.doit.db.dir
+	modified:   ../.ipynb_checkpoints/Start-checkpoint.ipynb
+	modified:   ../Start.ipynb
+	modified:   ../__pycache__/conf.cpython-35.pyc
+	modified:   ../cache/jinja/__jinja2_1424a9c95f5ec8e60d413c42a25bc77a4b63ee8b.cache
+	modified:   ../cache/jinja/__jinja2_42065261e76b7ac61d15945dd99b46d11ef2d31d.cache
+	modified:   ../cache/jinja/__jinja2_5e46cfeeff2a14274a55bed284465c9788e60bfe.cache
+	modified:   ../cache/jinja/__jinja2_bf78ea284af06dd653f1623611857af052bad3c2.cache
+	modified:   ../cache/jinja/__jinja2_d18a7e23288807856bde0b72920980e5c037e91e.cache
+	modified:   ../output/2017/index.html
+	modified:   ../output/archive.html
+	modified:   ../output/categories/aikido.xml
+	modified:   ../output/categories/base16.xml
+	modified:   ../output/categories/blog.xml
+	modified:   ../output/categories/conda.xml
+	modified:   ../output/categories/config.xml
+	modified:   ../output/categories/connectivity.xml
+	modified:   ../output/categories/css.xml
+	modified:   ../output/categories/daniela.xml
+	modified:   ../output/categories/extension.xml
+	modified:   ../output/categories/facu.xml
+	modified:   ../output/categories/facundo.xml
+	modified:   ../output/categories/family.xml
+	modified:   ../output/categories/first_post.xml
+	modified:   ../output/categories/flood.xml
+	modified:   ../output/categories/format.xml
+	modified:   ../output/categories/gh-pages.html
+	modified:   ../output/categories/gh-pages.xml
+	modified:   ../output/categories/git.html
+	modified:   ../output/categories/git.xml
+	modified:   ../output/categories/index.html
+	modified:   ../output/categories/ipyscript.xml
+	modified:   ../output/categories/ipython.xml
+	modified:   ../output/categories/ipytmpl.xml
+	modified:   ../output/categories/javascript.xml
+	modified:   ../output/categories/jinja.xml
+	modified:   ../output/categories/jupyter.html
+	modified:   ../output/categories/jupyter.xml
+	modified:   ../output/categories/jupyterlab.xml
+	modified:   ../output/categories/less.xml
+	modified:   ../output/categories/life.xml
+	modified:   ../output/categories/linux.xml
+	modified:   ../output/categories/local.xml
+	modified:   ../output/categories/magic.xml
+	modified:   ../output/categories/minimap.xml
+	modified:   ../output/categories/mipyex.xml
+	modified:   ../output/categories/nbconvert.xml
+	modified:   ../output/categories/nbviewer.xml
+	modified:   ../output/categories/nikola.html
+	modified:   ../output/categories/nikola.xml
+	modified:   ../output/categories/opensource.xml
+	modified:   ../output/categories/osx.xml
+	modified:   ../output/categories/pdf.xml
+	modified:   ../output/categories/performance.xml
+	modified:   ../output/categories/pinned.xml
+	modified:   ../output/categories/pip.xml
+	modified:   ../output/categories/politics.xml
+	modified:   ../output/categories/pyconar.xml
+	modified:   ../output/categories/python.xml
+	modified:   ../output/categories/reveal.xml
+	modified:   ../output/categories/rise.xml
+	modified:   ../output/categories/scipycon.xml
+	modified:   ../output/categories/slideshow.xml
+	modified:   ../output/categories/spellcheck.xml
+	modified:   ../output/categories/talks.xml
+	modified:   ../output/categories/theme.xml
+	modified:   ../output/categories/themes.xml
+	modified:   ../output/categories/threads.xml
+	modified:   ../output/categories/toggle.xml
+	modified:   ../output/categories/trading.xml
+	modified:   ../output/categories/tutorials.xml
+	modified:   ../output/categories/twitter.xml
+	modified:   ../output/categories/typescript.xml
+	modified:   ../output/categories/videos.xml
+	modified:   ../output/categories/viper.xml
+	modified:   ../output/categories/win.xml
+	modified:   ../output/categories/workflow.html
+	modified:   ../output/categories/workflow.xml
+	modified:   ../output/categories/zen.xml
+	modified:   ../output/categories/zenmode.xml
+	modified:   ../output/es/2012/06/index.html
+	modified:   ../output/es/2012/09/index.html
+	modified:   ../output/es/2012/10/index.html
+	modified:   ../output/es/2012/11/index.html
+	modified:   ../output/es/2012/12/index.html
+	modified:   ../output/es/2012/index.html
+	modified:   ../output/es/2013/01/index.html
+	modified:   ../output/es/2013/02/index.html
+	modified:   ../output/es/2013/04/index.html
+	modified:   ../output/es/2013/05/index.html
+	modified:   ../output/es/2013/08/index.html
+	modified:   ../output/es/2013/09/index.html
+	modified:   ../output/es/2013/10/index.html
+	modified:   ../output/es/2013/11/index.html
+	modified:   ../output/es/2013/12/index.html
+	modified:   ../output/es/2013/index.html
+	modified:   ../output/es/2014/03/index.html
+	modified:   ../output/es/2014/04/index.html
+	modified:   ../output/es/2014/05/index.html
+	modified:   ../output/es/2014/index.html
+	modified:   ../output/es/2016/05/index.html
+	modified:   ../output/es/2016/06/index.html
+	modified:   ../output/es/2016/08/index.html
+	modified:   ../output/es/2016/index.html
+	modified:   ../output/es/2017/06/index.html
+	modified:   ../output/es/2017/07/index.html
+	modified:   ../output/es/2017/11/index.html
+	modified:   ../output/es/2017/index.html
+	modified:   ../output/es/archive.html
+	modified:   ../output/es/categories/aikido.xml
+	modified:   ../output/es/categories/base16.xml
+	modified:   ../output/es/categories/blog.xml
+	modified:   ../output/es/categories/conda.xml
+	modified:   ../output/es/categories/config.xml
+	modified:   ../output/es/categories/connectivity.xml
+	modified:   ../output/es/categories/css.xml
+	modified:   ../output/es/categories/daniela.xml
+	modified:   ../output/es/categories/extension.xml
+	modified:   ../output/es/categories/facu.xml
+	modified:   ../output/es/categories/facundo.xml
+	modified:   ../output/es/categories/family.xml
+	modified:   ../output/es/categories/first_post.xml
+	modified:   ../output/es/categories/flood.xml
+	modified:   ../output/es/categories/format.xml
+	modified:   ../output/es/categories/gh-pages.html
+	modified:   ../output/es/categories/gh-pages.xml
+	modified:   ../output/es/categories/git.html
+	modified:   ../output/es/categories/git.xml
+	modified:   ../output/es/categories/index.html
+	modified:   ../output/es/categories/ipyscript.xml
+	modified:   ../output/es/categories/ipython.xml
+	modified:   ../output/es/categories/ipytmpl.xml
+	modified:   ../output/es/categories/javascript.xml
+	modified:   ../output/es/categories/jinja.xml
+	modified:   ../output/es/categories/jupyter.html
+	modified:   ../output/es/categories/jupyter.xml
+	modified:   ../output/es/categories/jupyterlab.xml
+	modified:   ../output/es/categories/less.xml
+	modified:   ../output/es/categories/life.xml
+	modified:   ../output/es/categories/linux.xml
+	modified:   ../output/es/categories/local.xml
+	modified:   ../output/es/categories/magic.xml
+	modified:   ../output/es/categories/minimap.xml
+	modified:   ../output/es/categories/mipyex.xml
+	modified:   ../output/es/categories/nbconvert.xml
+	modified:   ../output/es/categories/nbviewer.xml
+	modified:   ../output/es/categories/nikola.html
+	modified:   ../output/es/categories/nikola.xml
+	modified:   ../output/es/categories/opensource.xml
+	modified:   ../output/es/categories/osx.xml
+	modified:   ../output/es/categories/pdf.xml
+	modified:   ../output/es/categories/performance.xml
+	modified:   ../output/es/categories/pinned.xml
+	modified:   ../output/es/categories/pip.xml
+	modified:   ../output/es/categories/politics.xml
+	modified:   ../output/es/categories/pyconar.xml
+	modified:   ../output/es/categories/python.xml
+	modified:   ../output/es/categories/reveal.xml
+	modified:   ../output/es/categories/rise.xml
+	modified:   ../output/es/categories/scipycon.xml
+	modified:   ../output/es/categories/slideshow.xml
+	modified:   ../output/es/categories/spellcheck.xml
+	modified:   ../output/es/categories/talks.xml
+	modified:   ../output/es/categories/theme.xml
+	modified:   ../output/es/categories/themes.xml
+	modified:   ../output/es/categories/threads.xml
+	modified:   ../output/es/categories/toggle.xml
+	modified:   ../output/es/categories/trading.xml
+	modified:   ../output/es/categories/tutorials.xml
+	modified:   ../output/es/categories/twitter.xml
+	modified:   ../output/es/categories/typescript.xml
+	modified:   ../output/es/categories/videos.xml
+	modified:   ../output/es/categories/viper.xml
+	modified:   ../output/es/categories/win.xml
+	modified:   ../output/es/categories/workflow.html
+	modified:   ../output/es/categories/workflow.xml
+	modified:   ../output/es/categories/zen.xml
+	modified:   ../output/es/categories/zenmode.xml
+	modified:   ../output/es/galleries/Facu_RN/index.html
+	modified:   ../output/es/galleries/Facu_RN/rss.xml
+	modified:   ../output/es/galleries/Inundacion/rss.xml
+	modified:   ../output/es/galleries/bokehmagic/index.html
+	modified:   ../output/es/galleries/bokehmagic/rss.xml
+	modified:   ../output/es/galleries/deploy/rss.xml
+	modified:   ../output/es/galleries/loadwrite/index.html
+	modified:   ../output/es/galleries/loadwrite/rss.xml
+	modified:   ../output/es/galleries/rise/rss.xml
+	modified:   ../output/es/galleries/rss.xml
+	modified:   ../output/es/galleries/spellchecker/index.html
+	modified:   ../output/es/galleries/spellchecker/rss.xml
+	modified:   ../output/es/galleries/trades/rss.xml
+	modified:   ../output/es/galleries/twitter/rss.xml
+	modified:   ../output/es/galleries/zenmode/index.html
+	modified:   ../output/es/galleries/zenmode/rss.xml
+	modified:   ../output/es/index-5.html
+	modified:   ../output/es/index.html
+	modified:   ../output/es/posts/rise-510-is-out.html
+	modified:   ../output/es/rss.xml
+	modified:   ../output/galleries/Facu_RN/index.html
+	modified:   ../output/galleries/Facu_RN/rss.xml
+	modified:   ../output/galleries/Inundacion/rss.xml
+	modified:   ../output/galleries/bokehmagic/index.html
+	modified:   ../output/galleries/bokehmagic/rss.xml
+	modified:   ../output/galleries/deploy/rss.xml
+	modified:   ../output/galleries/loadwrite/index.html
+	modified:   ../output/galleries/loadwrite/rss.xml
+	modified:   ../output/galleries/rise/rss.xml
+	modified:   ../output/galleries/rss.xml
+	modified:   ../output/galleries/spellchecker/index.html
+	modified:   ../output/galleries/spellchecker/rss.xml
+	modified:   ../output/galleries/trades/rss.xml
+	modified:   ../output/galleries/twitter/rss.xml
+	modified:   ../output/galleries/zenmode/index.html
+	modified:   ../output/galleries/zenmode/rss.xml
+	modified:   ../output/index-5.html
+	modified:   ../output/index.html
+	modified:   ../output/posts/rise-510-is-out.html
+	modified:   ../output/rss.xml
+	modified:   ../output/sitemap.xml
+	modified:   ../output/sitemapindex.xml
+	modified:   ../plugins/upgrade_metadata/__pycache__/upgrade_metadata.cpython-35.pyc
+	modified:   binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+
+Untracked files:
+  (use "git add <file>..." to include in what will be committed)
+
+	../.bash_logout
+	../.bashrc
+	../.ipython/
+	../.local/
+	../.profile
+	../cache/jinja/__jinja2_1f7b67a24ba82817190ca9329b4e70f5b83d2aa8.cache
+	../cache/jinja/__jinja2_29f4b4300680b610c26f01cd4b344c99659e2ae7.cache
+	../cache/jinja/__jinja2_45ac9368227a101d2f06edaefd1c3a89262c46de.cache
+	../cache/jinja/__jinja2_57b64e8d8c69c8a0309a317dada665de6a09131f.cache
+	../cache/jinja/__jinja2_5e39743f43676d71d1fbf5a3f5e6c7bcd0553d17.cache
+	../cache/jinja/__jinja2_697232dc3c14dcf966cb673a46734538fbdcfaff.cache
+	../cache/jinja/__jinja2_7569c06e91d40657d212e7347a7c0ba9682aecbe.cache
+	../cache/jinja/__jinja2_85b3b28c2af8137138202b66ddb1de1e27daa0cb.cache
+	../cache/jinja/__jinja2_8a9ea377d370579847f6f32b831d680ddc1ceac5.cache
+	../cache/jinja/__jinja2_91ca140498c6809d832a9440553bc6cb8df50df9.cache
+	../cache/jinja/__jinja2_a77ac1ecf914de6946a75d0d3591cbafb1effc32.cache
+	../cache/jinja/__jinja2_abbd706e988d6c55c3dd152bf5ed1d756595f719.cache
+	../cache/jinja/__jinja2_b04036e3f5288f19927f5dc3b3651ec8b42f8e2c.cache
+	../cache/jinja/__jinja2_b807b7a7fd71f025befffb377825b9c7576fe519.cache
+	../cache/jinja/__jinja2_b94abb01e952cf6371a6460a7adcea55c54b074e.cache
+	../cache/jinja/__jinja2_c28a0a887f59ee48243095e6aad33a6c2aa828d2.cache
+	../cache/jinja/__jinja2_dcbc01075586f1698433d8ae5d61d6fc19df7f17.cache
+	../cache/jinja/__jinja2_e609ceaaa3f2e31193a281ee74d8fd5b52956a69.cache
+	../cache/jinja/__jinja2_e8c5fd6f2818e239fd5346c73f9f426dc69e894f.cache
+	../cache/jinja/__jinja2_f10aeb879f232e45fd0c98d26fe4402689ed79bb.cache
+	../cache/jinja/__jinja2_f9f7109b3bc5081e641cd485aefaf7bc634b5ee1.cache
+	../cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+	../cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html.dep
+	../cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html.es
+	../cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html.es.dep
+	../output/2017/12/
+	../output/categories/binder.html
+	../output/categories/binder.xml
+	../output/categories/github.html
+	../output/categories/github.xml
+	../output/es/2017/12/
+	../output/es/categories/binder.html
+	../output/es/categories/binder.xml
+	../output/es/categories/github.html
+	../output/es/categories/github.xml
+	../output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+	../output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+	../output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+	../output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+	.ipynb_checkpoints/binder-+-nikola-+-jupyter-+-github-blogging-resourceless-checkpoint.ipynb
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [7]:
+
+
+
!git add ../cache/*
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [8]:
+
+
+
!git add ../output/*
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [9]:
+
+
+
!git add binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [10]:
+
+
+
!git commit -m "Build the site in my binder instance"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[master 658c5e23] Build the site in my binder instance
+ 263 files changed, 5378 insertions(+), 2102 deletions(-)
+ rewrite cache/jinja/__jinja2_1424a9c95f5ec8e60d413c42a25bc77a4b63ee8b.cache (79%)
+ create mode 100644 cache/jinja/__jinja2_1f7b67a24ba82817190ca9329b4e70f5b83d2aa8.cache
+ create mode 100644 cache/jinja/__jinja2_29f4b4300680b610c26f01cd4b344c99659e2ae7.cache
+ rewrite cache/jinja/__jinja2_42065261e76b7ac61d15945dd99b46d11ef2d31d.cache (77%)
+ create mode 100644 cache/jinja/__jinja2_45ac9368227a101d2f06edaefd1c3a89262c46de.cache
+ create mode 100644 cache/jinja/__jinja2_57b64e8d8c69c8a0309a317dada665de6a09131f.cache
+ create mode 100644 cache/jinja/__jinja2_5e39743f43676d71d1fbf5a3f5e6c7bcd0553d17.cache
+ rewrite cache/jinja/__jinja2_5e46cfeeff2a14274a55bed284465c9788e60bfe.cache (85%)
+ create mode 100644 cache/jinja/__jinja2_697232dc3c14dcf966cb673a46734538fbdcfaff.cache
+ create mode 100644 cache/jinja/__jinja2_7569c06e91d40657d212e7347a7c0ba9682aecbe.cache
+ create mode 100644 cache/jinja/__jinja2_85b3b28c2af8137138202b66ddb1de1e27daa0cb.cache
+ create mode 100644 cache/jinja/__jinja2_8a9ea377d370579847f6f32b831d680ddc1ceac5.cache
+ create mode 100644 cache/jinja/__jinja2_91ca140498c6809d832a9440553bc6cb8df50df9.cache
+ create mode 100644 cache/jinja/__jinja2_a77ac1ecf914de6946a75d0d3591cbafb1effc32.cache
+ create mode 100644 cache/jinja/__jinja2_abbd706e988d6c55c3dd152bf5ed1d756595f719.cache
+ create mode 100644 cache/jinja/__jinja2_b04036e3f5288f19927f5dc3b3651ec8b42f8e2c.cache
+ create mode 100644 cache/jinja/__jinja2_b807b7a7fd71f025befffb377825b9c7576fe519.cache
+ create mode 100644 cache/jinja/__jinja2_b94abb01e952cf6371a6460a7adcea55c54b074e.cache
+ rewrite cache/jinja/__jinja2_bf78ea284af06dd653f1623611857af052bad3c2.cache (81%)
+ create mode 100644 cache/jinja/__jinja2_c28a0a887f59ee48243095e6aad33a6c2aa828d2.cache
+ rewrite cache/jinja/__jinja2_d18a7e23288807856bde0b72920980e5c037e91e.cache (75%)
+ create mode 100644 cache/jinja/__jinja2_dcbc01075586f1698433d8ae5d61d6fc19df7f17.cache
+ create mode 100644 cache/jinja/__jinja2_e609ceaaa3f2e31193a281ee74d8fd5b52956a69.cache
+ create mode 100644 cache/jinja/__jinja2_e8c5fd6f2818e239fd5346c73f9f426dc69e894f.cache
+ create mode 100644 cache/jinja/__jinja2_f10aeb879f232e45fd0c98d26fe4402689ed79bb.cache
+ create mode 100644 cache/jinja/__jinja2_f9f7109b3bc5081e641cd485aefaf7bc634b5ee1.cache
+ create mode 100644 cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+ create mode 100644 cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html.dep
+ create mode 100644 cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html.es
+ create mode 100644 cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html.es.dep
+ create mode 100644 output/2017/12/index.html
+ create mode 100644 output/categories/binder.html
+ create mode 100644 output/categories/binder.xml
+ create mode 100644 output/categories/github.html
+ create mode 100644 output/categories/github.xml
+ create mode 100644 output/es/2017/12/index.html
+ create mode 100644 output/es/categories/binder.html
+ create mode 100644 output/es/categories/binder.xml
+ create mode 100644 output/es/categories/github.html
+ create mode 100644 output/es/categories/github.xml
+ rewrite output/es/galleries/bokehmagic/rss.xml (76%)
+ rewrite output/es/galleries/loadwrite/rss.xml (67%)
+ rewrite output/es/galleries/spellchecker/rss.xml (62%)
+ rewrite output/es/galleries/zenmode/rss.xml (73%)
+ create mode 100644 output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+ create mode 100644 output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+ rewrite output/galleries/bokehmagic/rss.xml (76%)
+ rewrite output/galleries/loadwrite/rss.xml (67%)
+ rewrite output/galleries/spellchecker/rss.xml (62%)
+ rewrite output/galleries/zenmode/rss.xml (73%)
+ create mode 100644 output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+ create mode 100644 output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

And I can push the content (git push origin master) using the terminal as we did in a previous step.

+

Visualize your site

This could be an issue because Nikola offers a nikola serve command to preview your site, but using it inside Binder is probably not trivial. And you can do a little trick to be able to explore the new content. You just need to deploy the output folder contaning the updated site under the same gh-pages branch from where you usually serve your site.

+

And you can do that quite easily with:

+

Note: git stash is only needed here because I am executing git commands from this very same future blog post

+ +
+
+
+
+
+
In [11]:
+
+
+
!git stash
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Saved working directory and index state WIP on master: 658c5e23 Build the site in my binder instance
+HEAD is now at 658c5e23 Build the site in my binder instance
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [12]:
+
+
+
!git checkout gh-pages
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Switched to branch 'gh-pages'
+Your branch is up-to-date with 'origin/gh-pages'.
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [14]:
+
+
+
!git checkout master -- ../output
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [15]:
+
+
+
!git commit -m "Add output dir to gh-pages to pre-visualize the changes"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[gh-pages 4fb3a46f] Add output dir to gh-pages to pre-visualize the changes
+ 490 files changed, 3060 insertions(+), 1162 deletions(-)
+ create mode 100644 output/2017/12/index.html
+ create mode 100644 output/categories/binder.html
+ create mode 100644 output/categories/binder.xml
+ create mode 100644 output/categories/github.html
+ create mode 100644 output/categories/github.xml
+ create mode 100644 output/es/2017/12/index.html
+ create mode 100644 output/es/categories/binder.html
+ create mode 100644 output/es/categories/binder.xml
+ create mode 100644 output/es/categories/github.html
+ create mode 100644 output/es/categories/github.xml
+ rewrite output/es/galleries/bokehmagic/rss.xml (97%)
+ rewrite output/es/galleries/spellchecker/rss.xml (73%)
+ rewrite output/es/galleries/trades/rss.xml (66%)
+ rewrite output/es/galleries/zenmode/rss.xml (79%)
+ create mode 100644 output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+ create mode 100644 output/es/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+ rewrite output/galleries/bokehmagic/rss.xml (97%)
+ rewrite output/galleries/spellchecker/rss.xml (73%)
+ rewrite output/galleries/trades/rss.xml (66%)
+ rewrite output/galleries/zenmode/rss.xml (79%)
+ create mode 100644 output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.html
+ create mode 100644 output/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

And now, you just push the content into the gh-pages branch with git push origin gh-pages (use the terminal as I indicarted before) and you can visit your draft site appeding output to the base url, in my case: http://www.damian.oquanta.info/output/.

+

If you are not happy with it, if it does not looks like right, just iterate with more changes! Otherwise you can go to the deploy step!

+

Deploy your site

OK, given the previous steps, I guess you will figure out how to perform the next steps:

+

NOTE: rm is only needed here because I am executing git commands from this very same future blog post

+ +
+
+
+
+
+
In [17]:
+
+
+
!rm binder-+-nikola-+-jupyter-+-github-blogging-resourceless.ipynb 
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [18]:
+
+
+
!git checkout master
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Switched to branch 'master'
+Your branch is up-to-date with 'origin/master'.
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [19]:
+
+
+
!git add -u
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [20]:
+
+
+
!git commit -m "Add new stuff to the blog post (mostly deploy section)"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[master 7927ad63] Add new stuff to the blog post (mostly deploy section)
+ 1 file changed, 291 insertions(+), 25 deletions(-)
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

In the terminal: git push origin master to persist the latest content... again. And use a subtree approach to split the output directory and put it as a new gh-pages branch.

+

Note: First delete the existing gh-pages branch to avoid conflicts and cd .. because you need to subtree from the top directory.

+ +
+
+
+
+
+
In [21]:
+
+
+
!git branch -d gh-pages
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
warning: deleting branch 'gh-pages' that has been merged to
+         'refs/remotes/origin/gh-pages', but not yet merged to HEAD.
+Deleted branch gh-pages (was 4fb3a46f).
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [22]:
+
+
+
cd ..
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
/home/jovyan
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [23]:
+
+
+
!git subtree split --prefix output -b gh-pages
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Created branch 'gh-pages'
+7092c69ccde3f7cd2a5d31c2a86b74739d665ac0
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Finally, in the terminal: git push -f origin gh-pages:gh-pages to deploy your site and remove the local gh-pages with git branch -D gh-pages.

+

And you are done!!!

+

Note: As you probably realized, you can run all the commands I described from the terminal and use the notebook just to write the blog posts. That would be, probably, the most common pattern. But this post in nicer and more explanatory if I run most of the commands here ;-)

+

Conclusion

You have your new post live, in a resourceless sort of workflow, thanks to the Jupyter ecosystem, Nikola and Github.

+

OK, long enough post. Sorry about that, but I need to give you the complete workflow if you want/need to use it.

+

Happy coding!

+

And blogging!

+ +
+
+
+ + diff --git a/cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.es.html.dep b/cache/posts/binder-+-nikola-+-jupyter-+-github-blogging-resourceless.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/blogging-with-nikola-and-ipython.es.html b/cache/posts/blogging-with-nikola-and-ipython.es.html new file mode 100644 index 00000000..c67d91f5 --- /dev/null +++ b/cache/posts/blogging-with-nikola-and-ipython.es.html @@ -0,0 +1,860 @@ + +
+
+
+
+

Alert! This post is outdated, please goto ;-) this link to get updated information.

+
+ +
+
+
+
+
+
+
+

NOTE: Obviously, this post was written in the IPython notebook and was rendered by Nikola (helped by nbconvert).

+ +
+
+
+
+
+
+
+

INGREDIENTS:

+ +
+
+
+
+
+
+
+ +

NOTE: The theme was tested with Nikola version 5.1

+ + +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

STEPS:

+ +
+
+
+
+
+
+
+
    +
  • Install Nikola and IPython (probably you have IPython installed if you are reading this post).
  • +
  • Install the site-ipython theme in your Nikola instalation. You can see some the documentation about how to do it here.
  • +
+

NOTE: Another way to do it is copying the site-ipython theme inside the nikola/data/themes folder BEFORE installing Nikola.

+

NOTE2: The recommended way to do it would be copying the site-ipython theme inside your_site after initialization of your_site. See below.

+
    +
  • Initialize your_site:
  • +
+

nikola init your_site

+

you can ask for

+

nikola --help

+

for other available options.

+
    +
  • Create a plugins folder inside your_site
  • +
  • Copy the compile_ipynb plugin (compile_ipynb.plugin file and the compile_ipynb folder, which are is located inside the extra-plugins folder in the Nikola master) in your_site/plugins/ folder.
  • +
  • Then, download the custom nbconvert and nbformat from here and put them inside your_site/plugins/compile_ipynb/ folder.
  • +
  • Finally, you have to put:
  • +
+ +
post_pages = (
+    ("posts/*.ipynb", "posts", "post.tmpl", True),
+    ("stories/*.ipynb", "stories", "story.tmpl", False),
+)
+

and

+ +
THEME = 'site-ipython'
+
+
+

in your conf.py file of your_site (you can modified the other pieces inside conf.py according to your needs).

+ +
+
+
+
+
+
+
+

NOTE: This setup is done only once time a life... hehe

+
+
+
+
+
+
+
+

USE:

+ +
+
+
+
+
+
+
+
    +
  • First create a new post:
  • +
+

nikola new_post -f ipynb

+ +
+
+
+
+
+
+
+

NOTE: IGNORE the -2 option in nikola new_page (it is no sense with the current implementation).

+ +
+
+
+
+
+
+
+

You will be asked for a title (you can also add the title and tags in the previous call).

+ +
+
+
+
+
+
+
+

Then, two files will be created by Nikola in the /posts folder of your_site: a meta file containing title, slug, time, tags (you can modified them with any text processor) and a naive ipynb file with the corresponding title.

+ +
+
+
+
+
+
+
+

You can init the ipython notebook inside this folder and modified the "post" notebook as you wish (do not forget to save the changes inside your notebook).

+ +
+
+
+
+
+
+
+
    +
  • Finally, just:
  • +
+

nikola build

+ +
+
+
+
+
+
+
+

and deploy the output folder containing your_site... to see it locally:

+

nikola serve

+ +
+
+
+
+
+
+
+

That's it all, my friend!

+ +
+
+
+
+
+
+
+

If you have any doubt, just tell me: @damianavila

+

Cheers,

+

Damián

+ +
+
+
+
+
+
+
+

PS: And now some cells to show you this is areal notebook...

+ +
+
+
+
+
+
In [1]:
+
+
+
pwd
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
Out[1]:
+ + + + +
+
u'/home/damian/Desarrollos/To_PR/SITIOS/Damian_blog_nikola/posts'
+
+ +
+ +
+
+ +
+
+ +
+
+
+
In [2]:
+
+
+
%pylab inline
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
+Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].
+For more information, type 'help(pylab)'.
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [3]:
+
+
+
x = linspace(0, 3*pi, 500)
+plot(x, sin(x**2))
+title('A simple chirp');
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + + + +
+ +
+ +
+ +
+
+ +
+
+ +
+
+
+
In [4]:
+
+
+
x = 1
+y = 4
+z = y/(1-x)
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
+---------------------------------------------------------------------------
+ZeroDivisionError                         Traceback (most recent call last)
+<ipython-input-4-dc39888fd1d2> in <module>()
+      1 x = 1
+      2 y = 4
+----> 3 z = y/(1-x)
+
+ZeroDivisionError: integer division or modulo by zero
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Courtesy of MathJax, you can include mathematical expressions both inline: +$e^{i\pi} + 1 = 0$ and displayed:

+

$$e^x=\sum_{i=0}^\infty \frac{1}{i!}x^i$$

+ +
+
+
+
+
+
In [5]:
+
+
+
from IPython.display import Image
+Image(url='http://python.org/images/python-logo.gif')
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
Out[5]:
+ + + +
+ +
+ +
+ +
+
+ +
+
+ +
+
+
+
In [6]:
+
+
+
from IPython.display import YouTubeVideo
+# a talk about IPython at Sage Days at U. Washington, Seattle.
+# Video credit: William Stein.
+YouTubeVideo('1j_HxD4iLn8')
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
Out[6]:
+ + + +
+ + + +
+ +
+ +
+
+ +
+
+ +
+
+
+
+
+

OK, enough... see you soon!

+ +
+
+
+ + diff --git a/cache/posts/blogging-with-nikola-and-ipython.es.html.dep b/cache/posts/blogging-with-nikola-and-ipython.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.es.html b/cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.es.html new file mode 100644 index 00000000..f6e3b263 --- /dev/null +++ b/cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.es.html @@ -0,0 +1,199 @@ + +
+
+
+
+

Some people are asking me how to change the IPython slides's defaults. You can see the description of the request here. Essentially, he wants to change the default transition between the slides.

+

To solve this question, we introduce the notion of IPython config files, which let us easily change things inside IPython.nbconvert (the library where the IPython slides lives) to achieve our desires, at least in the slideshow generation issue ;-)

+

First of all, you need to know some details: +

+
    +
  • The IPython slides are generated using a series of Jinja templates, so we are going to modify one of the templates to render the slideshow accordingly with our own defaults.
  • +
  • The IPython.nbconvert library was developed taking into account the need from some users to use customized things (where thing will be a template in this case, but we could modify other parts of IPython.nbconvert, probably I will cover this ideas in other posts).
  • +
  • The IPython machinery is very configurable through a Traitlets system! And because of this feature, IPython.nbconvert is able to take a custom config file and use it to render our IPython slides (or any other IPython.nbconvert formats).
  • +
+

OK, can you show me an example config file? Of course, here we go:

+ +
+
+
+
+
+
In [1]:
+
+
+
!cat /media/datos/Ejemplos/slides_config.py
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
c = get_config()
+
+c.Exporter.template_file = 'default_transition'
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

From the IPython docs:

+

A configuration file is simply a pure Python file that sets the attributes of a global, pre-created configuration object. This configuration object is a Config instance. While in a configuration file, to get a reference to this object, simply call the get_config() function. We inject this function into the global name-space that the configuration file is executed in,

+
+

So, we have to call the get_config() function and then use a custom template called 'default_transition' and assign it to c.Exporter.template_file attribute.

+

Oh, we need to write the 'default_transition' template yet, so here we go... again:

+ +
+
+
+
+
+
In [2]:
+
+
+
!cat /media/datos/Ejemplos/default_transition.tpl
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
{%- extends 'slides_reveal.tpl' -%}
+
+
+{% block body %}
+
+{{ super() }}
+
+<script>
+
+Reveal.initialize({
+
+    // Display controls in the bottom right corner
+    //controls: true,
+
+    // Display a presentation progress bar
+    //progress: true,
+
+    // Push each slide change to the browser history
+    //history: false,
+
+    // Enable keyboard shortcuts for navigation
+    //keyboard: true,
+
+    // Enable touch events for navigation
+    //touch: true,
+
+    // Enable the slide overview mode
+    //overview: true,
+
+    // Vertical centering of slides
+    //center: true,
+
+    // Loop the presentation
+    //loop: false,
+
+    // Change the presentation direction to be RTL
+    //rtl: false,
+
+    // Number of milliseconds between automatically proceeding to the
+    // next slide, disabled when set to 0, this value can be overwritten
+    // by using a data-autoslide attribute on your slides
+    //autoSlide: 0,
+
+    // Enable slide navigation via mouse wheel
+    //mouseWheel: false,
+
+    // Transition style
+    transition: 'concave', // default/cube/page/concave/zoom/linear/fade/none
+
+    // Transition speed
+    //transitionSpeed: 'default', // default/fast/slow
+
+    // Transition style for full page backgrounds
+    //backgroundTransition: 'default', // default/linear/none
+
+    // Theme
+    theme: 'sky' // available themes are in /css/theme
+
+});
+
+</script>
+
+{% endblock body %}
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

In the first line, {%- extends 'slides_reveal.tpl' -%} tells to the Jinja system that we are going to extend slides_reveal template (the default one, which IPython.nbconvert uses to build our common slides by default). Then, inside the {% block body %}, we call super():

+

From the Jinja docs:

+

Super Blocks +It’s possible to render the contents of the parent block by calling super.

+
+

We did it in this way because we want to render all the parent content and, after that, add our own content, essentially a config script for Reveal.js, calling Reveal.initialize.

+

OK, I have written a lot of configurable options you can play with, but I only left uncommented (and hence, they will be applied) the transition: 'concave' and theme: 'sky' options with my new choices, you can use your own ones.

+

Finally, you have to use the IPython.nbconvert library from command line, as usual, but pointing to the IPython config file you pretend to apply:

+

ipython nbconvert your_talk.ipynb --to slides --post serve --config slides_config.py

+

And you are done!

+

NOTE: Don't forget to put your ipynb, slides_config.py and default_transition.tpl files in the same folder where you will run the IPython.nbconvert command.

+

As you can see, the potentiality of this system (Jinja templating plus a powerful config system) is really big! We can achieve awesome things in a very easy way!

+

Any help, just let me know!

+

Addemdum: the use of default_transition.tpl generates an invalid but useful final html document. The cause behind this issue is the script containing the Reveal.initialize function, which is located after the closing body tag. All modern browser render this sort of invalid html witout any difficult. But a commenter arose this issue and I think is important to make it available in the post itself.

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.es.html.dep b/cache/posts/change-the-ipython-slides-defaults-with-an-ipython-config-file.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/coming-back.es.html b/cache/posts/coming-back.es.html new file mode 100644 index 00000000..747930db --- /dev/null +++ b/cache/posts/coming-back.es.html @@ -0,0 +1,28 @@ + +
+
+
+
+

OK... two years since my last post... exactly. Time goes fast, really fast! And a lot of things happened in the last two years.

+ + +

I am planning to write about those past things... about the experience I acquired during this time. But I am also interested into discuss new and exciting things, not only in the technical side, but also in other aspects of my interests and feelings.

+

I am hoping to write at least one post per week. Time constraints are really against this frequency but I will try it!

+

Let's do a quick update:

+
    +
  • My son, Facundo, is 3 years old now... and he's my Sun.
  • +
  • I live at Cordoba now... with my fiance, and my Moon, Daniela.
  • +
  • I have a lovely kitty called Bituinas (between us ;-)
  • +
  • I still do Software Development (for a living and for free) and I enjoy it a lot.
  • +
  • I am still involved with the Jupyter project. I am a Jupyter core developer and a Jupyter Steering Council member. RISE, the live Jupyter slideshow machinery, is widely used but I need to give it more love (and time).
  • +
  • Now, I am a gluten-free guy and because of that, I have lost weight and improved my arterial tension measurements ;-)
  • +
  • Recently, I restarted to practice Aikido.
  • +
+

And a lot of other things I should mention but I don't want to make this too long.

+

So... welcome back... again!

+ +
+
+
+ + diff --git a/cache/posts/coming-back.es.html.dep b/cache/posts/coming-back.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/customizing-your-ipython-slides.es.html b/cache/posts/customizing-your-ipython-slides.es.html new file mode 100644 index 00000000..13a2e3b5 --- /dev/null +++ b/cache/posts/customizing-your-ipython-slides.es.html @@ -0,0 +1,179 @@ + +
+
+
+
+

Some days ago, I received this message on G+:

+

In a future release, would be handy to add custom classes to slides so that you can use CSS rules to choose certain layouts for image slides, text, multiple charts, etc.

+
+

But... we already support this kind of customization! And it is clearly my fault that you don't know about this feature... so: +

+
    +
  1. I am very sorry for the lack of proper documentation (I am working on that ;-)).
  2. +
  3. In the meantime, you can look at this blog where I am documenting some important things for this slideshow platform.
  4. +
  5. You can also ask me whatever you want by twitter, G+, open issues at Github or make comments here, in my blog.
  6. +
+

Using this message as a trigger (and following with the serie of blog posts explaining some of the IPython slides features), I will explain you how to customize your IPython slides in just two steps:

+

NOTE: I will use, as a starting point, the following slides of a talk I gave to journalist and designers at Hacks/HackersBA, a story to write in another blog post...

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

Step 1. Create a custom.css file containing your css rules.

+ +
+
+
+
+
+
In [2]:
+
+
+
!cat /media/datos/Desarrollos/hackperiodismo/custom.css
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
/*Some css fixes to use night theme with IPython slides*/
+body {
+background-color: #111111;
+}
+.reveal p {
+color: white;
+}
+.reveal ul, ol {
+color: white;
+}
+div.output_area pre {
+color: white;
+}
+div.output_stderr {
+background: #F00;
+}
+.reveal table th, .reveal table td {
+color: white;
+}
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Step 2. Put this custom.css file in the same dir where your slides lives.

+ +
+
+
+
+
+
In [3]:
+
+
+
!ls /media/datos/Desarrollos/hackperiodismo
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
custom.css  figs  index2.html  index.html
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

NOTE: Here, I previously renamed my notebook.slides.html to index.html but it is not necessary for the customization.

+

And you are done!

+

The slideshow will read the custom.css file at last and overwrite the css rules according to your desires.

+

Pretty easy! ;-)

+

And now, the example slides rendered with a new darker style...

+

NOTE: In this case I applied the NIGHT reveal theme (adding ?theme=night to the url) and used the custom.css file to adjust some details ;-) (darker reveal themes need this kind of customization to be rendered OK).

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

You can change more fundamental things and make crazy stuff... just go ahead and let me know.

+

Enjoy!

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/customizing-your-ipython-slides.es.html.dep b/cache/posts/customizing-your-ipython-slides.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.es.html b/cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.es.html new file mode 100644 index 00000000..d0d124fb --- /dev/null +++ b/cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.es.html @@ -0,0 +1,139 @@ + +
+
+
+
+

Following the idea to release all the extensions I had working on in the last few weeks/months, today I will release an old but very useful IPython notebook extension for people blogging with Nikola: the nikola_deploy extension. +

+

Yes, I am always very original picking the names of the extensions ;-). A pic to illustrate the extension button at the toolbar:

+

+

Note: Nikola supports the ipynb file as an input... and using the IPython.nbconvert machinery it is able to render the static HTML representation of your ipynbs inside the complete infrastructure of a powerful static site engine.

+
+

First, to know some things about my blogging workflow using IPython, Nikola, git and gh-pages, I suggest you to re-read these previous posts:

+ +

OK, coming back to the extension, the idea behind this one is very simple: I will call the nikola deploy command from inside the IPython notebook using our beloved IPython.notebook.kernel.execute method, and also taking the advantage of passing commands to the underlying system just pre-pending with the ! mark. The relevant lines are below:

+
36    if (clean=="True") {
+37      IPython.notebook.kernel.execute('!nikola clean');
+38    }
+39    IPython.notebook.kernel.execute('!nikola build');
+40    IPython.notebook.kernel.execute('!nikola deploy');
+
+

After writing the content of my post following the workflow explained in previous posts, I just click on the nikola_deploy extension button and the site is cleaned (if you choose this option to True in the config file, please set it to False if you want a quick building), built and deployed automagically ;-)

+

And that's all... the complete code below:

+ +
+
+
+
+
+
In [1]:
+
+
+
cat -n /media/datos/Desarrollos/mIPyex/custom/nikola_deploy/main.js
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
     1	/*
+     2	* ----------------------------------------------------------------------------
+     3	* Copyright (c) 2013 - Damián Avila
+     4	*
+     5	* Distributed under the terms of the Modified BSD License.
+     6	*
+     7	* A little extension to deploy a nikola site/blog from the IPython notebook.
+     8	* -----------------------------------------------------------------------------
+     9	*/
+    10	
+    11	function messager() {
+    12	  var message = $('<div/>').append(
+    13	                  $("<p/></p>").addClass('dialog').html(
+    14	                    "Your ipynb-based site/blog post is being deployed now..."
+    15	                    )
+    16	                ).append(
+    17	                  $("<p/></p>").addClass('dialog').html(
+    18	                    "We clean (configurable), build and deploy your Nikola " +
+    19	                    "site/blog for you!"
+    20	                    )
+    21	                );
+    22	
+    23	  IPython.dialog.modal({
+    24	    title : "Nikola deployment",
+    25	    body : message,
+    26	    buttons : {
+    27	        OK : {class: "btn-danger"}
+    28	    }
+    29	  });
+    30	
+    31	}
+    32	
+    33	function nikolaDeploy(path, clean) {
+    34	  IPython.notebook.kernel.execute('%bookmark root');
+    35	  IPython.notebook.kernel.execute('%cd ' + path);
+    36	  if (clean=="True") {
+    37	    IPython.notebook.kernel.execute('!nikola clean');
+    38	  }
+    39	  IPython.notebook.kernel.execute('!nikola build');
+    40	  IPython.notebook.kernel.execute('!nikola deploy');
+    41	  IPython.notebook.kernel.execute('%cd -b root');
+    42	  messager();
+    43	}
+    44	
+    45	define(function() {
+    46	  return {
+    47	    parameters: function setup(param1, param2) {
+    48	      IPython.toolbar.add_buttons_group([
+    49	        {
+    50	        'label'   : 'Deploy Nikola site/blog',
+    51	        'icon'    : 'icon-upload-alt',
+    52	        'callback': function(){nikolaDeploy(param1, param2)},
+    53	        'id'      : 'start_nikola_deploy'
+    54	        },
+    55	      ])
+    56	    }
+    57	  }
+    58	});
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Again, the extension lives in this new repo: mIPyex, where I will upload the development versions of my own extensions. When I get them enough stable, I will make a copy of them in the IPython notebook extensions repo where you can get a lot of and useful interesting extensions.

+

OK, as you can see... it is very simple to blog with IPython and Nikola, so I invite you to try it now and let me know any ideas, comments or critics.

+

Enjoy!

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.es.html.dep b/cache/posts/deploy-your-nikola-powered-blog-content-from-the-ipython-notebook.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/different-ways-to-lead-an-open-source-project.es.html b/cache/posts/different-ways-to-lead-an-open-source-project.es.html new file mode 100644 index 00000000..c338212b --- /dev/null +++ b/cache/posts/different-ways-to-lead-an-open-source-project.es.html @@ -0,0 +1,26 @@ + +
+
+
+
+

Just a few lines, to trigger the discussion... to describe my point, I will pick two projects I have contributed (and I want to contribute even more): IPython and Nikola.

+

Some months ago, Brian Granger, a core developer from the IPython project gave a talk at SciPy 2013 where he said: +

+

Make features fight hard to be accepted and implemented. Communicate to the community and developers that the default answer to new feature requests is no (it's not personal!). Don't even consider implementation until the much of the community is crying "we absolutely must have this."

+
+

Some days ago, Roberto Alsina, a core developer from the Nikola project made a blog post where he said:

+

If you propose something you are getting heard and I am giving the proposal a fair shake. I may reject it, but not out of hand, but instead after some thought. And if I am unsure, it’s accepted. I would rather get something I am not fond of than drive out a contributor because I may change my mind, but a contributor that’s gone is not coming back.

+
+

Both projects are very successful, however they seems to go in opposite directions in the way they deal with features and contributors.

+

Probably they are living in different "times"... I mean, I see a "pattern" here:

+

Nikola, the younger, is toward the "left" side, embracing the "radical" view of the “universe”, whereas IPython, the older, is toward the "right" side, embracing the "conservative" view...

+

Let me be clear, I am not saying anything about the political ideas of those developers, I do not even know their political ideas... I just described a pattern I saw before with people, but it seems to be also relevant for open source projects.

+

I will probably write more about that, but I would like to know you ideas ;-)

+

Like I said at the beginning, just a few lines, to trigger the discussion...

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/different-ways-to-lead-an-open-source-project.es.html.dep b/cache/posts/different-ways-to-lead-an-open-source-project.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/dont-write-scripts-just-write-ipyscripts.es.html b/cache/posts/dont-write-scripts-just-write-ipyscripts.es.html new file mode 100644 index 00000000..c37b2d97 --- /dev/null +++ b/cache/posts/dont-write-scripts-just-write-ipyscripts.es.html @@ -0,0 +1,237 @@ + +
+
+
+
+

I usually have some repetitive tasks in my daily work-flow. You probably have some of those too. To save some minutes from your day, you probably write little scripts to do these jobs.

+

I used to do that... but now I am only writing little IPython notebooks to do these simple jobs, I call them ipyscripts (yes, I won a prize for originality, he he!).

+

These ipyscripts are IPython-powered, so we can use all the IPython's machinery to do complex things in a simple way... +

+

In fact, you are reading a example ipyscript, because this is an IPython notebook (and a blog post too), and the following example deal with a repetitive task I do frequently: the git update of some projects (I contribute to some of them, I follow some others).

+

First, I load a simple list with the projects I want to update:

+ +
+
+
+
+
+
In [1]:
+
+
+
list_of_projects = ["ipython", 
+                    "kilink", 
+                    "live_reveal", 
+                    "nbviewer", 
+                    "nikola", 
+                    "reveal.js"]
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

Second, I save my current directory using the IPython bookmark system:

+ +
+
+
+
+
+
In [2]:
+
+
+
%bookmark root
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

Third, I define a function to deal with the git update itself:

+ +
+
+
+
+
+
In [3]:
+
+
+
def update(folder):
+    %cd {folder}
+    !git status
+    !git checkout master
+    !git remote -v
+    !git pull origin
+    %cd -b root
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

You can see here how I am using a lot of tricks from the IPython machinery to make a lot of things in a couple of lines.

+

The main idea is cd into a specific project folder. I use the braces to pass python variables and expressions to the shell. In this case, I will pass an element of the list_of_projects, I mean the name of the folder containing the desired project. Then, I do the git stuff, just prepending the command with the ! sign to pass them to the underlying shell. Finally, I cd into the main directory to get the things prepared to the next loop.

+

Fourth, I do a simple for loop to iterate through the elements inside the list_of_projects and to do the git update in each of these projects.

+ +
+
+
+
+
+
In [4]:
+
+
+
for i in xrange(len(list_of_projects)):
+    update(list_of_projects[i])
+    print "---------------------------------"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
/media/datos/Desarrollos/ipython
+# En la rama master
+nothing to commit, working directory clean
+Ya está en «master»
+damianavila	git@github.com:damianavila/ipython.git (fetch)
+damianavila	git@github.com:damianavila/ipython.git (push)
+origin	git@github.com:ipython/ipython.git (fetch)
+origin	git@github.com:ipython/ipython.git (push)
+Already up-to-date.
+(bookmark:root) -> /media/datos/Desarrollos
+/media/datos/Desarrollos
+---------------------------------
+/media/datos/Desarrollos/kilink
+# En la rama master
+nothing to commit, working directory clean
+Ya está en «master»
+damianavila	git@github.com:damianavila/kilink.git (fetch)
+damianavila	git@github.com:damianavila/kilink.git (push)
+origin	git@github.com:facundobatista/kilink.git (fetch)
+origin	git@github.com:facundobatista/kilink.git (push)
+Already up-to-date.
+(bookmark:root) -> /media/datos/Desarrollos
+/media/datos/Desarrollos
+---------------------------------
+/media/datos/Desarrollos/live_reveal
+# En la rama master
+nothing to commit, working directory clean
+Ya está en «master»
+origin	git@github.com:ipython-contrib/live_reveal.git (fetch)
+origin	git@github.com:ipython-contrib/live_reveal.git (push)
+Already up-to-date.
+(bookmark:root) -> /media/datos/Desarrollos
+/media/datos/Desarrollos
+---------------------------------
+/media/datos/Desarrollos/nbviewer
+# En la rama master
+nothing to commit, working directory clean
+Ya está en «master»
+heroku	git@heroku.com:zarara.git (fetch)
+heroku	git@heroku.com:zarara.git (push)
+origin	git@github.com:ipython/nbviewer.git (fetch)
+origin	git@github.com:ipython/nbviewer.git (push)
+zarara	git@heroku.com:zarara.git (fetch)
+zarara	git@heroku.com:zarara.git (push)
+Already up-to-date.
+(bookmark:root) -> /media/datos/Desarrollos
+/media/datos/Desarrollos
+---------------------------------
+/media/datos/Desarrollos/nikola
+# En la rama master
+nothing to commit, working directory clean
+Ya está en «master»
+damianavila	git@github.com:damianavila/nikola.git (fetch)
+damianavila	git@github.com:damianavila/nikola.git (push)
+origin	git@github.com:getnikola/nikola.git (fetch)
+origin	git@github.com:getnikola/nikola.git (push)
+Already up-to-date.
+(bookmark:root) -> /media/datos/Desarrollos
+/media/datos/Desarrollos
+---------------------------------
+/media/datos/Desarrollos/reveal.js
+# En la rama master
+nothing to commit, working directory clean
+Ya está en «master»
+origin	git@github.com:hakimel/reveal.js.git (fetch)
+origin	git@github.com:hakimel/reveal.js.git (push)
+Already up-to-date.
+(bookmark:root) -> /media/datos/Desarrollos
+/media/datos/Desarrollos
+---------------------------------
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+
+

ADDENDUM:

+

You can actually do:

+
for i in list_of_projects: 
+    update(i)
+print "---------------------------------"
+
+

But, this is an example, and I wanted to emphasize the fact that you can pass complex arguments inside the braces... Thanks Lex for your comment, I forgot to add this explanation!

+
+

And that's all! The next time you have to do this task, just run this notebook (properly customized for your projects) and you will get the job done!

+

NOTE: And now, the icing on the cake... if you are in IPython master, you do not even need to open the notebook to run it... just open an IPython console or notebook and write the next sentence:

+

%run your_ipyscript.ipynb

+

Yes, you can use the %run magic to run all the code cells from the notebook you pass as an argument ;-) Niceeeeeeeeeee!

+

NOTE 2: There is an ongoing PR to make this %run notebook extensive to notebooks containing non-code cells.

+

OK, I hope you enjoy this post. And I also hope you begin to write ipyscripts.

+

See you!

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/dont-write-scripts-just-write-ipyscripts.es.html.dep b/cache/posts/dont-write-scripts-just-write-ipyscripts.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/facundo.es.html b/cache/posts/facundo.es.html new file mode 100644 index 00000000..aa915104 --- /dev/null +++ b/cache/posts/facundo.es.html @@ -0,0 +1,69 @@ +

Facu llegó... y ¡antes de lo esperado!

+

Nació ayer, 7 de noviembre, a las 8:00 am en ciudad de La Plata. +36 semanas de gestación (un mes antes de lo previsto), 2400 gr. y la altura, para la próxima...

+

Toda la aventura fue muy rápida. Alrededor de las 4:30 am, Lore logró despertarme (me había dormido sólo un par de horas antes). +Se sentía dolorida. Pero en ese momento, nada nos hacía pensar que estuviese comenzando con el trabajo de parto. +Era un dolor leve, pero molesto. Pasaron los minutos. Los dolores aumentaron en intensidad y se hicieron regulares: contracciones. +Empezamos a sospechar. Llamamos a la partera, quien nos recomendó esperar al menos dos horas más, cuantificando las contracciones +en intensidad (fácilmente... a través de las caras que ponía Lore) y, sobre todo, la frecuencia. Hicimos caso. En parte...

+ +

Al cabo de una hora, y con contracciones que duraban un minuto (e intervalos de relajación de dos minutos), +llamamos nuevamente a la partera quien nos recomendó, amablemente, acercarnos a la clínica con la mayor celeridad posible. +Por las dudas, tuve el tupé de armar el bolso de Facu (sí, deberíamos haberlo armado un tiempo antes), +terminar de armar el bolso de Lore y preparar mi mochila.

+

A las 6:30, sólo 2 horas después de las primeras molestias, Lore estaba realmente dolorida, al punto que me costó subirla al auto. +Llegamos a la clínica. La partera nos estaba esperando. La llave de la sala de parto viajaba en el bolsillo de alguna enfermera. +Tuvimos que esperar unos 15 minutos. Para Lore fue una espera de dos horas.

+

Y entramos a la sala, sentamos a Lore en el sillón de parto y resulta que tenía dilatación completa. En criollo... +"Facu, aguantá que la obstetra todavía no llegó". Pasaron cinco minutos. O diez. Finalmente, llegó. +Tres o cuatro pujes. Facu llorando. Yo también. El momento de mi vida.

+

Facu estaba en perfectas condiciones. Lore estaba muy bien. El día avanzó entre visitas de los seres queridos. +Entramos a la clínica el martes a 7:00 am, salimos al día siguiente (hoy) al mediodía.

+

Ya estamos en casa. Acaban de dormirse. Yo, cocinando, ordenando y escribiendo.

+

Sólo quería contarles...

+

Damián.

+

PD: algunas fotitos para que se deleiten... las primeras con el celu... las últimas con la cámara...

+
+http://www.damian.oquanta.info/galleries/Facu_RN/Facu1.png +

¡Qué largo y flaco que soy!

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/Facu2.png +

Y ahora de costadete...

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/Facu3.png +

Parece que tenía hambre...

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/Facu4.png +

Durmiendo en brazos del papi.

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/Facu5.png +

¡Uy! Me olvidé de avisar...

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/DSC05901.JPG +

¡Otra vez sopa... digo, teta!

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/DSC05903.JPG +

¡Qué lindo es dormir! Episodio I

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/DSC05917.JPG +

¡Qué lindo es dormir! Episodio II

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/DSC05918.JPG +

¡Qué lindo es dormir! Episodio III

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/DSC05925.JPG +

¡Cómo podría ser de otra manera... jeje!

+
+
+http://www.damian.oquanta.info/galleries/Facu_RN/DSC05928.JPG +

Cuna improvisada... se nota que llegó un mes antes, ¿no? jeje!

+
diff --git a/cache/posts/facundo.es.html.dep b/cache/posts/facundo.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/hello-world-again.es.html b/cache/posts/hello-world-again.es.html new file mode 100644 index 00000000..4aee3cda --- /dev/null +++ b/cache/posts/hello-world-again.es.html @@ -0,0 +1,6 @@ +

Ustedes saben que, en otras épocas, he tratado de mantener "vivos" un par de blogs. +Este es un nuevo ensayo... +Esta vez, no les prometo postear todos los días... pero si tienen paciencia, +podrán leer algunas "cosas" interesantes (al menos interesantes para mi).

+

Nos vemos pronto!

+

Damián.

diff --git a/cache/posts/hello-world-again.es.html.dep b/cache/posts/hello-world-again.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/hide-the-input-cells-from-your-ipython-slides.es.html b/cache/posts/hide-the-input-cells-from-your-ipython-slides.es.html new file mode 100644 index 00000000..b779e98a --- /dev/null +++ b/cache/posts/hide-the-input-cells-from-your-ipython-slides.es.html @@ -0,0 +1,120 @@ + +
+
+
+
+

A tweet arrived...

+

+

And my answer was YES...

+

How we can easily do it? Just follow these few steps: +

+

Rational: We are going to use the power of IPython.nbconvert library to use a modified jinja template which will let us hide theinput cells in our IPython slides. To achieve this goal, we are going to use the same approach described in a previous post. Hence, our input cells will be hidden by default, but they will show up if we click on the corresponding output cell area.

+

OK, I first wrote a custom template and named it as output_toggle.tpl:

+ +
+
+
+
+
+
In [1]:
+
+
+
!cat /media/datos/Ejemplos/output_toggle.tpl
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
{%- extends 'slides_reveal.tpl' -%}
+
+{% block input_group -%}
+<div class="input_hidden">
+{{ super() }}
+</div>
+{% endblock input_group %}
+
+{%- block header -%}
+{{ super() }}
+
+<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
+
+<style type="text/css">
+//div.output_wrapper {
+//  margin-top: 0px;
+//}
+.input_hidden {
+  display: none;
+//  margin-top: 5px;
+}
+</style>
+
+<script>
+$(document).ready(function(){
+  $(".output_wrapper").click(function(){
+      $(this).prev('.input_hidden').slideToggle();
+  });
+})
+</script>
+{%- endblock header -%}
+
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

The code is simple, but for a detailed explanation see my previous post.

+

Briefly, I just changed obvious things such as the encompassing of the input_group and the calling of .prev() method (instead of .next() one) inside the little javascript snippet.

+

Now, the second and last step was:

+

ipython nbconvert your_slides.ipynb --to slides --template output_toggle --post serve

+

and I got something like this (navigate and try it!):

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

OK, as you have seen in the example, your IPython slides will be delivered showing just the output cells... but if you need to show some input cells, just click on the corresponding output cell and you will get them. Nice, uh!

+

Hope it helps Thomas (and all the other people using the IPython slides)!

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/hide-the-input-cells-from-your-ipython-slides.es.html.dep b/cache/posts/hide-the-input-cells-from-your-ipython-slides.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/how-to-pin-conda.es.html b/cache/posts/how-to-pin-conda.es.html new file mode 100644 index 00000000..a39820da --- /dev/null +++ b/cache/posts/how-to-pin-conda.es.html @@ -0,0 +1,29 @@ + +
+
+
+
+

One interesting advance feature in Conda is the capacity to pin packages from your environments so they can not be updated at all. If you are interested in that specific version of some package and not the next one because it breaks your work completely or for some other reason, you are probably pinning that package. If you are adding the specific version in every command you run instead of pinning the package, you are doing it wrong and you should keep reading ;-)

+

But, is it possible to pin Conda itself so it does not get updated every time you try to install/update something else? +

+

If you don't know what Conda is, you should probably go here and learn a little bit about it. For the lazy ones:

+

Conda is an open source package management system and environment management system for installing multiple versions of software packages and their dependencies and switching easily between them. It works on Linux, OS X and Windows, and was created for Python programs but can package and distribute any software.

+
+

One interesting behavior in Conda is that it gets updated to the latest version every time you try to install/update something else. That is a reasonable behavior in the general context but, for some specific use cases, that can be undesirable. This motivates the main question I raised before: is it possible to pin Conda itself so it does not get updated every time you try to install/update something else?

+

I have heard a lot of people saying it is impossible to pin Conda, BUT that's not the case ;-)

+

You can pin Conda the same way you pin any other package.

+

Let me show you how you can do it... is really simple:

+
echo "conda ==4.0.0" >> ~/anaconda/conda-meta/pinned
+
+

This will create (or pass the string into) a file called pinned containing the conda package version you wish to keep (in this case, I choose the version 4.0.0). This pinned file should be located in the conda-meta directory of your anaconda (or miniconda) installation. Then, every time you try to install or update something, this pinned file is read by Conda and the line with the conda specific version is added to the list sent to the SAT solver, hence you will always have that specification enabled, preventing you from updating to a newer Conda. Nice, don't you think?

+

You can remove that file when you are ready to catch a new Conda version or alternatively you can run conda install/update commands with the --no-pin option.

+

Hope this helps others! If not, at least, it was fun to play a little bit with this feature!

+

See you next time!

+

PS1: Thanks Will for reviewing my wording!

+

PS2: Starting Conda version 4.0.9, you have a new config option called auto_update_conda to disable the self update nature in Conda.

+ +
+
+
+ + diff --git a/cache/posts/how-to-pin-conda.es.html.dep b/cache/posts/how-to-pin-conda.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/improving-viper-slideshows-styling.es.html b/cache/posts/improving-viper-slideshows-styling.es.html new file mode 100644 index 00000000..f6c90305 --- /dev/null +++ b/cache/posts/improving-viper-slideshows-styling.es.html @@ -0,0 +1,7 @@ +

Este último fin de semana tuve un ratito para trabajar en el "styling" de las presentaciones que provee vIPer +(a partir de los notebooks de IPython).

+

A continuación pueden ver un ejemplo:

+ +

Si presionan la tecla "h" verán, sobre la izquierda, las opciones disponibles en la presentación.

+

¡Diviértanse!

+

Damián.

diff --git a/cache/posts/improving-viper-slideshows-styling.es.html.dep b/cache/posts/improving-viper-slideshows-styling.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/ipython-plugin-for-nikola-updated.es.html b/cache/posts/ipython-plugin-for-nikola-updated.es.html new file mode 100644 index 00000000..042023b6 --- /dev/null +++ b/cache/posts/ipython-plugin-for-nikola-updated.es.html @@ -0,0 +1,65 @@ + +
+
+
+
+

I am pleased to announce the new version of the IPython plugin for Nikola.

+

This new version has been incorporated into Nikola master a few weeks ago, so it is now available in the last release of Nikola, 5.5.1.

+

Now that IPython has achieved the 1.0 release, and with the incorporation of nbconvert as a part of the IPython machinery, the IPython plugin no longer needs to use a customized version of the old nbconvert, instead it is now using the the power of the new IPython.nbconvert infrastructure to export the ipynb files to HTML pieces to be rendered by Nikola.

+

With the simplification of the infrastructure, it is now easier to setup your blog to use the plugin following this five steps: +

+

Note: I will explain from the ground, you probably can skip some steps if you are an IPython and Nikola user...

+
    +
  1. Install (you can do it using pip install inside a virtualenv):

    +
      +
    • IPython 1.0 (also pyzmq, tornado and jinja2, as notebook dependencies)
    • +
    • Nikola 5.5.1
    • +
    • Requests
    • +
    • Sphinx
    • +
    +
  2. +
  3. Init your site:

    +
      +
    • nikola init your_blog
    • +
    • cd in your_blog
    • +
    +
  4. +
  5. Download the IPython theme:

    +
      +
    • nikola install_theme -l to list all the available themes in Nikola
    • +
    • nikola install_theme jinja-site-ipython or any theme with the ipython word in their names ie, you have a xkcd-site-ipython theme if you want a xkcd sytling for your blog ;-).
    • +
    +
  6. +
+

Note: Beware of the available sub_themes because probably you will need some css adjustments to use it. You can also write your custom theme if you want ;-).

+
    +
  1. Modify your conf.py file:

    +
      +
    • add the following lines to your post_pages:

      +

      ("posts/*.ipynb", "posts", "post.tmpl", True), + ("stories/*.ipynb", "stories", "story.tmpl", False),

      +
    • +
    • and make explicit to use the IPython theme:

      +

      THEME = 'jinja-site-ipython'

      +
    • +
    +
  2. +
+

Note: You have to do all this four steps just once, then you will only do step 5 for writing your post.

+
    +
  1. Finally:
      +
    • To write a new post, just: nikola new_post -f ipynb (you can avoid -f ipynb if you have only ipynb references in your post_pages).
    • +
    • Then, nikola build to build the site and nikola serve to see it.
    • +
    +
  2. +
+

Easier, don't you think?

+

Ok, if you need any help or find any bug, just let us known open an issue on github or blame on me here ;-)

+

Cheers.

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/ipython-plugin-for-nikola-updated.es.html.dep b/cache/posts/ipython-plugin-for-nikola-updated.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/live-trading-logbook.es.html b/cache/posts/live-trading-logbook.es.html new file mode 100644 index 00000000..0a972a8b --- /dev/null +++ b/cache/posts/live-trading-logbook.es.html @@ -0,0 +1,69 @@ + +
+
+
+
+

After some weeks of silence, he he... I come back with a short post about live trading in the forex market. +As you probably know [if not, you are knowing it right now ;-)], one of my interests is the analysis, modeling and forecasting of financial time series. To make it short, I have developed some statistical models to forecast the dynamic of selected portfolios. +Currently, I am trading equities and other more complex financial derivatives. But my models are also suitable to apply to other markets, ie. the foreign exchange market (yes... forex). So, I made a quick research on some interesting forex pairs and then I started a little account to perform some live trades accordingly to these models. +And now, I pretend to log the trades from this little account in a subset of post on my blog, a sort of public live trading logbook.

+

OK, we can start the logging right now! I opened two short positions some days ago: +

+ + + + + + + + + + + + + + + + + + + + + + +
TicketDateTransactionCurrency PairPrice
13504343072013-11-05 22:08:02Sell MarketGBP/AUD1.68983
13504342982013-11-05 22:07:59Sell MarketAUD/USD0.94939

And is time to close them... so closing them whereas I am writing this post (just wait me a minute, I will be back!).

+

OK, I closed both positions:

+ + + + + + + + + + + + + + + + + + + + + + +
TicketDateTransactionCurrency PairPrice
13558933842013-11-13 01:25:10Close TradeGBP/AUD1.70790
13558933782013-11-13 01:25:09Close TradeAUD/USD0.93063

And I added some pics to illustrate these trades:

+

+

+

With these trades, we had a net increment of 4.5% in the balance!

+

Nice beginning! Let's see how far we can go...

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/live-trading-logbook.es.html.dep b/cache/posts/live-trading-logbook.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.es.html b/cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.es.html new file mode 100644 index 00000000..b06fbafd --- /dev/null +++ b/cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.es.html @@ -0,0 +1,128 @@ + +
+
+
+
+

Coming back to the nice practice of release my own IPython nbextensions, today I will release two extensions I use a lot in my daily workflow: loader and writer, useful extensions to load files into the IPython notebook and to write the content to the same (or another) file. +

+

Note: These extensions were developed some months ago, and probably you can write better versions of them using the new IPython widget infrastructure, but these were nice hacks and they are still useful in th IPython 1.x and 2.x series, so I think they deserve to go public.

+

I used the IPython notebook a lot, you know that if you are frequently reading my blog. Not only to write blog posts, but also to write other kind of stuff, for instance: code. Some time ago, I used to write code in a plain text editor next to an IPython console, sometimes I used NINJA-IDE because it is a nice and featured platform. But right now, I am developing inside the IPython notebook because it gives me the text editor and the console in one place, with a lot of other useful features. But I will postpone the description of my workflow for some post to come in the future.

+

I just want to tell you how I easily fixed a missing feature (for now, because it will be present in the future, for sure) in the IPython notebook using nbextensions. The problem was simple, you can use the %load and %write_file magics to load and write files. But I want some minimal user inteface to:

+
    +
  1. select which file to load,
  2. +
  3. write a cell content to a file with just a click.
  4. +
+

So I wrote loader and writer...

+

loader nbextension use FileReader() capability of modern browsers. The implementation is simple and you can find more complex examples on the web:

+
function loadFileAsText() {
+    var fileToLoad = document.getElementById("fileToLoad_" + i).files[0];
+    var fileReader = new FileReader();
+    fileReader.onload = function(fileLoadedEvent) {
+        var textFromFileLoaded = fileLoadedEvent.target.result;
+        IPython.notebook.get_selected_cell().set_text('name: ' + fileToLoad.name + '\n' +
+                                                      'type: ' + fileToLoad.type + '\n' +
+                                                      'size: ' + fileToLoad.size + ' bytes \n' +
+                                                      '---- \n' + textFromFileLoaded);
+    };
+    fileReader.readAsText(fileToLoad, "UTF-8");
+}
+
+

So after selecting a cell, I click on the loader button, I get this:

+

+

And if I click on Seleccionar archivo (Select file) I can navigate trough my file system to get the file I want to load. For instance, I will load some text, in this case a Bokeh plot, in the next cell:

+ +
+
+
+
+
+
In [ ]:
+
+
+
name: themes.py
+type: text/x-python
+size: 1055 bytes 
+---- 
+# -*- coding: utf-8 -*-
+
+import numpy as np
+import scipy.special
+from bokeh.plotting import *
+
+mu, sigma = 0, 0.5
+
+measured = np.random.normal(mu, sigma, 1000)
+hist, edges = np.histogram(measured, density=True, bins=20)
+
+x = np.linspace(-2, 2, 1000)
+pdf = 1 / (sigma * np.sqrt(2 * np.pi)) * np.exp(-(x - mu) ** 2 / (2 * sigma ** 2))
+cdf = (1 + scipy.special.erf((x - mu) / np.sqrt(2 * sigma ** 2))) / 2
+
+output_file('histogram.html')
+
+hold()
+
+figure(title="Normal Distribution (μ=0, σ=0.5)", tools="previewsave",
+       background_fill="#E5E5E5")
+quad(top=hist, bottom=np.zeros(len(hist)), left=edges[:-1], right=edges[1:],
+     fill_color="#333333", line_color="#E5E5E5", line_width=3)
+
+# Use `line` renderers to display the PDF and CDF
+line(x, pdf, line_color="#348abd", line_width=8, alpha=0.7, legend="PDF")
+line(x, cdf, line_color="#7a68a6", line_width=8, alpha=0.7, legend="CDF")
+
+xgrid().grid_line_color = "white"
+xgrid().grid_line_width = 3
+ygrid().grid_line_color = "white"
+ygrid().grid_line_width = 3
+
+legend().orientation = "top_left"
+
+show()
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

Which gives me this nice plot... but I will post in detail about Bokeh soon ;-)

+

+

As you can see, the three first lines of the loaded text give you information about the file itself. Under the ---- rule, you will have the file content. Then, you can do whatever modification you want and write it to a file (the same or another one) using the writer nbextension:

+

+

writer nbextension is using %writefile magic under the hood:

+
IPython.dialog.modal({
+    title: "Create a file with your cell content",
+    body: dialogform,
+        buttons: {
+            "OK": { class : "btn-primary",
+                click: function() {
+                   var corr_input = "%%writefile " + $.trim($(textarea).val()) + 
+                                    "\n" + input;
+                   IPython.notebook.kernel.execute(corr_input);
+            }},
+            Cancel: {}
+        }
+});
+
+

but it takes care about writing only the miningful content, I mean it will avoid writing the four first lines of you cell.

+
var preInput = IPython.notebook.get_selected_cell().get_text();
+var input = preInput.split('\n').slice(4).join('\n');
+
+

As you can see loader and writer work in pairs! And they make the laod, edit and save of any text file really quick and successful. I want to keep this post short, so I will stop here, but you can easily see how these simple extensions can help you a lot in your daily workflow.

+

As usual, the extensions live in this repo: mIPyex, where I will upload the development versions of my own extensions. You can see the full implementation there. When I get them enough stable, I will make a copy of them in the IPython notebook extensions repo where you can get a lot of and useful interesting extensions.

+

OK, as you can see... now it is very simple to load, edit an save text with the IPython notebook. And it will be easier in the future...

+

Enjoy!

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.es.html.dep b/cache/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/make-your-slides-with-ipython.es.html b/cache/posts/make-your-slides-with-ipython.es.html new file mode 100644 index 00000000..c31e9ab8 --- /dev/null +++ b/cache/posts/make-your-slides-with-ipython.es.html @@ -0,0 +1,58 @@ + +
+
+
+
+

With the integration of nbconvert inside IPython, the last 1.0 release has the possibility to export the ipynb to other formats such as rst, markdown, latex, html and slides (info).

+

The slides option generates a Reveal.js-powered HTML slideshow, like this one: +

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

These are my slides from the talk I gave at SciPy 2013 (Texas) featuring this exporter I previously developed in the old nbconvert project and now merged (and available) in the last release (1.0) of IPython.

+

You can also see the video of the talk:

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

As you can see, before I had to use an independent nbconvert library... now is easier ;-)

+

Just one line:

+

ipython nbconvert your_slides.ipynb --to slides

+

But, the resulting slideshow has to be served by an HTTP server. Because, we care of you ;-), just add --post serve at the command-line:

+

ipython nbconvert your_slides.ipynb --to slides --post serve

+

And your browser will open a tab containing your slides...

+

There is a lot of possibility from here... but I will write some of them later.

+

Enjoy it!

+

Damián

+

PS: Please report any bug or give me you feedback to make this tool better!

+ +
+
+
+ + diff --git a/cache/posts/make-your-slides-with-ipython.es.html.dep b/cache/posts/make-your-slides-with-ipython.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/mimic-the-ipython-notebook-cell-execution.es.html b/cache/posts/mimic-the-ipython-notebook-cell-execution.es.html new file mode 100644 index 00000000..4e24c1b8 --- /dev/null +++ b/cache/posts/mimic-the-ipython-notebook-cell-execution.es.html @@ -0,0 +1,263 @@ + +
+
+
+
+

Yesterday, I was visiting the Jake VanderPlas's Scientific Python Course site because of some issues raised at the ipython-dev mailing list (and obviously, because Jake usually do amazing things).

+

To build his site, Jake wrote an Hyde plugin to render ipynb files to static html files using the IPython.convert platform. You can see an example of the final rendered document here.

+

When I saw the final document, I wondered if we could have hidden output cells which automatically get visible after a click over the input cell... and then, I made some experiments using the power of the IPython.nbconvert library ;-) +

+

NOTE: From here, to see the output of each cell, please click on the input area and surprise yourself!

+

First, we needed to rewrite some things at the Jinja template level:

+ +
+
+
+
+
+
In [1]:
+
+
+
!sed -n 1,7p /media/datos/Ejemplos/toggle.tpl
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
{%- extends 'html_full.tpl' -%}
+
+{% block output_group %}
+<div class="output_hidden">
+{{ super() }}
+</div>
+{% endblock output_group %}
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

We had to rewrite the output_group block to encompass it with a new output_hidden-classed div, which we would use in a simple Javascript function later.

+

Second, we needed to write that little Javascript snippet:

+ +
+
+
+
+
+
In [2]:
+
+
+
!sed -n 25,29p /media/datos/Ejemplos/toggle.tpl
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
$(document).ready(function(){
+  $(".input").click(function(){
+      $(this).next('.output_hidden').slideToggle();
+  });
+})
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Here, we used the .slideToggle() method to display or hide the output_hidden-classed div elements (with a nice sliding motion) when the user makes a click on the input cells. We was using jQuery, so we needed to load jQquery, ie. using the following line:

+

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

+

Finally, we added some css to make the output_hidden-classed div not visible (hidden by default):

+ +
+
+
+
+
+
In [3]:
+
+
+
!sed -n 18,21p /media/datos/Ejemplos/toggle.tpl
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
.output_hidden {
+  display: none;
+  margin-top: 5px;
+}
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

If you put all these snippets together, you will get the following template:

+ +
+
+
+
+
+
In [4]:
+
+
+
!cat -n /media/datos/Ejemplos/toggle.tpl
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
     1	{%- extends 'html_full.tpl' -%}
+     2	
+     3	{% block output_group %}
+     4	<div class="output_hidden">
+     5	{{ super() }}
+     6	</div>
+     7	{% endblock output_group %}
+     8	
+     9	{%- block header -%}
+    10	{{ super() }}
+    11	
+    12	<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
+    13	
+    14	<style type="text/css">
+    15	div.output_wrapper {
+    16	  margin-top: 0px;
+    17	}
+    18	.output_hidden {
+    19	  display: none;
+    20	  margin-top: 5px;
+    21	}
+    22	</style>
+    23	
+    24	<script>
+    25	$(document).ready(function(){
+    26	  $(".input").click(function(){
+    27	      $(this).next('.output_hidden').slideToggle();
+    28	  });
+    29	})
+    30	</script>
+    31	{%- endblock header -%}
+    32	
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

To use it, just add --template toggle to your ipython nbconvert call, ie:

+

ipython nbconvert your_notebook.ipynb --to html --template toggle --post serve

+

or add the toggle.tpl file to you IPython nbconvert config file.

+

If you are reading this line, you probably have already experienced the demo in this post (btw, I like to do demos explaining the tools with the tools themselves).

+

Obviously, I quickly implemented this functionality inside Nikola and, as a consequence, in Nikola master, you now have the possibility to pass an IPython config dict to your Nikola conf.py file, making the ipynb plugin for Nikola more powerful than before ;-)

+

To conclude, the possibility to mimic the IPython notebook execution is very useful for introductory courses and to publish content in a shorter but more interactive way.

+

Hope you enjoy it!

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/mimic-the-ipython-notebook-cell-execution.es.html.dep b/cache/posts/mimic-the-ipython-notebook-cell-execution.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/my-aikido-shodan-test.es.html b/cache/posts/my-aikido-shodan-test.es.html new file mode 100644 index 00000000..776f0388 --- /dev/null +++ b/cache/posts/my-aikido-shodan-test.es.html @@ -0,0 +1,29 @@ + +
+
+
+
+

Querés saber como se vé un exámen de Aikido para 1er Dan? Bueno, esta es tu oportunidad! Sólo necesitás seguir leyendo un ratito más ;-) +

+

Tuvimos un seminario de Aikido e Iaido durante dos días dictado por el Shihan Ricardo Corbal. +Ayer, al término de dos clases muy buenas (y llenas de gente) se tomaron exámenes para kyus y danes. Y rendí para el grado de Shodan (1er cinturón negro de Aikido).

+

Este es final de un largo camino... o realidad, el comienzo!

+

Empecé a practicar Aikido en 1999 bajo la dirección de Sensei Oscar Medina. Y practiqué allí durante (más o menos) 5 años. Pero por varias razones, incluyendo la trágica muerte de mi Sensei y amigo en un accidente de tránsito, dejé la práctica. Pasaron muchas cosas en mi vida, pero luego de muchos años, en 2016 (si, 11 años después) retomé la práctica en Córdoba Aikikai (conocido previamente como Kogarashi dojo) bajo la dirección de Sensei José Delgado y Sensei Eugenio Fernández, y más recientemente, bajo la dirección de Sensei Nico Coll. Practiqué durante todo el 2016, pero 2017 me sorprendió con muchos viajes nacionales e internacionales, por lo que retomé la práctica nuevamente en 2018.

+

Por lo tanto, después de 7-8 años de práctica discontinuada, finalmente estaba listo para rendir para el grado de Shodan.

+

Quisiera agradecer a muchas personas que me ayudaron en esta fase:

+
    +
  • Sensei Oscar Medina, quién me introdujo al Arte del Aikido y se transformó en uno de mis mejores amigos (te extraño, Oscar!)
  • +
  • Sensei José y Sensei Eugenio, quienes me abrieron las puertas de Kogarashi y me re-introdujeron a la práctica del Aikido. Estos tipos son seres maravillosos y amigos
  • +
  • Sensei Nico, quien recientemente, junto con José y Eugenio, comenzaron un nuevo camino llamado Córdoba Aikikai (Sensei, gracias por ser mi uke en el exámen!)
  • +
  • Toda la comunidad de Córdoba Aikikai, gente recorriendo sus propios caminos en el Aikido y ayudándose mutuamente en el día a día.
  • +
  • Shihan Ricardo Corbal, que nos dejó sus enseñanzas y fue quién me tomó el exámen (gracias por los consejos post-exámen, trabajaré en esos puntos para mejorarlos)
  • +
  • Daniela, mi amor, que me aguanta y me ha ayudado en todo este proceso
  • +
+

OK, este es el video, en caso de que quieran ver un poco de acción ;-)

+

Como he dicho anteriormente, éste es sólo el comienzo de una nueva fase en mi práctica de Aikido... y estoy seguro que la disfrutaré!

+ +
+
+
+ + diff --git a/cache/posts/my-aikido-shodan-test.es.html.dep b/cache/posts/my-aikido-shodan-test.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/my-aikido-shodan-test.es.html.es b/cache/posts/my-aikido-shodan-test.es.html.es new file mode 100644 index 00000000..776f0388 --- /dev/null +++ b/cache/posts/my-aikido-shodan-test.es.html.es @@ -0,0 +1,29 @@ + +
+
+
+
+

Querés saber como se vé un exámen de Aikido para 1er Dan? Bueno, esta es tu oportunidad! Sólo necesitás seguir leyendo un ratito más ;-) +

+

Tuvimos un seminario de Aikido e Iaido durante dos días dictado por el Shihan Ricardo Corbal. +Ayer, al término de dos clases muy buenas (y llenas de gente) se tomaron exámenes para kyus y danes. Y rendí para el grado de Shodan (1er cinturón negro de Aikido).

+

Este es final de un largo camino... o realidad, el comienzo!

+

Empecé a practicar Aikido en 1999 bajo la dirección de Sensei Oscar Medina. Y practiqué allí durante (más o menos) 5 años. Pero por varias razones, incluyendo la trágica muerte de mi Sensei y amigo en un accidente de tránsito, dejé la práctica. Pasaron muchas cosas en mi vida, pero luego de muchos años, en 2016 (si, 11 años después) retomé la práctica en Córdoba Aikikai (conocido previamente como Kogarashi dojo) bajo la dirección de Sensei José Delgado y Sensei Eugenio Fernández, y más recientemente, bajo la dirección de Sensei Nico Coll. Practiqué durante todo el 2016, pero 2017 me sorprendió con muchos viajes nacionales e internacionales, por lo que retomé la práctica nuevamente en 2018.

+

Por lo tanto, después de 7-8 años de práctica discontinuada, finalmente estaba listo para rendir para el grado de Shodan.

+

Quisiera agradecer a muchas personas que me ayudaron en esta fase:

+
    +
  • Sensei Oscar Medina, quién me introdujo al Arte del Aikido y se transformó en uno de mis mejores amigos (te extraño, Oscar!)
  • +
  • Sensei José y Sensei Eugenio, quienes me abrieron las puertas de Kogarashi y me re-introdujeron a la práctica del Aikido. Estos tipos son seres maravillosos y amigos
  • +
  • Sensei Nico, quien recientemente, junto con José y Eugenio, comenzaron un nuevo camino llamado Córdoba Aikikai (Sensei, gracias por ser mi uke en el exámen!)
  • +
  • Toda la comunidad de Córdoba Aikikai, gente recorriendo sus propios caminos en el Aikido y ayudándose mutuamente en el día a día.
  • +
  • Shihan Ricardo Corbal, que nos dejó sus enseñanzas y fue quién me tomó el exámen (gracias por los consejos post-exámen, trabajaré en esos puntos para mejorarlos)
  • +
  • Daniela, mi amor, que me aguanta y me ha ayudado en todo este proceso
  • +
+

OK, este es el video, en caso de que quieran ver un poco de acción ;-)

+

Como he dicho anteriormente, éste es sólo el comienzo de una nueva fase en mi práctica de Aikido... y estoy seguro que la disfrutaré!

+ +
+
+
+ + diff --git a/cache/posts/my-aikido-shodan-test.es.html.es.dep b/cache/posts/my-aikido-shodan-test.es.html.es.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/my-aikido-shodan-test.html.es b/cache/posts/my-aikido-shodan-test.html.es index 6b3e272c..776f0388 100644 --- a/cache/posts/my-aikido-shodan-test.html.es +++ b/cache/posts/my-aikido-shodan-test.html.es @@ -3,31 +3,24 @@
-

Do you want to see how an Aikido Shodan test looks like? -Well, this is your opportunity!! -You just need to keep reading for a little bit ;-) +

Querés saber como se vé un exámen de Aikido para 1er Dan? Bueno, esta es tu oportunidad! Sólo necesitás seguir leyendo un ratito más ;-)

-

We had a 2 days Aikido and Iaido seminar taught by Shihan Ricardo Corbal.

-

Yesterday, after two really nice and crowded classes, we had some kyu and dan tests. -And I tested for the Shodan degree (1st black belt in Aikido).

-

This is the conclusion of a long journey... or, actually the beginning!

-

I started to practice Aikido in 1999 under Sensei Oscar Medina. -And I practiced there for about 5 years. -But for several reasons, included the tragic death of my Sensei and friend in a traffic accident, I discontinued my practice. -Then, a lot of happened in my life, and after several years, in 2016 (yes, about 11 years later) I restarted to practice again in Córdoba Aikikai (previously known as Kogarashi dojo) under the teaching of Sensei José Delgado and Sensei Eugenio Fernández, and more recently also under the teaching of Sensei Nico Coll. -I practiced the whole 2016, but 2017 surprised me with a lot of international and national travels, so I re-restarted again in 2018.

-

So, after about 7-8 years of discontinued practice, I finally was ready to test for the Shodan degree.

-

I want to thank a lot of people who helped me in this phase:

+

Tuvimos un seminario de Aikido e Iaido durante dos días dictado por el Shihan Ricardo Corbal. +Ayer, al término de dos clases muy buenas (y llenas de gente) se tomaron exámenes para kyus y danes. Y rendí para el grado de Shodan (1er cinturón negro de Aikido).

+

Este es final de un largo camino... o realidad, el comienzo!

+

Empecé a practicar Aikido en 1999 bajo la dirección de Sensei Oscar Medina. Y practiqué allí durante (más o menos) 5 años. Pero por varias razones, incluyendo la trágica muerte de mi Sensei y amigo en un accidente de tránsito, dejé la práctica. Pasaron muchas cosas en mi vida, pero luego de muchos años, en 2016 (si, 11 años después) retomé la práctica en Córdoba Aikikai (conocido previamente como Kogarashi dojo) bajo la dirección de Sensei José Delgado y Sensei Eugenio Fernández, y más recientemente, bajo la dirección de Sensei Nico Coll. Practiqué durante todo el 2016, pero 2017 me sorprendió con muchos viajes nacionales e internacionales, por lo que retomé la práctica nuevamente en 2018.

+

Por lo tanto, después de 7-8 años de práctica discontinuada, finalmente estaba listo para rendir para el grado de Shodan.

+

Quisiera agradecer a muchas personas que me ayudaron en esta fase:

-

OK, this is video, in case you want to see some action ;-)

-

As I said before, this is just the beginning of a new phase in my Aikido practice and I am pretty sure I will enjoy it!

+

OK, este es el video, en caso de que quieran ver un poco de acción ;-)

+

Como he dicho anteriormente, éste es sólo el comienzo de una nueva fase en mi práctica de Aikido... y estoy seguro que la disfrutaré!

diff --git a/cache/posts/my-ipython-powered-semi-automatic-git-workflow.es.html b/cache/posts/my-ipython-powered-semi-automatic-git-workflow.es.html new file mode 100644 index 00000000..373d3a8b --- /dev/null +++ b/cache/posts/my-ipython-powered-semi-automatic-git-workflow.es.html @@ -0,0 +1,998 @@ + +
+
+
+
+

This is the last post of this year, so I try to do my best to give you something interesting to think about...

+

In this case, I will show you my git workflow... and you know there are a lot of workflows out there... and probably better than mine, but I just want to share with you the place where I find myself comfortable.

+

And yes... my git workflow is also powered by IPython (I am very repetitive when I love a project!). +And it is a semi-automatic one, using the IPython notebooks (ipynbs) as a sort of templates, transforming them into a new conceptual entity: the ipytmpl (and yes, I love to invent names too!). +

+

Because my workflow have essentially two cycles, in this post, I will show you the general set up of the environment and the first Short cycle, leaving the second Extended cycle (and other details) for other post (after the new year, of course).

+

I will also show you my workflow with a real PR (pull-request) to the IPython project.

+

Are you ready? Here we go...

+ +
+
+
+
+
+
+
+

Get everything ready...

+
+
+
+
+
+
+
+

First, we need to set up the environment to make our work:

+ +
+
+
+
+
+
+
+
    +
  • Check the current working directory:
  • +
+ +
+
+
+
+
+
In [1]:
+
+
+
%pwd
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
Out[1]:
+ + + + +
+
u'/media/datos/Desarrollos'
+
+ +
+ +
+
+ +
+
+ +
+
+
+
+
+
    +
  • Make a new folder to isolate our work and cd into it:
  • +
+ +
+
+
+
+
+
In [2]:
+
+
+
!mkdir devel_example
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [3]:
+
+
+
%cd devel_example/
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
/media/datos/Desarrollos/devel_example
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

NOTE: You can avoid these steps opening the notebook in the proper directory, but in this case I want to have the example isolated to not overwrite my current development environment.

+
+ +
+
+
+
+
+
+
+
    +
  • Load variables with useful information:
  • +
+ +
+
+
+
+
+
In [4]:
+
+
+
project_name = "ipython"
+project_remote = "git://github.com/ipython/ipython.git"
+project_remote_name = "origin"
+my_fork_remote = "git@github.com:damianavila/ipython.git"
+my_fork_remote_name = "damianavila"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+
    +
  • Clone the project and connect the local repo with my Github fork:
  • +
+ +
+
+
+
+
+
In [5]:
+
+
+
# Get a read-only copy of the project
+!git clone $project_remote
+
+# cd into the local project folder
+%cd $project_name
+
+# Link the local repo with my Github fork
+!git remote add $my_fork_remote_name $my_fork_remote
+
+# Check remotes
+!git remote -v
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Clonar en «ipython»...
+remote: Reusing existing pack: 96757, done.
+remote: Counting objects: 82, done.
+remote: Compressing objects: 100% (82/82), done.
+remote: Total 96839 (delta 5), reused 31 (delta 0)
+Receiving objects: 100% (96839/96839), 40.92 MiB | 726 KiB/s, done.
+Resolving deltas: 100% (70554/70554), done.
+/media/datos/Desarrollos/devel_example/ipython
+damianavila	git@github.com:damianavila/ipython.git (fetch)
+damianavila	git@github.com:damianavila/ipython.git (push)
+origin	git://github.com/ipython/ipython.git (fetch)
+origin	git://github.com/ipython/ipython.git (push)
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

NOTE: A lot of git workflows use origin to point to our fork and upstream to point to the project repo. But I do not like that configuration. It seems more natural to me to clone the project repo (the origin repo) and add a connection to my fork called damianavila... and the next steps take into consideration this last approach.

+
+ +
+
+
+
+
+
+
+

Short cycle

+
+
+
+
+
+
+
+

This short cycle just create a new branch to work on, make the needed changes in the source code and upload the local changes to our Github fork to finally submit a pull-request:

+ +
+
+
+
+
+
+
+
    +
  • Set up the master and development branch names:
  • +
+ +
+
+
+
+
+
In [6]:
+
+
+
master_branch = "master"
+feature_branch = "doc_post_serve"
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+
    +
  • Create a new branch from master:
  • +
+ +
+
+
+
+
+
In [7]:
+
+
+
# Make sure we are in master branch
+!git checkout $master_branch
+
+# Pull the changes from origin/master
+!git pull $project_remote_name
+
+# Start a new branch to work on
+!git checkout -b $feature_branch
+
+# Check where we are
+!git status
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Ya está en «master»
+Already up-to-date.
+Switched to a new branch 'doc_post_serve'
+# En la rama doc_post_serve
+nothing to commit, working directory clean
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+
    +
  • Make the changes you want to do:
  • +
+

NOTE: In this example, I will update the IPython docs about some details using the IPython slides and the post-serve post-processor (IPython.nbconvert).

+
+ +
+
+
+
+
+
In [9]:
+
+
+
# list the files structure to find the needed files
+%ls
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
CONTRIBUTING.md  examples/   MANIFEST.in  setupbase.py  setup.py*
+COPYING.txt      git-hooks/  README.rst   setupegg.py*  tools/
+docs/            IPython/    scripts/     setupext/     tox.ini
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [10]:
+
+
+
%load docs/source/interactive/nbconvert.rst
+# After executing %load, a new cell containing the source code will be added.
+# Be sure to add the next line (with the proper path) to overwrite the file
+# with you changes.
+#
+# %%writefile docs/source/interactive/nbconvert.rst
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [11]:
+
+
+
%%writefile docs/source/interactive/nbconvert.rst
+.. _nbconvert:
+
+Converting notebooks to other formats
+=====================================
+
+Newly added in the 1.0 release of IPython is the ``nbconvert`` tool, which 
+allows you to convert an ``.ipynb`` notebook document file into various static 
+formats. 
+
+Currently, ``nbconvert`` is provided as a command line tool, run as a script 
+using IPython. A direct export capability from within the 
+IPython Notebook web app is planned. 
+
+The command-line syntax to run the ``nbconvert`` script is::
+
+  $ ipython nbconvert --to FORMAT notebook.ipynb
+
+This will convert the IPython document file ``notebook.ipynb`` into the output 
+format given by the ``FORMAT`` string.
+
+The default output format is html, for which the ``--to`` argument may be 
+omitted::
+  
+  $ ipython nbconvert notebook.ipynb
+
+IPython provides a few templates for some output formats, and these can be
+specified via an additional ``--template`` argument.
+
+The currently supported export formats are:
+
+* ``--to html``
+
+  - ``--template full`` (default)
+  
+    A full static HTML render of the notebook.
+    This looks very similar to the interactive view.
+
+  - ``--template basic``
+  
+    Simplified HTML, useful for embedding in webpages, blogs, etc.
+    This excludes HTML headers.
+
+* ``--to latex``
+
+  Latex export.  This generates ``NOTEBOOK_NAME.tex`` file,
+  ready for export.  You can automatically run latex on it to generate a PDF
+  by adding ``--post PDF``.
+  
+  - ``--template article`` (default)
+  
+    Latex article, derived from Sphinx's howto template.
+
+  - ``--template book``
+  
+    Latex book, derived from Sphinx's manual template.
+
+  - ``--template basic``
+  
+    Very basic latex output - mainly meant as a starting point for custom templates.
+
+* ``--to slides``
+
+  This generates a Reveal.js HTML slideshow.
+  It must be served by an HTTP server. The easiest way to do this is adding
+  ``--post serve`` on the command-line. The ``--post serve`` post-processor 
+  proxies Reveal.js requests to a CDN if no local Reveal.js library is present. 
+  For low connectivity environments, just place the Reveal.js library in the 
+  same directory where your_talk.slides.html is located or point to another 
+  directory using the ``--reveal-prefix`` alias.
+
+* ``--to markdown``
+
+  Simple markdown output.  Markdown cells are unaffected,
+  and code cells are placed in triple-backtick (```````) blocks.
+
+* ``--to rst``
+
+  Basic reStructuredText output. Useful as a starting point for embedding notebooks
+  in Sphinx docs.
+
+* ``--to python``
+
+  Convert a notebook to an executable Python script.
+  This is the simplest way to get a Python script out of a notebook.
+  If there were any magics in the notebook, this may only be executable from
+  an IPython session.
+  
+.. note::
+
+  nbconvert uses pandoc_ to convert between various markup languages,
+  so pandoc is a dependency of most nbconvert transforms,
+  excluding Markdown and Python.
+
+.. _pandoc: http://johnmacfarlane.net/pandoc/
+
+The output file created by ``nbconvert`` will have the same base name as
+the notebook and will be placed in the current working directory. Any
+supporting files (graphics, etc) will be placed in a new directory with the
+same base name as the notebook, suffixed with ``_files``::
+
+  $ ipython nbconvert notebook.ipynb
+  $ ls
+  notebook.ipynb   notebook.html    notebook_files/
+
+For simple single-file output, such as html, markdown, etc.,
+the output may be sent to standard output with::
+    
+  $ ipython nbconvert --to markdown notebook.ipynb --stdout
+    
+Multiple notebooks can be specified from the command line::
+    
+  $ ipython nbconvert notebook*.ipynb
+  $ ipython nbconvert notebook1.ipynb notebook2.ipynb
+    
+or via a list in a configuration file, say ``mycfg.py``, containing the text::
+
+  c = get_config()
+  c.NbConvertApp.notebooks = ["notebook1.ipynb", "notebook2.ipynb"]
+
+and using the command::
+
+  $ ipython nbconvert --config mycfg.py
+
+
+.. _notebook_format:
+
+LaTeX citations
+---------------
+
+``nbconvert`` now has support for LaTeX citations. With this capability you
+can:
+
+* Manage citations using BibTeX.
+* Cite those citations in Markdown cells using HTML data attributes.
+* Have ``nbconvert`` generate proper LaTeX citations and run BibTeX.
+
+For an example of how this works, please see the citations example in
+the nbconvert-examples_ repository.
+
+.. _nbconvert-examples: https://github.com/ipython/nbconvert-examples
+
+Notebook JSON file format
+-------------------------
+
+Notebook documents are JSON files with an ``.ipynb`` extension, formatted
+as legibly as possible with minimal extra indentation and cell content broken
+across lines to make them reasonably friendly to use in version-control
+workflows.  You should be very careful if you ever manually edit this JSON
+data, as it is extremely easy to corrupt its internal structure and make the
+file impossible to load.  In general, you should consider the notebook as a
+file meant only to be edited by the IPython Notebook app itself, not for 
+hand-editing.
+
+.. note::
+
+     Binary data such as figures are also saved directly in the JSON file.  
+     This provides convenient single-file portability, but means that the 
+     files can be large; a ``diff`` of binary data is also not very 
+     meaningful.  Since the binary blobs are encoded in a single line, they 
+     affect only one line of the ``diff`` output, but they are typically very 
+     long lines.  You can use the ``Cell | All Output | Clear`` menu option to 
+     remove all output from a notebook prior to committing it to version 
+     control, if this is a concern.
+
+The notebook server can also generate a pure Python version of your notebook, 
+using the ``File | Download as`` menu option. The resulting ``.py`` file will 
+contain all the code cells from your notebook verbatim, and all Markdown cells 
+prepended with a comment marker.  The separation between code and Markdown
+cells is indicated with special comments and there is a header indicating the
+format version.  All output is removed when exporting to Python.
+
+As an example, consider a simple notebook called ``simple.ipynb`` which 
+contains one Markdown cell, with the content ``The simplest notebook.``, one 
+code input cell with the content ``print "Hello, IPython!"``, and the 
+corresponding output.
+
+The contents of the notebook document ``simple.ipynb`` is the following JSON 
+container::
+
+  {
+   "metadata": {
+    "name": "simple"
+   },
+   "nbformat": 3,
+   "nbformat_minor": 0,
+   "worksheets": [
+    {
+     "cells": [
+      {
+       "cell_type": "markdown",
+       "metadata": {},
+       "source": "The simplest notebook."
+      },
+      {
+       "cell_type": "code",
+       "collapsed": false,
+       "input": "print \"Hello, IPython\"",
+       "language": "python",
+       "metadata": {},
+       "outputs": [
+        {
+         "output_type": "stream",
+         "stream": "stdout",
+         "text": "Hello, IPython\n"
+        }
+       ],
+       "prompt_number": 1
+      }
+     ],
+     "metadata": {}
+    }
+   ]
+  }
+
+
+The corresponding Python script is::
+
+  # -*- coding: utf-8 -*-
+  # <nbformat>3.0</nbformat>
+
+  # <markdowncell>
+
+  # The simplest notebook.
+
+  # <codecell>
+
+  print "Hello, IPython"
+
+Note that indeed the output of the code cell, which is present in the JSON 
+container, has been removed in the ``.py`` script.
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Overwriting docs/source/interactive/nbconvert.rst
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+
    +
  • Check the status and diff of your modifications:
  • +
+ +
+
+
+
+
+
In [12]:
+
+
+
# Check status
+!git status
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
# En la rama doc_post_serve
+# Cambios no preparados para el commit:
+#   (use «git add <archivo>...» para actualizar lo que se ejecutará)
+#   (use «git checkout -- <archivo>...« para descartar cambios en le directorio de trabajo)
+#
+#	modificado:   docs/source/interactive/nbconvert.rst
+#
+no hay cambios agregados al commit (use «git add» o «git commit -a»)
+
+
+
+ +
+
+ +
+
+ +
+
+
+
In [13]:
+
+
+
# See the diff
+!git diff
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
diff --git a/docs/source/interactive/nbconvert.rst b/docs/source/interactive/nbconvert.rst
+index 1789a62..610edf0 100644
+--- a/docs/source/interactive/nbconvert.rst
++++ b/docs/source/interactive/nbconvert.rst
+@@ -61,8 +61,12 @@ The currently supported export formats are:
+ * ``--to slides``
+ 
+   This generates a Reveal.js HTML slideshow.
+-  It must be served by an HTTP server.  The easiest way to do this is adding
+-  ``--post serve`` on the command-line.
++  It must be served by an HTTP server. The easiest way to do this is adding
++  ``--post serve`` on the command-line. The ``--post serve`` post-processor 
++  proxies Reveal.js requests to a CDN if no local Reveal.js library is present. 
++  For low connectivity environments, just place the Reveal.js library in the 
++  same directory where your_talk.slides.html is located or point to another 
++  directory using the ``--reveal-prefix`` alias.
+ 
+ * ``--to markdown``
+ 
+@@ -224,4 +228,3 @@ The corresponding Python script is::
+ 
+ Note that indeed the output of the code cell, which is present in the JSON 
+ container, has been removed in the ``.py`` script.
+-
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+
    +
  • Add the changes an commit them:
  • +
+ +
+
+
+
+
+
In [14]:
+
+
+
# Add the modified files to the stage
+!git add .
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
In [15]:
+
+
+
# And do your commit
+!git commit -am "Added --post-serve explanation into the nbconvert docs."
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[doc_post_serve c87ac2f] Added --post-serve explanation into the nbconvert docs.
+ 1 file changed, 6 insertions(+), 3 deletions(-)
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+
    +
  • Finally, push your local development branch to your Github fork:
  • +
+ +
+
+
+
+
+
In [16]:
+
+
+
# Push updates from your local branch to your github branch
+!git push $my_fork_remote_name $feature_branch
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Counting objects: 8732, done.
+Delta compression using up to 4 threads.
+Compressing objects: 100% (2767/2767), done.
+Writing objects: 100% (7842/7842), 1.44 MiB, done.
+Total 7842 (delta 5520), reused 7275 (delta 4971)
+To git@github.com:damianavila/ipython.git
+ * [new branch]      doc_post_serve -> doc_post_serve
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

NOTE: The merging of your Github development branch into the master is done via pull-request on the Github website. For reference, you can see the proposed PR here: https://github.com/ipython/ipython/pull/4751

+
+ +
+
+
+
+
+
+
+

As you can see, this workflow is very simple... and with the aid of this ipytmpl is easier than before (before = making the same but in your traditional console).

+

You set up the environment, fill the variables to use a posteriori, and you have only to be concern about the changes you want to introduce (or remove) from the source code. All the other steps, all those git calls are predetermined and will be called whereas you advance in the workflow...

+

After making the PR at the Github website, you will receive some feedback and if you have to modified something, just start the short cycle again... Sometimes you will need more... I mean, because you are working in a communitary project, if somebody changes the same file as you, there will be some conflicts at the merge step, so it will be necessary to rebase the "thing". But this is the central idea of the second Extended cycle which I will describe you in a second part of this post.

+

As always, I am waiting for your comments and critics!

+

OK, too long... I hope you did not get bored!

+

Have a nice New Year! And I see you in 2014 ;-)

+

Cheers.

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/my-ipython-powered-semi-automatic-git-workflow.es.html.dep b/cache/posts/my-ipython-powered-semi-automatic-git-workflow.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/nikola-nbconvert.es.html b/cache/posts/nikola-nbconvert.es.html new file mode 100644 index 00000000..a32ce9e6 --- /dev/null +++ b/cache/posts/nikola-nbconvert.es.html @@ -0,0 +1,2659 @@ +

Importando, en un posteo del blog, un html estático (obtenido con nbconvert) +de un notebook (ejemplo) de IPython:

+
+.. raw:: html
+   :file: /Users/davila/devel/damian_blog/files/Test.html
+
+ +

Funciona! Pueden verlo a continuación... pronto estarán los themes disponibles.

+
+
+

Update: made full github repo for blog-as-notebooks, and updated instructions on how to more easily configure everything and use the newest nbconvert for a more streamlined workflow.

+

Since the notebook was introduced with IPython 0.12, it has proved to be very popular, and we are seeing great adoption of the tool and the underlying file format in research and education. One persistent question we've had since the beginning (even prior to its official release) was whether it would be possible to easily write blog posts using the notebook. The combination of easy editing in markdown with the notebook's ability to contain code, figures and results, makes it an ideal platform for quick authoring of technical documents, so being able to post to a blog is a natural request.

+

Today, in answering a query about this from a colleague, I decided to try again the status of our conversion pipeline, and I'm happy to report that with a bit of elbow-grease, at least on Blogger things work pretty well!
+

+

This post was entirely written as a notebook, and in fact I have now created a github repo, which means that you can see it directly rendered in IPyhton's nbviewer app.

+

The purpose of this post is to quickly provide a set of instructions on how I got it to work, and to test things out. Please note: this requires code that isn't quite ready for prime-time and is still under heavy development, so expect some assembly.

+
+
+

+ Converting your notebook to html with nbconvert +

+
+
+

The first thing you will need is our nbconvert tool that converts notebooks across formats. The README file in the repo contains the requirements for nbconvert (basically python-markdown, pandoc, docutils from SVN and pygments).

+

Once you have nbconvert installed, you can convert your notebook to Blogger-friendly html with:

+
nbconvert -f blogger-html your_notebook.ipynb
+
+

This will leave two files in your computer, one named your_notebook.html and one named your_noteboook_header.html; it might also create a directory called your_notebook_files if needed for ancillary files. The first file will contain the body of your post and can be pasted wholesale into the Blogger editing area. The second file contains the CSS and Javascript material needed for the notebook to display correctly, you should only need to use this once to configure your blogger setup (see below):

+
# Only one notebook so far
+(master)longs[blog]> ls
+120907-Blogging with the IPython Notebook.ipynb  fig/  old/
+
+# Now run the conversion:
+(master)longs[blog]> nbconvert.py -f blogger-html 120907-Blogging\ with\ the\ IPython\ Notebook.ipynb
+
+# This creates the header and html body files
+(master)longs[blog]> ls
+120907-Blogging with the IPython Notebook_header.html  fig/
+120907-Blogging with the IPython Notebook.html         old/
+120907-Blogging with the IPython Notebook.ipynb
+
+
+
+

+ Configuring your Blogger blog to accept notebooks +

+
+
+

The notebook uses a lot of custom CSS for formatting input and output, as well as Javascript from MathJax to display mathematical notation. You will need all this CSS and the Javascript calls in your blog's configuration for your notebook-based posts to display correctly:

+
    +
  1. Once authenticated, go to your blog's overview page by clicking on its title.
  2. +
  3. Click on templates (left column) and customize using the Advanced options.
  4. +
  5. Scroll down the middle column until you see an "Add CSS" option.
  6. +
  7. Copy entire the contents of the _header file into the CSS box.
  8. +
+
+
+

That's it, and you shouldn't need to do anything else as long as the CSS we use in the notebooks doesn't drastically change. This customization of your blog needs to be done only once.

+

While you are at it, I recommend you change the width of your blog so that cells have enough space for clean display; in experimenting I found out that the default template was too narrow to properly display code cells, producing a lot of text wrapping that impaired readability. I ended up using a layout with a single column for all blog contents, putting the blog archive at the bottom. Otherwise, if I kept the right sidebar, code cells got too squished in the post area.

+

I also had problems using some of the fancier templates available from 'Dynamic Views', in that I could never get inline math to render. But sticking to those from the Simple or 'Picture Window' categories worked fine and they still allow for a lot of customization.

+

Note: if you change blog templates, Blogger does destroy your custom CSS, so you may need to repeat the above steps in that case.

+
+
+

+ Adding the actual posts + +

+
+
+

Now, whenever you want to write a new post as a notebook, simply convert the .ipynb file to blogger-html and copy its entire contents to the clipboard. Then go to the 'raw html' view of the post, remove anything Blogger may have put there by default, and paste. You should also click on the 'options' tab (right hand side) and select both Show HTML literally and Use <br> tag, else your paragraph breaks will look all wrong.

+

That's it!

+
+
+

+ What can you put in? +

+
+
+

I will now add a few bits of code, plots, math, etc, to show which kinds of content can be put in and work out of the box. These are mostly bits copied from our example notebooks so the actual content doesn't matter, I'm just illustrating the kind of content that works.

+
+
+
+
In [1]:
+
+
# Let's initialize pylab so we can plot later
+%pylab inline
+
+ +
+
+
+
+
+
+
+
+Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].
+For more information, type 'help(pylab)'.
+
+
+
+
+
+
+
+

With pylab loaded, the usual matplotlib operations work

+
+
+
+
In [2]:
+
+
x = linspace(0, 2*pi)
+plot(x, sin(x), label=r'$\sin(x)$')
+plot(x, cos(x), 'ro', label=r'$\cos(x)$')
+title(r'Two familiar functions')
+legend()
+
+ +
+
+
+
+
+
Out [2]:
+
+
<matplotlib.legend.Legend at 0x3128610>
+
+
+
+
+
+ +
+
+
+
+
+
+

The notebook, thanks to MathJax, has great LaTeX support, so that you can type inline math $(1,\gamma,\ldots, \infty)$ as well as displayed equations:

+

$$ +e^{i \pi}+1=0 +$$

+

but by loading the sympy extension, it's easy showcase math output from Python computations, where we don't type the math expressions in text, and instead the results of code execution are displayed in mathematical format:

+
+
+
+
In [3]:
+
+
%load_ext sympyprinting
+import sympy as sym
+from sympy import *
+x, y, z = sym.symbols("x y z")
+
+ +
+
+
+
+

From simple algebraic expressions

+
+
+
+
In [4]:
+
+
Rational(3,2)*pi + exp(I*x) / (x**2 + y)
+
+ +
+
+
+
+
+
Out [4]:
+
+$$\frac{3}{2} \pi + \frac{e^{\mathbf{\imath} x}}{x^{2} + y}$$ +
+
+
+
+
+
+
+
In [5]:
+
+
eq = ((x+y)**2 * (x+1))
+eq
+
+ +
+
+
+
+
+
Out [5]:
+
+$$\left(x + 1\right) \left(x + y\right)^{2}$$ +
+
+
+
+
+
+
+
In [6]:
+
+
expand(eq)
+
+ +
+
+
+
+
+
Out [6]:
+
+$$x^{3} + 2 x^{2} y + x^{2} + x y^{2} + 2 x y + y^{2}$$ +
+
+
+
+
+
+

To calculus

+
+
+
+
In [7]:
+
+
diff(cos(x**2)**2 / (1+x), x)
+
+ +
+
+
+
+
+
Out [7]:
+
+$$- 4 \frac{x \operatorname{sin}\left(x^{2}\right) \operatorname{cos}\left(x^{2}\right)}{x + 1} - \frac{\operatorname{cos}^{2}\left(x^{2}\right)}{\left(x + 1\right)^{2}}$$ +
+
+
+
+
+
+

For more examples of how to use sympy in the notebook, you can see our example sympy notebook or go to the sympy website for much more documentation.

+
+
+

+ You can easily include formatted text and code with markdown +

+
+
+

You can italicize, boldface

+ +

and embed code meant for illustration instead of execution in Python:

+
def f(x):
+    """a docstring"""
+    return x**2
+
+

or other languages:

+
if (i=0; i<n; i++) {
+  printf("hello %d\n", i);
+  x += 4;
+}
+
+
+
+

And since the notebook can store displayed images in the file itself, you can show images which will be embedded in your post:

+
+
+
+
In [8]:
+
+
from IPython.display import Image
+Image(filename='fig/img_4926.jpg')
+
+ +
+
+
+
+
+
Out [8]:
+
+ +
+
+
+
+
+
+

You can embed YouTube videos using the IPython object, this is my recent talk at SciPy'12 about IPython:

+
+
+
+
In [9]:
+
+
from IPython.display import YouTubeVideo
+YouTubeVideo('iwVvqwLDsJo')
+
+ +
+
+
+
+
+
Out [9]:
+
+ + + +
+
+
+
+
+
+

+ Including code examples from other languages +

+
+
+

Using our various script cell magics, it's easy to include code in a variety of other languages

+
+
+
+
In [10]:
+
+
%%ruby
+puts "Hello from Ruby #{RUBY_VERSION}"
+
+ +
+
+
+
+
+
+
+
Hello from Ruby 1.8.7
+
+
+
+
+
+
+
+
+
In [11]:
+
+
%%bash
+echo "hello from $BASH"
+
+ +
+
+
+
+
+
+
+
hello from /bin/bash
+
+
+
+
+
+
+
+

And tools like the Octave and R magics let you interface with entire computational systems directly from the notebook; this is the Octave magic for which our example notebook contains more details:

+
+
+
+
In [12]:
+
+
%load_ext octavemagic
+
+ +
+
+
+
+
+
In [13]:
+
+
%%octave -s 500,500
+
+# butterworth filter, order 2, cutoff pi/2 radians
+b = [0.292893218813452  0.585786437626905  0.292893218813452];
+a = [1  0  0.171572875253810];
+freqz(b, a, 32);
+
+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+

The rmagic extension does a similar job, letting you call R directly from the notebook, passing variables back and forth between Python and R.

+
+
+
+
In [14]:
+
+
%load_ext rmagic 
+
+ +
+
+
+
+

Start by creating some data in Python

+
+
+
+
In [15]:
+
+
X = np.array([0,1,2,3,4])
+Y = np.array([3,5,4,6,7])
+
+ +
+
+
+
+

Which can then be manipulated in R, with results available back in Python (in XYcoef):

+
+
+
+
In [16]:
+
+
%%R -i X,Y -o XYcoef
+XYlm = lm(Y~X)
+XYcoef = coef(XYlm)
+print(summary(XYlm))
+par(mfrow=c(2,2))
+plot(XYlm)
+
+ +
+
+
+
+
+
+
+
+Call:
+lm(formula = Y ~ X)
+
+Residuals:
+   1    2    3    4    5 
+-0.2  0.9 -1.0  0.1  0.2 
+
+Coefficients:
+            Estimate Std. Error t value Pr(>|t|)  
+(Intercept)   3.2000     0.6164   5.191   0.0139 *
+X             0.9000     0.2517   3.576   0.0374 *
+---
+Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
+
+Residual standard error: 0.7958 on 3 degrees of freedom
+Multiple R-squared:  0.81,	Adjusted R-squared: 0.7467 
+F-statistic: 12.79 on 1 and 3 DF,  p-value: 0.03739 
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+
In [17]:
+
+
XYcoef
+
+ +
+
+
+
+
+
Out [17]:
+
+
[ 3.2  0.9]
+
+
+
+
+
+
+

And finally, in the same spirit, the cython magic extension lets you call Cython code directly from the notebook:

+
+
+
+
In [18]:
+
+
%load_ext cythonmagic
+
+ +
+
+
+
+
+
In [19]:
+
+
%%cython -lm
+from libc.math cimport sin
+print 'sin(1)=', sin(1)
+
+ +
+
+
+
+
+
+
+
sin(1)= 0.841470984808
+
+
+
+
+
+
+
+

+ Keep in mind, this is still experimental code! +

+
+
+

Hopefully this post shows that the system is already useful to communicate technical content in blog form with a minimal amount of effort. But please note that we're still in heavy development of many of these features, so things are susceptible to changing in the near future. By all means join the IPython dev mailing list if you'd like to participate and help us make IPython a better tool!

+
+

Damián.

diff --git a/cache/posts/nikola-nbconvert.es.html.dep b/cache/posts/nikola-nbconvert.es.html.dep new file mode 100644 index 00000000..517e718b --- /dev/null +++ b/cache/posts/nikola-nbconvert.es.html.dep @@ -0,0 +1 @@ +files/Test.html \ No newline at end of file diff --git a/cache/posts/nikola-nbconvert.html b/cache/posts/nikola-nbconvert.html index 6dccc20f..88d12d8d 100644 --- a/cache/posts/nikola-nbconvert.html +++ b/cache/posts/nikola-nbconvert.html @@ -2,7 +2,7 @@ one IPython example notebook into a nikola blog post:

 .. raw:: html
-   :file: /media/data/devel/damian_blog/files/Test.html
+   :file: /Users/davila/devel/damian_blog/files/Test.html
 

It works! You can see below... the themes will be available soon.

diff --git a/cache/posts/nikolas-zen-theme-finally-released.es.html b/cache/posts/nikolas-zen-theme-finally-released.es.html new file mode 100644 index 00000000..e78d584b --- /dev/null +++ b/cache/posts/nikolas-zen-theme-finally-released.es.html @@ -0,0 +1,26 @@ + +
+
+
+
+

Just a quick update... Some weeks ago I blogged about my new Nikola's theme family called Zen. In fact, you are seeing the zen-ipython theme powering my blog right now.

+

I have used them for several days without any remarkable issue, so I decided to release them at the Nikola's theme repository.

+

There, you will see three Zen themes:

+
    +
  • zen, based in mako templates
  • +
  • zen-jinja, the same zen theme but based (obviously) in jinja templates
  • +
  • zen-ipython, a jinja-based zen theme suited to be used with the IPython notebooks.
  • +
+

As you know, you can easily install them using the following command inside your Nikola site folder:

+

nikola install_theme zen

+

(or zen-jinja... or zen-ipython, or whatever theme available at http://themes.getnikola.com/).

+

I have developed the Zen theme family with a high customization concept in my mind... but this approach has a cost because you need to use a proper conf.py file to run them ok (the default one will not work, but you can find a working example looking at my blog conf.py file).

+

OK, it's all for this post.

+

Enjoy the Zen themes and, as usually, report me any problem...

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/nikolas-zen-theme-finally-released.es.html.dep b/cache/posts/nikolas-zen-theme-finally-released.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/one-line-deployment-of-your-site-to-gh-pages.es.html b/cache/posts/one-line-deployment-of-your-site-to-gh-pages.es.html new file mode 100644 index 00000000..795ffc9f --- /dev/null +++ b/cache/posts/one-line-deployment-of-your-site-to-gh-pages.es.html @@ -0,0 +1,52 @@ + +
+
+
+
+

Do you want to easily deploy your site to Github pages?

+

OK, here we go...

+
    +
  1. You have to upload your complete blog/site to a new Github repository (you know how to do it... if not, probably you need to learn some things before try this one, hehe). As a plus, now your blog/site is version-controlled!

    +
  2. +
  3. Almost for sure, your site/blog lives in the master branch of the new repository, but you need to generated a gh-pages branch to push your build or output folder, I mean your site/blog content to deploy... not all the machinery of your site/blog platform (Nikola in my case):

    + + +
      +
    • git checkout -b gh-pages
    • +
    • git rm -rf .
    • +
    • git commit -am "First commit to gh-pages branch"
    • +
    • git push origin gh-pages
    • +
    +
  4. +
  5. Now, we will use a git-subtree technique to push the build or output content to the gh-pages branch:

    +
      +
    • git checkout master
    • +
    • git push origin `git subtree split --prefix output gh-pages`:gh-pages --force

      +

      Sweet line... uhh ;-)

      +
    • +
    +
  6. +
  7. Finally, you will need to run the following line every time you want to update your site/blog!

    +
      +
    • git subtree push --prefix output origin gh-pages
    • +
    +
  8. +
+

Note: Are you getting git errors? Just use the sweet line again and force the update...

+

If you are using Nikola, you can add some of this lines to the DEPLOY_COMMANDS in your conf.py file and just run nikola deploy after building your site/blog.

+

More easier... impossible... ;-)

+

Damián.

+

UPDATE: Not enough happy with step 3 and 4 (essentially because of some git errors), I figured out a cleaner solution:

+

New 3. Now, we will use a git-subtree technique to push the build or output content to the gh-pages branch. You will need to run the following lines every time you want to update your site/blog!

+
    +
  • git checkout master # you can avoid this line if you are in master...
  • +
  • git subtree split --prefix output -b gh-pages # create a local gh-pages branch containing the splitted output folder
  • +
  • git push -f origin gh-pages:gh-pages # force the push of the gh-pages branch to the remote gh-pages branch at origin
  • +
  • git branch -D gh-pages # delete the local gh-pages because you will need it: ref
  • +
+ +
+
+
+ + diff --git a/cache/posts/one-line-deployment-of-your-site-to-gh-pages.es.html.dep b/cache/posts/one-line-deployment-of-your-site-to-gh-pages.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/paraguay.es.html b/cache/posts/paraguay.es.html new file mode 100644 index 00000000..0d06b2b4 --- /dev/null +++ b/cache/posts/paraguay.es.html @@ -0,0 +1,11 @@ +

Lo que esta viviendo hoy el Paraguay me causa mucha tristeza...

+

¡¿Cómo puede ser que a comienzos del siglo XXI, +la retrógrada derecha latinoamericana no se haya superado y alcanzado +el nivel democrático necesario para, al menos, respetar que otros han ganado +las elecciones y, por tanto, éstos deben detentar el poder hasta que finalice el mandato +impuesto por la Constitución Nacional?!

+

Les linkeo una nota de Mempo Giardinelli que explicita, +de una forma más efectiva y elegante, muchas ideas que comparto fervientemente: +http://www.pagina12.com.ar/diario/elmundo/4-196944-2012-06-22.html

+

Hasta la próxima...

+

Damián.

diff --git a/cache/posts/paraguay.es.html.dep b/cache/posts/paraguay.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/powered-by-nikola.es.html b/cache/posts/powered-by-nikola.es.html new file mode 100644 index 00000000..755c60b0 --- /dev/null +++ b/cache/posts/powered-by-nikola.es.html @@ -0,0 +1,11 @@ +

Nikola es un generador de sitios estáticos creado por uno de los miembros de la comunidad +de PyAr (Roberto Alsina). Es un excelente proyecto y, también, +la herramienta pythonica que he elegido para construir mi nuevo blog...

+

Espero poder con contribuir al proyecto en el futuro cercano (ya le prometí a Roberto que +enviaría unas mejoras a través de github, pero aún no lo he hecho... lo haré pronto).

+

La página web del proyecto es http://nikola.ralsina.com.ar, y fue construída utilizándose +el mismo generador, desde luego.

+

¡Disfrútenlo!

+

Damián.

+

PD: El "tema" que están viendo ahora mismo en el blog no está incluído en Nikola, +lo postearé pronto, cuando esté listo para "salir del horno"...

diff --git a/cache/posts/powered-by-nikola.es.html.dep b/cache/posts/powered-by-nikola.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/pyconar-2013.es.html b/cache/posts/pyconar-2013.es.html new file mode 100644 index 00000000..0bd63415 --- /dev/null +++ b/cache/posts/pyconar-2013.es.html @@ -0,0 +1,56 @@ + +
+
+
+
+

Note: Post only in spanish (but also interesting!)

+

Hace un par de semanas, terminando el mes de Octubre, se llevó a cabo en la ciudad de Rosario, la 5° Conferencia Anual de Python Argentina - PyConAr 2013.

+

En esta oportunidad, presenté dos charlas: +

+
    +
  • la clásica, Introducción a Python Científico (slides),
  • +
  • la nueva, IPython-fu: el camino de la "nbconversión" (slides).
  • +
+

Me sentí muy cómodo dictando las dos charlas, y encima me di el gusto de "meter" una charla íntegra del notebook de IPython, sobre el cual vengo "pregonando" hace rato.

+

Por otro lado, gracias al esfuerzo puesto en juego por la organización del evento, tenemos videograbación de toda la conferencia.

+

A continuación, les adjunto los videos de mis charlas... por si se perdieron alguna:

+ +
+
+
+
+
+
+
+
    +
  • Introducción a Python Científico
  • +
+ +
+
+
+
+
+
+
+
    +
  • IPython-fu: el camino de la "nbconversión"
  • +
+ +
+
+
+
+
+
+
+

Una vez más, participar en la PyConAr fue una gran experiencia, no sólo desde el punto de vista técnico, sino también, y más importante aún, desde el punto de vista humano.

+

Aún resta saber dónde será la próxima edición.

+

¡Allí estaremos!

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/pyconar-2013.es.html.dep b/cache/posts/pyconar-2013.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/reveal_converter-mini-tutorial.es.html b/cache/posts/reveal_converter-mini-tutorial.es.html new file mode 100644 index 00000000..8e633bc7 --- /dev/null +++ b/cache/posts/reveal_converter-mini-tutorial.es.html @@ -0,0 +1,61 @@ + +
+
+
+
+

Alert! This post is outdated, please goto ;-) this link to get updated information.

+
+ +
+
+
+
+
+
+
+

After some weeks of work and a lot of useful colaboration with the IPython team, we now have the reveal converter merged in nbconvert (a conversion utilities for the IPython notebook format).

+

Currently nbconvert is being rewritten... but we also have a reveal converter in the new codebase, so you do not have problems if you begin to use it now, you will be able to use it tomorrow :-)

+

I wrote a little tutorial (a reveal-based notebook slideshow, of course) about how to use reveal converter option inside nbconvert

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

You can access to it here (recommended way).

+

If you want to see it without leaving this page (I do not recommend this last option, it is a small iframe).

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

I hope you use it and report any problem.

+

Cheers.

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/reveal_converter-mini-tutorial.es.html.dep b/cache/posts/reveal_converter-mini-tutorial.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/rise-400b1-is-available-please-test-it.es.html b/cache/posts/rise-400b1-is-available-please-test-it.es.html new file mode 100644 index 00000000..ddc91340 --- /dev/null +++ b/cache/posts/rise-400b1-is-available-please-test-it.es.html @@ -0,0 +1,21 @@ + +
+
+
+
+

Quick post! I have beta packages available for you to test RISE, if you can test it that would be awesome!!

+

In case you don't know about it, with RISE you get your Jupyter notebook rendered as a Reveal.js-based slideshow, where you can execute code on the fly or show to the audience whatever you can show/do inside the notebook itself (but in a "slidy" way).

+

How you can get it? +

+

You have several ways to get it that I described here: https://github.com/damianavila/RISE#installation

+

I don't want to repeat myself ;-) so go the the above link and check it.

+

The 4.0.0 release essentially deals with packaging and stuff to be compatible with the latest mechanisms on the Jupyter notebook to install and enable nbextensions (and RISE is a nbextension). But also fixes bugs and provide some enhancements.

+

Please report any issues with the beta here: https://github.com/damianavila/RISE/issues

+

Have fun!!

+

PS: I will write a more detailed post about RISE later. There are a lot of things to share about it!

+ +
+
+
+ + diff --git a/cache/posts/rise-400b1-is-available-please-test-it.es.html.dep b/cache/posts/rise-400b1-is-available-please-test-it.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/rise-500-is-out.es.html b/cache/posts/rise-500-is-out.es.html new file mode 100644 index 00000000..ec46043d --- /dev/null +++ b/cache/posts/rise-500-is-out.es.html @@ -0,0 +1,21 @@ + +
+
+
+
+

We're pleased to announce the release of RISE 5.0.0!

+

RISE let's you show yout Jupyter notebook rendered as an executable Reveal.js-based slideshow. It is your very same notebook but in a slidy way!

+

How you can get it? +

+

If you live in the conda/anaconda ecosystem, you can install it with conda install -c damianavila82 rise.

+

For further information about other installations, check https://github.com/damianavila/RISE#installation.

+

This released was focused in updating Reveal.js to the latest (3.5.0) and fix several bugs in the config mechanism. We also re-did the scrolling feature and, finally, we built the python 3.6 conda packages.

+

Please report any issues here: https://github.com/damianavila/RISE/issues

+

And enjoy it!

+

PS: If you are using/developing RISE from master (I strongly recommend you to use the packaged solutions if you don't want to develop on it), it would a good idea to reinstall the whole thing from scratch to avoid collisions between the previous way to get Reveal.js and the current one. For more information about the development installation, please check https://github.com/damianavila/RISE#development

+ +
+
+
+ + diff --git a/cache/posts/rise-500-is-out.es.html.dep b/cache/posts/rise-500-is-out.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/rise-510-is-out.es.html b/cache/posts/rise-510-is-out.es.html new file mode 100644 index 00000000..aa9370c3 --- /dev/null +++ b/cache/posts/rise-510-is-out.es.html @@ -0,0 +1,42 @@ + +
+
+
+
+

We're pleased to announce the release of RISE 5.1.0!

+

RISE allows you show your Jupyter notebooks rendered as an executable Reveal.js-based slideshow. It is your very same notebook but presented in a slidy way!

+

What are the new goodies for this release? +

+
    +
  • autolaunch config option to enable immediate launch of the slideshow view as soon as you open your notebook, very useful to use at mybinder.
  • +
  • smart exec allows you to execute cells and then proceed to the next cell WHEN the context permits, pretty similar to the native experience in the notebook view but it takes into consideration the slideshow view limitations and particularities
  • +
  • auto_select allows you to automatically select the first (or first code) cell any time you either move to a new slide, subslide or when you show (or hide) a new fragment
  • +
  • new overlay, header, background and footer customizable options
  • +
  • customizable CSS
  • +
  • keyboard customization through the notebook keyboard manager
  • +
  • new keyboard shortcuts to toggle cells as slide, subslides and fragments
  • +
+

For more information about all these new enhancements/features, please check the usage and the customization sections in the docs.

+

How you can play with it?

+

Thanks to the Binder team, now you have RISE available at https://mybinder.org/, so you can add your presentation notebook to one of your repos and show it as slideshow, provided by Binder. You can check a simple example at http://mybinder.org/v2/gh/binder-examples/jupyter-rise/master?filepath=index.ipynb.

+

How you can get it?

+

If you live in the conda/anaconda ecosystem, you can install it with conda install -c damianavila82 rise.

+

For further information about alternative installations, please check the installation docs.

+

*Do you have an issue, question or enhancement requests?

+

Please report any of those at https://github.com/damianavila/RISE/issues

+

Do you want to contribute?

+

For more information about the how to contribute, please check the developer docs.

+

Special mentions

+

I want to truly thanks to Thierry Parmentelat, aka as @parmentelat, for all the contributions he made in the last couple of months. He is responsible of most the new features coming into this new release.

+

BIG THANK YOU!

+

I also want to mention and thanks to Chris Holdgraf @choldgraf, one of the members of the Binder team who quickly caugth the release and made it available at Binder (add also contributed with the autolaunch options and docs).

+

Enjoy it!

+

And thanks for using RISE!

+

ADDENDUM

+

We have detected some issues trying to install RISE on win boxes reported here. I have rebuilt the packages and they seem to be working OK by now. Let us know if you have further issues. Thanks.

+ +
+
+
+ + diff --git a/cache/posts/rise-510-is-out.es.html.dep b/cache/posts/rise-510-is-out.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/rise-520-is-out.es.html b/cache/posts/rise-520-is-out.es.html new file mode 100644 index 00000000..0acb58a3 --- /dev/null +++ b/cache/posts/rise-520-is-out.es.html @@ -0,0 +1,22 @@ + +
+
+
+
+

We're pleased to announce the release of RISE 5.2.0!

+

RISE let's you show yout Jupyter notebook rendered as an executable Reveal.js-based slideshow. It is your very same notebook but in a slidy way! +

+

How you can get it?

+

If you are a conda/anaconda user, you can install it with conda install -c damianavila82 rise.

+

For further information about other installations procedures, please check https://damianavila.github.io/RISE/installation.html.

+

What are the new goodies?

+

This released was mainly focused in some source code cleanup and normalization, several fixes and enhancements in the documentation, new default values for the auto_select and start_slideshow_at config options and a scroll-aware behavior for the output observer.

+

You can see a detailed changelog at https://damianavila.github.io/RISE/changelog.html

+

Please report any issues at https://github.com/damianavila/RISE/issues

+

And I hope you enjoy the RISE experience!

+ +
+
+
+ + diff --git a/cache/posts/rise-520-is-out.es.html.dep b/cache/posts/rise-520-is-out.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/rise-530-is-out.es.html b/cache/posts/rise-530-is-out.es.html new file mode 100644 index 00000000..c580451a --- /dev/null +++ b/cache/posts/rise-530-is-out.es.html @@ -0,0 +1,22 @@ + +
+
+
+
+

We're pleased to announce the release of RISE 5.3.0!

+

RISE lets you show your Jupyter notebook rendered as an executable Reveal.js-based slideshow. It is your very same notebook but in a slidy way! +

+

How you can get it?

+

If you are a conda/anaconda user, you can install it with conda install -c damianavila82 rise.

+

For further information about other installations procedures, please check http://rise.readthedocs.io/en/stable/installation.html.

+

What are the new goodies?

+

This released was mainly focused on a general documentation review, fixes and improvements (now we have the docs deployed with readthedocs), a general setup.py review, simplification and improvement, RISE compliance with the nbextensions_configurator project, and auto enabling behavior when installing with pip, plus some other specific bugfixes and enhancements.

+

You can see a detailed changelog at http://rise.readthedocs.io/en/stable/changelog.html#changes

+

Please report any issues at https://github.com/damianavila/RISE/issues

+

And we really hope you enjoy the RISE experience!

+ +
+
+
+ + diff --git a/cache/posts/rise-530-is-out.es.html.dep b/cache/posts/rise-530-is-out.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/rise-541-is-out.es.html b/cache/posts/rise-541-is-out.es.html new file mode 100644 index 00000000..e5633423 --- /dev/null +++ b/cache/posts/rise-541-is-out.es.html @@ -0,0 +1,22 @@ + +
+
+
+
+

We're pleased to announce the release of RISE 5.4.1!

+

RISE lets you show your Jupyter notebook rendered as an executable Reveal.js-based slideshow. It is your very same notebook but in a slidy way! +

+

How you can get it?

+

If you are a conda/anaconda user, you can install it with conda install -c conda-forge rise.

+

For further information about other installations procedures, please check https://rise.readthedocs.io/en/docs_hot_fixes/installation.html.

+

What are the latest news?

+

This released was mainly focused on setup.py enhancements, documentation updates (mainly in the PDF section), compatibility fixes, and two new nice features: chalkboard functionality and speaker notes!!

+

You can see a detailed changelog at https://rise.readthedocs.io/en/docs_hot_fixes/changelog.html

+

Please report any issues at https://github.com/damianavila/RISE/issues

+

And we really hope you enjoy the RISE experience!

+ +
+
+
+ + diff --git a/cache/posts/rise-541-is-out.es.html.dep b/cache/posts/rise-541-is-out.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/rise-meets-jupyterlab.es.html b/cache/posts/rise-meets-jupyterlab.es.html new file mode 100644 index 00000000..7766eb25 --- /dev/null +++ b/cache/posts/rise-meets-jupyterlab.es.html @@ -0,0 +1,20 @@ + +
+
+
+
+

JupyterLab is the future for the notebook/authoring experience.

+

And people started to ask me if we will have RISE on JupyterLab

+

Do you want to know the answer? +

+

OK, first, an important note, this is just a afternoon hack with the jupyterlab extensions machinery. +This is a very early PoC showing that things are possible, but it is not a shareable code base, at least, not yet ;-)

+

+

Very promising, don't you think?

+

Best!

+ +
+
+
+ + diff --git a/cache/posts/rise-meets-jupyterlab.es.html.dep b/cache/posts/rise-meets-jupyterlab.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/scipycon-argentina-2013.es.html b/cache/posts/scipycon-argentina-2013.es.html new file mode 100644 index 00000000..4c98738c --- /dev/null +++ b/cache/posts/scipycon-argentina-2013.es.html @@ -0,0 +1,37 @@ + +
+
+
+
+

This is the first SciPy Conference in Argentina (as far as I know, it is also the first one in Latin American).

+

It will be held from 16 to 18th of May in Puerto Madryn, at the Patagonia Argentina (more details at SciPyCon homepage).

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

I am very proud to have this kind of conference in my country, and I would like to thanks to the organizers (and the sponsors) for all their hard work to make it happens.

+

The conference will have exciting talks, tutorials and poster presentations. You can check the schedule here

+

I will be presenting a tutorial called, Python Científico: Episodio I (Scientific Python: Episode I). You can check the details here.

+

And I will be also presenting a talk called, IPython notebook: el "paper ejecutable" (IPython notebook: the "executable paper").

+

This conference will be a boost for our growing Scientific Pythonic Community and an exciting beginning!

+

Why I am writing in English about a Spanish Conference? Because I want to spread the word about this conference as much as I can and because there are international speakers scheduled (and I would love to see more in the next conference!)

+

I hope to see you there!

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/scipycon-argentina-2013.es.html.dep b/cache/posts/scipycon-argentina-2013.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/slider-for-nbconvert.es.html b/cache/posts/slider-for-nbconvert.es.html new file mode 100644 index 00000000..f987f28f --- /dev/null +++ b/cache/posts/slider-for-nbconvert.es.html @@ -0,0 +1,25 @@ +

I have implemented reveal.js slides for vIPer (I will publish a +post about that the next days...).

+

Then, I showed the resulting slides http://www.slideviper.oquanta.info/reveal/Example_new_slides.html +to some IPython team members and one of them, Brian, says:

+
+"it would be great if nbcovert could output reveal.js slides."
+

and then, Fernando (if you know what is IPython, you know these guys) replies:

+
+"we can certainly add that kind of functionality as output options..."
+

So, keeping in mind the implementation in vIPer, I provided a dirty and basic +new implementation to get reveal-based slides from nbconvert.

+ +

To test it just go to:

+
+https://github.com/damianavila/nbconvert.git
+

switch to branch slider_converter,

+

and type:

+
+python nbconvert.py -f slider example_slide.ipynb
+

You can see a video showing the basic functionality here +(big sorry for the quality, I will post a better one soon):

+

There is a lot of stuff to do with that... I will do it when I get some free time.

+

Just my two cents!

+

Enjoy!

+

Damián.

diff --git a/cache/posts/slider-for-nbconvert.es.html.dep b/cache/posts/slider-for-nbconvert.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.es.html b/cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.es.html new file mode 100644 index 00000000..c7c68844 --- /dev/null +++ b/cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.es.html @@ -0,0 +1,41 @@ + +
+
+
+
+

Short Notice:

+

After some months of silence, I am back... A lot of things have happened in my life lately, some of them are really good things... some others don't. And all those things kept me very busy, but finally I have made me some time to write again! ;-)

+

OK, I have a long list of news, topics, ideas and developments I want to share with you, but we have to begin with one of them, and the chosen one is Slideviewer. +

+

When I was at SciPy 2013, one of the talks I presented was about the IPython slides (if you dont know what I am talking about, just check some of these posts). And one of the last things I presented in that talk was an early prototype of Slideviewer, an NBviewer's clon, but able to render IPython slides instead of plain IPython notebooks (.ipynb).

+

The main idea behind Slideviewer was to provide you an easy way to share your IPython slides. As I pointed out in older posts and comments, you can deploy your IPython slides (the slides.html file plus the reveal.js library) using Github pages or any other service, but with Slideviewer, you only need to host your .ipynb somewhere (ie, Github repo, gist, etc.), and just pass the url to the Slideviewer service (the same way you do it with the NBviewer service) which will render your .ipynb to an IPython slide automagically.

+

Slideviewer will follow NBviewer updates once a week, as close as it can be, essentially because some things are relevant for both apps, but others don't.

+

And, in the future, we can probably merge the Slideviewer app onto the NBviewer app, but we need to make some things first, so I think is useful to have a separate service running right now, to help people to easily spread their IPython slides.

+

Slideviewer lives here (for now): http://slideviewer.herokuapp.com/ and you can see it iframed below:

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

If you have an IPython slides worth to be included in the main page, just let me know and I will add it.

+

Note: Slideviewer does not support custom.css from Github (because Github does not serve the css), but you can always use another place to host your .ipynb and custom.css or change the html source code pointing to another url where the css was deployed and served. If you need help with this issue, let me know. I will try to figure out a native solution soon.

+

OK, I hope you find this service useful!

+

See you soon.

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.es.html.dep b/cache/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.es.html b/cache/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.es.html new file mode 100644 index 00000000..dc022812 --- /dev/null +++ b/cache/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.es.html @@ -0,0 +1,32 @@ + +
+
+
+
+

I am very happy to inform you that Project Jupyter has been awarded the 2017 ACM Software System Award!

+

As part of the Jupyter Steering Council, I am one of the official recipients of the award, but I wanted to highlight that I am just one member of a large group of people (contributors and users) working together to push the Project Jupyter forward and beyond its limits.

+

Project Jupyter is an essential part of my life. It gave me the opportunity to work with amazing people, to learn a lot of new things, to help other people. Some years ago, I left academia for several reasons, but one of the most important ones was to find an opportunity to make a substantial impact on people’s lives. I wanted to be involved in something that could empower people to do amazing things. And I certainly believe that Project Jupyter filled that space and allowed me to achieve that goal more than I could imagine. +

+

Why is Project Jupyter receiving the ACM Award?

There are several reasons, but let’s focus on the following:

+

1) Jupyter is explicitly designed for the task of computing interactively

+

Jupyter has become an important part of the daily workflow in research, education, journalism, and industry allowing people to process, analyze, and manipulate data and get insights from it in a fluid, pleasant, and effective way.

+

2) Jupyter fosters communication and collaboration through open standardized formats

+

The open and standardized Jupyter notebook file format is designed to capture, display and share natural language, code, and results in a single computational narrative. This is a key aspect of the scientific and research life cycle. You want to share your findings and thoughts with other people and Jupyter helps with that goal providing a self-contained and powerful computational narrative.

+

The stability and interoperability of open standards also provide a foundation for others to experiment, collaborate, and build tools inspired by their unique goals and perspectives. We have also provided tools to support Jupyter deployment in multi-user environments, making it easier to access common computational resources and share live computational environments. JupyterHub (and Binder) now supports industry deployment, large-scale education and reproducible research.

+

But the most important thing here, as I said before, is the Jupyter Community. IPython and Jupyter have grown to be the product of thousands of contributors and users. We are always seeking to ensure the project is welcoming, supports an increasingly diverse community, and helps solidify a foundation for it to be sustainable.

+

Let’s make it crystal clear: The project exists to serve the community and wouldn’t be possible without you.

+

So, thank YOU for your continuous support, contributions, and feedback!

+

PS

+

On a personal note, I would also like to thank Anaconda, Inc. I have been working here for a long time now and it was/is a great experience. I am grateful for the generous support they provided in building the next Jupyter experience, JupyterLab. And I am also grateful for the continuous support in my involvement with the Jupyter community. I really appreciate that!

+

Update (Jun)

Last weekend a big part of the Jupyter team received the announced prize in the ACM 2018 banquet at San Francisco, CA. +Some pics or it did not happen!

+

+

A better quality one ;-)

+

+

Thanks again to all who contributes to the project!

+ +
+
+
+ + diff --git a/cache/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.es.html.dep b/cache/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/teasers-with-the-ipython-notebook-plugin.es.html b/cache/posts/teasers-with-the-ipython-notebook-plugin.es.html new file mode 100644 index 00000000..1320856f --- /dev/null +++ b/cache/posts/teasers-with-the-ipython-notebook-plugin.es.html @@ -0,0 +1,21 @@ + +
+
+
+
+

Just a little tip...

+

You know that Nikola support TEASERS... if not, you can read more about that here: +teasers_info.

+

In a few words, if you don't want to show the complete content of your posts at the index page, but instead display only the beginning of them, you only need to add a "magical comment" in a markdown cell:

+ + +

<!-- TEASER_END -->

+

And all the content after this "magical comment" will not be rendered at the index page.

+

In this way, you can avoid the load of "heavy" things at the index and make your site main page loading faster... nice, don't you think?

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/teasers-with-the-ipython-notebook-plugin.es.html.dep b/cache/posts/teasers-with-the-ipython-notebook-plugin.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/trading-logbook-update-22-nov-2013.es.html b/cache/posts/trading-logbook-update-22-nov-2013.es.html new file mode 100644 index 00000000..6b167f71 --- /dev/null +++ b/cache/posts/trading-logbook-update-22-nov-2013.es.html @@ -0,0 +1,113 @@ + +
+
+
+
+

OK, logging my trades in the forex market, as I promised in the last post.

+

FYI, I am a daily trader, so you will see me holding positions over several days. +Last week, I performed some real account trades accordingly to my models, opening positions at several currencies pairs. You can see the detailed information in the table below: +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TicketDateTransactionCurrency PairPriceRelative Balance
13628446502013-11-20 23:00:22Close TradeUSD/CHF0.917381.08
13628446422013-11-20 23:00:16Close TradeEUR/CHF1.231491.05
13608651772013-11-19 01:04:03Sell MarketAUD/USD0.937881.05
13608651682013-11-19 01:03:59Close TradeNZD/USD0.832131.05
13600334672013-11-18 02:06:02Buy MarketEUR/CHF1.234161.03
13600334612013-11-18 02:05:58Buy MarketUSD/CHF0.914941.03
13600320422013-11-18 02:00:11Buy MarketAUD/USD0.939821.03
13600320012013-11-18 02:00:06Sell MarketNZD/USD0.835401.04
13568092522013-11-13 21:27:53Sell MarketAUD/USD0.937241.04
13568092092013-11-13 21:27:47Sell MarketGBP/AUD1.712261.04
+

As you can see, I have yet some open positions because I am waiting to see how these positions evolve over the next week and, obviously, because my models do not signal me to close these trades... yet ;-)

+

As a plus, I have added a new column to the table containing my Relative Balance (because it is not probably a good idea that you know my current balance), and after this week, we have an overall net profit of 8%. You have to take into account that I have set up this account to trade at a high risk profile... so understand this net profit in terms of this high risk.

+

Finally, I have also decided to live tweet the trades from this account, so if you follow me on twitter, you will see these trades on real time, or you can wait to the Fridays when I will post another sheet of this sort of logbook.

+

Good weekend!

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/trading-logbook-update-22-nov-2013.es.html.dep b/cache/posts/trading-logbook-update-22-nov-2013.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/trading-logbook-update-3.es.html b/cache/posts/trading-logbook-update-3.es.html new file mode 100644 index 00000000..2beed1a2 --- /dev/null +++ b/cache/posts/trading-logbook-update-3.es.html @@ -0,0 +1,103 @@ + +
+
+
+
+

OK, I have run my models again and it was time to enter the market.

+

Early today, I opened two positions: +

+ + + + + + + + + + + + + + + + + + + + + + +
DateTransactionCurrency PairPrice
06/26/2017 08:23:35BuyMarketEUR/CHF1.08806
06/26/2017 08:23:31BuyMarketUSD/CHF0.97356
+

Update 27-Jun-2017

+

I have opened two more positions:

+ + + + + + + + + + + + + + + + + + + + + + +
DateTransactionCurrency PairPrice
06/27/2017 10:02:27BuyMarketEUR/CHF1.08908
06/27/2017 10:02:09BuyMarketUSD/CHF0.96524
+

Let's see how things evolve in the next few days.

+

Update 07-Jul-2017

+

Things have evolved, so it was time to close the positions:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DateTransactionCurrency PairPrice
07/7/2017, 3:35:58 PMClose TradeUSD/CHF0.96406
07/7/2017, 3:35:58 PMClose TradeUSD/CHF0.96406
07/7/2017, 3:35:54 PMClose TradeEUR/CHF1.09948
07/7/2017, 3:35:54 PMClose TradeEUR/CHF1.09948
+

And we are closed in the positive side ;-)

+

Let's see if the model continues to perform well in the next few weeks.

+

Happy trading!

+ +
+
+
+ + diff --git a/cache/posts/trading-logbook-update-3.es.html.dep b/cache/posts/trading-logbook-update-3.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.es.html b/cache/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.es.html new file mode 100644 index 00000000..490fce65 --- /dev/null +++ b/cache/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.es.html @@ -0,0 +1,125 @@ + +
+
+
+
+

It is time to release some extensions I wrote the last weeks. +And because it is Friday, and it is a great moment to begin with the "relax" and procrastination, I will release the tweet me extension... +

+

You don't have any idea what I am talking about? OK, a few words... +Probably you know that spend a lot of time inside IPython notebooks and I was tired to switch windows to send or answer a tweet. So, I wrote a little js extension to capture the input of the selected cell and tweet it just pressing the twitter icon at the IPython toolbar.

+

+

But this js extension is IPython-powered itself, because I am using the IPython js machinery to execute python files calling the python kernel! Yes... it seems weird, but once you get the idea, you can achieve a lot of things. You can see the relevant part of the code below:

+ +
+
+
+
+
+
In [1]:
+
+
+
!sed -n 59,74p /media/datos/Desarrollos/mIPyex/custom/tweet_me/main.js
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
function tweetMe(path) {
+  var entry = IPython.notebook.get_selected_cell().get_text();
+  if (entry.length == 0) {
+    zeroMessager(); 
+  }
+  if (entry.length > 0 && entry.length <= 140) {
+    IPython.notebook.kernel.execute('%bookmark root');
+    IPython.notebook.kernel.execute('%cd ' + path);
+    IPython.notebook.kernel.execute('%run tweet_helper.py "' + entry + '"');
+    IPython.notebook.kernel.execute('%cd -b root');
+    sucessMessager();
+  }
+  if (entry.length > 140) {
+    wrongMessager();
+  }
+}
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

The secret is to use the IPython.notebook.kernel.execute(whatever) method and pass it whatever you want, even IPython magics functions! Yes again... too much Inception movie for the last weeks ;-)

+

OK, the extension lives in this new repo: mIPyex, where I will upload the development versions of my own extensions. When I get them enough stable, I will make a copy of them in the IPython notebook extensions repo where you can get a lot of and useful interesting extensions.

+

Do you want to try it? +It is easy... just follow the README to install all the necessary tools (I used the PTT library to deal with the Twitter API) and then just click the twitter button when you want to share something with the world!

+

Hope you enjoy it a lot!

+

Damián

+ +
+
+
+
+
+
+
+

PD: I will use the next cell to tweet about this new blog post! ;-)

+ +
+
+
+
+
+
+
+

New blog post! +Tweet me... said an IPython notebook cell and I did it. +http://goo.gl/ry9Umi

+ +
+
+
+
+
+
+
+

Addendum: +You can now send tweets from cells with multi-line content (my first implementation only worked with one-line strings).

+ +
+
+
+
+
+
+
+

Addendum 2: You have not only a button but also a keyboard shortcut to activate the Tweet me extension: ALT + T.

+ +
+
+
+ + diff --git a/cache/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.es.html.dep b/cache/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/under-the-sea-en-la-plata.es.html b/cache/posts/under-the-sea-en-la-plata.es.html new file mode 100644 index 00000000..15515135 --- /dev/null +++ b/cache/posts/under-the-sea-en-la-plata.es.html @@ -0,0 +1,101 @@ + +
+
+
+
+

Han pasado casi tres semanas... El 2 de abril cayeron sobre la ciudad de La Plata casi 400 mm de agua en 24 hs, concentrándose la mayor parte de dicho caudal en dos o tres horas por la tarde, lo que dio lugar a la más grande inundación que la ciudad haya registrado en toda su historia.

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

+ +
+
+
+
+
+
+
+

Impresionante, no les parece?

+

Lamentablemente, en casa el agua llego a 1,60 mts.

+

Obviamente, la mayoría de las pertenencias quedaron bajo el agua: muebles, electrodomesticos, ropa, biblioteca, documentos, etc.

+

Aca pueden ver la imagen con la que me encontré al día siguiente de la inundación:

+ +
+
+
+
+
+
+
+

+ +
+
+
+
+
+
+
+

Y Lore tratando de esbozar una sonrisa que obviamente enmascaraba una gran tristeza al ver la pieza de Facu en esas condiciones.

+ +
+
+
+
+
+
+
+

+ +
+
+
+
+
+
+
+

Gracias a Dios, no tuvimos que vivir la inundación "in situ" ya que estábamos volviendo de Córdoba (nos habíamos tomado unos días para descansar) en el momento en el que la tormenta se desató con mayor intensidad. Hubiese sido un momento complicadísimo, probablemente subiendo al techo con Facu a cuestas... mejor no imaginarlo, o si... para estar preparado.

+

Hemos podido salvar algunos muebles, algunos electrodomésticos, muchas fotos y la mayoría de la ropa y el calzado. Pero hemos pérdido otras tantas cosas, por ejemplo, la biblioteca, muchos documentos y las computadoras.

+

Ya han pasado tres semanas desde la tormenta, y aún no pudimos volver a casa. Los hongos se hacen un festín en estas situaciones y todavía quedan algunos creciendo en las paredes a pesar de la limpieza a diario. Probablemente estemos volviendo a fines de esta semana.

+

Y después... viene la recontrucción, la albañilería, la pintura, arreglar estufas, etc y comprar todo lo que se perdió y es necesario para la vida diaria. Para los arreglos, todas las manos son bienvenidas, jeje...

+

Quisiera aprovechar este espacio para agradecer a todos aquellos que se preocuparon por nosotros. A todos aquellos que nos dieron una mano, no sólo física, poniendo el hombro a la hora de la limpieza, sino también dándonos su apoyo constante:

+
    +
  • Melisa, Diego y Flavio.
  • +
  • Romi y las hijas de Lore: Clarita y Marina.
  • +
  • Cintia y Pedro.
  • +
  • Michelle y Lucas.
  • +
  • Todo el grupo de amigos del IBYME: Xime, Carito, Norber, Evan, Andre, Nico, Ger, Mer, Gaby y los Galectinos.
  • +
  • David y la gente del LISIN.
  • +
  • La gente de PyAr: Martin Gaitán, Fisa, entre otros.
  • +
  • y muchos más que no estoy nombrando, pero que también estuvieron atentos para subsanar cualquier necesidad.
  • +
+

Y unos últimos agradecimientos adicionales:

+
    +
  • Papi y Mami, que siempre están al pie del cañon.
  • +
  • Dan, gracias por estar pendiente en todo momento... y por ser un apoyo constante.
  • +
  • Lore, que puedo decir que no te haya dicho... Gracias por aguantarme, por apoyarme, por todo tu esfuerzo y sacrificio.
  • +
  • Facu, gracias por existir y ser el sol que alumbra y alumbrará todos mis días.
  • +
+

Gracias totales!

+

Nos vemos en el próximo post!

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/under-the-sea-en-la-plata.es.html.dep b/cache/posts/under-the-sea-en-la-plata.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.es.html b/cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.es.html new file mode 100644 index 00000000..83131288 --- /dev/null +++ b/cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.es.html @@ -0,0 +1,78 @@ + +
+
+
+
+

IPython slides are powered by Reveal.js library, you probably already know that.

+

But... you probably don't know that we use jsdelivr CDN to load all the necessary js and css files. As a consequence, you don't need to download Reveal.js, but also, the speaker notes are not working by default.

+

But... what happens, if you have low connectivity in the place where you will be presenting your talk (or if you want to use the speaker notes feature)? +

+

In this case, it would be better to use a local copy of the Reveal.js library. And you can easily configure this behavior using a config object from the IPython machinery.

+

Below, you have one way to do it:

+ +
+
+
+
+
+
In [1]:
+
+
+
from IPython.nbconvert.exporters import SlidesExporter
+from IPython.config import Config
+
+from IPython.nbformat import current as nbformat
+
+infile = "talk.ipynb" # load the name of your slideshow
+outfile = "talk.slides.html"
+
+notebook = open(infile).read()
+notebook_json = nbformat.reads_json(notebook)
+
+# This is the config object I talked before: 
+# After the 'url_prefix', you can set the location of your 
+# local reveal.js library, i.e. if the reveal.js is located 
+# in the same directory as your talk.slides.html, then 
+# set 'url_prefix':'reveal.js'.
+
+c = Config({
+            'RevealHelpTransformer':{
+                'enabled':True,
+                'url_prefix':'reveal.js',
+                },                
+            })
+
+exportHtml = SlidesExporter(config=c)
+(body,resources) = exportHtml.from_notebook_node(notebook_json)
+
+open(outfile, 'w').write(body.encode('utf-8'))
+
+ + +   Click me to hide the output +
+
+
+ +
+
+
+
+
+

Then, just serve the directory:

+

python -m SimpleHTTPServer 8000

+

open the browser and point it to http://localhost:port, ie:

+

xdg-open http://127.0.0.1:8000

+

OK, that's all... you don't need connectivity anymore ;-) OK, just kidding... he he!

+

NOTE: If you are using master, it is even simpler... because now --post serve post-processor uses tornado to forward requests to the CDN if and only if local Reveal.js is unavailable (PR merged here, thanks MinRK). So, just locate the reveal.js in the same directory as your talk.slides.html lives and run (as usually):

+

ipython nbconvert talk.ipynb --to slides --post serve

+

You can also point to another directory using the --reveal-prefix alias, ie:

+

ipython nbconvert talk.ipynb --to slides --post serve --reveal-prefix foo/reveal.js

+

Hope it helps.

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.es.html.dep b/cache/posts/using-a-local-revealjs-library-with-your-ipython-slides.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/viper-is-now-using-ipythonnbconvert.es.html b/cache/posts/viper-is-now-using-ipythonnbconvert.es.html new file mode 100644 index 00000000..adc6b3a8 --- /dev/null +++ b/cache/posts/viper-is-now-using-ipythonnbconvert.es.html @@ -0,0 +1,69 @@ + +
+
+
+
+

As you know (if not, probably the following lines gives you an idea), vIPer was originally designed to export from ipynb files to:

+
    +
  • a plain static html
  • +
  • a slideshow powered by Landslide
  • +
+

With the last release, IPython support this kind of exportation using the well designed and easily extensible IPython.nbconvert library. Now, it is easier to incorporate the IPython machinery inside vIPer and support the exportation to several formats. +

+

Note: if you want to know more about vIPer, just see the following talk I gave about it at SciPy 2013.

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

Up to now, I have replaced the old converters by the new ones: the HTMLExporter and the SlidesExporter from IPython.nbconvert. As a consequence, vIPer now supports the generation of IPython slides (deprecating the use of Landslide to get the html-powered slideshow... thank you very much to the Landslide developers for their work... and to make my life easier at the first days of vIPer).

+

Remarkably, trying to serve the IPython slides inside vIPer was very educational, because IPython.nbconvert already supports the serve of the resulting slides, so I tried to use this functionality and, because I needed to work in parallel, this led me to work a little bit with QtCore.QThreads.

+

So, I essentially sub-classed the QtCore.QThread:

+ +
class ServeThread(QtCore.QThread):
+    def __init__(self, extension, container):
+        QtCore.QThread.__init__(self)
+        self.container = container
+        self.extension = extension
+
+    def run(self):
+        localO = self.container.titleHistory[-1] + self.extension
+        self.container.server.open_in_browser = False
+        self.container.server(str(self.container.path) + '/' + localO)
+

Note: yes, I have to deal with the path in a better way, but I am too lazy to do it now ;-)

+

And then, I have instantiated the ServerThread class accordingly to my needs:

+ +
class Converter:
+    def __init__(self, exporter, extension, container):
+        self.container = container
+        self.extension = extension
+        self.exporter = exporter
+
+        self.container.nbConverter(self.exporter, self.extension)
+        self.container.servePool.append(ServeThread(self.extension,
+                                                    self.container))
+        if len(self.container.servePool) == 1:
+            self.container.servePool[0].start()
+        else:
+            pass
+

It is important to highlight that I needed to call the start() method to run the run() method from the ServeThread class.

+

And now, vIPer support serving the IPython slides automatically after the conversion step with just a click of a button.

+

OK, just try vIPer (Github repo) and let me know any bug... and I hope you find the Qt-derived threads information useful, or at least, interesting! ;-)

+

Damián

+ +
+
+
+ + diff --git a/cache/posts/viper-is-now-using-ipythonnbconvert.es.html.dep b/cache/posts/viper-is-now-using-ipythonnbconvert.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/viper.es.html b/cache/posts/viper.es.html new file mode 100644 index 00000000..ee0c9b82 --- /dev/null +++ b/cache/posts/viper.es.html @@ -0,0 +1,13 @@ +

vIPer es una aplicación específicamente diseñada para trabajar +con los notebooks the IPython.

+

Es un proyecto que he estado desarrollando durante las últimas semanas...

+

A continuación, pueden ver un video en el cual demuestro una de mis funciones predilectas: +la posibilidad de tener una vista "presentación" para el notebook con el cual estoy trabajando +(súper útil a la hora de exponer resultados o preparar charlas, por ejemplo).

+ +

Iba a darlo a conocer en SciPy US 2012, pues me habían aceptado la charla. Sin embargo, +lamentablemente, no fuí elegido para una de las becas que la conferencia otorgaba +(y Texas está medio lejos, vió...), así que, muy probablemente, lo presente en la próxima PyConAr.

+

Obviamente, vIPer estará disponible muy pronto...

+

Nos vemos.

+

Damián.

diff --git a/cache/posts/viper.es.html.dep b/cache/posts/viper.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/we-are-above-1000-stars.es.html b/cache/posts/we-are-above-1000-stars.es.html new file mode 100644 index 00000000..d41de4f0 --- /dev/null +++ b/cache/posts/we-are-above-1000-stars.es.html @@ -0,0 +1,21 @@ + +
+
+
+
+

Github has a way to measure projects popularity through stars.

+

And those stars are given by the users themselves.

+

And we are just above a remarkable line...

+ + +

As you can see below (or in the RISE github repo):

+

+

We are above 1000 stars!!!

+

I just want to give a big THANK YOU to all the RISE users out there.

+

See you soon!

+ +
+
+
+ + diff --git a/cache/posts/we-are-above-1000-stars.es.html.dep b/cache/posts/we-are-above-1000-stars.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/zen-mode-extension-for-the-ipython-notebook.es.html b/cache/posts/zen-mode-extension-for-the-ipython-notebook.es.html new file mode 100644 index 00000000..9c44a948 --- /dev/null +++ b/cache/posts/zen-mode-extension-for-the-ipython-notebook.es.html @@ -0,0 +1,67 @@ + +
+
+
+
+

I write a lot stuff inside the IPython notebook.

+

And I thought it would be great to have a sort of Zen mode for the notebook...

+

I mean, a peaceful user interface to write my blog posts (and other stuff, of course).

+

So I wrote a little js extension which give me this Zen mode.

+

You can see some screen shots below: +

+ +
+
+
+
+
+
+
+

+ +
+
+
+
+
+
+
+

+ +
+
+
+
+
+
+
+

And a little video showing the extension in action:

+ +
+
+
+
+
+
+
+ +
+
+
+
+
+
+
+

Do you want it? You can get it!

+

It is available inside the IPython-notebook-extensions repo under the IPython-contrib organization [1].

+

In the custom.js file you can select which background image do you want to use (there are some available inside the extension, but you can also use your own image ;-)).

+

Enjoy it!

+

Damián

+

PS: As usual, open any issue (bug or idea) at the Github repo (or report me here at the comments). Thanks!

+

[1] https://github.com/ipython-contrib/IPython-notebook-extensions

+ +
+
+
+ + diff --git a/cache/posts/zen-mode-extension-for-the-ipython-notebook.es.html.dep b/cache/posts/zen-mode-extension-for-the-ipython-notebook.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/posts/zen-themes-updated.es.html b/cache/posts/zen-themes-updated.es.html new file mode 100644 index 00000000..e5bf945c --- /dev/null +++ b/cache/posts/zen-themes-updated.es.html @@ -0,0 +1,166 @@ + +
+
+
+
+

OK, time to recap some things... As you know, Nikola 7.0.0 was released some weeks ago. It has a lot of improvements, bug fixes and new features. I recommend you to download and try it! +As part of the release, we paid attention to update all the plugins and themes inside the Nikola Github organization (don't forget you can contribute with your own plugins and themes!). So, I updated my own themes, in particular, the Zen ones. +

+

As you also now, IPython 2.x was released just some weeks ago too. So, I took into account this two releases and updated the Zen themes to be compatible with both of them. +As a consequence of the update, the zen-ipython theme has change a little bit, some bugs were fixed and some features enabled. You can probably has noticed that if you visit my blog in the last two weeks. If you did not notice, first, buy some glasses ;-), and then, take a tour, visit some of my old posts (there are interesting new comments every week) and enjoy the new theme.

+

And... don't forget! You can get the Zen themes very easily. First, to list all the available themes at the Nikola themes repo:

+ +
+
+
+
+
+
In [1]:
+
+
+
!nikola install_theme -l
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
Themes:
+-------
+blogtxt
+bootstrap3-gradients
+bootstrap3-gradients-jinja
+ipython
+ipython-xkcd
+monospace
+oldfashioned
+planetoid
+readable
+reveal
+reveal-jinja
+zen
+zen-ipython
+zen-jinja
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Of course, don't use the ! at the beginning of the line if you are outside IPython.

+

To install one of them, just write:

+ +
+
+
+
+
+
In [2]:
+
+
+
!nikola install_theme zen-ipython
+
+ + +   Click me to hide the output +
+
+
+ +
+
+ +
+
+ + +
+ +
+ + +
+
[2014-05-30T18:28:23Z] WARNING: Nikola: Cannot load theme "zen-ipython", using 'bootstrap' instead.
+[2014-05-30T18:28:24Z] INFO: install_theme: Downloading: http://themes.getnikola.com/v7/zen-ipython.zip
+[2014-05-30T18:28:24Z] INFO: install_theme: Extracting: zen-ipython into themes
+[2014-05-30T18:28:24Z] NOTICE: install_theme: This theme has a sample config file.  Integrate it with yours in order to make this theme work!
+Contents of the conf.py.sample file:
+
+    NAVIGATION_LINKS = {
+        DEFAULT_LANG: (
+            ('/index.html', 'Home', 'icon-home'),
+            ('/archive.html', 'Archives', 'icon-folder-open-alt'),
+            ('/categories/index.html', 'Tags', 'icon-tags'),
+            ('/rss.xml', 'RSS', 'icon-rss'),
+            ('http://getnikola.com', 'About me', 'icon-user'),
+            ('https://twitter.com/getnikola', 'My Twitter', 'icon-twitter'),
+            ('https://github.com/getnikola', 'My Github', 'icon-github'),
+        )
+    }
+
+[2014-05-30T18:28:24Z] INFO: install_theme: Downloading: http://themes.getnikola.com/v7/zen-jinja.zip
+[2014-05-30T18:28:26Z] INFO: install_theme: Extracting: zen-jinja into themes
+[2014-05-30T18:28:26Z] NOTICE: install_theme: This theme has a sample config file.  Integrate it with yours in order to make this theme work!
+Contents of the conf.py.sample file:
+
+    NAVIGATION_LINKS = {
+        DEFAULT_LANG: (
+            ('/index.html', 'Home', 'icon-home'),
+            ('/archive.html', 'Archives', 'icon-folder-open-alt'),
+            ('/categories/index.html', 'Tags', 'icon-tags'),
+            ('/rss.xml', 'RSS', 'icon-rss'),
+            ('http://getnikola.com', 'About me', 'icon-user'),
+            ('https://twitter.com/getnikola', 'My Twitter', 'icon-twitter'),
+            ('https://github.com/getnikola', 'My Github', 'icon-github'),
+        )
+    }
+
+[2014-05-30T18:28:26Z] NOTICE: install_theme: Remember to set THEME="zen-ipython" in conf.py to use this theme.
+
+
+
+ +
+
+ +
+
+ +
+
+
+
+
+

and your theme will be available at the themes folder in your site.

+

OK, short post for today, more coming soon.

+

Damián.

+ +
+
+
+ + diff --git a/cache/posts/zen-themes-updated.es.html.dep b/cache/posts/zen-themes-updated.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/cache/stories/about-me.es.html b/cache/stories/about-me.es.html new file mode 100644 index 00000000..dc0c6630 --- /dev/null +++ b/cache/stories/about-me.es.html @@ -0,0 +1,43 @@ +

I'm a "data scientist", but also a biochemist (currently finished a PhD program in a biological science: Immunology, you can see my biological CV clicking here) from the U.N.L.P. - Buenos Aires, Argentina. I'm also a TA in Immunology courses at U.N.L.P. and I taught biostatistics courses at the Colegio de Bioquímicos - Colegio Zonal XII - Buenos Aires. I'm a member of Python Argentina (PyAr) [1] and Quantitative Finance Club (QFClub) [2].

+

My main focus is the quantitative financial time series research and analysis using Python as the main computational tool. But, I also develop several data science, computer vision, and IPython-related projects.

+

Recently, I have presented talks and posters in several international and national conferences:

+ +

In the open development area, I can list the following projects:

+ +

and also some contributions to other projects:

+ +

Ref:

+

[1] http://python.org.ar/pyar/

+

[2] http://quantfinanceclub.com/

+

[3] http://us.pycon.org/2012/speaker/profile/119/

+

[4] http://us.pycon.org/2012/schedule/presentation/513/

+

[5] http://www.youtube.com/watch?v=MIAKOMzRl1I

+

[6] http://www.youtube.com/watch?v=5YQrFiWa50M

+

[7] https://conference.scipy.org/scipy2013/presentation_detail.php?id=130

+

[8] https://conference.scipy.org/scipy2013/presentation_detail.php?id=168

+

[9] http://www.youtube.com/watch?v=rBS6hmiK-H8

+

[10] http://www.youtube.com/watch?v=NVf_giNcNro

+

[11] http://www.pyday.com.ar/lujan2012/activity/accepted

+

[12] http://ar.pycon.org/2011/activity/speakers

+

[13] http://ar.pycon.org/2011/schedule/index

+

[14] http://ar.pycon.org/2012/activity/accepted#76

+

[15] http://www.youtube.com/watch?v=M-crhRKfsZU

+

[16] conference page down

+

[17] conference page down

+

[18] video to be uploaded

+

[19] video to be uploaded

+

[20] http://github.com/damianavila/IPython-Plugin-for-NINJA-IDE

+

[21] https://github.com/damianavila/vIPer

+

[22] https://github.com/ipython/nbconvert/pull/69

+

[23] http://www.slideviper.oquanta.info/tutorial/slideshow_tutorial_slides.html#/

+

[24] https://github.com/ralsina/nikola/tree/master/extra_plugins/compile_ipynb

+

[25] https://github.com/ralsina/nikola/tree/master/nikola/data/themes/site-reveal

diff --git a/cache/stories/about-me.es.html.dep b/cache/stories/about-me.es.html.dep new file mode 100644 index 00000000..e69de29b diff --git a/conf.py b/conf.py index 8068e37e..8310f664 100644 --- a/conf.py +++ b/conf.py @@ -97,7 +97,7 @@ # this pattern is also used for metadata: # something.meta -> something.pl.meta -TRANSLATIONS_PATTERN = "{path}.{ext}.{lang}" +TRANSLATIONS_PATTERN = "{path}.{lang}.{ext}" # Links for the sidebar / navigation bar. (translatable) # This is a dict. The keys are languages, and values are tuples. diff --git a/galleries/.DS_Store b/galleries/.DS_Store index 75cda84a..d2b27e88 100644 Binary files a/galleries/.DS_Store and b/galleries/.DS_Store differ diff --git a/output/.DS_Store b/output/.DS_Store deleted file mode 100644 index 8b2cb510..00000000 Binary files a/output/.DS_Store and /dev/null differ diff --git a/output/assets/css/ipython.min.css.map b/output/assets/css/ipython.min.css.map deleted file mode 100644 index 3e36e5ea..00000000 --- a/output/assets/css/ipython.min.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../base/less/variables.less","../components/bootstrap/less/mixins/vendor-prefixes.less","../base/less/mixins.less","../base/less/flexbox.less","../base/less/error.less","../notebook/less/ansicolors.less","../notebook/less/cell.less","../notebook/less/codecell.less","../notebook/less/codemirror.less","../notebook/less/highlight.less","../components/codemirror/lib/codemirror.css","../notebook/less/outputarea.less","../notebook/less/renderedhtml.less","../notebook/less/textcell.less","../components/bootstrap/less/variables.less","../widgets/less/widgets.less","../components/font-awesome/less/variables.less"],"names":[],"mappings":";;;;EAqBE,MAAC,KAAM,eCyHP,kBAAmB,eAAnB,CACI,cAAe,eAAf,CACC,aAAc,eAAd,CACG,UAAW,gBDtHrB,KACE,WAIF,IAGE,iBAAA,CACA,oBAIF,MACI,mBEvCJ,mBACI,qBAAA,CACA,0BAAA,CACA,8BAGJ,YACI,kBAOJ,YACI,UCGJ,MAEI,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBAGJ,KAAM,GAEF,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,UAGJ,MAEI,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,oBAGJ,KAAM,GAEF,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,UAGJ,KAAK,SACL,KAAK,SACL,SAEI,6BAAA,CACA,0BAAA,CACA,qBAAA,CAGA,2BAGJ,KAAK,WACL,KAAK,WACL,WAEI,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,SAAA,CACA,WAGJ,KAAK,WACL,KAAK,WACL,WAEI,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,OAGJ,KAAK,UACL,KAAK,UACL,UAVI,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,OAUJ,KAAK,WACL,KAAK,WACL,WAEI,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,OAGJ,YAEI,wBAAA,CACA,qBAAA,CACA,iBAGJ,YAEI,wBAAA,CACA,qBAAA,CACA,iBAGJ,KAAK,OACL,KAAK,OACL,OAEI,sBAAA,CACA,mBAAA,CACA,cAAA,CAGA,2BAGJ,KAAK,KACL,KAAK,KACL,KAEI,oBAAA,CACA,iBAAA,CACA,YAAA,CAGA,yBAGJ,KAAK,QACL,KAAK,QACL,QAEI,uBAAA,CACA,oBAAA,CACA,eAAA,CAGA,uBAGJ,KAAK,UACL,KAAK,UACL,UAEI,yBAAA,CACA,sBAAA,CACA,iBAAA,CAGA,yBAGJ,KAAK,SACL,KAAK,SACL,SAEI,wBAAA,CACA,qBAAA,CACA,gBAAA,CAGA,wBAGJ,KAAK,aACL,KAAK,aACL,aAEI,uBAAA,CACA,oBAAA,CACA,eAAA,CAGA,uBAGJ,KAAK,WACL,KAAK,WACL,WAEI,qBAAA,CACA,kBAAA,CACA,aAAA,CAGA,qBAGJ,KAAK,cACL,KAAK,cACL,cAEI,wBAAA,CACA,qBAAA,CACA,gBAAA,CAGA,mBAGJ,KAAK,gBACL,KAAK,gBACL,gBAEI,0BAAA,CACA,uBAAA,CACA,kBAAA,CAGA,qBAGJ,KAAK,eACL,KAAK,eACL,eAEI,yBAAA,CACA,sBAAA,CACA,iBAAA,CAGA,oBC3QJ,GAAG,OACD,UAAA,CACA,kBAGF,GAAG,MAAO,IACN,cAAA,CACA,mBAGJ,GAAG,MAAO,GACN,cAAA,CACA,mBAGJ,GAAG,mBACC,eAAA,CACA,eAAA,CACA;;;;EChBJ,UAAW,iBAGX,WAAY,YACZ,SAAU,cACV,WAAY,gBACZ,YAAa,cACb,UAAW,eACX,YAAa,iBACb,UAAW,gBACX,UAAW,WAGX,aAAc,uBACd,WAAY,qBACZ,aAAc,uBACd,cAAe,wBACf,YAAa,sBACb,cAAe,yBACf,YAAa,sBACb,YAAa,sBCtBb,GAAG,MACC,4BAAA,CHmDA,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,mBAAA,CD1DA,iBAAA,CANA,qBAAA,CACA,0BAAA,CACA,6BAAA,CIAA,iBAAA,CACA,kBAAA,CAkBA,UAAA,CACA,WAAA,CAEA,QAAA,CACA,aApBA,GARD,KAQE,UACG,qBAKJ,aAAA,GAdD,KAQE,UAIO,0BAIR,UAAW,IAhBZ,KAgBa,UACR,mBAKJ,aAAA,UANW,IAhBZ,KAgBa,UAIJ,0BAWZ,QAEI,cAAA,CAEA,YAAA,CACA,QAAA,CACA,qBAAA,CACA,gBAAA,CAEA,sBAWJ,QARmC,iBAG/B,QACI,iBAIR,GAAG,YHCC,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,mBAAA,CA0CA,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,OG1DJ,4BACI,GAAG,YAGC,mBAKR,GAAG,YACC,wBAAA,CJzDA,iBAAA,CI2DA,kBAAA,CACA,sBAMJ,GAAG,OAAO,OACN,aAAA,CACA,iBAGJ,GAAG,mBAEC,qBAAA,CH5DA,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBG2CJ,GAAG,kBAKC,aJxEF,iBAAA,CI0EM,WAAA,CACA,gBAAA,CACA,SAAA,CACA,wBAAA,CACA,mBAXR,GAAG,kBAKC,YAQI,GACI,aAAA,CACA,qBAEA,GAjBT,kBAKC,YAQI,EAIK,OACG,aAAA,CACA,qBAWhB,QANmC,iBAE/B,GAAG,kBAAmB,IAAK,QACvB,cCtGR,aAAA,GALG,WAGK,yBAQR,GAAG,OACC,uBAAA,CJUA,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBIbJ,QARmC,iBAE/B,GAAG,OJkCH,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,qBI3CJ,GAAG,cACC,UAAA,CACA,iCAQJ,GAAG,WAAY,IAAK,WAChB,WAAA,CACA,WAAA,CACA,SAAA,CACA,6BAGJ,GAAG,WAAY,IAAK,UAAW,KAC3B,QAAA,CACA,WAAA,CACA,SAAA,CACA,6BClCJ,YACI,qBAAA,CACA,cAAA,CACA,WAAA,CACA,gBAGJ,mBAGI,iBAAA,CACA,gBAGJ,kBAGI,aAGJ,uBAGI,oBAGJ,oBAGI,6BAAA,CACA,2BAGJ,WAAY,KAGR,SAAA,CACA,QAAA,CNnCF,gBOFF,gBACE,WAGF,oBAHE,WAOF,sBACE,cAGF,sBACE,WAGF,kBACE,cAGF,mBACE,aAAA,CACA,kBAGF,kBACE,WAGF,gBACE,WAGF,mBACE,aAAA,CACA,iBAGF,mBACE,cAGF,iBACE,WAGF,oBACE,UAAA,CACA,iBAGF,gBACE,WAIF,eC8BuB,WD3BvB,oBCoC4B,WDnC5B,qBCqC6B,WDpC7B,mBCsC2B,WDrC3B,eCsCuB,WDrCvB,qBCsC6B,WDrC7B,kBCsC0B,WDrC1B,iBCsCyB,WDrCzB,gBCuCwB,WDlCtB,aADY,KACX,YArCD,aAAA,CACA,iBAqCA,aAFY,KAEX,SA1CD,WA2CA,aAHY,KAGX,WA/CD,WAgDA,aAJY,KAIX,QCYoB,WDXrB,aALY,KAKX,aA1ED,WA6EA,aARY,KAQX,aA/BD,UAAA,CACA,iBA+BA,aATY,KASX,eAtED,cAuEA,aAVY,KAUX,eAnED,WAoEA,aAXY,KAWX,YA5DD,aAAA,CACA,kBA4DA,aAZY,KAYX,WAjED,cAkEA,aAbY,KAaX,aCYyB,WDX1B,aAdY,KAcX,SAhCD,WAiCA,aAfY,KAeX,cCY0B,WDX3B,aAhBY,KAgBX,YA/CD,cAgDA,aAjBY,KAiBX,YCYwB,WDXzB,aAlBY,KAkBX,QCYoB,WDXrB,aAnBY,KAmBX,cCY0B,WDX3B,aApBY,KAoBX,WCYuB,WDXxB,aArBY,KAqBX,UCYsB,WDXvB,aAtBY,KAsBX,SCaqB,WDZtB,aAvBY,KAuBX,UAlDD,WAoDA,aAzBY,KAyBX,QACC,sQAAA,CACA,yBAAA,CACA,4BE7GJ,GAAG,gBAEC,iBAAA,CRkDA,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,mBAAA,CQ9DA,UAIJ,GAAG,eAEC,WAAA,CAEA,UAAA,CAEA,aAAA,CTNA,iBAAA,CD2DF,kDAAA,CACQ,0CAAA,CUnDN,cAIJ,GAAG,kBACC,QAAA,CACA,SAAA,CR4BA,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,oBQvCJ,GAAG,oBACC,WAAA,CACA,cAAA,CACA,iBAAA,CTtBA,kBS0BJ,GAAG,mBAAmB,OViCpB,qCAAA,CACQ,6BAAA,CU/BN,iCAGJ,GAAG,eACC,cAIJ,GAAG,aACC,SAAA,CACA,uBAAA,CR1BA,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBQSJ,GAAG,YAKC,kBAEI,eAAA,YAPR,GAAG,YAUC,eAEI,OACI,aAAA,CACA,eAdZ,GAAG,YAUC,eAOI,KACI,aAAA,CACA,eAnBZ,GAAG,YAuBC,KAvBJ,GAAG,YAuBM,KACD,cAAA,CACA,YACA,GA1BL,YAuBC,IAGK,YAAD,GA1BL,YAuBM,IAGA,YACG,eAOZ,QR5BI,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,oBQwBJ,QAPmC,iBAE/B,GAAG,aRlCH,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,qBQwBJ,GAAG,YAAa,KACZ,QAAA,CACA,SAAA,CACA,QAAA,CACA,uBAAA,CACA,WAAA,CACA,4BAAA,CTpFF,gBS0FF,GAAG,gBAEC,eAAA,CACA,YAAA,CRGA,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,MAAA,CQLA,UAAW,kBAOf,GAAG,aACC,eAAA,CACA,UAAA,CAEA,sBAUJ,GAAG,eACC,gBAGJ,GAAG,cACC,gBAaJ,GAAG,kBAAkB,OACjB,UAGJ,UACI,cAKJ,GAAG,qBACC,qBAAA,CAGA,gBAOJ,KAAK,WACD,mBAAA,CACA,iBAAA,CACA,aAAA,CACA,UAAA,CAEA,uBAAA,CAEA,eAAA,CACA,eAGJ,KAAK,UAAU,OACX,gBAGJ,CAAC,SACG,mBAGJ,GAAG,qBACD,WAAA,CACA,gBAAA,CACA,UAHF,GAAG,oBAKD,GACI,aAAA,CACA,qBAEA,GATH,oBAKD,EAIK,OACG,aAAA,CACA,qBCxMV,eAEI,WAFJ,cAGI,IAAI,kBAHR,cAII,QAAQ,iBAJZ,cAKI,GAAG,0BALP,cAMI,OAAO,0BANX,cAOI,UAAU,0BAPd,cAYI,IAAI,gBAAA,CAAmB,mBAAA,CAAsB,gBAAA,CAAmB,cAZpE,cAaI,IAAI,gBAAA,CAAmB,mBAAA,CAAsB,gBAAA,CAAmB,cAbpE,cAcI,IAAI,gBAAA,CAAmB,mBAAA,CAAsB,gBAAA,CAAmB,cAdpE,cAeI,IAAI,cAAA,CAAiB,gBAAA,CAAmB,gBAAA,CAAmB,cAf/D,cAgBI,IAAI,cAAA,CAAiB,gBAAA,CAAmB,gBAAA,CAAmB,aAAA,CAAkB,kBAhBjF,cAiBI,IAAI,cAAA,CAAiB,gBAAA,CAAmB,gBAAA,CAAmB,aAAA,CAAkB,kBAjBjF,cAoBI,GAAE,aAAc,kBApBpB,cAqBI,GAAE,aAAc,kBArBpB,cAsBI,GAAE,aAAc,kBAtBpB,cAuBI,GAAE,aAAc,eAvBpB,cAwBI,GAAE,aAAc,eAxBpB,cAyBI,GAAE,aAAc,eAzBpB,cA2BI,IAAI,eAAA,CAAiB,YAAA,CAAiB,eA3B1C,cA4BI,GAAG,IAAI,iBAAA,CAAmB,aA5B9B,cA6BI,GAAG,GAAG,IAAI,iBAAA,CAAmB,aA7BjC,cA8BI,IAAI,kBAAA,CAAoB,YAAA,CAAiB,eA9B7C,cA+BI,GAAG,IAAI,sBAAA,CAAwB,aA/BnC,cAgCI,GAAG,GAAG,IAAI,sBAAA,CAAwB,aAhCtC,cAiCI,GAAG,GAAG,GAAG,IAAI,sBAAA,CAAwB,aAjCzC,cAmCI,GAAG,GAAG,GAAG,GAAG,IAAI,kBAAA,CAAoB,aAnCxC,cAoCI,EAAE,IAAM,eApCZ,cAqCI,EAAE,IAAM,eArCZ,cAuCI,IACI,WAAA,CACA,uBAzCR,cA4CI,KAAK,eA5CT,cA8CI,KA9CJ,cA8CS,MACD,QAAA,CACA,qBAAA,CACA,UAAA,CACA,cAAA,CACA,UAnDR,cAsDI,YAAY,eAtDhB,cAwDI,OACI,gBAAA,CACA,iBAAA,CACA,sBAAA,CACA,yBA5DR,cA8DI,IA9DJ,cA8DQ,IA9DR,cA8DY,IACJ,sBAAA,CACA,wBAAA,CACA,eAjER,cAmEI,IAnEJ,cAmEQ,IACA,eAAA,CACA,qBAAA,CACA,YAtER,cAwEI,IAAI,iBAxER,cAyEI,EAAE,OAAS,eAzEf,cA2EI,GAAG,gBA3EP,cA4EI,EAAE,GAAK,eA5EX,cA8EI,KACI,aAAA,CACA,gBAAA,CACA,kBAjFR,cAmFI,EAAE,KAAO,eAnFb,cAqFI,KArFJ,cAqFS,KACD,cAAA,CACA,YACA,cAHJ,IAGK,YAAD,cAHC,IAGA,YACG,eCzFZ,GAAG,WVsBC,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBU3BJ,QAPmC,iBAE/B,GAAG,UAAW,IAAK,QACf,cAIR,GAAG,kBAEC,YAAA,CACA,WAAA,CACA,aAAA,CACA,iBAAA,CACA,2BAAA,CACA,UAAA,CXdA,qBAAA,CACA,0BAAA,CACA,8BWgBJ,CAAC,YAAY,MACX,oBAAA,CACA,cAAA,CACA,kBAIE,EAAC,MAAO,cAAR,EAAC,MAAO,cAAR,EAAC,MAAO,cAAR,EAAC,MAAO,cAAR,EAAC,MAAO,cAAR,EAAC,MAAO,cACJ,mBAIR,UAAU,SAAU,aAChB,aAGJ,UAAU,SAAU,gBAChB,gBAGJ,UAAU,WAAY,mBAClB,aAGJ,aACA,aACA,aACA,aACA,aACA,aACI,gBAAA,CACA,YCRsB,4CDW1B,aAAe,iBACf,aAAe,iBACf,aAAe,iBACf,aAAe,eACf,aACI,cAAA,CACA,kBAEJ,aACI,cAAA,CACA,kBE7DJ,gBACI,KADJ,gBACU,OACF,cAIR,aAgBI,uBAAA,CZJA,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBY3BJ,YAmBI,iBACI,2BAAA,CACA,eAAA,Cb5BJ,qBAAA,CACA,0BAAA,CACA,6BAAA,CC+CA,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,mBAAA,CA6DA,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,MAAA,CAiFA,uBAAA,CACA,oBAAA,CACA,eAAA,CAGA,uBYpLA,YAAC,oBAAqB,QAAO,OACzB,QC0Ec,OD1Ed,CACA,YAAa,aAAb,CACA,aAAA,CACA,cAAA,CACA,OAAA,CACA,YAOR,aAEI,qBAAA,CACA,eAAA,Cb9CA,kBamDJ,gBAuBI,gBAAA,CACA,iBAAA,CACA,gBAAA,CAGA,WAAA,CACA,UAAA,CACA,cAAA,CACA,eAAA,CACA,kBAAA,CAtCA,qBAAA,CACA,eAAA,Cb9CA,iBAAA,CCaA,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBYuBJ,eAwCI,YAEI,QAAA,CACA,eAAA,CZjFJ,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,mBAAA,CAwEA,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,OYtDJ,eAwCI,WAQI,mBACI,UAAA,CACA,WAAA,CACA,eAAA,CACA,kBApDZ,eAwCI,WAeI,kBACI,WAAA,CACA,eAAA,CACA,gBAKZ,gBAKI,kBAAA,CACA,gBAAA,CAGA,SAAA,CACA,aAAA,CACA,YAAA,CACA,gBAAA,CAjFA,qBAAA,CACA,eAAA,Cb9CA,iBAAA,CC2CA,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,oBYwDJ,eAoBI,YAEI,QAAA,CACA,eAAA,CACA,gBAAA,CACA,cAAA,CZhGJ,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,mBAAA,CA0CA,kBAAA,CACA,eAAA,CACA,UAAA,CAGA,OYSJ,eAoBI,WAUI,mBACI,UAAA,CACA,WAAA,CACA,gBAAA,CACA,kBAlCZ,eAoBI,WAiBI,kBACI,UAAA,CACA,gBAAA,CACA,gBAKZ,aAEI,WAAA,CACA,SAGJ,gBAEI,WAAA,CACA,gBAGJ,qBAEI,WAAA,CACA,SAGJ,iBAEI,cAAA,CACA,gBAHJ,gBAKI,eAEI,uBAAA,CACA,oBAAA,CACA,mBAAA,CACA,kBAAA,CACA,gBAIR,kBAGI,gBAGJ,YAAa,eAAe,GAAG,GAC3B,cAGJ,aZ7LI,mBAAA,CACA,6BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,0BAAA,CACA,sBAAA,CAEA,WAAA,CACA,qBAAA,CACA,iBAAA,CAGA,YAAA,CACA,kBAAA,CACA,oBY8KJ,YAII,MAAK,kBACD,cAAA,CACA,mBANR,YASI,eAEI,cAAA,CACA,iBAAA,CACA,eAAA,CACA,gBAAA,CACA,wBAfR,YAkBI,iBACI,gBAAA,CACA,eAAA,CACA,eAAA,CACA,wBAIR,aZzLI,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,oBY0KJ,YAKI,eAEI,kBAAA,CACA,iBAAA,CACA,2BATR,YAYI,iBAEI,eAAA,CACA,iBAAA,CACA,wBAKR,Yb/PI,qBAAA,CACA,0BAAA,CACA,6BAAA,CCiNA,uBAAA,CACA,oBAAA,CACA,eAAA,CAGA,uBY6CJ,kBZpNI,mBAAA,CACA,2BAAA,CACA,yBAAA,CAEA,gBAAA,CACA,wBAAA,CACA,sBAAA,CAEA,WAAA,CACA,mBAAA,CACA,iBAAA,CAGA,YAAA,CACA,qBAAA,CACA,mBAAA,CDhEA,qBAAA,CACA,0BAAA,CACA,6BAAA,CawQA,gBALJ,iBAOI,OACI,YAAA,CACA","file":"ipython.min.css"} \ No newline at end of file diff --git a/output/categories/aikido.xml b/output/categories/aikido.xml index caf81f8f..4b7ec11e 100644 --- a/output/categories/aikido.xml +++ b/output/categories/aikido.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Aikido)http://www.damian.oquanta.info/enSun, 16 Sep 2018 14:05:08 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Aikido)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/asaikido.xml b/output/categories/asaikido.xml index a55d7c4c..1f94eac4 100644 --- a/output/categories/asaikido.xml +++ b/output/categories/asaikido.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about asaikido)http://www.damian.oquanta.info/enSun, 16 Sep 2018 14:05:08 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about asaikido)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/base16.xml b/output/categories/base16.xml index 5193fd87..c6fcdb90 100644 --- a/output/categories/base16.xml +++ b/output/categories/base16.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about base16)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rss48 themes for your IPython notebookhttp://www.damian.oquanta.info/posts/48-themes-for-your-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about base16)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rss48 themes for your IPython notebookhttp://www.damian.oquanta.info/posts/48-themes-for-your-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/binder.xml b/output/categories/binder.xml index ff0b2fde..59e605d9 100644 --- a/output/categories/binder.xml +++ b/output/categories/binder.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Binder)http://www.damian.oquanta.info/enThu, 28 Jun 2018 17:59:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Binder)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/blog.xml b/output/categories/blog.xml index 11b01d55..dc52f751 100644 --- a/output/categories/blog.xml +++ b/output/categories/blog.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about blog)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssComing backhttp://www.damian.oquanta.info/posts/coming-back.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about blog)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssComing backhttp://www.damian.oquanta.info/posts/coming-back.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/conda.xml b/output/categories/conda.xml index adb41e48..f4502ee2 100644 --- a/output/categories/conda.xml +++ b/output/categories/conda.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about conda)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about conda)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/config.xml b/output/categories/config.xml index 27108570..0efb2f17 100644 --- a/output/categories/config.xml +++ b/output/categories/config.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about config)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHide the input cells from your IPython slideshttp://www.damian.oquanta.info/posts/hide-the-input-cells-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about config)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHide the input cells from your IPython slideshttp://www.damian.oquanta.info/posts/hide-the-input-cells-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/connectivity.xml b/output/categories/connectivity.xml index ba7923ef..0cfe8f05 100644 --- a/output/categories/connectivity.xml +++ b/output/categories/connectivity.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about connectivity)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUsing a local Reveal.js library with your IPython slideshttp://www.damian.oquanta.info/posts/using-a-local-revealjs-library-with-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about connectivity)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUsing a local Reveal.js library with your IPython slideshttp://www.damian.oquanta.info/posts/using-a-local-revealjs-library-with-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/cordobaaikikai.xml b/output/categories/cordobaaikikai.xml index fee5f15e..bd4676b6 100644 --- a/output/categories/cordobaaikikai.xml +++ b/output/categories/cordobaaikikai.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about cordobaaikikai)http://www.damian.oquanta.info/enSun, 16 Sep 2018 14:05:08 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about cordobaaikikai)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/css.xml b/output/categories/css.xml index 7cb2d15e..cd6f06d8 100644 --- a/output/categories/css.xml +++ b/output/categories/css.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about css)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rss48 themes for your IPython notebookhttp://www.damian.oquanta.info/posts/48-themes-for-your-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about css)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rss48 themes for your IPython notebookhttp://www.damian.oquanta.info/posts/48-themes-for-your-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/daniela.xml b/output/categories/daniela.xml index 72597e8e..aa7b8a99 100644 --- a/output/categories/daniela.xml +++ b/output/categories/daniela.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Daniela)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssComing backhttp://www.damian.oquanta.info/posts/coming-back.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Daniela)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssComing backhttp://www.damian.oquanta.info/posts/coming-back.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/extension.xml b/output/categories/extension.xml index 4f79dcba..a3a77bc9 100644 --- a/output/categories/extension.xml +++ b/output/categories/extension.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about extension)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssLoader and Writer, IPython nbextensions to easily edit your text.http://www.damian.oquanta.info/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about extension)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssLoader and Writer, IPython nbextensions to easily edit your text.http://www.damian.oquanta.info/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/facu.xml b/output/categories/facu.xml index 319d0574..cd0ea23d 100644 --- a/output/categories/facu.xml +++ b/output/categories/facu.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Facu)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssComing backhttp://www.damian.oquanta.info/posts/coming-back.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Facu)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssComing backhttp://www.damian.oquanta.info/posts/coming-back.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/facundo.xml b/output/categories/facundo.xml index c56ac67d..9b90d49c 100644 --- a/output/categories/facundo.xml +++ b/output/categories/facundo.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Facundo)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Facundo)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/family.xml b/output/categories/family.xml index 13844dce..37ee0d7f 100644 --- a/output/categories/family.xml +++ b/output/categories/family.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about family)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about family)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/first_post.xml b/output/categories/first_post.xml index 0c867fe0..29f0c79b 100644 --- a/output/categories/first_post.xml +++ b/output/categories/first_post.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about first_post)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHello World! Again...http://www.damian.oquanta.info/posts/hello-world-again.htmlDamian Avila<div><p>You know that I have attempted to run a blog before. This is a new attempt... +Damian's blog (Posts about first_post)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHello World! Again...http://www.damian.oquanta.info/posts/hello-world-again.htmlDamian Avila<div><p>You know that I have attempted to run a blog before. This is a new attempt... OK, I do not promise to post everyday... but if you have patience, you will read a lot of interesting things (at least interesting for me).</p> <p>See you soon!</p> diff --git a/output/categories/flood.xml b/output/categories/flood.xml index 0db335db..3ff6dc68 100644 --- a/output/categories/flood.xml +++ b/output/categories/flood.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about flood)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about flood)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/format.xml b/output/categories/format.xml index aa69c6df..f3d096bf 100644 --- a/output/categories/format.xml +++ b/output/categories/format.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about format)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssLoader and Writer, IPython nbextensions to easily edit your text.http://www.damian.oquanta.info/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about format)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssLoader and Writer, IPython nbextensions to easily edit your text.http://www.damian.oquanta.info/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/gh-pages.xml b/output/categories/gh-pages.xml index 2ceb8631..c9647d94 100644 --- a/output/categories/gh-pages.xml +++ b/output/categories/gh-pages.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about gh-pages)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about gh-pages)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/git.xml b/output/categories/git.xml index f25b788b..89addfee 100644 --- a/output/categories/git.xml +++ b/output/categories/git.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about git)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about git)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/github.xml b/output/categories/github.xml index 6dc199b7..32ac1f5a 100644 --- a/output/categories/github.xml +++ b/output/categories/github.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Github)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Github)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/ipyscript.xml b/output/categories/ipyscript.xml index aac08af7..75992213 100644 --- a/output/categories/ipyscript.xml +++ b/output/categories/ipyscript.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about ipyscript)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssDon't write scripts, just write ipyscripts!http://www.damian.oquanta.info/posts/dont-write-scripts-just-write-ipyscripts.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about ipyscript)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssDon't write scripts, just write ipyscripts!http://www.damian.oquanta.info/posts/dont-write-scripts-just-write-ipyscripts.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/ipython.xml b/output/categories/ipython.xml index 549d2675..add8ef39 100644 --- a/output/categories/ipython.xml +++ b/output/categories/ipython.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about IPython)http://www.damian.oquanta.info/enThu, 28 Jun 2018 17:59:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about IPython)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/ipytmpl.xml b/output/categories/ipytmpl.xml index 09287f7f..6f0c43c6 100644 --- a/output/categories/ipytmpl.xml +++ b/output/categories/ipytmpl.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about ipytmpl)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy IPython-powered semi-automatic git workflowhttp://www.damian.oquanta.info/posts/my-ipython-powered-semi-automatic-git-workflow.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about ipytmpl)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy IPython-powered semi-automatic git workflowhttp://www.damian.oquanta.info/posts/my-ipython-powered-semi-automatic-git-workflow.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/javascript.xml b/output/categories/javascript.xml index 2f849008..c8ffca62 100644 --- a/output/categories/javascript.xml +++ b/output/categories/javascript.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about javascript)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE meets JupyterLabhttp://www.damian.oquanta.info/posts/rise-meets-jupyterlab.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about javascript)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE meets JupyterLabhttp://www.damian.oquanta.info/posts/rise-meets-jupyterlab.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/jinja.xml b/output/categories/jinja.xml index ddc2c94a..950542f2 100644 --- a/output/categories/jinja.xml +++ b/output/categories/jinja.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about jinja)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHide the input cells from your IPython slideshttp://www.damian.oquanta.info/posts/hide-the-input-cells-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about jinja)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHide the input cells from your IPython slideshttp://www.damian.oquanta.info/posts/hide-the-input-cells-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/jupyter.xml b/output/categories/jupyter.xml index 7c22b3af..ab03b41f 100644 --- a/output/categories/jupyter.xml +++ b/output/categories/jupyter.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Jupyter)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Jupyter)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/jupyterlab.xml b/output/categories/jupyterlab.xml index e24e831d..3c2b1b0c 100644 --- a/output/categories/jupyterlab.xml +++ b/output/categories/jupyterlab.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about jupyterlab)http://www.damian.oquanta.info/enThu, 28 Jun 2018 17:59:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about jupyterlab)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/less.xml b/output/categories/less.xml index e897d7b5..27d564e1 100644 --- a/output/categories/less.xml +++ b/output/categories/less.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about less)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssNikola's Zen theme finally releasedhttp://www.damian.oquanta.info/posts/nikolas-zen-theme-finally-released.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about less)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssNikola's Zen theme finally releasedhttp://www.damian.oquanta.info/posts/nikolas-zen-theme-finally-released.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/life.xml b/output/categories/life.xml index 668ba033..2a394c27 100644 --- a/output/categories/life.xml +++ b/output/categories/life.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about life)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about life)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUnder the Sea... en La Platahttp://www.damian.oquanta.info/posts/under-the-sea-en-la-plata.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/linux.xml b/output/categories/linux.xml index 0203de8b..e582bc38 100644 --- a/output/categories/linux.xml +++ b/output/categories/linux.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about linux)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about linux)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/local.xml b/output/categories/local.xml index 60be3f2c..3f75cd23 100644 --- a/output/categories/local.xml +++ b/output/categories/local.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about local)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUsing a local Reveal.js library with your IPython slideshttp://www.damian.oquanta.info/posts/using-a-local-revealjs-library-with-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about local)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssUsing a local Reveal.js library with your IPython slideshttp://www.damian.oquanta.info/posts/using-a-local-revealjs-library-with-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/magic.xml b/output/categories/magic.xml index 8b8d186a..015cb539 100644 --- a/output/categories/magic.xml +++ b/output/categories/magic.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about magic)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssDon't write scripts, just write ipyscripts!http://www.damian.oquanta.info/posts/dont-write-scripts-just-write-ipyscripts.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about magic)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssDon't write scripts, just write ipyscripts!http://www.damian.oquanta.info/posts/dont-write-scripts-just-write-ipyscripts.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/minimap.xml b/output/categories/minimap.xml index 90297d65..c0122b04 100644 --- a/output/categories/minimap.xml +++ b/output/categories/minimap.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about minimap)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssA simple minimap for your nbconverted ipynbhttp://www.damian.oquanta.info/posts/a-simple-minimap-for-your-nbconverted-ipynb.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about minimap)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssA simple minimap for your nbconverted ipynbhttp://www.damian.oquanta.info/posts/a-simple-minimap-for-your-nbconverted-ipynb.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/mipyex.xml b/output/categories/mipyex.xml index 9549132e..52613a8a 100644 --- a/output/categories/mipyex.xml +++ b/output/categories/mipyex.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about mIPyex)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssLoader and Writer, IPython nbextensions to easily edit your text.http://www.damian.oquanta.info/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about mIPyex)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssLoader and Writer, IPython nbextensions to easily edit your text.http://www.damian.oquanta.info/posts/loader-and-writer-ipython-nbextensions-to-easily-edit-your-text.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/nbconvert.xml b/output/categories/nbconvert.xml index 08018f6a..1a00a356 100644 --- a/output/categories/nbconvert.xml +++ b/output/categories/nbconvert.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about nbconvert)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSlideviewer: a simple way to share your IPython slideshttp://www.damian.oquanta.info/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about nbconvert)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSlideviewer: a simple way to share your IPython slideshttp://www.damian.oquanta.info/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/nbviewer.xml b/output/categories/nbviewer.xml index 642c1359..a3b25f47 100644 --- a/output/categories/nbviewer.xml +++ b/output/categories/nbviewer.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about nbviewer)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSlideviewer: a simple way to share your IPython slideshttp://www.damian.oquanta.info/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about nbviewer)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSlideviewer: a simple way to share your IPython slideshttp://www.damian.oquanta.info/posts/slideviewer-a-simple-way-to-share-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/nikola.xml b/output/categories/nikola.xml index 62c67053..9fdb74d5 100644 --- a/output/categories/nikola.xml +++ b/output/categories/nikola.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about nikola)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about nikola)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/opensource.xml b/output/categories/opensource.xml index ce9feef8..a4432f06 100644 --- a/output/categories/opensource.xml +++ b/output/categories/opensource.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about opensource)http://www.damian.oquanta.info/enThu, 28 Jun 2018 17:59:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about opensource)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSome thoughts about the 2017 ACM Software System Award for Project Jupyterhttp://www.damian.oquanta.info/posts/some-thoughts-about-the-2017-acm-software-system-award-for-project-jupyter.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/osx.xml b/output/categories/osx.xml index 8ecc8101..9c74d6a1 100644 --- a/output/categories/osx.xml +++ b/output/categories/osx.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about osx)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about osx)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/pdf.xml b/output/categories/pdf.xml index 727a9bfe..af7ce616 100644 --- a/output/categories/pdf.xml +++ b/output/categories/pdf.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about pdf)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssA little hack to get a pdf from your IPython slideshttp://www.damian.oquanta.info/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about pdf)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssA little hack to get a pdf from your IPython slideshttp://www.damian.oquanta.info/posts/a-little-hack-to-get-a-pdf-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/performance.xml b/output/categories/performance.xml index 25121713..0abb0a4e 100644 --- a/output/categories/performance.xml +++ b/output/categories/performance.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about performance)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssTrading logbook update 3http://www.damian.oquanta.info/posts/trading-logbook-update-3.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about performance)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssTrading logbook update 3http://www.damian.oquanta.info/posts/trading-logbook-update-3.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/pinned.xml b/output/categories/pinned.xml index 8bd21add..74033ea4 100644 --- a/output/categories/pinned.xml +++ b/output/categories/pinned.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about pinned)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHow to pin Condahttp://www.damian.oquanta.info/posts/how-to-pin-conda.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about pinned)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHow to pin Condahttp://www.damian.oquanta.info/posts/how-to-pin-conda.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/pip.xml b/output/categories/pip.xml index d2ea9425..09ff8bd4 100644 --- a/output/categories/pip.xml +++ b/output/categories/pip.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about pip)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about pip)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/politics.xml b/output/categories/politics.xml index 6a8d7d51..cc398a2f 100644 --- a/output/categories/politics.xml +++ b/output/categories/politics.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about politics)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssParaguayhttp://www.damian.oquanta.info/posts/paraguay.htmlDamian Avila<div><p>Only in Spanish.</p> +Damian's blog (Posts about politics)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssParaguayhttp://www.damian.oquanta.info/posts/paraguay.htmlDamian Avila<div><p>Only in Spanish.</p> <p>Lo que esta viviendo hoy el Paraguay me causa mucha tristeza...</p> <p>¡¿Cómo puede ser que a comienzos del siglo XXI, la retrógrada derecha latinoamericana no se haya superado y alcanzado diff --git a/output/categories/pyconar.xml b/output/categories/pyconar.xml index 05395ecc..1e6590f1 100644 --- a/output/categories/pyconar.xml +++ b/output/categories/pyconar.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about pyconar)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssPyConAr 2013http://www.damian.oquanta.info/posts/pyconar-2013.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about pyconar)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssPyConAr 2013http://www.damian.oquanta.info/posts/pyconar-2013.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/python.xml b/output/categories/python.xml index 223ab9e0..64ed921a 100644 --- a/output/categories/python.xml +++ b/output/categories/python.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about python)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about python)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/reveal.xml b/output/categories/reveal.xml index f129e99f..866c594b 100644 --- a/output/categories/reveal.xml +++ b/output/categories/reveal.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about reveal)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about reveal)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/rise.xml b/output/categories/rise.xml index ce9285c9..e4105617 100644 --- a/output/categories/rise.xml +++ b/output/categories/rise.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about RISE)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about RISE)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/scipycon.xml b/output/categories/scipycon.xml index 0d6a52ea..730f99bf 100644 --- a/output/categories/scipycon.xml +++ b/output/categories/scipycon.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about SciPyCon)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSciPyCon Argentina 2013http://www.damian.oquanta.info/posts/scipycon-argentina-2013.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about SciPyCon)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSciPyCon Argentina 2013http://www.damian.oquanta.info/posts/scipycon-argentina-2013.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/shodan.xml b/output/categories/shodan.xml index 9b3e6c88..2d23c858 100644 --- a/output/categories/shodan.xml +++ b/output/categories/shodan.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about Shodan)http://www.damian.oquanta.info/enSun, 16 Sep 2018 14:05:08 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about Shodan)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssMy Aikido Shodan testhttp://www.damian.oquanta.info/posts/my-aikido-shodan-test.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/slideshow.xml b/output/categories/slideshow.xml index 7b17cd83..3b136cdf 100644 --- a/output/categories/slideshow.xml +++ b/output/categories/slideshow.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about slideshow)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about slideshow)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/spellcheck.xml b/output/categories/spellcheck.xml index 427f9454..01beb9b6 100644 --- a/output/categories/spellcheck.xml +++ b/output/categories/spellcheck.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about spellcheck)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssA 'poor man' spell checker for the IPython notebookhttp://www.damian.oquanta.info/posts/a-poor-man-spell-checker-for-the-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about spellcheck)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssA 'poor man' spell checker for the IPython notebookhttp://www.damian.oquanta.info/posts/a-poor-man-spell-checker-for-the-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/talks.xml b/output/categories/talks.xml index 56f2886d..20635124 100644 --- a/output/categories/talks.xml +++ b/output/categories/talks.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about talks)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssPyConAr 2013http://www.damian.oquanta.info/posts/pyconar-2013.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about talks)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssPyConAr 2013http://www.damian.oquanta.info/posts/pyconar-2013.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/theme.xml b/output/categories/theme.xml index 6b20952a..6003ef7b 100644 --- a/output/categories/theme.xml +++ b/output/categories/theme.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about theme)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssNikola's Zen theme finally releasedhttp://www.damian.oquanta.info/posts/nikolas-zen-theme-finally-released.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about theme)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssNikola's Zen theme finally releasedhttp://www.damian.oquanta.info/posts/nikolas-zen-theme-finally-released.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/themes.xml b/output/categories/themes.xml index 2b5b52ea..68984c83 100644 --- a/output/categories/themes.xml +++ b/output/categories/themes.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about themes)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssZen themes updatedhttp://www.damian.oquanta.info/posts/zen-themes-updated.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about themes)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssZen themes updatedhttp://www.damian.oquanta.info/posts/zen-themes-updated.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/threads.xml b/output/categories/threads.xml index c3611e50..ab09370f 100644 --- a/output/categories/threads.xml +++ b/output/categories/threads.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about threads)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssvIPer is now using IPython.nbconverthttp://www.damian.oquanta.info/posts/viper-is-now-using-ipythonnbconvert.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about threads)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssvIPer is now using IPython.nbconverthttp://www.damian.oquanta.info/posts/viper-is-now-using-ipythonnbconvert.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/toggle.xml b/output/categories/toggle.xml index cedd5afa..bea2fbce 100644 --- a/output/categories/toggle.xml +++ b/output/categories/toggle.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about toggle)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHide the input cells from your IPython slideshttp://www.damian.oquanta.info/posts/hide-the-input-cells-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about toggle)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssHide the input cells from your IPython slideshttp://www.damian.oquanta.info/posts/hide-the-input-cells-from-your-ipython-slides.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/trading.xml b/output/categories/trading.xml index d8ca6f4b..4b141e66 100644 --- a/output/categories/trading.xml +++ b/output/categories/trading.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about trading)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssTrading logbook update 3http://www.damian.oquanta.info/posts/trading-logbook-update-3.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about trading)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssTrading logbook update 3http://www.damian.oquanta.info/posts/trading-logbook-update-3.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/tutorials.xml b/output/categories/tutorials.xml index c8e4d776..1902eccd 100644 --- a/output/categories/tutorials.xml +++ b/output/categories/tutorials.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about tutorials)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSciPyCon Argentina 2013http://www.damian.oquanta.info/posts/scipycon-argentina-2013.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about tutorials)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssSciPyCon Argentina 2013http://www.damian.oquanta.info/posts/scipycon-argentina-2013.htmlDamian Avila<div><div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/twitter.xml b/output/categories/twitter.xml index 4dee4cfa..97d7c393 100644 --- a/output/categories/twitter.xml +++ b/output/categories/twitter.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about twitter)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssTweet me... said an IPython notebook cell and I did ithttp://www.damian.oquanta.info/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about twitter)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssTweet me... said an IPython notebook cell and I did ithttp://www.damian.oquanta.info/posts/tweet-me-said-an-ipython-notebook-cell-and-i-did-it.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/typescript.xml b/output/categories/typescript.xml index c0b8142c..9e56eb56 100644 --- a/output/categories/typescript.xml +++ b/output/categories/typescript.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about typescript)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE meets JupyterLabhttp://www.damian.oquanta.info/posts/rise-meets-jupyterlab.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about typescript)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE meets JupyterLabhttp://www.damian.oquanta.info/posts/rise-meets-jupyterlab.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/videos.xml b/output/categories/videos.xml index 9548b707..9754acf3 100644 --- a/output/categories/videos.xml +++ b/output/categories/videos.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about videos)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:12 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssPyConAr 2013http://www.damian.oquanta.info/posts/pyconar-2013.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about videos)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:21 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssPyConAr 2013http://www.damian.oquanta.info/posts/pyconar-2013.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/viper.xml b/output/categories/viper.xml index d7103880..c3f6fdc3 100644 --- a/output/categories/viper.xml +++ b/output/categories/viper.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about vIPer)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssvIPer is now using IPython.nbconverthttp://www.damian.oquanta.info/posts/viper-is-now-using-ipythonnbconvert.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about vIPer)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssvIPer is now using IPython.nbconverthttp://www.damian.oquanta.info/posts/viper-is-now-using-ipythonnbconvert.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/win.xml b/output/categories/win.xml index e0eb6e75..445f9bc3 100644 --- a/output/categories/win.xml +++ b/output/categories/win.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about win)http://www.damian.oquanta.info/enSat, 25 Aug 2018 20:08:29 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about win)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:19 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssRISE 5.4.1 is out!http://www.damian.oquanta.info/posts/rise-541-is-out.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/workflow.xml b/output/categories/workflow.xml index 59dc47ba..0afdb847 100644 --- a/output/categories/workflow.xml +++ b/output/categories/workflow.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about workflow)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about workflow)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssBinder + Nikola + Jupyter + Github = Blogging resourcelesshttp://www.damian.oquanta.info/posts/binder-%2B-nikola-%2B-jupyter-%2B-github-blogging-resourceless.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/zen.xml b/output/categories/zen.xml index 79c1ffc7..24f3ffac 100644 --- a/output/categories/zen.xml +++ b/output/categories/zen.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about zen)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:11 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssZen themes updatedhttp://www.damian.oquanta.info/posts/zen-themes-updated.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about zen)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:20 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssZen themes updatedhttp://www.damian.oquanta.info/posts/zen-themes-updated.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/categories/zenmode.xml b/output/categories/zenmode.xml index e56b5ef1..330befa1 100644 --- a/output/categories/zenmode.xml +++ b/output/categories/zenmode.xml @@ -1,5 +1,5 @@ -Damian's blog (Posts about zenmode)http://www.damian.oquanta.info/enMon, 05 Feb 2018 03:01:13 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssZen mode extension for the IPython notebookhttp://www.damian.oquanta.info/posts/zen-mode-extension-for-the-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> +Damian's blog (Posts about zenmode)http://www.damian.oquanta.info/enWed, 26 Sep 2018 15:39:22 GMTNikola (getnikola.com)http://blogs.law.harvard.edu/tech/rssZen mode extension for the IPython notebookhttp://www.damian.oquanta.info/posts/zen-mode-extension-for-the-ipython-notebook.htmlDamian Avila<div class="cell border-box-sizing text_cell rendered"><div class="prompt input_prompt"> </div> <div class="inner_cell"> <div class="text_cell_render border-box-sizing rendered_html"> diff --git a/output/es/2018/09/index.html b/output/es/2018/09/index.html index febce95a..00fca854 100644 --- a/output/es/2018/09/index.html +++ b/output/es/2018/09/index.html @@ -46,7 +46,7 @@

También disponible en: