BarCamp Kiel ’15 – Teil 1: Clean Code, mBot und Welcome Challenge

Facebooktwittergoogle_pluspinterestlinkedinmailFacebooktwittergoogle_pluspinterestlinkedinmail

Ende August war es wieder soweit: Das 6. BarCamp in Kiel fand statt. Zahlreiche unterschiedliche Themen und Diskussionen aus dem Bereich Technologie, Medien und Bildung fanden statt. In zwei kurzen Beiträgen gibts einen kurzen Bericht über deren Inhalte von mir.

Im ersten Bericht gehts um Clean Code, das Robotik-Projekt mBot, ein Refugees-Welcome-Projekt, Gamification im Projektalltag.

Was ist ein BarCamp?

In einem BarCamp gehts um aktuelle, ehemalige und zukünftige Themen und Ideen. Dazu treffen sich weltweit Technik-Freaks, Medien-Interessierte, Bildungs-Fans und alle anderen Interessierten in offenen Konferenzen. Ein BarCamp findet kostenlos statt. Die Themen werden erst zu Beginn des jeweiligen BarCamps festgelegt. Jeder Interessierte sollte sich auf zahlreichen Webseiten informieren.


SESSION: Clean Code und Testen

Eine der interessantesten Sessions für Entwickler behandelt das Thema Clean Code und Testing bei komplexen Code ohne den Fokus auf sauberes Entwickeln und Programmieren zu verlieren. Weiterhin sollte der Code testbar sein und trotzdem funktionieren.

Wie sauber sollte eine Software sein ohne sie schnell und effizient zu entwickeln? Und mit welchen Tools lässt sich Code regelmäßig testen und optimieren?

Eine gute Basis für kontinuierliche Softwareintegration ist das Tool Jenkins CI. Es ist OpenSource und hilft eine Software komponentenweise zu entwickeln. Andere Programme helfen beispielsweise bei der Entwicklung mit der Programmiersprache Java. Das Tool FindBugs findet Probleme im Code bevor sie auftreten. Mit JUnit wird Java-Software funktionsweise getestet. Dieses Prinzip gibt es mit PerlUnit u.ä. auch für andere Programmiersprachen. Durch Checkstyle wird ein Code- und Entwicklungsstandard eines Teams definiert und eingehalten. All diese Tools gibt es für zahlreiche IDEs wie Eclipse.

Ein gute Buch über korrekten Code-Standard ist Clean Code von Robert Martin oder Working Effectively with Legacy Code von Michael Feathers. Die Frage zum Schluss: Wie gut sollte die Qualität in Bezug auf die Geschwindigkeit sein?

SESSION: mBot – Robotik und Softwareentwicklung für Kinder

Bildung und Ausbildung früh zu beginnen ist gerade im Bereich Technik und Informatik sehr wichtig. Doch wann ist der richtige Zeitpunkt Kindern und Jugendlichen dies beizubringen? Und wie schafft man es? Der Unterricht im Schulalltag bringt Schülern einen falschen oder oberflächlichen Überblick in Softwareprinzipien. Die chinesische Firma Makeblock hat ein Robotik-Projekt namens mBot gestartet um jungen (und ebenso alten) Menschen grundlegende Funktionsweisen in der Software-Entwicklung beizubringen. Mit dem grafischen Entwickler-Programm Scratch lässt sich der Roboter so programmieren, dass er bestimmte Wege fährt sowie mit seinen Sensoren auf die Umgebung reagiert. Das schöne an der Software: Sie verzichtet auf Quellcode und baut auf bunte Blöcke mit der Aufschrift „Wenn Farbe blau ist, dann“ oder „Fahre 30 Schritte“.

Es gibt auch zahlreiche andere Bildungskonzepte um Algorithmen beizubringen. Lego unterstützt mit der jährlichen First Lego League den Wettkampf bei der Roboter-Entwicklung. Das Roberta-Netzwerk vermittelt in Schulen die Technik-Initiative.

Die Vermittlung dieses Wissens funktioniert nur in Blöcken von 15 bis 20 Minuten. Danach geht die Konzentration verloren. In Robotik-Projekten lässt sich super mit zwei Leuten entwickeln, welche mindestens in der 5. Klasse sein sollten. Leider fehlt die Vermittlung solcher Projekte in den entsprechenden Kultusministerien weswegen Vereine für Jugendliche dafür sinnvoll wären.

SESSION: Refugees Welcome – Wie kann man Hilfe im Internet organisieren?

Ein BarCamp beinhaltet nicht nur Vorträge sondern auch Diskussionen. In Kiel wurde die Frage, wie die Kraft des Internets dazu genutzt werden kann um die Flüchtlingswelle besser zu organisieren, diskutiert. Dazu wurden u.a. Projekte wie die Facebook-Gruppe „Welcome Challenge“ vorgestellt. Alle Ergebnisse dazu gibt es in einem anderen Beitrag.

SESSION: Gamification im Projektalltag

Teamgesteuerte Softwareentwicklung, gerade im Scrum-Prozess, hat immer ein Problem: Wie kann man das Team täglich neu motivieren? Gerade in immer gleich aussehenden Sprint-Blöcken ist die Abwechslung relativ selten gegeben.

Eine Idee gibt dabei das Konzept der Gamification. Dieses Wort wird immer häufiger als unverzichtbar definiert. Doch um was geht es dabei? Gamification versucht spielbezogene Inhalte auf das alle Aspekte des realen Lebens zu beziehen. Dazu gehören eine Rangliste, Fortschritt, unterschiedliche Quests und Gruppenarbeit.

Wie können diese Elemente in den täglichen Projektalltag eingeführt werden? Welche virtuellen Güter motivieren Mitarbeiter? Ein Beispielprojekt gibt es bereits im Bildungsbereich. Eine amerikanische Firma testet erfolgreich das Projekt ClassCraft. Dort agieren Lehrer und Schüler wie in einem Rollenspiel bei dem sie durch soziale Aktionen ihren Charakter weiterentwickeln.

Zwei wichtige Aspekte müssen bei Gamification eingehalten werden:

  • Die teilnehmende Person darf das wahre Ziel, wie die Schreibung einer Rechnung, nicht erkennen. Das virtuelle Ziel muss den Fokus bekommen.
  • Die teilnehmende Person darf die Regeln des Spiels nicht durchschauen. Es müssen zufällige, nicht direkt beeinflussabre Aspekte enthalten sein.

In einigen Firmen werden beispielsweise unliebsame Aufgaben stärker bewertet und bei deren Durchführung belohnt. 10 unliebsame Aufgaben könnten einem Extra-Urlaubstag als Bonus bedeuten. Andere Konzepte ist das Wetten auf bestimmte Werte wie erledigte Aufgaben nach einer bestimmten Zeit. Gamification kann ebenso für endliche Aufgaben wie einem Tutorial zur Einrichtung eines Rechners benutzt werden.

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

This site uses Akismet to reduce spam. Learn how your comment data is processed.