Kaffeeklatsch

Das Wichtigste in aller Kürze

Michael Wiedeking

MATHEMA Software GmbH

Jens Schauder

LINEAS Informationstechnik GmbH

Matthias Göttler

MATHEMA Software GmbH
K30 Mittwoch, 15. 9., 08:30 – 09:20 Uhr Keynote .Net Java Mi de PDF PDF PDF PDF

In dieser Keynote kommen alle diejenigen zu Wort, die das, was sie zu sagen haben, in nur 300 Sekunden sagen können. So kann der geneigte Zuhörer gespannt sein, was in aller Kürze geboten wird. Und sollte es wider Erwarten tatsächlich einmal langweilig werden, so ist ja schon nach 300 Sekunden der Unmut vorbei.

Das Beste kommt zum Schluss

Verabschiedung

Das Herbstcampus-Team

Bookware
Mittwoch, 15. 9., 17:00 – 17:15 Uhr Mi de

In der Abschlussveranstaltung wird noch einmal resümiert, die besten Sprecher gekürt und unter den Anwesenden einige wenige glückliche „gesucht“, die mit mehr als nur einem Wissensgewinn nach Hause gehen sollen.

Hitparade

Visual Studio und Team Foundation Server 2010

Neno Loje

N31 Mittwoch, 15. 9., 09:40 – 10:50 Uhr .Net Mi de PDF

Visual Studio 2010 werden Software-Entwickler lieben! Davon sind wir überzeugt. Zumindest, wenn man sich die neuen Funktionen für Entwickler (ja, auch einen Debugger kann man immer noch weiter verbessern!) und die neue UI-Testfunktionalität betrachtet. Endlich lassen sich auch Tests für Windows-Oberflächen aufnehmen und abspielen. Und mit Hilfe der neuen IntelliTrace-Funktion kommt Ihnen kein Bug mehr „nicht reproduzierbar“ davon.

Dieser Vortrag ist ein Muss für jeden, der einen Blick in die (nahe) Zukunft werfen möchte, auch um zu entscheiden, welche neuen Funktionen in welchen der neuen Visual-Studio-Editionen (Professional, Premium, Ultimate) enthalten sein werden.

Vollautomat

Qualitätssicherung mit VS und TFS 2010 automatisieren

Neno Loje

N33 Mittwoch, 15. 9., 14:00 – 15:10 Uhr .Net Mi de PDF

Visual Studio und Team Foundation Server 2010 automatisieren die Validierung der Code-Qualität und ermöglichen eine neue Qualität in der Kommunikation zwischen Entwickler und Tester.

In diesem Vortrag sehen Sie, wie sich automatische Build-Prozesse in VSTS 2010 konfigurieren lassen, sodass sie vor dem Einchecken in die Versionsverwaltung gestartet werden, um die getätigten Code-Änderungen zu überprüfen. Weiterhin wird gezeigt, wie sich der Build-Prozess dahingehend erweitern lässt, die Anwendung automatisch in eine virtualisierte Testumgebung zu verteilen, die dann für automatische sowie manuelle Tests eingesetzt werden kann.

Vier gewinnt

C# 4.0

Tobias Krügel

conplement AG
N34 Mittwoch, 15. 9., 15:40 – 16:50 Uhr .Net Mi de

Über zwei Jahre ist es nun her, dass Microsoft das Visual Studio 2008 mit dem darin enthaltenen Compiler für Version 3.0 von C# veröffentlichte. Dessen Nachfolger steht schon seit geraumer Zeit in den Startlöchern und soll schließlich ab dem 12. April 2010 – zusammen mit dem Visual Studio 2010 – der Entwicklergemeinde offiziell zur Verfügung gestellt werden.

In diesem Vortrag werden die wichtigsten Neuerungen von C# 4.0, wie beispielsweise dynamische Typen, Ko- und Kontravarianz generischer Typen oder optionale Parameter beleuchtet und anhand von Beispielen erklärt.

Wer, wie, was – wieso, weshalb, warum?

