Hi all, I hope you're doing well. Please find in the link below the not finished proposal.
https://docs.google.com/document/d/1nwq1A_BUiXX8lKxwWg8-n-IuI_1F4dX7ZrmGOliTrXs/edit?usp=sharing I am not sure how the proposal needs to be in terms of length, details and content. I am sending you the proposal so far so you can have an idea and you can correct me if I made mistakes or if I need to elaborate more on certain parts. Any remarks are welcome. Thank you for your time. Best regards, Majdi On Mon, Mar 5, 2018 at 10:21 AM, Majdi Haouech <majdi.haou...@gmail.com> wrote: > Hi Stian, > > Thank you so much for your reply. > I am really sorry for my late reply. > > Thank you for the information you provided. I strongly agree with what you > said. > > I am seeing the tutorials and reading the doc. Soon I will start preparing > the proposal and I will keep you in touch. > Thank you once again for your message. > > Best regards, > Majdi > > On Wed, Feb 21, 2018 at 12:57 PM, Stian Soiland-Reyes <st...@apache.org> > wrote: > >> Hi, Majdi, thank you for your intest in GSOC and Apache Taverna! >> Apologies for late reply. >> >> On Thu, 15 Feb 2018 05:08:55 +0100, Majdi Haouech < >> majdi.haou...@gmail.com> wrote: >> > I have worked with different languages and technologies, to name a few: >> > Java, C, C++, Python, JS, Git, OWL, JavaEE, RabbitMQ, Maven. >> > I am also contributing to a Mozilla open source project which required >> > working with existing code and delivering a full working and completely >> > tested contribution. >> >> This is a strong background! It's good you have experience with both >> OWL, Python and Java. As you might have noticed the cwltool reference >> implementation is written in Python, while Taverna is (largely) in Java. >> >> >> > > First, I need to be familiar with the CWL specification in order to >> be able >> > > to convert YAML files to Taverna workflows. >> > > Next, I'll need to do the opposite work by transforming a Taverna >> workflow >> > > into YAML files following the CWL specification as well. >> > > Finally, if there will be enough time, I can contribute to Taverna's >> Tool >> > > Activity by completing the TAVERNA-878 issue. >> > > I understand that the contribution will be to the Taverna Language >> API and >> > > any other remarks are welcome. >> >> Yes, this can be a good way to start. I am a bit worried about going >> for both CWL import and export at the same time - although trying to >> have some kind of round-trip support would be wonderful! >> >> I think what you are proposing is to keep the translation structural at >> first, that is Taverna can import the CWL workflow and get the >> correct boxes/arrows connected, but would not know >> how to execute the CWL tools (pending TAVERNA-878). >> >> So this could for instance be that you import CWL tools into the dummy >> CWL activity we already have >> https://github.com/apache/incubator-taverna-common-activitie >> s/tree/cwl-browse/taverna-cwl-activity >> where it would just keep a JSON tree of the CWL Tool configuration >> without knowing how to execute it. That should make it easier to do a >> round-trip save out again. >> >> TAVERNA-878 could easily also be the most time-consuming part of the >> effort, so it might be good to not risk all on that. You may have a go >> at doing just simple CWL command line tools (e.g. just arguments and >> stdin/out without files) which should be easier to map to the existing >> Tool activity. >> >> >> Export of Taverna Workflows to CWL can seem challenging because in >> Taverna we have many types of activities which are not supported by >> other CWL engines: >> https://taverna.incubator.apache.org/javadoc/taverna-common-activities/ >> >> So again it could be a structural export where the CWL side just has >> "TavernaActivity" and includes the Taverna Activity JSON for opposite >> round-trip, but would not be executable on other CWL engines. >> >> (They should however work on http://view.commonwl.org/) >> >> If you then towards the end want to move beyond structural/skeleton >> export of Taverna workflows into CWL you can progress to export the >> Taverna's Command Tool activity as CWL command line tools. Again there >> might be features in the Taverna side that don't match exactly to CWL, >> which you can say is not supported. >> >> >> > > I am used to work with different technologies and dealing with >> different >> > > specifications. >> >> Great, yes, that is perhaps also the greatest challenge of this >> particular GSOC project, in that you will be integrating between several >> existing technologies and specifications! >> >> >> > > I am also used to work with existing code and extending it. >> > > Also, I am really motivated for contributing to an Apache project and >> this >> > > opportunity is perfect for me to dive right in with the right support. >> >> Thank you, we very much welcome your effort! >> >> What I think you could do next is to have a go with the different >> technologies, see the tutorials - and then start building a proposal >> (Google Docs?) where you list the background material and >> start listing your task breakdown. >> >> Taverna Language has some (but not much) doc at >> https://github.com/apache/incubator-taverna-language/ >> and >> https://taverna.incubator.apache.org/javadoc/taverna-languag >> e/org/apache/taverna/scufl2/api/package-summary.html >> >> The GOSC proposal is due mid March so there is time to develop it now - >> but it's good if you keep in touch with us at dev@taverna so we can >> review it before the deadline; we want GSOC to be successful as well! >> >> >> -- >> Stian Soiland-Reyes >> The University of Manchester >> http://www.esciencelab.org.uk/ >> http://orcid.org/0000-0001-9842-9718 >> >> >> -- >> Stian Soiland-Reyes >> http://orcid.org/0000-0001-9842-9718 >> >> >