diff --git a/src/content/collab_proj_course.rst b/src/content/collab_proj_course.rst index 582a6776181f90a61d4e9766e8059c7cf22225d1..be5cae6bf96c3117d57a3d289b74b4faffcc23b5 100644 --- a/src/content/collab_proj_course.rst +++ b/src/content/collab_proj_course.rst @@ -20,29 +20,29 @@ General Information Interested participants from academia and industry are most welcome to apply for the course: *Collaborative Software Engineering Project in Computational Physics* given by the Linköping university unit of `Materials Design and Informatics <https://liu.se/en/research/materials-design-and-informatics>`__. The course is offered within the `Swedish e-Science education (SeSE) <https://sese.nu>`__ initiative and as part of our participation in the `Data-driven computational materials design (DCMD) Multidisciplinary collaboration programme <https://e-science.se/people-and-research/mcps/mcp-data-driven-computational-materials-design/>`__ of the `Swedish e-Science Research Centre <https://e-science.se/>`__. -* Next course start: **August 30, 2021.** +* Next course start: **August 30, 2021.** **Full digital participation possible.** * Course outline: 10 lectures, 4 hands-on exercises, and group work on a collaborative software project in computational physics. * Successfully completing the course corresponds to 9 ECTS points. * Teacher: `Rickard Armiento <https://liu.se/en/employee/ricar47>`__, associate professor in Physical Modelling and head of the Materials Design and Informatics unit at Linköping University. * Course homepage: https://mdi.gitlab-pages.liu.se/collab_proj_course.html -* For any questions or concerns: contact `Rickard Armiento <https://liu.se/en/employee/ricar47>`__, rickard.armiento [at] liu.se - -*Note: it is possible there may be a course fee, depending on whether you are a registered student at a (SeSE-connected) Swedish university, foreign university, postdoc, industry participant, or something else. Please let us know where you are from when registering, and we will sort this out.* - +* I'm happy to answer any questions: contact `Rickard Armiento <https://liu.se/en/employee/ricar47>`__, rickard.armiento [at] liu.se + **Course contents at a glance** -* Evolve your skills from programming → software development → collaborative software engineering. -* Get experience working according to an industry-relevant agile project model. +* Learn how to engineer software with collaborative software tools, including git and GitHub/GitLab. Evolve your skills from programming → software development → collaborative software engineering. +* Try an industry-relevant agile project model, using sprints and keeping track of tasks on a virtual Kanban board. +* Apply what you learn in a group project to develop a molecular dynamics software based on the ASE and ASAP libraries. + Run the software in (semi) high-throughput on supercomputers and explore the data with visual data analysis. * The project adds to your software project portfolio. * Train your presentation skills with an oral presentation and a written final report. * Four hands-on sessions: - - Version control with git, collaborative development on GitHub or GitLab. - - Exploration and visualization of data. - - Molecular dynamics in Python with ASE and ASAP and automated testing (CI). - - High-throughput computations on supercomputers. + - Version control with git, collaborative development on GitHub/GitLab. + - Exploratory Visual Data Analysis (+ automated software documentation systems) + - Molecular dynamics in Python with ASE and ASAP (+ automated testing/CI). + - High-throughput computations using supercomputers. -The course takes place in the autumn term starting end of August/beginning of September. **For the fall 2021 round (during Corona), participation will be possible fully by distance / video link.** (The degree to which this will be offered in the future is not yet determined.) +The course takes place in the autumn term starting end of August/beginning of September. **Dates** @@ -84,7 +84,7 @@ Preliminary Outline of Lectures and Exercises **Lecture 1:** *Course Introduction and Project Models* -- Overview, background, course plan, CDIO, waterfall vs. agile project models, LIPs, Scrum. +- Overview, background, course plan, waterfall vs. agile project models, LIPs, Scrum. **Lecture 2:** *Software Versioning and Collaborative Development* @@ -107,7 +107,7 @@ Preliminary Outline of Lectures and Exercises - Documentation: UML, Source code comments, Embedded documentation, Sphinx. - Software licensing: Open and closed source licenses (GPL, MIT, BSD, CC, etc.), CLAs. -**Lecture 5:** *Software Engineering in Industry (intended to be a guest lecture)* +**Lecture 5:** *Software Engineering in Industry (Guest lecture)* **Hands-on exercise 2:** *Exploratory Data Analysis and Documentation* @@ -134,7 +134,7 @@ Preliminary Outline of Lectures and Exercises **Hands-on exercise 3:** *Molecular dynamics and software testing* - Molecular dynamics with ASE and ASAP. -- Unit tests and continuous integration with GitHub actions. +- Unit tests and continuous integration (CI) with GitHub actions. **Lecture 9:** *Concurrency and Parallelism* @@ -153,5 +153,4 @@ Preliminary Outline of Lectures and Exercises - Final remarks about the project execution and final phases. - There will also be some "extra credit" material distributed on: advanced programming concepts: programming paradigms, multi-paradigm programming, programming patterns; and computer security aspects in software development.