Die Community zu .NET und Classic VB.
Menü

Erfahrungsbericht BASTA 2015

 von 

Übersicht 

Hallo,

ich war vom ActiveVB e.V. eingeladen die BASTA Spring Konferenz in Darmstadt zu besuchen. Das Angebot kam sehr kurzfristig, deshalb war es mir leider nicht möglich die Sessions an allen 3 Tagen zu besuchen. Ich bin kein erfahrener Konferenzbesucher. Deshalb bin ich ohne nennenswerte Vorbereitung hingefahren und habe mich überraschen lassen, was mich da denn wohl erwartet.

Danke jedenfalls noch mal an ActiveVB und Software Support Media Group für die Bereitstellung des Tickets.

Euch viel Spass beim Lesen des Berichts.

Die BASTA beginnt regulär Montag mit Workshops mit praktischer Anwendung aktueller Entwickler-Themen. Dienstag bis Donnerstag findet die Konferenz mit einer Vielzahl an Vorträgen mit einer Länge von jeweils 75 Minuten statt. Den Besuchern steht es frei jeden beliebigen Vortrag zu hören. Einige Sessions sind in Tracks gruppiert, d.h. die Sessions gehören thematisch zusammen und die Vorträge basieren aufeinander. Genauso gibt es Vortragende die über die Tage mehrfach zu unterschiedlichen Themen sprechen. Auf den Freiflächen zwischen den Hörsälen findet die BASTA-EXPO statt. Anbieter von Komponenten und Verlage nutzen die BASTA als Plattform sich und ihre Angebote vorzustellen. Einige präsentieren ihre Softwarelösungen auch im Rahmen der Sessions. Freitag gibt es weitere praxisorientierte Workshops. Diese werden zum Großteil von den Vortragenden der Konferenz ausgerichtet. Viele Referenten sind als Consultants und Unternehmer in der Softwareentwicklung tätig. Sie nutzen im kleineren Kreis die Möglichkeit Praxiswissen zu teilen.

Dienstag, 24. Februar 2015  

Der erste Tag begann für mich morgens um 6:00 Uhr auf der Autobahn. Dass der erste Programmpunkt - die Eröffnung durch Mirko Schrempp als Vertreter des Veranstalters - bereits für 8:30 Uhr angesetzt war, habe ich großzügig übersehen. Am Maritim-Hotel bin ich gg. 9:00 Uhr angekommen und habe das Auto in der Nähe geparkt. Zusammen mit meinem Ticket habe ich einen Konferenzrucksack in Empfang genommen. Ein schicker Notebook-Rucksack mit Freiexemplaren der Entwickler-Zeitschriften "windows.developer" und "entwickler magazin", einem Notitzbüchlein für Mitschriften, Vorschauen auf anstehende Konferenzen/Workshops und einen obligatorischem Kugelschreiber.

Keynote

Von einer Hotel-Mitarbeiterin wurde ich in einen gut gefüllten Vortragssaal geführt, in den die Keynote per Videobeamer übertragen wurde. Der große Saal in dem sie bereits begonnen hatte war überfüllt. "Ist Windows 10 ein Kulturwandel?" ist die Frage die Jörg Neumann, Mirko Schrempp, Oliver Sturm und Thomas Claudius Huber erörterten. Eine Frage, die sie für Microsoft mit einem klaren JA beantworten konnte. Microsoft scheint in der Post-Ballmer-Ära angekommen zu sein. Unvorstellbares ist wahr geworden. Mit Azure ist MS an dem Punkt angelangt, dass sie mit Linux Geld verdienen. Lange Zeit undenkbar. Natürlich wurde thematisiert, dass es MS gelungen ist, sich mit Windows Phone als dritter Anbieter im Bereich mobiler Betriebssystem zu etablieren. Gelobt haben sie einstimmig die Hinwendung zur Industrie. Windows 10 wird DAS Betriebssystem für den Unternehmenseinsatz.

