BEGIN:VCALENDAR
VERSION:2.0
PRODID:icalendar-ruby
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTAMP:20260619T060917Z
UID:c9da22a3-fc7e-42d5-8f21-ec1a042c3dc8
DTSTART:20230705T090000Z
DTEND:20230706T170000Z
DESCRIPTION:# Overview\nThe workshop will focus on learning and internalizi
 ng the practices of unit testing\, refactoring\, and version control throu
 gh hands-on experience. The first morning will start with an introduction 
 into these concepts and tools used to support them. In the afternoon\, we 
 will transition to a *code clinic* and work together in small groups apply
 ing these practices to make improvements to **code brought by participants
 **. The second day will continue with the code clinic.\n\nThe focus of thi
 s course **is not** object-oriented programming\, software architecture\, 
 design patterns or algorithms. The goal of this course is to introduce ski
 lls and techniques for effectively developing software.\n\n# Audience\nIf 
 the answer to two or more of the following questions is “yes”\, then t
 his course is for you.\n\nDo you write software to analyze data or impleme
 nt in-silico models as part of your daily work?\nDo you write scientific p
 ublications based on software you created yourself but do not know what un
 it testing\, refactoring or version control are?\nAre you writing code tha
 t you find hard to understand some weeks later?\nDo you have thousands of 
 lines of code\, but no automated way of verifying that the code works corr
 ectly?\nDo you find yourself regularly using “copy &amp\; paste” to re
 -use code you wrote earlier?\nDo small changes in your code later cause tr
 ouble in other unexpected places?\n\n\n# Learning objectives\nAt the end o
 f the workshop\, the participants should be able to:\n\nidentify and avoid
  the most common mistakes in the process of writing software in a scientif
 ic context\nimprove the quality of her/his code\nexploit techniques for ef
 fectively developing software\n\n\n# Prerequisites\n\n**Knowledge / compet
 encies**\n* Working knowledge of one of the following programming language
 s: R\, python\, C/C++\, java\, perl\, Matlab.\n\n**Technical / material**\
 n* Participants will need send some extracts of their code at least 2 week
 s before the course\n\n# Application\nThe registration fees for academics 
 are **200 CHF** and **1000 CHF** for for-profit companies.\n\nYou will be 
 informed by email of your registration confirmation. Upon reception of the
  confirmation email\, participants will be asked to confirm attendance by 
 paying the fees within 5 days.\n\nDeadline for free-of-charge cancellation
  is set to **15/06/2023**. Cancellation after this date will not be reimbu
 rsed. Please note that participation in SIB courses is subject to our [gen
 eral conditions](https://www.sib.swiss/training/terms-and-conditions).\n\n
 # Venue and Time\nThis course will be take in Zurich and start at 9:00 and
  end around 17:00. Detailed information will be provided to the participan
 ts.\n\n\n#  Additional information\nCoordination: Grégoire Rossier\n\nIns
 tructors: Baker Matthew\, Hennig John\, Schmid Emanuel\, Bräunlich Gerhar
 d\, Vermeul Swen\, Uwe Schmitt.\n\nWe will recommend 0.5 ECTS credits for 
 this course (given that you provide your code and work on it).\n\nYou are 
 welcome to register to the SIB courses mailing list to be informed of all 
 future courses and workshops\, as well as all important deadlines using th
 e form [here](https://lists.sib.swiss/mailman/listinfo/courses).\n\nPlease
  note that participation in SIB courses is subject to our [general conditi
 ons](https://www.sib.swiss/training/terms-and-conditions).\n\nSIB abides b
 y the [ELIXIR Code of Conduct](https://elixir-europe.org/events/code-of-co
 nduct). Participants of SIB courses are also required to abide by the same
  code.\n\nFor more information\, please contact [training@sib.swiss](mailt
 o://training@sib.swiss).
SUMMARY:Best Practices in Programming
URL;VALUE=URI:https://www.sib.swiss/training/course/20230705_BPP
END:VEVENT
END:VCALENDAR
