Software Sustainability Institute Training in Computational Skills Scientific Meeting 2014 “NGS Data after the Gold Rush” TGAC, Norwich UK, 6 th May 2014 Aleksandra Pawlik, Training Lead Software Sustainability | Training in Computational Skills Scientific Meeting 2014 “NGS Data after the Gold Rush” TGAC, Norwich UK, 6 th May 2014 Aleksandra Pawlik, Training Lead Software Sustainability |
Software Sustainability Institute Outline Computational skills in research Why training in computational skills? Training needs Different audiences Modes of delivery Curriculum Metrics & feedback
Software Sustainability Institute Computational skills in research Software underpins science and research across disciplines Software developed and maintained by researchers themselves Domain knowledge + computational skills scientist-developer
Software Sustainability Institute Why training in computational skills? Self-teaching can be ineffective and frustrating Computational skills often neglected in (under)graduate curricula Tailored for researchers’ needs, already acquired skills and available facilities
Software Sustainability Institute Training needs Skills for: developing robust and reliable software effectively supporting research developing maintainable software for others (and your-future-self!) to re-use maintaining legacy software
Software Sustainability Institute Core skills Automating tasks (eg. file and data processing) Building reproducible research pipelines Good programming practices (eg. modularisation, testing) Version control Using third party libraries Knowledge of *nix environment, where applicable
Software Sustainability Institute Domain-specific skills Usage of domain-specific third party libraries Knowledge of domain-specific stand-alone software packages Task-oriented programming languages (eg. R for statistical analysis)
Software Sustainability Institute Cloud computing Scaling up from the desktop to multi-core architectures Processing large volumes of data using relevant computing infrastructure Powerful, easy to share, collaborate and distribute
Software Sustainability Institute Different audiences Software/ Technical Computational Science Domain Science Concept Knowledge SoftwareDomain PhD Post-doc MSc ?
Software Sustainability Institute Other stakeholders Trainers Train the Trainers Learning resources providers Teaching materials Training facilities Funding bodies Computational infrastructure providers
Software Sustainability Institute Modes of delivery Short open-for-all hands-on workshops Centres for Doctoral Training (UK) Online resources GOBLET TeSS ELIXIR-UK to coordinate European-wide training
Software Sustainability Institute Software Carpentry “Developing scientific software doesn’t have to hurt” 2-day intensive bootcamps Successful model with bootcamps running on average once a week across the world (North America, Europe, Australia; first bootcamps in South America and Asia coming up)
Software Sustainability Institute Community support Bottom-up Emergent & non-prescritive Non-interfering and flexible Joining a wider ecosystem Other services, data, tools, platforms, people…
Software Sustainability Institute Curriculum Best practice for: software development (modularisation, testing, optimisation, version control) data management (data collection, analysis, archive, curation)
Software Sustainability Institute Data Carpentry ELIXIR-UK: Data Curation and Standards – (Susanna-Assunta Sansone) Training in standards development and use of standards in biocuration Based on the Software Carpentry model Possible collaboration with NSF BIO-funded synthesis & eScience centers (USA)
Software Sustainability Institute Metrics & feedback Providing evidence for effectiveness and usefulness of the training Understanding how the training can be improved Learning more about the audience and the stakeholders It’s challenging to do it well!
Software Sustainability Institute Measuring market demand Liaising with the research community (eg. SSI Fellowship Programme) Surveying potential training target groups Collecting information from training centres and organisations/individuals delivering computational support for research
Software Sustainability Institute Measuring impact Post-training participant surveys Longitudinal studies of the alumni cohorts (qualitative and quantitative) Use of computational skills and tools reported in publications, reports and talks (long term) Collecting feedback from computational support units and trainers
Software Sustainability Institute Conclusion Goals: Researchers ≠ software engineers; aim is to give researchers essential skills for building and maintaining reliable software Enabling better communication and collaboration between researchers and software engineers
Software Sustainability Institute Thank you Thank you