Entwickeln und Testen wird eins - wie Qualität im modernen Application Lifecycle funktioniert

"Wer keine Unit-Tests schreibt, ist kein professioneller Entwickler" provoziert Neno Loje seine Zuhörer. Er tat überrascht zu sehen, dass der Saal sehr gut gefüllt war. Seine Annahme war, dass Testen heute ein so essentieller Bestandtteil der Softwareentwicklung ist, dass man niemandem mehr etwas erzählen könnte. Gemeinsam mit Thomas Schissler führte er beispielhaft Testarten (Unit-Tests, Acceptance-Tests) ein und animierte die Zuhörer aus ihrer Praxis zu berichten, wie Testen bei ihnen umgesetzt wird und wie es läuft. Mir gab das die Möglichkeit einen Eindruck von anderen Konferenzbesuchern und Einblicke in die Arbeitsorganisation in deren Unternehmen zu bekommen.

First Steps in Continuous Integration for Databases

Alex Yates von Redgate stellt eine Continuous-Integration-Lösung für den MSSQL-Server vor, die z.T. auf Programmen basiert, die sein Unternehmen vertreibt. Der erste Teil ist eine Anbindung der Versionsverwaltung SVN an Microsofts SQL Management Studio. Zweitens fängt der Teamcity-Server Commits ab und speichert das geänderten DB-Schema. Drittens vergleicht Octopus Deploy das Schema aus dem Repository mit der Datenbank, generiert Statements und aktualisiert schließlich die DB. Ich arbeite mit mehreren DB-Systemen und bin es gewohnt Statements die das Schema ändern in eine Datei zu schreiben und in dasselbe Repository zu committen, in dem der Code landet. Wenn man eine ältere Installation damit auf einen aktuellen Stand bringen soll, findet man heraus, was man vergessen hat wegzuschreiben. Das es bessere Lösungen gibt, war immer mein Optimismus. Dass dabei in einer Demo einer kommerziellen Software auf einer Konferenz alles glatt läuft ist klar. Dennoch ein praxisorientierte Vortrag aus dem man etwas in den Arbeitsalltag mitnehmen konnte. Ein extrem großer Vorteil einer solchen Lösung besteht darin, dass man jederzeit feststellen kann, ob man eine funktionierende Datenbank erzeugen kann.

Das ist neu in .NET 2015 (.NET 4.6/.NET 5.0)

Den wohl bestbesuchten Vortrag des ersten Tages hielt Dotnet-Doktor Holger Schwichtenberg. Microsoft entwickelt das .NET-Framework in aller Öffentlichkeit neu. Wer mag kann die Quellen bei Github anschauen, forken und per Pull-Request beitragen. Schwichtenberg beschrieb wie drastisch der Umfang reduziert wird. Sowohl in der Anzahl der zur Verfügung stehenden Klassen als auch in der Auswahl der zur Verfügung stehenden Projekttypen. Die gezeigten Codebeispiele liefen als Konsolenanwendung, die man nur über Umwege erstellen kann. "Cloud-First - Mobile-First" gibt Microsoft Chef Nadella vor. Das ist aber nicht das, was von den BASTA-Besuchern angenommen wird. ASP.NET-Entwickler schienen im Publikum die Ausnahme zu sein.

Das ist neu in .NET 2015
Abbildung 2: Das ist neu in .NET 2015

Cortana - mehr als nur Spielerei

