{"id":7380,"date":"2025-04-10T15:00:05","date_gmt":"2025-04-10T13:00:05","guid":{"rendered":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/?p=7380"},"modified":"2025-04-28T12:06:53","modified_gmt":"2025-04-28T10:06:53","slug":"carpentries-python-workshop","status":"publish","type":"post","link":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/2025\/04\/10\/carpentries-python-workshop\/","title":{"rendered":"Carpentries Python-Workshop"},"content":{"rendered":"<p><div id=\"attachment_7395\" style=\"width: 310px\" class=\"wp-caption alignright\"><a href=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/IMG-20250318-WA0003-1.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7395\" class=\"wp-image-7395 size-medium\" src=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/IMG-20250318-WA0003-1-300x225.jpg\" alt=\"Carpentries Python Workshop: Vortragende steht am Pult\" width=\"300\" height=\"225\" srcset=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/IMG-20250318-WA0003-1-300x225.jpg 300w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/IMG-20250318-WA0003-1-1024x768.jpg 1024w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/IMG-20250318-WA0003-1-768x576.jpg 768w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/IMG-20250318-WA0003-1-1536x1152.jpg 1536w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/IMG-20250318-WA0003-1.jpg 2016w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-7395\" class=\"wp-caption-text\">Quelle: DKZ.2R und NFDI4Microbiota<\/p><\/div><\/p>\n<p>Der Software Carpentries-Workshop \u201eEinf\u00fchrung in Python\u201c fand am 17. und 18. M\u00e4rz 2025 im IT Center der RWTH Aachen statt. Er wurde von Jonathan Hartman vom <a href=\"https:\/\/www.dkz2r.de\/\">Rhein-Ruhr Zentrum f\u00fcr wissenschaftliche Datenkompetenz<\/a> (DKZ.2R) und Catherine Gonzalez von <a href=\"https:\/\/nfdi4microbiota.de\/\">NFDI4Microbiota<\/a> geleitet. Die Veranstaltung richtete sich speziell an Absolventinnen, Absolventen und Forschende, die Python erlernen m\u00f6chten.<\/p>\n<p><!--more--><\/p>\n<p>&nbsp;<\/p>\n<h3><span style=\"color: #00549f;\"><b>Mehr als nur ein Workshop<\/b><\/span><\/h3>\n<p>Es war mehr als nur ein Workshop &#8211; es war eine gemeinschaftsbildende Erfahrung. Die Teilnehmenden wurden ermutigt, sich gegenseitig zu unterst\u00fctzen, um ein kooperatives und unterst\u00fctzendes Lernumfeld zu f\u00f6rdern. Unter Verwendung des Carpentries-Verhaltenskodex wurden sie ermutigt, eine einladende und integrative Sprache zu verwenden und unterschiedliche Ansichten und Erfahrungen zu respektieren, um die bestm\u00f6glichen Erfahrungen zu gew\u00e4hrleisten.<\/p>\n<p>&nbsp;<\/p>\n<h3><span style=\"color: #00549f;\"><strong>Was ist Python?<\/strong><\/span><\/h3>\n<p>Python ist eine interaktive Programmiersprache, mit der Codes einfach geschrieben und die Ergebnisse sofort eingesehen werden k\u00f6nnen. Python ist eine gro\u00dfartige Programmiersprache, um mit dem Programmieren zu beginnen, da sie sehr logisch ist und in einfachem gesprochenem Englisch geschrieben wird.<\/p>\n<p>&nbsp;<\/p>\n<h3><span style=\"color: #00549f;\"><strong>Ermittlung des Lernerfolgs der Teilnehmenden<\/strong><\/span><\/h3>\n<p>Um die Vorkenntnisse und Erwartungen der Teilnehmenden an die Schulung besser zu verstehen, f\u00fchrten wir <strong>vor dem Workshop eine Umfrage<\/strong> durch. Dies half uns, ihre Vertrautheit mit Python einzusch\u00e4tzen und die wichtigsten Bereiche zu identifizieren, in denen sie sich verbessern wollten. <strong>Nach dem Workshop<\/strong> f\u00fchrten wir ebenfalls <strong>eine Umfrage<\/strong> durch, um zu sehen, wie sich ihre Antworten ver\u00e4ndert hatten, um ihren Lernfortschritt zu bewerten und um Feedback zu ihrer Schulungserfahrung zu erhalten. Dies lieferte wertvolle Informationen \u00fcber die Wirksamkeit des Workshops und \u00fcber Bereiche, in denen in Zukunft Verbesserungen m\u00f6glich sind.<\/p>\n<p>Die folgende Grafik zeigt zum Beispiel, wie sich die selbst eingesch\u00e4tzten F\u00e4higkeiten und das Selbstvertrauen der Teilnehmer im Laufe des Trainings ver\u00e4ndert haben.<\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_7391\" style=\"width: 615px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild1-Phython-1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7391\" class=\"wp-image-7391 size-full\" src=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild1-Phython-1.png\" alt=\"Die Grafik zeigt, wie sich die selbstberichteten F\u00e4higkeiten und das Selbstvertrauen der Teilnehmer im Laufe des Trainings entwickelt haben\" width=\"605\" height=\"243\" srcset=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild1-Phython-1.png 605w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild1-Phython-1-300x120.png 300w\" sizes=\"auto, (max-width: 605px) 100vw, 605px\" \/><\/a><p id=\"caption-attachment-7391\" class=\"wp-caption-text\">Quelle: DKZ.2R und NFDI4Microbiota<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>Das leitende Python-Workshop-Team hat in der Umfrage ermutigendes Feedback erhalten:<\/p>\n<p><em>\u201eIch habe viel aus diesem Workshop gelernt. Alle Mitarbeitenden waren sehr freundlich und professionell. Ich w\u00fcrde gerne an einem weiteren Python-Workshop unter Ihrer Organisation teilnehmen. Danke!\u201c <\/em><em>\u201eGute Organisation, sehr gut strukturierter Inhalt mit verst\u00e4ndlichen Beispielen. Mir gefiel die Kombination aus Pr\u00e4sentationen und praktischen \u00dcbungen.\u201c<\/em><\/p>\n<p><em>\u201eAlle Dozenten waren sehr engagiert und enthusiastisch. Sie lieferten gro\u00dfartige Beispiele daf\u00fcr, wie bew\u00e4hrte Verfahren bei der t\u00e4glichen Programmierung helfen.\u201c <\/em><em>\u201eDie Begeisterung der Dozenten machte es einfacher, sich auf die Aufgaben zu konzentrieren.\u201c<\/em><\/p>\n<p>&nbsp;<\/p>\n<h3><span style=\"color: #00549f;\"><strong>Was die Teilnehmenden gelernt haben<\/strong><\/span><\/h3>\n<p>Im Laufe von zwei Tagen lernten die Teilnehmenden wichtige Programmierkonzepte durch praktische Programmier\u00fcbungen. Sie lernten grundlegende Datenstrukturen kennen, um Daten zu kontrollieren und zu validieren und um wiederkehrende Aufgaben zu automatisieren.<\/p>\n<p>Sie lernten die Syntax und Anwendungsf\u00e4lle f\u00fcr bedingte Strukturen wie if-Anweisungen, for-Schleifen und Akkumulator-Muster kennen.<\/p>\n<p><em>Beispiel:<\/em> Die Abbildung zeigt, wie Variablen, Schleifen und Bedingungen kombiniert wurden, um zu modellieren, wie sich die Geschwindigkeit mit der Zeit \u00e4ndert:<\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_7392\" style=\"width: 577px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-2-Python-1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7392\" class=\"wp-image-7392 size-full\" src=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-2-Python-1.png\" alt=\"Der Codeausschnitt zeigt, wie Variablen, Schleifen und Bedingungen kombiniert wurden, um zu modellieren, wie sich die Geschwindigkeit im Laufe der Zeit \u00e4ndert.\" width=\"567\" height=\"577\" srcset=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-2-Python-1.png 567w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-2-Python-1-295x300.png 295w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-2-Python-1-50x50.png 50w\" sizes=\"auto, (max-width: 567px) 100vw, 567px\" \/><\/a><p id=\"caption-attachment-7392\" class=\"wp-caption-text\">Quelle: DKZ.2R und NFDI4Microbiota<\/p><\/div>\n<ul>\n<li><strong>Datentypen und Typkonvertierung<\/strong>: Verschiedene Datentypen in Python verstehen und zwischen ihnen konvertieren.\n<ul>\n<li>Datentypen wie z. B. Strings, die in Anf\u00fchrungszeichen stehen (\u201ein Anf\u00fchrungszeichen\u201c), Ganzzahlen (1234) und viele mehr. Sie k\u00f6nnen einen Wert in einen Datentyp umwandeln, indem Sie str(2) oder int(\u201e2\u201c) verwenden.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Integrierte Python-Funktionen und Hilfe<\/strong>: Die integrierten Funktionen von Python effektiv nutzen und auf die Hilfe in der Python-Umgebung zugreifen k\u00f6nnen.\n<ul>\n<li>H\u00e4ufig verwendete eingebaute Funktionen sind zum Beispiel: min(), max(), die verwendet werden, um den kleinsten oder gr\u00f6\u00dften Wert einer Reihe von Werten zu ermitteln. Dies funktioniert sowohl bei Ganzzahlen als auch bei Zeichenketten<\/li>\n<\/ul>\n<\/li>\n<li><strong>Datenrahmen mit Pandas<\/strong>: Wie man tabellarische Daten aus .csv-Dateien mit den Panda-Bibliotheken ausliest, um einen \u00dcberblick und eine Visualisierung \u00fcber das BIP mehrerer L\u00e4nder zu erhalten.\n<ul>\n<li>Ein Datenrahmen ist eine Sammlung von Zeilen. Der Datenrahmen ist die Art und Weise, wie Pandas eine Tabelle darstellt und Reihen sind die Datenstruktur, die Pandas verwendet, um eine Spalte darzustellen. Wir haben uns das BIP verschiedener europ\u00e4ischer L\u00e4nder angesehen, indem wir eine .csv-Datei mit der Pandas-Bibliothek eingelesen haben.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li style=\"list-style-type: none;\"><\/li>\n<li><strong>Plotten mit Matplotlib<\/strong>: Erstellen von Visualisierungen mit der Matplotlib Bibliothek.<\/li>\n<\/ul>\n<p><em>Beispiel:<\/em> In diesem kurzen Programm wurden Pandas und Matplotlib verwendet, um ein Diagramm zu erstellen, das die Korrelation zwischen dem BIP und der Lebenserwartung f\u00fcr das Jahr 2007 zeigt, wobei die Gr\u00f6\u00dfe der Markierung auf die Bev\u00f6lkerung normiert wird.<\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_7393\" style=\"width: 556px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-4-Python-1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7393\" class=\"size-full wp-image-7393\" src=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-4-Python-1.png\" alt=\"Korrelation zwischen dem BIP und der Lebenserwartung f\u00fcr das Jahr 2007 \" width=\"546\" height=\"145\" srcset=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-4-Python-1.png 546w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild-4-Python-1-300x80.png 300w\" sizes=\"auto, (max-width: 546px) 100vw, 546px\" \/><\/a><p id=\"caption-attachment-7393\" class=\"wp-caption-text\">Quelle: Eigene Darstellung<\/p><\/div>\n<p>&nbsp;<\/p>\n<div id=\"attachment_7394\" style=\"width: 410px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild3-Python-1.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7394\" class=\"wp-image-7394 size-full\" src=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild3-Python-1.png\" alt=\"Korrelation zwischen dem BIP und der Lebenserwartung f\u00fcr das Jahr 2007 \" width=\"400\" height=\"314\" srcset=\"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild3-Python-1.png 400w, https:\/\/blog.rwth-aachen.de\/forschungsdaten\/files\/2025\/04\/Bild3-Python-1-300x236.png 300w\" sizes=\"auto, (max-width: 400px) 100vw, 400px\" \/><\/a><p id=\"caption-attachment-7394\" class=\"wp-caption-text\">Quelle: DKZ.2R und NFDI4Microbiota<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>W\u00e4hrend des gesamten Workshops waren die Teilnehmenden mit <strong>Live-Coding<\/strong> besch\u00e4ftigt und wurden dabei von zertifizierten Carpentries-Trainern und Workshop-Assistenten unterst\u00fctzt. Erg\u00e4nzend zu den praktischen \u00dcbungen wurden in kurzen Vortr\u00e4gen weiterf\u00fchrende Programmierkonzepte vorgestellt:<\/p>\n<ul>\n<li><strong>\u201eThe Zen of Python<\/strong>\u201c \u2013 Eine Reihe von 19 Leitprinzipien f\u00fcr das Schreiben von klarem und effizientem Code.<\/li>\n<li><strong>\u201eThird-Party Libraries\u201c<\/strong> \u2013 Wie externe Pakete die M\u00f6glichkeiten von Python erweitern.<\/li>\n<li><strong>\u201eGit Version Control\u201c<\/strong> \u2013 Tools zur Verfolgung von \u00c4nderungen und Zusammenarbeit an Code.<\/li>\n<li><strong>Saubere Code-Praktiken<\/strong> \u2013 Schreiben von lesbarem und wartbarem Code mit Kommentaren, Docstrings und Formatierungswerkzeugen.<\/li>\n<\/ul>\n<p>Am Ende des Workshops hatten die Teilnehmenden eine solide Basis an Kenntnissen der Python-Programmierung aufgebaut und grundlegende F\u00e4higkeiten f\u00fcr Forschung und Datenanalyse erworben. Noch wichtiger war, dass sie das Selbstvertrauen gewonnen hatten, diese Konzepte in ihren eigenen Projekten weiter zu erforschen und anzuwenden.<\/p>\n<hr \/>\n<p>Verantwortlich f\u00fcr die Inhalte dieses Beitrags ist <a href=\"https:\/\/www.itc.rwth-aachen.de\/go\/id\/epvp\/gguid\/PER-7BM8UXQ\/allou\/1\/\">Catherine Gonzalez<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Der Software Carpentries-Workshop \u201eEinf\u00fchrung in Python\u201c fand am 17. und 18. M\u00e4rz 2025 im IT Center der RWTH Aachen statt. Er wurde von Jonathan Hartman vom Rhein-Ruhr Zentrum f\u00fcr wissenschaftliche [&hellip;]<\/p>\n","protected":false},"author":3675,"featured_media":7388,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"c2c_always_allow_admin_comments":false,"footnotes":""},"categories":[3,106,108,107],"tags":[887,549,888,618,29],"class_list":["post-7380","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-rwth","category-aus-der-praxis","category-berichte","category-informationen-beratung","tag-carpentries","tag-dkz-2r","tag-live-coding","tag-python","tag-workshop"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/posts\/7380","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/users\/3675"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/comments?post=7380"}],"version-history":[{"count":16,"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/posts\/7380\/revisions"}],"predecessor-version":[{"id":7472,"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/posts\/7380\/revisions\/7472"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/media\/7388"}],"wp:attachment":[{"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/media?parent=7380"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/categories?post=7380"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.rwth-aachen.de\/forschungsdaten\/wp-json\/wp\/v2\/tags?post=7380"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}