<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>Autarchy of the Private Cave &#187; make</title> <atom:link href="https://bogdan.org.ua/tags/make/feed" rel="self" type="application/rss+xml" /><link>https://bogdan.org.ua</link> <description>Tiny bits of bioinformatics, [web-]programming etc</description> <lastBuildDate>Wed, 28 Dec 2022 16:09:04 +0000</lastBuildDate> <language>en-US</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>https://wordpress.org/?v=3.8.27</generator> <item><title>Alternatives to GNU make</title><link>https://bogdan.org.ua/2013/10/19/alternatives-to-gnu-make.html</link> <comments>https://bogdan.org.ua/2013/10/19/alternatives-to-gnu-make.html#comments</comments> <pubDate>Sat, 19 Oct 2013 00:49:38 +0000</pubDate> <dc:creator><![CDATA[Bogdan]]></dc:creator> <category><![CDATA[*nix]]></category> <category><![CDATA[Notepad]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[Software]]></category> <category><![CDATA[alternative]]></category> <category><![CDATA[anduril]]></category> <category><![CDATA[doit]]></category> <category><![CDATA[make]]></category> <category><![CDATA[paver]]></category> <category><![CDATA[rake]]></category> <category><![CDATA[ruffus]]></category> <category><![CDATA[SCons]]></category> <category><![CDATA[snakemake]]></category> <category><![CDATA[waf]]></category> <guid
isPermaLink="false">http://bogdan.org.ua/?p=2019</guid> <description><![CDATA[Right now, when I see that I have to often repeat/retype some sets and sequences of commands, I&#8217;m trying to wrap them up into some kind of a script, every time choosing the most appropriate language &#8211; shell when I need to start lots of existing command-line tools, Python when there&#8217;s some data handling and [&#8230;]]]></description> <content:encoded><![CDATA[<p>Right now, when I see that I have to often repeat/retype some sets and sequences of commands, I&#8217;m trying to wrap them up into some kind of a script, every time choosing the most appropriate language &#8211; shell when I need to start lots of existing command-line tools, Python when there&#8217;s some data handling and processing involved, and R when I&#8217;m invoking commands from R packages. So far I have been avoiding the fairly popular makefile-based approach to automating pipelines and workflows which rely heavily on existing tools. However, being curious, I&#8217;ve compiled a short list of modern make-like alternatives, to possibly explore&#8230; sometime later&#8230;</p><ul><li>First comes <a
href="http://software-carpentry.org/v4/make/index.html" class="broken_link" rel="nofollow">make</a> itself &#8211; the oldest and the most widely used software build tool. Stable and powerful. Still, even people who got used to using <strong>make</strong>, have some gripes about it. The most detailed list of gripes is probably <a
href="http://www.conifersystems.com/whitepapers/gnu-make/">here</a>.</li><li><a
href="http://www.scons.org/">SCons</a> is a build tool written in Python. I guess I like that &#8220;configuration files are Python scripts&#8221; &#8211; maybe knowing Python is enough to use SCons, which makes SCons a better choice than <strong>make</strong> for me. SCons seems to have gained <a
href="http://software-carpentry.org/blog/2010/07/popular-fast-or-usable-pick-one.html">some support</a> (scroll down for comments/discussion). There were some doubts about SCons performance (<a
href="http://www.electric-cloud.com/blog/2010/03/08/how-scalable-is-scons/">1</a>, <a
href="http://www.electric-cloud.com/blog/2010/07/21/a-second-look-at-scons-performance/">2</a>, and <a
href="http://www.electric-cloud.com/blog/2010/08/11/the-last-word-on-scons-performance/">3</a>); not sure where SCons is at right now in that regard.</li><li><a
href="http://code.google.com/p/waf/" class="broken_link" rel="nofollow">waf</a>, a Python-based framework for configuring, compiling and installing applications.</li><li>py<a
href="http://pydoit.org/">DoIt</a> is a Python automation tool. It seems to use Python syntax. It aims at bringing the power of build-tools to execute <em>any</em> kind of task, where a task describes some computation to be done (actions), and contains some extra meta-data. Based on the description alone, I&#8217;m quite intrigued! I wonder if anyone had already worked with pyDoIt and can share experiences?&#8230;</li><li>Rake &#8211; Ruby make &#8211; is a simple build program with capabilities similar to those of make. Had seen a lot of positive feedback about this one &#8211; mostly regarding simplicity of use. Still [py]DoIt so far looks more attractive to me personally.</li><li><a
href="http://code.google.com/p/ruffus/">Ruffus</a> is a lightweight python module for running computational pipelines. Sounds like some good competition to [py]DoIt!</li><li><a
href="http://www.anduril.org/anduril/site/">Anduril</a> is an open source component-based workflow framework for scientific data analysis. Sounds promising, though the latest downloadable version is over 400 MBs&#8230; It probably already contains a bunch of binaries and maybe even data and complete workflows for data analysis. Probably worth a look, but may turn out a little overweight for simple pipelining.</li><li><a
href="https://bitbucket.org/johanneskoester/snakemake/wiki/Home">snakemake</a> is a scalable bioinformatics workflow engine. I get the feeling that Python is truly dominating the pipelines/workflows world: snakemake, as even the name suggests, is in Python, too. The front-page example is so simple and clear, that snakemake immediately pushes DoIt down from the 1st place! Awesome.</li><li><a
href="http://paver.github.io/paver/">Paver</a> is a yet-another Python-based software project scripting tool along the lines of Make or Rake, designed to help out with repetitive tasks with the convenience of Pythonâ€™s syntax. Sounds similar to DoIt. Have no idea how they actually compare to each other.</li></ul><p>That is it for now.</p><p>What were your experiences with automating repetitive tasks and building simple pipelines?</p><p><a
class="a2a_button_citeulike" href="https://www.addtoany.com/add_to/citeulike?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2013%2F10%2F19%2Falternatives-to-gnu-make.html&amp;linkname=Alternatives%20to%20GNU%20make" title="CiteULike" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_pocket" href="https://www.addtoany.com/add_to/pocket?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2013%2F10%2F19%2Falternatives-to-gnu-make.html&amp;linkname=Alternatives%20to%20GNU%20make" title="Pocket" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_kindle_it" href="https://www.addtoany.com/add_to/kindle_it?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2013%2F10%2F19%2Falternatives-to-gnu-make.html&amp;linkname=Alternatives%20to%20GNU%20make" title="Kindle It" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_evernote" href="https://www.addtoany.com/add_to/evernote?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2013%2F10%2F19%2Falternatives-to-gnu-make.html&amp;linkname=Alternatives%20to%20GNU%20make" title="Evernote" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_pinterest" href="https://www.addtoany.com/add_to/pinterest?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2013%2F10%2F19%2Falternatives-to-gnu-make.html&amp;linkname=Alternatives%20to%20GNU%20make" title="Pinterest" rel="nofollow noopener" target="_blank"></a><a
class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fbogdan.org.ua%2F2013%2F10%2F19%2Falternatives-to-gnu-make.html&#038;title=Alternatives%20to%20GNU%20make" data-a2a-url="https://bogdan.org.ua/2013/10/19/alternatives-to-gnu-make.html" data-a2a-title="Alternatives to GNU make"><img
src="https://static.addtoany.com/buttons/share_save_120_16.png" alt="Share"></a></p>]]></content:encoded> <wfw:commentRss>https://bogdan.org.ua/2013/10/19/alternatives-to-gnu-make.html/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>GNU make for bioinformatics presentation</title><link>https://bogdan.org.ua/2009/06/05/gnu-make-for-bioinformatics-presentation.html</link> <comments>https://bogdan.org.ua/2009/06/05/gnu-make-for-bioinformatics-presentation.html#comments</comments> <pubDate>Fri, 05 Jun 2009 09:37:21 +0000</pubDate> <dc:creator><![CDATA[Bogdan]]></dc:creator> <category><![CDATA[Bioinformatics]]></category> <category><![CDATA[Links]]></category> <category><![CDATA[Programming]]></category> <category><![CDATA[make]]></category> <category><![CDATA[presentation]]></category> <guid
isPermaLink="false">http://bogdan.org.ua/?p=725</guid> <description><![CDATA[Giovanni Dallâ€™olio has recently posted a presentation on using make. Although it has &#8220;bioinformatics&#8221; on the title page, this is a good and very easy to understand make intro. Original post is here.]]></description> <content:encoded><![CDATA[<p>Giovanni Dallâ€™olio has recently posted a presentation on using <strong>make</strong>.</p><p>Although it has &#8220;bioinformatics&#8221; on the title page, this is a good and very easy to understand <strong>make</strong> intro.<br
/> <img
style="visibility:hidden;width:0px;height:0px;" border=0 width=0 height=0 src="http://counters.gigya.com/wildfire/IMP/CXNID=2000002.0NXC/bT*xJmx*PTEyNDQxOTQxMzg2NzImcHQ9MTI*NDE5NDE5ODg4NCZwPTEwMTkxJmQ9c3NfZW1iZWQmZz*yJnQ9Jm89ZTA5MGYzZTEyYzUzNDRiZmEyZTJjNWJhMmE2MTE*NGMmb2Y9MA==.gif" /><div
style="width:425px;text-align:left" id="__ss_1111258"><object
style="margin:0px" width="425" height="355"><param
name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=makefilesbioinfo-090306113207-phpapp02&#038;stripped_title=makefiles-bioinfo" /><param
name="allowFullScreen" value="true"/><param
name="allowScriptAccess" value="always"/><embed
src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=makefilesbioinfo-090306113207-phpapp02&#038;stripped_title=makefiles-bioinfo" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object></div><p>Original post is <a
href="http://bioinfoblog.it/2009/10/a-seminar-on-makefile-and-pipelines-of-shell-scripts/">here</a>.</p><p><a
class="a2a_button_citeulike" href="https://www.addtoany.com/add_to/citeulike?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2009%2F06%2F05%2Fgnu-make-for-bioinformatics-presentation.html&amp;linkname=GNU%20make%20for%20bioinformatics%20presentation" title="CiteULike" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_pocket" href="https://www.addtoany.com/add_to/pocket?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2009%2F06%2F05%2Fgnu-make-for-bioinformatics-presentation.html&amp;linkname=GNU%20make%20for%20bioinformatics%20presentation" title="Pocket" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_kindle_it" href="https://www.addtoany.com/add_to/kindle_it?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2009%2F06%2F05%2Fgnu-make-for-bioinformatics-presentation.html&amp;linkname=GNU%20make%20for%20bioinformatics%20presentation" title="Kindle It" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_evernote" href="https://www.addtoany.com/add_to/evernote?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2009%2F06%2F05%2Fgnu-make-for-bioinformatics-presentation.html&amp;linkname=GNU%20make%20for%20bioinformatics%20presentation" title="Evernote" rel="nofollow noopener" target="_blank"></a><a
class="a2a_button_pinterest" href="https://www.addtoany.com/add_to/pinterest?linkurl=https%3A%2F%2Fbogdan.org.ua%2F2009%2F06%2F05%2Fgnu-make-for-bioinformatics-presentation.html&amp;linkname=GNU%20make%20for%20bioinformatics%20presentation" title="Pinterest" rel="nofollow noopener" target="_blank"></a><a
class="a2a_dd addtoany_share_save addtoany_share" href="https://www.addtoany.com/share#url=https%3A%2F%2Fbogdan.org.ua%2F2009%2F06%2F05%2Fgnu-make-for-bioinformatics-presentation.html&#038;title=GNU%20make%20for%20bioinformatics%20presentation" data-a2a-url="https://bogdan.org.ua/2009/06/05/gnu-make-for-bioinformatics-presentation.html" data-a2a-title="GNU make for bioinformatics presentation"><img
src="https://static.addtoany.com/buttons/share_save_120_16.png" alt="Share"></a></p>]]></content:encoded> <wfw:commentRss>https://bogdan.org.ua/2009/06/05/gnu-make-for-bioinformatics-presentation.html/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>