Gordon Breuer, der bereits mehrfach beim ActiveVB-Workshop vorgetragen hat, hat seine persönliche Assistentin Cortana vorgestellt. Sie ist Ansprechpartnerin in allen Lebenslagen. Sie kann sich Einkaufslisten merken. Sie kann an Einkäufe und Termine erinnern. Sie kann Anrufe tätigen. Man kann mit ihr über alles reden. Sie kann Witze erzählen. Alles was man bingen kann, weiß sie; und sie läuft auf Windows Phone. Und Windows 10. Das zeigt Gordon anhand eines Werbevideos. Er demonstriert das mit seinem Lumia, er stellt ihr Fragen und lässt sie singen. Schließlich führt er Codebeispiele vor, wie man Cortana in eine eigene Phone/Store-App einbindet. Das funktioniert so, dass man für seine App bestimmte Stichworte hinterlegen kann. Stellt man Cortana eine Frage, die bestimmte Frageworte enthält, wird die App gestartet und verrichtet ihren Dienst im gewünschten Kontext. Fragt man Cortana nach "Cortana auf der BASTA" wird die BASTA-App mit dem Hinweis auf diese Session antworten.

BDD - die lebende Softwaredokumentation im agilen Umfeld

Magnus Ingelbo erklärt, wie man im agilen Team unter Zuhilfenahme der Software specflow Behaviour Driven Development einsetzt. Essentielles Werkzeug von BDD ist eine Domänenspezifische Sprache, die alle Projektbeteiligten beherrschen. In dieser Sprache werden Anforderungen formuliert, aus denen sowohl automatische Akzeptanztests, als auch Dokumentation automatisiert erzeugt werden kann. Theoretisch war das in dem Moment leider sehr schwer zu verstehen.

Panel: Was heißt es (heute), ein professioneller Entwickler zu sein?

Mit einer Paneldiskussion ging die Veranstaltung zum gemütlichen Teil des Tages über. Die mittlerweile bekannten Christian Weyer, Neno Loje und Rainer Stropek erzählten aus Unternehmersicht, was sie sich sich von angestellten Entwicklern erhoffen. Sie ließen selbstverständlich auch Fragen zu und gaben den Gästen die Möglichkeit ungezwungen mit Unternehmern der Softwarebranche in dieser Rolle zu reden. Die meisten Entwickler teilen einige wenige Probleme. Dazu gehört es Uraltcode den man irgendwann geerbt hat am Laufen zu halten. Daran kommt man nicht vorbei, war die einhellige Überzeugung. Man muss sich als Entwickler selber entscheiden ob man das mitmachen möchte. Wenn man sich dafür entscheidet sollte man wissen, dass sich die Technik dennoch entwickelt. Das darf man nicht aus den Augen verlieren. Eine weitere Frage lautete, ob es heute noch neue Windows-Entwickler braucht. Auch hier konnte sich das Panel klar positionieren: "Wer heute noch Windows-Programmierer ist, hat den Knall nicht gehört." Das Ökosystem (Desktop vs. Mobil, Windows vs. Apple) ist heute so vielfältig, dass eine Beschränkung auf Windows keinen Sinn hat. Microsofts Cloud-Service Azure z.B. greift auf Linux zurück. Schon wenn man einen solchen Dienst nutzt, ist man kein Windows-Programmierer mehr.

Wer wollte, konnte sich anschließend in der BASTA-Lounge in Grüppchen an Tischen treffen und sich zu vorgegebenen Themen austauschen. Wer wollte konnte das auch in der Pianobar deutlich ungezwungener tun. Für mich hieß das in dem Moment aber Abfahrt.

Donnerstag, 26. Februar 2015  

Persistence for the Common Application
Abbildung 3: Persistence for the Common Application

Persistence for the Common Application

