{"action":"created","issue":{"url":"https://api.github.com/repos/BioJulia/Bio.jl/issues/64","labels_url":"https://api.github.com/repos/BioJulia/Bio.jl/issues/64/labels{/name}","comments_url":"https://api.github.com/repos/BioJulia/Bio.jl/issues/64/comments","events_url":"https://api.github.com/repos/BioJulia/Bio.jl/issues/64/events","html_url":"https://github.com/BioJulia/Bio.jl/issues/64","id":92953630,"number":64,"title":"RFC: Bioinformatics project management with BioJulia","user":{"login":"Ward9250","id":3399309,"avatar_url":"https://avatars.githubusercontent.com/u/3399309?v=3","gravatar_id":"","url":"https://api.github.com/users/Ward9250","html_url":"https://github.com/Ward9250","followers_url":"https://api.github.com/users/Ward9250/followers","following_url":"https://api.github.com/users/Ward9250/following{/other_user}","gists_url":"https://api.github.com/users/Ward9250/gists{/gist_id}","starred_url":"https://api.github.com/users/Ward9250/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ward9250/subscriptions","organizations_url":"https://api.github.com/users/Ward9250/orgs","repos_url":"https://api.github.com/users/Ward9250/repos","events_url":"https://api.github.com/users/Ward9250/events{/privacy}","received_events_url":"https://api.github.com/users/Ward9250/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-07-04T00:31:34Z","updated_at":"2015-07-04T21:14:10Z","closed_at":null,"body":"This is to further my idea articulated on Gitter. As the core library becomes even more complete, and as the BioJulia organisation gets more attention, one of the things I think would help set BioJulia apart from other Bio* projects (besides being fast and making the best use of Julia's features), would be if we also made it very easy for casual scripters (By that I mean lab based biologists that have to then turn to do some bioinformatics at the end of their experiment) to manage their Bioinformatics projects: if you're already scripting a few data processing steps with BioJulia tools, why not also manage the project with BioJulia?\r\n\r\nWhat I think would be great to see, is being able to start a Bioinformatics project directory from Julia, which is reproducible and self contained, and so perhaps makes use of its own package repo. It could also make use of both Git and Dat to A). Record code changes to scripts and pipelines in a project, and B). keep track and version data produced by scripts in your Bioinformatics project. With regards to pipelines, the ability to scrip pipelines that make use of Bio.jl structures and algorithms, with a streams/flow-based programming approach would be awesome. This all tied together would make it awesome to manage and run a reproducible Bioinformatics project with BioJulia.\r\n\r\nSo breaking it down a bit, I guess what I'm saying with this brain dump is:\r\n\r\n* A module for interfacing - reading and writing to and from Dat.\r\n* Streams / Flow-based programming (ideally that also makes use of multiple processes - I think nextflow does this).\r\n*   Project based packages like packrat for R or virtualenv for Python.\r\n\r\nWould be cool milestones."},"comment":{"url":"https://api.github.com/repos/BioJulia/Bio.jl/issues/comments/118555926","html_url":"https://github.com/BioJulia/Bio.jl/issues/64#issuecomment-118555926","issue_url":"https://api.github.com/repos/BioJulia/Bio.jl/issues/64","id":118555926,"user":{"login":"Ward9250","id":3399309,"avatar_url":"https://avatars.githubusercontent.com/u/3399309?v=3","gravatar_id":"","url":"https://api.github.com/users/Ward9250","html_url":"https://github.com/Ward9250","followers_url":"https://api.github.com/users/Ward9250/followers","following_url":"https://api.github.com/users/Ward9250/following{/other_user}","gists_url":"https://api.github.com/users/Ward9250/gists{/gist_id}","starred_url":"https://api.github.com/users/Ward9250/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Ward9250/subscriptions","organizations_url":"https://api.github.com/users/Ward9250/orgs","repos_url":"https://api.github.com/users/Ward9250/repos","events_url":"https://api.github.com/users/Ward9250/events{/privacy}","received_events_url":"https://api.github.com/users/Ward9250/received_events","type":"User","site_admin":false},"created_at":"2015-07-04T21:14:10Z","updated_at":"2015-07-04T21:14:10Z","body":"@Blahah I totally agree this would be very cool. I will push my Dat package to BioJulia as soon as I have some working tests and examples, which won't be long. I have one concern though:\r\n\r\nDat is good for either tabular data, or binary 'blobs' and so to write some of out data formats to Dat that are not tabular we will have to serialise them. What concerns me is the Julia [documentation](http://julia.readthedocs.org/en/latest/stdlib/io-network/?highlight=serialize) for serialise says that serialisation and deserialisation may not always return the original object accurately, and it will vary with Julia versions, system images and such. So will we need to define our own way of serialising some of our data formats that are not system and version dependent? "}}