Kommentieren und Dokumentieren

Stefan Hildebrandt

consulting.hildebrandt.tk
L31 Mittwoch, 15. 9., 09:40 – 10:50 Uhr .Net Java Mi de PDF

Kommentieren gilt als eine lästige Pflicht, der kaum ein Programmierer gerne nachkommt. Daher wird der Wunsch von Projektleitern, Architekten und Kunden nach einer guten Dokumentation ungern nachgekommen. Auch technische Zwänge über automatische Prüfungen werden ausgetrickst und sagen noch nichts über die Qualität aus, so dass eine gute und nützliche Dokumentation bei der Software-Entwicklung meistens schwer zu realisieren ist. Und zu guter Letzt werden nach initialen Entwicklung noch Änderungen am Code vorgenommen, die in der Dokumentation nachgezogen werden müssen.

In diesem Vortrag werden Alternativen zu einem „Viel-Hilft-Viel“-Ansatz diskutiert und mit Berichten aus der Praxis unterlegt.

Saubere Sache

Von 0 auf 100% sauberen Quellcode in 70 Minuten

André Fleischer

Otto GmbH & Co. KG
L32 Mittwoch, 15. 9., 11:20 – 12:30 Uhr .Net Java Mi de

Es wird viel über Software-Architekturen, Cloud-Computing und Modularisierung geredet. Wir beschäftigen uns mit agilen Sprints, mit Frameworks jeder Art und mit modellbasierter Entwicklung. Aber was wir tagtäglich vor uns sehen, das ist der Quelltext unserer Anwendung. Und tagtäglich klagen wir über schlechte Qualität und über unzureichende Software.

Während des Vortrages wollen wir uns gemeinsam Quelltexte vornehmen. Wir gehen dabei nach den Methoden der „clean-code-developer.de“ vor. Wir werden deren Prinzipien und Praktiken anwenden, mit dem Ziel, ein gesundes Maß an sauberen Quelltexten zu bekommen. Wir werden Code Smells erkennen und diese bereinigen. Wir werden unsauberen Code finden und Refactorings anwenden. Wir werden die clean-code-developer-Grade im Schnelldurchlauf erleben – Von 0 auf 100% Clean-Code-Developer in 70 Minuten.

Spielst du noch oder entwickelst du schon?

Grundpflichten eines professionellen Software-Entwicklers

Jens Schauder

LINEAS Informationstechnik GmbH
L33 Mittwoch, 15. 9., 14:00 – 15:10 Uhr .Net Java Mi de PDF

Wie Software entwickelt werden sollte, und was in der Realität in vielen Firmen stattfindet, weicht oft weit voneinander ab. Aber es gibt einige Dinge die für die professionelle Software-Entwicklung unabdingbar sind.

Deshalb werden sie in diesem Vortrag vorgestellt und diskutiert.

Wollmilchsäue

Wiederverwendung wider Verwendbarkeit

Jan Leßner

arvato services
L34 Mittwoch, 15. 9., 15:40 – 16:50 Uhr .Net Java Mi de PDF

Je mehr Arbeit man in einen Software-Baustein investiert, um so größer ist der Wunsch, ihn in möglichst vielen Projekten zu nutzen. Dabei kommt es zu einem Dilemma: Um einen Baustein wiederverwendbar zu gestalten, wird er komplizierter und schwerer zu warten, während er gleichzeitig in Projekten ein ungeliebtes Kind bleibt, weil er mit projektfremden Begriffen oder schwer verständlichen Abstraktionen arbeitet.

Dieser Vortrag zeigt verschiedene Ansätze für Wiederverwendung und ein paar Faustregeln für die Abschätzung der Sinnhaftigkeit auf.

Liebling, ich habe die GUI geschrumpft

Gute und schlechte Oberflächen für mobile Geräte

Thomas Künneth

BA-IT Systemhaus
V31 Mittwoch, 15. 9., 09:40 – 10:50 Uhr .Net Java Mi de PDF