Mein persönliches BASTA-Highlight, einen Vortrag der es mit Wert war mich 5:30 Uhr in den Zug nach Darmstadt zu setzen, hat Dino Esposito gehalten. Seinen Namen kenne ich, seit dem ich angefangen habe Software für Microsoft Windows zu entwickeln. Artikel die er für das MSDN-Magazin geschrieben hat waren in der MSDN einsehbar; über die bin ich regelmäßig gestolpert. Er schöpft seine Kenntnis aus jahrelanger Praxiserfahrung, die er auf Konferenzen aber auch zum Nachlesen in Büchern weitergibt. Vor der Persistence kommt die Common Application. Er stellt den Anspruch, dass eine Anwendung die bestehende Welt reflektieren soll, der Benutzer muss in einem Computerprogramm seine Fachanwendung erkennen. Akzeptanz durch den Benutzer zeichnet eine gute Anwendung aus. UX first nannte er das zugehörige Designprinzip. Die Frage welche Objekte man persistiert ist die interessante. In einer MV*-Web-Anwendung hat man Domänen-Objekte, die Business-Logik kapseln. Diese Objekte enthalten Eigenschaften und Methoden. Methoden möchte man nicht persistieren. Ein Viewmodel enthält nur Eigenschaften, diese stammen aber mglw. aus mehreren Quellen. Es ist Aufgabe des Entwicklers zu entscheiden, ob er aus den persistierten Objekten schnell Business-Objekte erzeugen möchte um damit zu arbeiten oder ob er die Daten so vorhalten möchte, dass er sie schnell für die Ausgabe aufbereiten kann. Er empfahl Input model, Domain model, Persistence model, View model und ihre "Spielarten" (permutations) sauber zu trennen. Am Vortag hielt er einen Vortrag zur "Persistence in a polyglot application", den ich leider verpasst habe. Dort hat er sich zur Anbindung mehrerer unterschiedlicher Datenquellen an eine Anwendung geäußert.

Plattformübergreifende Windows-Apps mit C# entwickeln

Gordon Breuer hatte auf dem AVB Workshop 2014 einen Vortrag zur Entwicklung von Unity Apps für Windows Phone und Windows 8.1 Desktop gehalten. Das Prinzip wird Codesharing genannt. Man hat eine Visual Studio Solution mit einem Phone-Projekt, einem Store-App-Projekt und einem Shared Projekt, welches Code und Ressourcen enthält, die in beiden Anwendungen identisch sind. Matthias Fischer ging in seinem Vortrag weiter. Die Firma XAMARIN stellt für Visual Studio die Möglichkeit bereit, nach dem bekannten Prinzip Anwendungen für die 3 großen Mobile OS zu entwickeln. Vor den Augen der Zuschauer portierte er eine Unity-App auf das iPhone. Die Zuhörer - alle Microsoft erfahrene Entwickler - hat das nicht begeistert. Das Prinzip die Programmierung per XAML zu erledigen kennen sie alle. Sie wissen aber auch, was möglich ist. Xamarin führt neue Klassennamen ein, die man erst kennenlernen muss. Auch ist der Funktionsumfang stark beschränkt. Einen Designer gibt es nicht.

Mobile First: Wie das .NET Entwicklern Spaß machen kann (und den Chef happy)

Bei Microsoft heißt es heute Mobile first, bei Christian Weyer hieß es schon 2010 "Mobility first". Mobile muss nicht heißen, dass eine Software zuerst auf dem Smartphone laufen soll, sondern dass auf Portabilität geachtet werden muss. Anekdotenhaft erzählte er von verpassten Chancen am Fortschritt teilzunehmen. So erhielt sein Unternehmen ein Update für eine in seinem Unternehmen verwendete Software per Post auf DVD. Daraufhin musste er ein DVD-Laufwerk per Amazon prime kaufen, damit sein aktuelles MacBook die Software nutzen kann. Er warnte davor sich auf einem Stand auszuruhen. Wenn man sich nicht weiterentwickelt und Kunden zufrieden stellt, wird sehr bald ein neues kleines Unternehmen kommen, das diese Ansprüche erfüllt. Ansprüche an Mobile Apps erfüllt HTML heute seiner Meinung nach soweit, dass man darauf bauen soll.

Plattformübergreifende Windows-Apps mit C# entwickeln
Abbildung 4: Plattformübergreifende Windows-Apps mit C# entwickeln

Cross-Plattform-Entwicklung mit HTML5 und JavaScript

