<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Dataflow on Living Systems_</title>
    <link>https://livesys.se/tags/dataflow/</link>
    <description>Recent content in Dataflow on Living Systems_</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 27 Dec 2017 14:05:00 +0100</lastBuildDate>
    <atom:link href="https://livesys.se/tags/dataflow/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Equation-centric dataflow programming in Go</title>
      <link>https://livesys.se/posts/equation-centric-dataflow-programming-in-go/</link>
      <pubDate>Wed, 27 Dec 2017 14:05:00 +0100</pubDate>
      <guid>https://livesys.se/posts/equation-centric-dataflow-programming-in-go/</guid>
      <description>&lt;h2 id=&#34;mathematical-notation-and-dataflow-programming&#34;&gt;Mathematical notation and dataflow programming&lt;/h2&gt;&#xA;&lt;p&gt;Even though computations done on computers are very often based on some&#xA;type of math, it is striking that the notation used in math to express&#xA;equations and relations is not always very readily converted into&#xA;programming code. Outside of purely &lt;a href=&#34;https://en.wikipedia.org/wiki/Symbolic_programming&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;symbolic&#xA;programming&lt;/a&gt;&#xA;&#xA;languages like &lt;a href=&#34;http://www.sagemath.org/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;sage math&lt;/a&gt;&#xA; or the&#xA;(proprietary) &lt;a href=&#34;https://www.wolfram.com/language&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Wolfram language&lt;/a&gt;&#xA;,&#xA;there seem to always be quite a divide between the mathematical notation&#xA;and the numerical implementation.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How I would like to write Go programs</title>
      <link>https://livesys.se/posts/how-i-would-like-to-write-golang/</link>
      <pubDate>Sat, 18 Jul 2015 02:34:00 +0200</pubDate>
      <guid>https://livesys.se/posts/how-i-would-like-to-write-golang/</guid>
      <description>&lt;p&gt;&lt;p class=&#34;image&#34;&gt;&#xA;    &lt;img src=&#34;selection_301.png&#34; alt=&#34;&#34;  /&gt;&#xA;&lt;/p&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;Some time ago I got a &lt;a href=&#34;http://blog.gopheracademy.com/composable-pipelines-pattern&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;post published on&#xA;GopherAcademy&lt;/a&gt;&#xA;,&#xA;outlining in detail how I think a &lt;a href=&#34;http://www.jpaulmorrison.com/fbp&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;flow-based&#xA;programming&lt;/a&gt;&#xA; inspired syntax can&#xA;strongly help to create clearer, easier-to-maintain, and more&#xA;declarative Go programs.&lt;/p&gt;&#xA;&lt;p&gt;These ideas have since became clearer, and we (&lt;a href=&#34;http://twitter.com/ola_spjuth&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Ola&#xA;Spjuth&lt;/a&gt;&#xA;&amp;rsquo;s &lt;a href=&#34;http://www.farmbio.uu.se/research/researchgroups/pb/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;research group at&#xA;pharmbio&lt;/a&gt;&#xA;) have&#xA;successfully used them to make the workflow syntax for&#xA;&lt;a href=&#34;https://github.com/spotify/luigi&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Luigi&lt;/a&gt;&#xA; (Spotify&amp;rsquo;s great workflow&#xA;engine by &lt;a href=&#34;http://twitter.com/fulhack&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Erik Bernhardsson&lt;/a&gt;&#xA; &amp;amp; co)&#xA;workflows easier, as implemented in the &lt;a href=&#34;https://github.com/samuell/sciluigi#readme&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;SciLuigi helper&#xA;library&lt;/a&gt;&#xA;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>FBP inspired data flow syntax: The missing piece for the success of functional programming?</title>
      <link>https://livesys.se/posts/fbp-data-flow-syntax/</link>
      <pubDate>Thu, 16 Jul 2015 17:13:00 +0200</pubDate>
      <guid>https://livesys.se/posts/fbp-data-flow-syntax/</guid>
      <description>&lt;p&gt;&lt;p class=&#34;image&#34;&gt;&#xA;    &lt;img src=&#34;selection_288.png&#34; alt=&#34;&#34;  /&gt;&#xA;&lt;/p&gt;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;Often when I suggest people have a look at &lt;a href=&#34;http://www.jpaulmorrison.com/fbp/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Flow-based&#xA;Programming&lt;/a&gt;&#xA; (FBP) or &lt;a href=&#34;https://en.wikipedia.org/wiki/Dataflow&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Data&#xA;Flow&lt;/a&gt;&#xA; for one reason or another,&#xA;people are often put off by the strong connection between these concepts&#xA;and graphical programming. That is, the idea that programs will be&#xA;easier to understand if expressed and developed in a visual notation.&lt;/p&gt;&#xA;&lt;p&gt;This is unfortunate, since I think this is in no way the core benefit of&#xA;FBP or Data Flow, although it is a nice side-effect for those who prefer&#xA;it. For example, I personally mostly prefer working with text over a&#xA;graphical notation, for productivity reasons.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Workflow tool makers: Allow defining data flow, not just task dependencies</title>
      <link>https://livesys.se/posts/workflows-dataflow-not-task-deps/</link>
      <pubDate>Wed, 10 Jun 2015 12:03:00 +0200</pubDate>
      <guid>https://livesys.se/posts/workflows-dataflow-not-task-deps/</guid>
      <description>&lt;h3 id=&#34;upsurge-in-workflow-tools&#34;&gt;Upsurge in workflow tools&lt;/h3&gt;&#xA;&lt;p&gt;&lt;p class=&#34;image&#34;&gt;&#xA;    &lt;img src=&#34;selection_201.png&#34; alt=&#34;Workflow tool&#xA;logos&#34;  class=&#34;align_right&#34; /&gt;&#xA;&lt;/p&gt;&#xA;There&#xA;seem to be a little upsurge in light-weight - often python-based -&#xA;workflow tools for data pipelines in the last couple of years:&#xA;Spotify&amp;rsquo;s &lt;a href=&#34;https://github.com/spotify/luigi&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Luigi&lt;/a&gt;&#xA;, OpenStack&amp;rsquo;s&#xA;&lt;a href=&#34;https://wiki.openstack.org/wiki/Mistral&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Mistral&lt;/a&gt;&#xA;, Pinterest&amp;rsquo;s&#xA;&lt;a href=&#34;https://github.com/pinterest/pinball&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Pinball&lt;/a&gt;&#xA;, and recently AirBnb&amp;rsquo;s&#xA;&lt;a href=&#34;https://github.com/airbnb/airflow&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Airflow&lt;/a&gt;&#xA;, to name a few. These are&#xA;all interesting tools, and it is an interesting trend for us at&#xA;&lt;a href=&#34;http://www.farmbio.uu.se/research/researchgroups/pb/?languageId=1&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;pharmbio&lt;/a&gt;&#xA;,&#xA;who try to see how we can use workflow tools to automate bio- and&#xA;cheminformatics tasks on compute clusters.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Patterns for composable concurrent pipelines in Go</title>
      <link>https://livesys.se/posts/patterns-for-composable-concurrent-pipelines-in-go/</link>
      <pubDate>Mon, 01 Jun 2015 14:54:00 +0200</pubDate>
      <guid>https://livesys.se/posts/patterns-for-composable-concurrent-pipelines-in-go/</guid>
      <description>&lt;p&gt;I realize I didn&amp;rsquo;t have a link to my blog on &lt;a href=&#34;http://gopheracademy.com&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Gopher&#xA;Academy&lt;/a&gt;&#xA;, on patterns for compoasable&#xA;concurrent pipelines in Go(lang), so here it goes:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;http://blog.gopheracademy.com/composable-pipelines-pattern&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;blog.gopheracademy.com/composable-pipelines-pattern&lt;/a&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;p class=&#34;image&#34;&gt;&#xA;    &lt;img src=&#34;selection_212.png&#34; alt=&#34;Gopher academy screenshot&#34;  /&gt;&#xA;&lt;/p&gt;&#xA;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