Mobile Geräte lassen sich dank mächtiger und ausgefeilter Klassenbibliotheken genauso komfortabel programmieren wie ihre großen Brüder auf und unter den Schreibtischen. Die Benutzeroberflächen von Android und Co. übernehmen zahlreiche Metaphern aus dem Desktop-Umfeld, bringen aber auch eigene Ideen und Konzepte mit.

Der Vortrag zeigt Gemeinsamkeiten und Unterschiede zwischen klassischen Desktop-Systemen und mobilen Geräten und gibt Tipps für eine anwenderfreundliche Gestaltung der Benutzeroberfläche von mobilen Anwendungen sowie der sinnvollen Anordnung von Bedienelementen.

Tricks of the Trade

Eine persönlicher Einblick in die Werkzeugkiste eines Entwicklers

Hardy Ferentschik

JBoss/RedHat
V32 Mittwoch, 15. 9., 11:20 – 12:30 Uhr .Net Java Mi de PDF

Ausgehend von Tipps und Tricks vorgestellt in Büchern wie „My Job Went to India“ von Chad Fowler und „The Pragmatic Programmer“ von Andrew Hunt gibt dieser Vortrag einen ganz persönlichen Einblick in die Entwicklerwerkzeugkiste des Vortragenden. Dabei werden nicht nur konkrete Tools vorgestellt, sondern auch Grundeinstellungen wie „Always leave the code better than you found it“.

Evolutionär

Evolvierbarkeit von Code

Golo Roden

V33 Mittwoch, 15. 9., 14:00 – 15:10 Uhr .Net Java Mi de PDF

Dass Wart- und Evolvierbarkeit wichtige nicht-funktionale Anforderungen an Code sind, ist nichts Neues. Schließlich wird dieses Ziel in nahezu jedem Projekt gefordert. Doch die Frage ist: Wie gelangt man dorthin? Man könnte meinen, dass dies hauptsächlich Erfahrung und ein Gefühl für die Sache voraussetzt, doch glücklicherweise ist dem nicht so: Zum Schreiben von evolvierbarem Code gibt es handfeste Regeln, die jeder lernen kann.

In diesem Vortrag werden eine ganze Reihe solcher Regeln vorgestellt, erläutert, warum diese Regeln zu evolvierbarem Code beitragen, und anhand eines kleinen, selbstentwickelten Frameworks verdeutlicht, wie die Theorie in die Praxis umgesetzt wird.

Selbstorganisiert ein Ziel erreichen

Analyse, Architektur und Design in agilen Software-Projekten

David Tanzer

ciqua Pirringer & Tanzer OG
V34 Mittwoch, 15. 9., 15:40 – 16:50 Uhr .Net Java Mi de PDF

Agile Methoden stellen selbstorganisierte Teams in den Vordergrund. Dabei muss trotzdem sichergestellt werden, dass ein gemeinsames Ziel erreicht wird. Analyse, Architektur und Design werden nicht mehr vor der eigentlichen Entwicklung gemacht, sondern „Just in Time“.

Wann genau das ist und wer die Aktivitäten durchführt, wird in diesem Vortrag gezeigt.

Winds Of Change

Datenbankänderungen verwalten und testen

Jens Schauder

LINEAS Informationstechnik GmbH
T31 Mittwoch, 15. 9., 09:40 – 10:50 Uhr .Net Java Mi de

Ein schlechtes Migrationsskript kann eine Datenbank schnell außer Gefecht setzen, dennoch ist in vielen Projekten die Infrastruktur zum Testen dieser Skripte mangelhaft. Dies wiederum führt dazu, dass das Schema nicht so schnell weiter entwickelt wird, wie es agile Ansätze erfordern.

Dieser Vortrag erläutert, was nötig ist, um Datenbankmigrationsskripte zu verwalten sowie rigoros und vollständig automatisiert zu testen.

Compiler, der API-Checker?

Fehlererkennung durch Erweiterung des Typsystems

Maximilian Konzack