Gregor Biswanger ist nicht nur Microsoft MVP sondern auch Intel Black Belt. Web- und Hybrid-App-Entwicklung sind sein Spezialgebiet. Alternativ zu nativen Apps, die für jede Plattform individuell entwickelt werden müssen, kann man HTML-Anwendungen in einen Container packen mit dem Ergebnis, dass man mit einer Entwicklung mehrere Plattformen bedienen kann. Intel hat die freie Anwendung Apache Cordova genommen und mit einer Reihe weiterer Tools (z.B Emulatoren für die diversen Plattformen) unter dem Namen XDK als IDE zum Entwickeln dieser Hybridanwendungen zusammengepackt. Man kann in den Anwendungen die üblichen UI-Frameworks wie Twitter Bootstrap oder jQuery mobile nutzen. Die Anwendung sieht dann aber auf allen Plattformen nach diesem Framework aus. Nicht nach dieser Plattform.

XAML - Tipps und Tricks

Jörg Neumann hat den ganzen Tag über mehrere Vorträge gehalten in denen er aus seiner Praxis berichtet hat. Das Hauptaugenmerk lag dabei auf Benutzerschnittstellen in Windows Desktop-Anwendungen. Nach Touch Optimierung und Custom-Controls ging es nun um XAML-Optimierung. Seine Kunden lagen Wert darauf, dass ihre Anwendungen ihrem Corporate Design folgen. Weil sich Programmierer um Funktion und nicht um Design kümmern sollen, ist es notwendig, dass sich ein Designer dem Aussehen der Anwendung widmen kann, ohne dem Programmierer in die Quere zu kommen. Vor den Augen der Zuhörer legte er im Visual Studio ein Projekt an, erklärte Parameter (Farben und Formen von Button etc.) und zeigt, wie man sie sinnvoll in einem zweiten verknüpften Projekt mit Werten füllt. Ich als Webentwickler war überrascht zu sehen, dass eine Windows-Anwendung nicht unbedingt auf einem grauen Dialog basieren muss und Anbieter kommerzieller individueller Desktop-Software ihren Kunden diese Wünsche erfüllen.

Cliententwicklung in HTML5 - Keine Angst vor JavaScript und Co.

Ich hatte es am ersten Tag bereits wahrgenommen, dass die allermeisten Konferenzbesucher in der Entwicklung von Desktop-Anwendungen zu Hause sind. Timo Korinth ist mit seinem Vortrag angetreten, den Entwicklern die Angst vor dem Webbrowser zu nehmen. Er ist heute erfahrener JavaScript-Programmierer und entwickelt auf Basis des AngularJS-Frameworks im Visual Studio. Hier habe ich es sehr schade gefunden, wie schnell 75 Minuten vergehen können. Im Browser auf eine Namen klicken und rechts daneben Vornamen und Alter angezeigt bekommen klingt nicht nach Zauberei, ist es dank Angular auch nicht. Ich hätte gerne eine größere Anwendung gesehen, die Daten per REST-API lädt. Sooooo schnell entwickelt man dann aber doch nicht.

Umfangreiches Buffet zur Stärkung
Abbildung 5: Umfangreiches Buffet zur Stärkung

Fazit  

Die letzten beiden Sessions die ich besucht hatte, fanden im selben Saal statt. Nach Ende des letzten Vortrages war ich überrascht, dass auf der Freifläche alles anders aussah. Die Aussteller hatte ihre Stände abgebaut und waren verschwunden. Die Kaffeetafel war abgeräumt. Dieses Ende hatte ich in dem Moment als etwas abrupt wahrgenommen.

Danke an dieser Stelle auf jeden Fall nochmal an das Team vom Maritim Hotel, was sich die Tage über um das Wohl der Konferenzbesucher gesorgt hat. Sowohl natürlich die andauernde Versorgung mit Kaffee als auch das viele, gute abwechslungsreiche Essen.

Ihre Meinung  

Falls Sie Fragen zu diesem Artikel haben oder Ihre Erfahrung mit anderen Nutzern austauschen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.

Basta 2015 - Klaus Langbein 07.04.15 13:34 7 Antworten