Hier können meine Slides zum diesjährigen Vortrag auf dem Herbstcampus betrachtet werden (einfach auf das Bild klicken):
Author: Joachim Weinbrenner
Auch dieses Jahr darf ich auf dem Herbstcampus mit einem Vortrag dabei sein: <Superheld/> – Web-Applikationen mit AngularJS.
Hier das Abstract:
Betrachtet man die Entwicklung der client-seitigen Web-Frameworks, so sticht in jüngster Zeit ein Kandidat mit enormen Zuwachsraten heraus: AngularJS. Das JavaScript-Framework bietet einen optimalen Weg zur Trennung von Design und Anwendungslogik sowie der Anbindung an Backends. Der Vortrag gibt eine Einführung in die Implementierung von AngularJS-Anwendungen und zeigt Wege zum Aufbau von modernen, hoch skalierbaren Web-Architekturen.
Der diesjährige MATHEMA Campus fand am 19. und 20. April am bewährten Ort, dem Novotel Erlangen, statt. Das Programm war wieder vollgepackt mit einer Fülle aus Vorträgen, gegliedert in vier Tracks: Sprachen, Mobil/Web, Qualität und Verschiedenes. Eine der schönen Besonderheiten am Campus ist, dass es nicht nur „tierisch“ ernste IT-Vorträge gibt, sondern auch solche zum „ganzen Rest“; so konnte man dieses Jahr z.B. etwas zur Faszination des Whiskys erfahren oder etwas über die Vorzüge des Barfuß-Laufens.
Hier möchte ich kurz über die von mir besuchten Vorträge berichten.
Tag 1
Kaffeesatz
Die Begrüßung leitete wieder Michael Wiedeking, der diesmal einen Rückblick zu 10 Jahren Campus und parallell dazu 10 Jahre (vermeintliche) Highlights der IT gab. Erstaunlich, wie viele Dinge man schon wieder vergessen hat oder vor fünf Jahren noch als wichtig eingestuft, die nun doch wieder in der Versenkung verschwunden sind …
We’re all in
Werner Eberling und Torsten Zahn berichteten von Ihrem internationalen Großprojekt bei Adidas. Es ging um den flexiblen Produktkonfigurator für individuell gefertigte Produkte, der sich in die gesamte Adidas IT-Infrastruktur integrieren musste. Neben den „üblichen“ technischen Herausforderungen gab es interessante Erkenntnisse zum Offshoring über mehrere Firmen und Länder hinweg zu hören.
Freches Früchtchen
Ralph Henze gab einen schönen Überblick über Google Guava, die „Core-Bibliothek“ für Java-Projekte. Ich hatte selbst schon einige Teile davon in den letzten Jahren genutzt (vor allem das Collections Zeug), dennoch waren für mich ein paar neue Dinge dabei. Beispielsweise das Optional<T> zur Vermeidung von null-Werten kann bei konsequenter Nutzung sehr zur Verbesserung der Codequalität beitragen. Aber auch die angebotenen Caches sind eine starke Sache – jeder, der sich sagt: „da mach ich mir mal schnell nen Cache mit einer HashMap“, sollte unbedingt in Erwägung ziehen, die Cache-Klassen aus Guava zu verwenden!
Ausgeswingt
Im kommenden Java wird Swing als @Deprecated markiert und die Verwendung von JavaFX empfohlen. Sascha Groß gab einen praxisnahen Überblick zum aktuellen Stand bei JavaFX 2.0. Nachdem ich bei den älteren Versionen von JavaFX beschlossen hatte, dass es nicht lohnt, dieses Thema weiter zu verfolgen, war ich von der Entwicklung doch einigermaßen positiv überrascht! JavaFX 2.0 kommt recht solide daher und einem gestandenen Swing-Entwickler sollte der Umstieg nicht schwer fallen. Auch das Tooling und Showcases sind schon auf einem recht guten Stand, so dass es sicher Spaß machen kann, seinen GUI-Client mit dem Framework zu entwickeln.
I, Robot
Für mich und meinen Sohn Nico (8) (nochmals danke an Mathema für die „Sondereinladung“) war dies ein ganz besonderes Highlight: Jan Leßner erzählte über seine Erfahrungen mit Kindern in Sachen Programmieren lernen. Er leitet eine AG für Schüler der 5. bis 7. Klasse an einem Paderborner Gymnasium. Zunächst lernen die Kinder die nötigen Denkstrukturen mit Hilfe der Software CeeBot Teen. Hier programmieren die Schüler Autos, die über den Bildschirm in virtuellen Räumen fahren und Aufgaben lösen (und ja, die können sogar schießen 😉 )
Mit diesem Vorwissen geht es dann an die Programmierung von LEGO Mindstorms Robotern mit LEJOS, einer Java-basierten Umgebung unter Verwendung von Eclipse. Nach Jans Erfahrung lernen die Jungs und Mädels(!) sehr schnell den Umgang mit Eclipse, insb. Autovervollständigung, Format, Organize Imports und so weiter.
Nach dem Abendessen konnten wir das Ganze dann in der Praxis ausprobieren: wir sollten einen fahrenden Roboter mit Ultraschall- und Drucksensor ausgestattet, so programmieren, dass er an einer Wand entlang fahren kann und Hindernisse dabei umfährt. Die 75min reichten gerade so, dass die meisten Teams eine in erster Näherung funktionierende Implementierung hatten. Unser Bot war sogar der erste, der den Parcour erfolgreich bewältigte, mein Junior war sehr stolz 🙂
Best of Highlights
Der traditionelle Filmvortrag am späten Abend zeigte wieder Sensationen der Computergrafik in Filmen und allerlei lustige Ausschnitte.
Tag 2
(conj known-languages :closure)
Eine sehr schöne Einführung in die funktionale Programmiersprache Clojure lieferte uns David Tanzer. Er hatte keine Folien dabei, stattdessen wurde fleissig Live-gecoded – ein erfrischender Start in den zweiten Tag des Campus. David verwendete den Editor Light Table, welcher die Ausdrücke sofort während des Tippens sehr schön dargestellt auswertet.
Make-Up fürs Web
Da die Session zu Raspberry Pi leider ausfallen musste, ging ich in den CSS3 Vortrag von Rüdiger Keller. Für mich gab es hier nichts wirklich Neues, aber die Zahl der Fragen aus dem Publikum zeigte mir, wie wichtig so ein Vortrag aktuell ist.
Mein Name ist Script, JavaScript!
Von diesem Vortrag war ich leicht enttäuscht, da mir das Abstract etwas mehr versprochen hatte. Frank Goraus präsentierte eine solide Einführung in die Grundlagen von JavaScript, aber eben nichts darüber hinaus. Meiner Meinung nach dürfte für jeden, der schon ein bisschen mit der Sprache zu tun hatte, nichts neues dabei gewesen sein.
Real existent
Zum Abschluß gabs nochmal ein Highlight: Michael Wiedeking zeigte den aktuellen Stand zu seiner perfekten Programmiersprache ALx (Arbeitstitel, der wohl nicht der finale Name werden wird). Mittlerweile gibt es tatsächlich einen Compiler (der leider noch nicht vollständig funktioniert) und ein Eclipse-Plugin, das es ermöglicht, die nötigen mathematischen Zeichen einzugeben. Allerdings bereitet die Auswertung von Ausdrücken (Reihenfolge der Operatoren) „MiWi“ doch noch größere Probleme …. man darf gespannt bleiben!
Fazit
Der Campus war wieder mal eine Top-Veranstaltung, an die manch größere Konferenz nicht herankommt. Vielleicht ist es ja gerade die herzliche Atmosphäre und der eher kleine Kreis, der die Magie dieser zwei Tage ausmacht. Vielen Dank an das gesamte MATHEMA-Team und ich freue mich schon aufs nächste Jahr!
Heute mal etwas für die Ästhetik in unserem Entwickleralltag: Habe eine sehr schöne Schriftart entdeckt, die ich nun in meinen Editoren, IDEs und Shells verwende: Source Code Pro von Adobe.
Dieser Font wurde speziell für Entwickler geschaffen und hat eine besonders klare Darstellung. Viel Wert wurde auf die Unterscheidung von ähnlichen Zeichen gelegt (also z.B. 1 (eins) und l (kleines L))
Den Download gibts hier: http://sourceforge.net/projects/sourcecodepro.adobe/
Einbindung in Webseiten z.B. via http://www.google.com/webfonts/specimen/Source+Code+Pro