T32 Mittwoch, 15. 9., 11:20 – 12:30 Uhr .Net Java Mi de PDF

Die API eines Frameworks ist meist komplex, da sie viele verschiedene Datentypen definiert und die Verwendung von ihnen bestimmten Mustern folgen. Ein Compiler überprüft nicht, ob die Spezifikation der API im Client Code des Frameworks eingehalten wird und generiert keine aussagekräftigen Fehlermeldungen, die dem API-Nutzer helfen, den Fehler zu beheben. Durch Constraints lassen sich sehr einfach bestehende API-Muster abbilden, die letztlich vom Compiler überprüft werden.

In diesem Vortrag wird die Idee hinter den Constraints vorgestellt und gezeigt, dass sich viele existierende API-Probleme mit Hilfe von Constraints, die vom Compiler validiert werden können, vermeiden lassen. Ebenso wird diskutiert, wie die heutige, existierende Infrastruktur eines Compilers für das Validieren der Constraints genutzt werden kann. Am Beispiel des Plugins für den Scala Compiler werden erste Ergebnisse vorgestellt und die Grenzen dieses Ansatzes erläutert.

Aber sicher!

Strategien für Typsystemerweiterungen

Michael Wiedeking

MATHEMA Software GmbH
T32 Mittwoch, 15. 9., 11:20 – 12:30 Uhr .Net Java Mi de PDF

Mit Hilfe eines Typs kann viel mehr erreicht werden, als sicher zu stellen, dass nur verträgliche Objekte einander zugewiesen oder an entsprechende Methoden übergeben werden. Im Grunde kann man jede beliebe Eigenschaft an das Typsystem koppeln und diese in Bezug auf ihre gegenseitige Verträglichkeit schon zur Übersetzungszeit prüfen.

In diesem Vortrag wird beispielhaft gezeigt, was man mit Typsystemerweiterungen erreichen kann. Dabei wird kurz angerissen, welche Vor- und Nachteile und Aufwände dabei entstehen. Exemplarisch wird dazu ein Blick in die zukunftigen Möglichkeiten zur Erweiterung des Typsystems unter Java gegeben.

Distributed Computing the Google way

Eine Einführung in Apache Hadoop

Eduard Hildebrandt

T33 Mittwoch, 15. 9., 14:00 – 15:10 Uhr .Net Java Mi de PDF

Überall im Netz hinterlassen wir Kommentare, laden Fotos und Videos hoch, aktualisieren unseren Status bei Facebook, bloggen, twittern, chatten usw. Die Systeme generieren und verwalten immer mehr und mehr Daten. Das exponentielle Wachstum dieser Daten war für viele Pionier-Unternehmen wie Google, Yahoo, Amazon und Facebook eine große Herausforderung. Sie müssen Petabytes von Daten analysieren, um herauszufinden, welche Web-Seiten gut sind, welche Bücher Sie interessieren könnten und welche Werbung für Sie am besten geeignet ist. Dafür waren die existierenden Werkzeuge unzureichend. Google war das erste Unternehmen, dass sein System – genannt Map-Reduce – zur Skalierung ihrer Datenverarbeitung veröffentlicht hat. Apache Hadoop ist eine Open-Source-Implementierung vom Map-Reduce-Algorithmus und stellt heutzutage ein Kernstück der Infrastruktur vieler Unternehmen wie Yahoo, Facebook, LinkedIn oder Twitter dar. Doch die Anforderung, immer größere Datenmengen zu verarbeiten, trifft nun auch immer mehr viele herkömmliche Unternehmen und verlangt den Entwicklern völlig neue Fähigkeiten ab.

Dieser Vortrag zeigt, wie man diesem Problem mit dem Apache Hadoop Framework begegnen kann.

Berechtigt!

Berechtigungskonzepte in Domain-Driven Design

Arne Limburg

OpenKnowledge GmbH
T34 Mittwoch, 15. 9., 15:40 – 16:50 Uhr .Net Java Mi de

