Auf der Konferenz Kod.io im oberösterreichischen Linz haben sich rund 300 Entwickler aus vielen Nationen über zeitgemäße Softwareentwicklung in Ruby, Javascript, Python, C# und weiteren Sprachen ausgetauscht.
Die eintägige Veranstaltung im Ars Electronica Center wurde von einem österreichisch-türkischen Komitee organisiert und ergänzte ein gleichnamiges Treffen, das bereits vergangenes Jahr in Istanbul stattfand. Erklärtes Ziel der Organisatoren ist es, “Brücken zwischen Kulturen und Programmiersprachen” zu bauen.
Diesem Motto wurde beispielsweise der Vortrag des türkischen Entwicklers Burak Yi?it Kaya von Disqus gerecht. Er beschrieb, wie sich Internationalisierung und Lokalisierung von Software in agile Projekte eingliedern lässt, ohne die fortlaufende Entwicklung zu bremsen. Bei seinem Arbeitgeber, der fast jeden Tag ein Deployment des Codes vornimmt, erstellte er zusammen mit ehrenamtlichen Übersetzern die türkischsprachige Version des Kommentar-Dienstes. Dazu benutzte er unter anderem GNU Gettext, die Open-Source-Webanwendung Transifex und Mozillas Tool Jsxgettext. Zusammen mit Automatisierung, einem angepassten Build-Prozess und einem Continuous-Integration-System wie Jenkins oder Travis CI lässt sich so Continuous Translation umsetzen. Die übersetzbaren Zeichenketten neuer Software-Features gelangen rasch zum Übersetzerteam. Zur Lokalisierung von Datums- und Zeitangaben setzt Kaya Moment.js ein.
Datenvisualisierung
Das Übersetzen von Daten in Diagramme demonstrierte die amerikanische Programmiererin Joanne Cheng von Thoughtbot. Für eher konventionelle Darstellungsformen verwendet sie Highcharts.js. Mit der Bibliothek d3.js dagegen zeigte sie, wie man kreative Visualisierungen jenseits öder Balkengrafiken erzeugt. Github-Issues des Ruby-on-Rails-Projekts verwandelte sie zunächst in Json und zeigte sie anschließend als Kreise an, die sie zunächst freihändig skizzierte. Nach einigen Minuten Live-Programmierung und rund 50 Zeilen Javascript-Code erblickte das Publikum nach Größe, Farbe, Transparenz und Linienstil differenzierte Kreise, die Eigenschaften der Tickets wie Art, Alter und Anzahl der Kommentare abbildeten.

Die Entwicklerin Joanne Cheng programmierte in 50 Zeilen Javascript eine originelle Visualisierung für Github-Issues.
Piotr Szotkowski, Dozent an der Universität Warschau, bereitete dem Publikum vergnügliche 30 Minuten, in denen er ihm wenig bekannte Features von Alltagswerkzeuge wie Git, PostgreSQL und der Unix-Kommandozeile nahebrachte. Wer seine Tipps und Tricks nachvollziehen möchte, findet seine HTML-Präsentation online. “Jeder sollte ab und zu Support machen” war die Botschaft von Mike Adolphs. Bei seinem Arbeitgeber Github springen auch Entwickler und Admins ein, wenn Urlaubszeit ist oder Notfälle antreten. Er erläuterte die Support-Faustregeln des Unternehmens: Kein Streit, keine Beleidigungen, keine Ausreden und keine Eigenwerbung. Adolphs erzählte, die Tätigkeit im Support habe ihn fachlich und menschlich reifer gemacht.
Devops in Bewegung
Zu den prominentesten Sprechern der Veranstaltung dürfte der Vagrant-Autor und Unternehmer Mitchell Hashimoto gehören. Er widmete sich dem Thema Devops und betonte die rasche Innovation bei dieser Kombination von Development und Operations: “Vor drei Jahren musste man nur Chef und Puppet kennen, in jüngerer Zeit gibt es auch viele andere Tools, und das Gebiet wird unübersichtlicher.” Um für mehr Ordnung zu sorgen, gliederte er den Application Lifecycle in die drei Phasen Development, Deployment und Maintenance und erläuterte deren Charakteristika. Dabei formuliert er auch das Ziel von Devops: “Den Application Lifecycle effizienter gestalten.”
Beim Erreichen dieses Ziels helfen laut Hashimoto Tools: “Sie kodifizieren Wissen”. In anderen Worten, was die Software weiß, braucht der Mensch sich nicht mehr zu merken. Will er die Details dennoch wissen, kann er sie im Quelltext nachlesen. Hier kamen die Produkte seiner Firma Hashicorp ins Spiel, von denen das MIT-lizenzierte Vagrant das bekannteste ist. Dazu sind in weniger als einem Jahr zwei neue gekommen, was die Beweglichkeit des Devops-Segments unterstreicht: Packer, das die langsameren Teile des Deployment durch vorgefertigte Images beschleunigt und Serf, das Cluster unter Benutzung eines Gossip-Protokolls orchestriert. Beide stehen unter der Mozilla Public License 2.0.
Videos der Vorträge
In weiteren Beiträgen der zwei englischsprachigen Tracks der Kod.io ging es um Angular.js, App-Entwicklung mit Rubymotion, Farbmanagement für das Web sowie die Förderung von Frauen in technischen Berufen. Weitere Informationen zur Veranstaltung gibt es unter http://linz.kod.io. Das Video-Team von Confreaks hat die Vorträge aufgezeichnet, so dass sie künftig online verfügbar sein werden.




