|
3 | 3 | <head> |
4 | 4 | <title>Planemo: A Scientific Workflow SDK</title> |
5 | 5 | <meta charset="utf-8"> |
6 | | - <style> |
7 | | - @import url(https://fonts.googleapis.com/css?family=Yanone+Kaffeesatz); |
8 | | - @import url(https://fonts.googleapis.com/css?family=Droid+Serif:400,700,400italic); |
9 | | - @import url(https://fonts.googleapis.com/css?family=Ubuntu+Mono:400,700,400italic); |
10 | | - |
11 | | - body { font-family: 'Droid Serif'; } |
12 | | - h1, h2, h3 { |
13 | | - font-family: 'Yanone Kaffeesatz'; |
14 | | - font-weight: normal; |
15 | | - } |
16 | | - .remark-code, .remark-inline-code { font-family: 'Ubuntu Mono'; } |
17 | | - </style> |
| 6 | + <link rel="stylesheet" type="text/css" href="style.css"> |
18 | 7 | </head> |
19 | 8 | <body> |
20 | 9 | <textarea id="source"> |
21 | 10 |
|
22 | 11 | class: center, middle |
23 | 12 |
|
24 | | -## Planemo: A Scientific Workflow SDK |
| 13 | +layout: true |
| 14 | +class: inverse, middle |
| 15 | + |
| 16 | +--- |
| 17 | +class: special |
| 18 | +# Planemo: A Scientific Workflow SDK |
| 19 | +John Chilton, Aysam Guerler, and the Galaxy Team |
25 | 20 |
|
26 | 21 | --- |
27 | 22 |
|
|
52 | 47 |
|
53 | 48 | ??? |
54 | 49 |
|
| 50 | +The editor form now uses the same backbone driven MVC components as the |
| 51 | +new tool form presented last year. |
| 52 | + |
55 | 53 | --- |
56 | 54 |
|
57 | 55 | ### GUI Enhancements - Workflow Run Form |
|
62 | 60 |
|
63 | 61 | ??? |
64 | 62 |
|
| 63 | +The run workflow form has likewise been overhauled and will be merged soon. This |
| 64 | +should allow more dynamic option control when running workflows. |
| 65 | + |
| 66 | +--- |
| 67 | + |
| 68 | +### GUI Enhancements - Labels |
| 69 | + |
| 70 | +TODO: UPDATE IMAGE |
| 71 | + |
| 72 | + |
| 73 | + |
| 74 | +??? |
| 75 | + |
| 76 | +When reasoning about workflows and connections between steps, persistent and unique |
| 77 | +labels for steps and outputs are important. These are useful in the API and too a |
| 78 | +lesser extent in the GUI today. |
| 79 | + |
| 80 | +A major theme of this presentation is going to be that workflows are programs, they |
| 81 | +are a coding artifact. I'm not sure anyone would disagree with me on that - but I |
| 82 | +think the implications may be counter-intuitive at times. |
| 83 | + |
| 84 | +--- |
| 85 | + |
| 86 | +### GUI Enhancements - Nested Workflows |
| 87 | + |
| 88 | +TODO: UPDATE IMAGE |
| 89 | + |
| 90 | + |
| 91 | + |
| 92 | +??? |
| 93 | + |
| 94 | +Workflows are programs, languages describing programs should provide abstractions for |
| 95 | +composition. Nesting workflows was one of the most requested feature requests of |
| 96 | +Galaxy and it now supports this. |
| 97 | + |
| 98 | +--- |
| 99 | + |
| 100 | +### What About Planemo? |
| 101 | + |
| 102 | +??? |
| 103 | + |
| 104 | +Enough screenshots right - when I present people expect to see long command-lines! |
| 105 | + |
| 106 | +--- |
| 107 | + |
| 108 | +### Planemo's Success |
| 109 | + |
| 110 | +It is *the way* to develop Galaxy tools in 2016! Why? |
| 111 | + |
| 112 | +- Artifact-centric - not Galaxy-centric or registry-centric. |
| 113 | +- Fits into existing developer workflows - CLI, Git(hub), CI (Travis). |
| 114 | +- Flexible |
| 115 | +- Well documented w/focus on usage examples. |
| 116 | + |
| 117 | +It is about **developer workflow**. |
| 118 | + |
| 119 | +??? |
| 120 | + |
| 121 | +In 2014, Greg von Kuster presented a tool development workflow that involved |
| 122 | +publishing things to a local tool shed and running tests from there and viewing |
| 123 | +the results through the web interface. I call this registry or shed centric tool |
| 124 | +development (development activities "boot strap the tool shed, upload to the tool |
| 125 | +shed, run tests against the tool shed, view results in the tool shed, export capsule |
| 126 | +from the tool shed". Prior to that tool development was Galaxy-centric - "download |
| 127 | +Galaxy, update the Galaxy tool conf, update the Galaxy test data, run the Galaxy |
| 128 | +tests." Planemo is tool centric - lint the tool, test the tool, serve the tool. |
| 129 | + |
| 130 | +--- |
| 131 | + |
| 132 | +class: bottom |
| 133 | +background-image: url(images/organic_mower_wat.jpg) |
| 134 | +background-position: center; |
| 135 | +background-repeat: no-repeat; |
| 136 | +background-size: contain; |
| 137 | + |
| 138 | +### So Planemo? |
| 139 | + |
| 140 | +Photo Credit: Peter Smith (@skwiot) |
65 | 141 |
|
66 | 142 | --- |
67 | 143 |
|
|
75 | 151 |
|
76 | 152 | ??? |
77 | 153 |
|
78 | | -The artisinal, free range, organic text editor of my choice. It is a go |
79 | | -lang rewrite of a node rewrite of an Erlang editor from 1987 - it is the hottest editor you've never heard of. |
| 154 | +The hippest, artisinal, free range text editor of my choice. It is a go |
| 155 | +lang rewrite of a node rewrite of an Erlang editor from 1987 - it is super hot right |
| 156 | +now but I'm sure you've never heard of. |
80 | 157 |
|
81 | 158 | --- |
82 | 159 |
|
|
90 | 167 | \"queries\": \"[{\\\"input2\\\": null, \\\"__index__\\\": 0}]\"}", |
91 | 168 | ``` |
92 | 169 |
|
93 | | -Neither human writable, nor human readable. |
94 | | - |
95 | | -JSON doesn't allow comments - one shouldn't have to describe a |
96 | | -configuration file in JSON let alone write a program in it. |
| 170 | +- Neither human writable, nor human readable. |
| 171 | +- JSON doesn't allow comments. |
| 172 | + - One shouldn't have to describe a configuration file in JSON, |
| 173 | + let alone write a program in it. |
97 | 174 |
|
98 | 175 | --- |
99 | 176 |
|
100 | | -### Format 2 Workflows |
| 177 | +### Format 2 Workflows - Example |
101 | 178 |
|
102 | 179 | TODO: SHOW EXAMPLE |
103 | 180 |
|
| 181 | +--- |
| 182 | + |
| 183 | +### Format 2 Workflows |
| 184 | + |
| 185 | +- Started as a way to build test workflows for Galaxy testing framework. |
| 186 | +- All steps can be labeled, connections described by ID. |
| 187 | +- |
104 | 188 |
|
105 | 189 | </textarea> |
106 | 190 | <script src="https://gnab.github.io/remark/downloads/remark-latest.min.js"> |
|
0 commit comments