Domain-Driven Design verschiebt den Fokus der Software-Entwicklung auf die Modellierung der fachlichen Anwendungsdomäne. Häufig enthält die Anwendungsdomäne ein „natürliches Berechtigungskonzept“. So darf z. B. ein Benutzer nur seine eigenen Daten sehen. Doch wie kann ein solches Berechtigungskonzept im Code umgesetzt werden, ohne es mit Geschäftslogik zu vermischen und gleichzeitig die Beschreibbarkeit der Zugriffsregeln, deren Wartbarkeit sowie die Auswirkung auf die Performanz zu vernachlässigen?

In diesem Vortrag wird ein neues Konzept zur Formulierung von domänenbasierter Zugriffssteuerung präsentiert und gegenüber bestehenden Ansätzen wie rollenbasierter Zugriffskontrolle und Zugriffskontroll-Listen abgegrenzt. Gleichzeitig wird das Framework JPA Security vorgestellt, mit dem dieses Konzept umgesetzt werden kann.

Mist gemessen?

Java Performance und Memory Analyse

Dr. Halil-Cem Gürsoy

adesso AG
J31 Mittwoch, 15. 9., 09:40 – 10:50 Uhr Java Mi de PDF

In den Zeiten von BPM, SOA und anderer Buzz-Wörter ist das eigentliche Handwerk – das Entwickeln und der Umgang mit den Werkzeugen – mehr oder weniger ein Nebenschauplatz geworden. Aber spätestens dann, wenn der Kunde seinen Missmut über die mangelhafte Performance „seiner Applikation“ oder „seiner SOA“ äußert, wird es Zeit, sich mit einigen Werkzeugen im Detail zu beschäftigen und sich grundlegenden Fragestellungen zu öffnen.

Aus der Erfahrung geboren, dass gerade bezüglich von Performance- und Memory-Problemen im Java-Umfeld recht „interessantes“ Halbwissen offensichtlich wird, erfolgt in diesem Vortrag eine Einführung in die Analyse dieser, mit Hilfe von freien Tools.

Siebengescheit

Neuerungen in Java 7

Michael Wiedeking

MATHEMA Software GmbH
J33 Mittwoch, 15. 9., 14:00 – 15:10 Uhr Java Mi de

Wenn man den Versprechungen rund um Java Glauben schenken darf, so müsste um die Zeit des Herbstcampus herum die neue Java Version 7 herausgekommen sein. Die Erfahrung sagt aber, dass man – selbst wenn der Termin gehalten wird – immer noch gespannt sein darf, welche der Feature-Kandidaten es denn tatsächlch in die Version geschafft haben werden.

So wird dieser Vortrag  – je nachdem wie es um die Freigabe von Java 7 gestellt ist – entweder über den tatsächlichen Stand oder nach bestem Wissen und Gewissen über den aktuell prognostizierten Stand berichten.

Gobelingewebe

Kategorisierung von Web-Frameworks im Java-Umfeld

Kai Wähner

MaibornWolff et al GmbH
J34 Mittwoch, 15. 9., 15:40 – 16:50 Uhr Java Mi de PDF

Mittlerweile ist eine fast unüberschaubar große Anzahl an Web-Frameworks im Java-Umfeld verfügbar (so z. B. JSF, Wicket, Tapestry, GWT, ZK, JavaFX, Grails und Lift).

Dieser Vortrag stellt eine Kategorisierung der verschiedenen Web-Frameworks und potentielle Einsatzgebiete vor. Dabei ist es das Ziel, einen Überblick ohne tiefe technische Details zu geben – nicht die Vorstellung einzelner Web-Frameworks und Code-Beispiele. Der Zuhörer kann anhand des Vortrags bewerten, welche Kategorie von Web-Frameworks für die Anforderungen in einem konkreten Projekt am besten geeignet ist, insbesondere bezüglich Architekturtypen (klassische Web-Anwendung, Rich Internet Application, Portal, CRUD-Anwendung), Einarbeitungs- und Entwicklungsaufwand, Mehrkanalfähigkeit, Plattformunabhängigkeit und Offline-Fähigkeit. Nach der Kategorisierung der Web-Frameworks werden verschiedene Projekt-Szenarien aus dem Unternehmensalltag vorgestellt, und eine Bewertung bezüglich der Eignung der verschiedenen Web-Framework-Kategorien durchgeführt.

Hydras and Hypermedia

The Role of Hypermedia in Distributed Application Development

Ian Robinson

ThoughtWorks
R31 Mittwoch, 15. 9., 09:40 – 10:50 Uhr .Net Java Mi en

Do you know what your enterprise apps get up to in their time off? Fighting fantasy, pick-your-path, hypermedia-driven, RESTful Web application adventures – of course. The hypermedia constraint „Hypermedia as the Engine of Application State“ is one of the least understood features of the REST architectural style.

In this session, against the backdrop of an entertaining Web-based dungeon crawl, I describe how a hypermedia system works, and show how the hypermedia constraint can be applied to the design and implementation of Web services in order to guide the client towards achieving its application goals whilst preserving a high degree of loose coupling between client and server.

Komm aufs Sofa

NOSQL am Beispiel von Apache CouchDB

Frank Pientka

MATERNA GmbH
R32 Mittwoch, 15. 9., 11:20 – 12:30 Uhr .Net Java Mi de PDF

Der Vortrag erläutert die Hintergründe und Ziele der NOSQL-Bewegung – die REST-basierte Datenbankalternative fürs WEB 2.0. Dabei gibt er eine grobe Orientierung der dabei verwendeten Methoden und Einsatzmöglichkeiten. Am Beispiel des populären Vertreters Apache CouchDB wird gezeigt, was die Besonderheit einer NOSQL-Datenbank konkret aussieht. Als dokumentenorientierte Datenbank für das Internet unterscheidet sich CouchDB bereits grundlegend von klassischen relationalen Datenbanken. Dabei setzt es konsequent auf den populären Map-Reduce-Algorithmus und Internet-Standards wie das JSON-Austauschformat und das REST-Protokoll.

The REST is silence

Restful Webservices mit JAX-RS

Werner Eberling

MATHEMA Software GmbH
R33 Mittwoch, 15. 9., 14:00 – 15:10 Uhr Java Mi de PDF

Mit der aktuellen Version 6 des Java-Enterprise-Standards haben es Restful Web-Services geschafft, Einzug in die Welt der Java-EE-Application-Server zu halten. Mit relativ geringem Aufwand ist es nun möglich, eine Java-EE-Anwendung über eine leichtgewichtige Web-Service-Schnittstelle ansprechbar zu machen. Ganz ohne das Protokoll-Schwergewicht SOAP. Doch JAX-RS vereinfacht nicht nur das Protokoll für den Web-Service-Zugriff, es bringt eine eigene und komplett andere Philosophie bezüglich des Bereitstellens von Diensten mit sich.

Der Vortrag zeigt die Ideen hinter Restful-Web-Services und demonstriert, wie sie mit JAX-RS realisiert werden können. Darüber hinaus wird das Problem des "SOAPy RESTs" vorgestellt und dessen Für und Wider diskutiert.

Better REST

Designing and Implementing RESTful Application Protocols

Ian Robinson

ThoughtWorks
R34 Mittwoch, 15. 9., 15:40 – 16:50 Uhr .Net Java Mi en

Challenging the notion that REST is suitable only for simple CRUD-based data services, in this session I'll show how to design and implement RESTful application protocols for complex business processes. Using techniques drawn from our forthcoming O'Reilly book „REST in Practice“, I show how to model business processes as domain application protocols, implement them in terms of resource lifecycles, and execute them using HTTP idioms, media types and link relation values.

KaffeeKlatsch
Bookware
Microsoft Visual Studio
adesso
MATHEMA
dpunkt
Galileo
Hanser
Open Source Press
GearConf
Metropolregion Nürnberg - Kommen. Staunen. Bleiben.
Nürnberger Initiative für Kommunikationswirtschaft