Schlagwort-Archive: Community

Termin nossued 2019

In diesem Jahr fand der #nossued noch vor Beginn der Sommerferien in den meisten Bundesländern statt. Das Feedback der letzten Jahren ging dahin, dass der ein oder andere aufgrund der Schulferien nicht kommen konnte.

Neben der Berücksichtung von zeitlich verschobener Ferien in den einzelnen Bundesländern gilt es natürlich noch auf etablierte Events wie die dotnet Cologne Rücksicht zu nehmen.

Der ein oder andere hadert mit Juni/Juli auch wegen den alle 2 Jahre stattfindenden Fußballturnieren oder weil die warme Sommerzeit lieber für Freizeitaktivitäten genutzt wird. Andere wiederum schätzen genau die strahlende Sonne und die Möglichkeit die Dachterrasse nutzen zu können.

Daher würden wir von der Organisation gerne wissen, wie ihr zu den möglichen Terminen 2019 steht. Denkbar wären auch frühere Termine wie die Zeiträume vom 08. März bis 04. April und 27. April bis 31. Mai. Wie steht die Community dazu?

Eure Rückmeldungen würden uns freuen, z.B. in Form von Nennung von guten Zeiträumen oder weniger geeigneten Monaten.

Werbung

#NOSSUED SOFTWARE ENTWICKLUNGS OPEN SPACE 2017

Es ist mal wieder so weit: Zum achten Mal findet #nossued, der Software Open Space der .NET Usergroup in Karlsruhe statt. Termin ist der 14-16 Juli. Zur Anmeldung geht es hier. Der Teilnahmebeitrag kann wie immer frei gewählt werden.

nossued_eventbrite_2180x1080

Impressionen der letzten Open Spaces findet ihr in meinem Blog. Meinen Artikel zum Open Space Format hat die dotnetpro freundlicherweise freigegeben.

Wir du vielleicht schon am Titel erkannt hast, hat sich der Name geändert: Dieser lautet nun Software Entwicklungs Open Space, um dem breiteren Fokus Rechnung zu tragen. Das spiegelt sich im Logo ebenso wieder. Der Hashtag #nossued und die Webseitenadresse sind gleich geblieben.

Wir würden uns freuen, wenn ihr ein wenig Werbung macht und dieses Plakat bei euch in der Firma aushängt. Ihr könnt mich gerne anschreiben, dann senden wir euch Postkarten, Flyer und Plakat zu. Schaut auch auf der dedizierten Facebook Veranstaltung vorbei und teilt diesen Beitrag.

Tools for Developers Session vom NET Open Space 2016

Zur Session „Tools & Practices for Developers“ habe ich mir Notizen gemacht. Wie versprochen findet ihr hier aufgelistet die genannten Tools. Ich habe nicht alle aufgeschrieben, also postet gerne weitere, wenn euch eines fehlt.

Mein Antrieb hinter der Session war der, dass ich meine tägliche Arbeit versuche so weit es geht zu optimieren und automatisieren. Wenn ich pro Tag 10 Minuten einsparen kann,was z.B. alleine durch TotalCommander möglich ist, so ergibt sich pro Jahr eine freigewordene Zeit von 43,5h.

 

Keepass Plugins

meine Keepass Plugins

Wenn ihr noch wichtige Tools aus eurer täglichen Arbeit nicht aufgelistet findet, dann schreibt mir und ich füge sie hinzu.

 

 

 

Anmeldung zum NET Open Space Süd 2015

Ich möchte auf diesem Weg Werbung für eine Veranstaltung machen, die ich sehr schätze und an der ich seit mehreren Jahren teilnehme: Der .NET Open Space Süd.

Der #NOSSUED 2015 findet vom Samstag, 18. Juli 2015, 09:00 Uhr – Sonntag, 19. Juli 2015, 16:00 Uhr in Karlsruhe statt. Zur Anmeldung geht es hier.

Meine Berichte und Live Interviews findet ihr unter dem Tag Open Space. Einen Artikel zum Open Space Format hat die dotnetpro freundlicherweise freigegeben.

NET Open Space Süd in Karlsruhe

NET Open Space Süd in Karlsruhe

Microsoft TechCamp Week mit Hackathon in Pforzheim

Microsoft und die Medien-IT-Initiative Pforzheim veranstalten im Mai ein TechCamp in Pforzheim. Die Veranstaltungen sind kostenlos, jedoch ist für jeden Tag eine Anmeldung notwendig. Hier findet ihr die direkten Links zu Anmeldung.

imageAufgrund meiner Erfahrung (1,2,3) kann ich speziell den Hackathon in Pforzheim empfehlen. Der ist jedes Mal eine tolle Sache. Danke an Petra von der Medialesson GmbH, die mich darauf aufmerksam gemacht hat.

Fazit zum Open Space Süd 2014 – Mehr Nerdy Talk

Für mich unterscheidet sich der diesjährige #nossued klar von denen in den vorherigen Jahren. Es waren deutlich weniger Sessions und – rein subjektive Schätzung –  ca. 20-30% weniger Teilnehmer. Klassische Sessions wie Scrum und Deployment waren zwar vertreten, jedoch fehlten mit DDD, CQRS und Message Bus auch die ganz Großen. Da ich die Klassiker in den letzten Jahren aber ohnehin oft genug diskutiert habe, war das eher erfrischend. Besonders gelungen fand ich die “Pizza Service”-Session, die spielerisch die Materie vermittelte: Mit zwei konkurrierenden Pizza Services wurde Kanban trainiert. Tolle Sache, die ich in unserem Betrieb sicherlich ausprobieren werde.

Ausgesprochen positiv nahm ich die Zunahme der Gespräche abseits der Sessions wahr. Besonders die für mich aktuell größte Herausforderung, das Finden neuer Mitarbeiter, konnte ich mehrfach erörtern. Ich habe den Eindruck, dass speziell Firmen abseits der Großstädte Probleme haben, ohne dass es jedoch anderswo wesentlich besser wäre. In dem Kontext fand ich im Gespräch mit Vertretern von medialesson Gleichgesinnte, die ebenfalls Schüler und Studenten mit Workshops und Camps ansprechen wollen. Hierzu könnt ihr sicherlich bald mehr hören. Mit Tom Wendel konnte ich noch jemanden finden, der mit AntMe vielleicht bald einen Workshop zu der Idee beisteuert.

Zu guter Letzt will ich nächstes Jahr wieder Videos aufnehmen. Dazu wurde ich mehrfach angesprochen. Besondere Wünsche und Vorschläge könnt ihr mir gerne zuschicken.

Bis nächstes Jahr zum Open Space Süd. Noch der Hinweis auf den Developer Open Space Leipzig: Dieser findet vom 17-19 Oktober statt.

Zweiter Entwicklertag für Schüler

Nach dem ersten Entwicklertag plane ich Anfang der Sommerferien (Termin folgt in den nächsten Tagen, vermutlich der 31.7.) den zweiten Entwicklertag. Das Ziel ist es den Schülern ein klares Berufsbild zu vermitteln, sodass sie nach diesem Tag klar sagen können: “Ja, der Beruf des Software Entwicklers ist etwas für mich” oder “Nein, das kann ich mir für mich nicht vorstellen”.

Ein Entwickler schreibt nicht nur Programme. Im Gegenteil: Das Gros der Arbeit besteht in der Problemanalyse, dem Entwickeln von Lösungsansätzen, dem Kommunizieren mit der Fachabteilung, dem Planen der Architektur, dem Anschauen von Technologien, uvm..

Dazu möchte ich ein vermeintlich einfaches “Projekt” nehmen und von Beginn an starten. Das könnte z.B. das Spiel 2048 sein. Alternativ ist ein Programm zum Abbilden eines betriebswissenschaftlicher Prozesses wie ein Bestellvorschlagswesen denkbar. Ich denke, dass alleine das Finden eines gemeinsamen Vokabulars und von doppeldeutigen Begriffen eine interessante Erfahrung sein wird.

Die heco wird die Räumlichkeiten wieder zur Verfügung stellen. Sowohl interessierte Schüler, als auch IT-ler, die helfen möchten, können mich über einen meiner Kanäle oder per Telefon (07232-3655-555) erreichen.

Wie hole ich mein Team ab

Innovation bedeutet immer auch Veränderung. Der Mensch als Gewohnheitstier muss deshalb abgeholt werden, sonst bleibt er zurück. Quelle: FotoliaWelche Möglichkeiten hat eine Führungskraft hierfür?

Zunächst einmal gilt es Folgendes zu trennen:

  • Kann ein Mitarbeiter mit der Veränderung nicht Schritt halten?
  • Oder will er sich nicht verändern?

Während ersterem mit den richtigen Werkzeugen gut beizukommen ist, muss letzteres über Prinzipien und Werte gesteuert werden. Ausgenommen von der Regel sind Menschen, die nur deshalb nicht wollen, weil sie nicht können. Kann also beispielsweise jemand nicht tanzen, so wird er auch nicht auf die Tanzfläche wollen, nur um sich zu blamieren.

 

Prinzipien/Werte:

Ich bin der Meinung, dass Menschen ihre Arbeitsweise nur dann gewinnbringend ändern und sich produktiv am Prozess beteiligen, wenn sie von der Änderung selbst überzeugt sind. Demzufolge wird das Ergebnis bei einer typischen Command-and-Control Führung im besten Fall ausbaufähig sein. Eine aus meiner Sicht erfolgsträchtigere Herangehensweise könne diese sein: Bilde zwei Gruppen und lasse jedes Gruppenmitglied frei entscheiden, welcher der beiden Gruppen es beitritt. Die eine Gruppe setzt ein exemplarisches Projekt/Produkt gemäß der bisherigen Vorgehensweise um, die andere implementiert nach der neuen. Ein halber Tag ist dafür natürlich ungeeignet. Ein Monat ist der Geschäftsleitung eventuell zu kostspielig. Aber einen angemessenen Zeitraum benötigt es, um die gravierenden Prozessunterschiede zu Tage zu befördern. Eine unabhängige Instanz, z.B. der Product Owner, ein Externer oder eine Anwendergruppe, beurteilen das Ergebnis. Darüber hinaus sollten die Teams auch ihre Ergebnisse untereinander vergleichen. Einen wesentlichen Punkt würde ich noch aufnehmen: Bei dem Produkt sollten neue Anforderungen hinzu kommen und sich gegebenen Anforderungen ändern, um zu sehen wie anpassungsfähig beide Vorgehen sind. Unter der Prämisse, dass die neue Herangehensweise gewinnt und die Diskussion ernsthaft und konstruktiv geführt wurde, kann das Gros der Gruppe überzeugt werden. Die restlichen Skeptiker kippen eventuell durch Schlüsselfiguren, sogenannte Meinungsmacher, oder bei den ersten Erfolgen. Es ließe sich noch viel dazu sagen, aber ich möchte es an dieser Stelle dabei belassen und mit einem Zitat abschließen, welches meiner persönlichen Einstellung entspricht: “Die Führungskraft führt nicht über die Inhalte, sondern sie führt über die Emotionen […]” (Boris Gloger, S. 302, Produkte zuverlässig und schnell entwickeln).

 

Werkzeuge:

  • Retrospektive: Für mich das wertvollste Werkzeug überhaupt. Egal ob tägliche Einzelretrospektiven oder wöchentliche Gruppenretrospektive, wichtig ist: So häufig wie möglich, Ergebnisse festhalten und vor allem umsetzen. Mehr dazu hier.
  • Coding Dojos: Alle 1-2 Wochen für 2 Stunden. Erste spürbare Ergebnisse zeigen sich in kürzester Zeit. Ich arbeite gerade an einem Fachartikel dazu. Bis dahin schaut ihr hier.
  • Pair Programming: Super für die Vermeidung von Inselwissen und das Etablieren eines kontinuierlichen Wissenstransfers. Gerade bei Teammitgliedern, die sich schwer tun mit neuen Praktiken (z.B. TDD) geeignet oder mit heterogenen Teams aus Junior und Senior Developer. Für weitere Informationen schaut in den Wikipedia-Artikel.
  • Open Spaces / World Cafe: Interessante Konferenzformate zur Optimierung des Wissensmanagements. Einen Artikel dazu habe ich in der dotnetpro veröffentlicht.
  • Bloggen: Lässt sich vortrefflich mit der Retrospektive bündeln. Kann als Quelle für andere (und einem selbst) Teammitglieder dienen. Das Schreiben und Widerholen begünstigt auch den Lernprozess.
  • Scrum: Eine agile Methode zur Produktentwicklung, die die kontinuierliche Verbesserung fest im Prozess implementiert hat. Alle meine bisherigen Blogbeiträge zum Thema findet hier.
  • Communities: In nahezu jeder größeren Stadt gibt es dedizierte Communities, z.B. Scrum Stammtisch, .NET User Group, SQLPass, etc.. Ein Austausch mit Dritten ist immer hilfreich, v.a. wenn Entwickler in anderen Firmen die neue Vorgehensweise bereits erfolgreich anwenden.
  • Externe Consultants: Empfinde ich als besonders hilfreich um die anfänglichen Klippen zu umschiffen.

Abschließend sei noch gesagt, dass es eine Vielzahl an Werkzeugen gibt, jedoch muss das Tool auch zur Person bzw. der Gruppe passen. Pair Programming ist z.B. etwas, das nicht jeder Entwickler möchte.

Mich würde interessieren, wie bei euch Änderungen eingeführt wurden? Gab es Kollegen, die sich schwer damit taten? Wie hat die Führungskraft diejenigen abgeholt? Gibt es ein besonders hilfreiches Werkzeug, das bei euch Wunder bewirkt hat? Würde euch ein längerer Artikel mit konkreten Beispielen interessieren?

 

Edit 16.05.2014: Daniel Marbach hat mir ein interessantes Buch zu dem Thema empfohlen. Eine Rezension darüber wird folgen, da ich es inzwischen auf meinem Kindle habe.

Entwickeln lernen – Materialsammlung

 

Entwicklerwerkzeuge

Videos

Lernmaterial

  • Das umfassende Handbuch für Visual C# 2012 online
  • Einführung in C# von Microsoft

Hilfeseiten / Foren

Kanäle

Entwickeln lernen

Am 21. Dezember werde ich mit 8-10 Schülern der 11ten und 12ten Klasse des Gymnasium Wilferdingen eine Einführung in die Entwicklung C# geben. Die Teilnehmer bringen ihre eigenen Laptops mit und werden als Erstes durch den Prozess des Aufsetzens der Entwicklungsumgebung geführt. Im Anschluss werden wir 1-2 Anwendungen programmieren, welche nützliche Beispiele für kleinere Tools enthalten. Zugriff auf das Dateisystem, einfache Algorithmen und dergleichen Dinge sollen die Lust wecken in der Freizeit die ein oder andere Aufgabe zu automatisieren.

Die heco gmbh stellt uns die Räumlichkeiten und Infrastruktur zur Verfügung. Ich bin noch auf der Suche nach Sponsoren, welche Give Aways bereitstellen oder das Mittagessen in Form von Pizza übernehmen. Außerdem würde ich mich freuen, wenn 1-2 Entwickler dazu stoßen könnten, um bei Problemen beratend zur Seite zu stehen. Bei Interesse schreibt mich einfach über einen meiner Kanäle an.

Für unsere Teilnehmer: Beginn ist um 11 Uhr. Geplant ist bis 17 Uhr mit der Option zur Verlängerung. Die Adresse lautet:

heco gmbh

Lailingstraße 9

75196 Nöttingen

Developer Open Space 2013 – Live aus den Sessions

In dem unten stehenden Video zeige ich euch Aufnahmen aus den Sessions. Generell ist es so, dass die Person, die ein Session-Thema vorschlägt, gleichzeitig als Session Hoster fungiert. Dazu ist es nicht notwendig, dass der Session-Hoster sich besonders gut mit der Materie auskennt. Seine Funktion zielt darauf ab einen offen Dialog zu gewährleisten und das sogenannte Kapern von Sessions, d.h. das Abdriften vom Thema, zu verhindern.

Erfahrungsgemäß laufen Sessions oft in 2 Formen ab:

  • Sehr rege Beteiligung aller Teilnehmer bei Themen, zu denen jeder etwas sagen kann. Ein Beispiel hierzu wäre Scrum.
  • Bei Randthemen oder komplexen Dingen ist es meistens so, dass 1-3 Personen über die eigenen Erfahrungen berichten. Das waren in diesem Jahr beispielswese die Sessions “Werteunterschiede” und “Psychologie bei Softwareentwicklung”.

Mir scheint es auch, dass v.a. in den letzten 2 Jahren immer mehr Sessions außerhalb des Technologie-Stacks aufkommen. Persönlichkeitstypen und Selbstständigkeit / Freelancing um zwei Vertreter zu nennen. Zumindest ich persönlich begrüße dies sehr!

Hier nun zum Video (Direktlink auf YouTube):

Developer Open Space – Interview mit Janek Fellien

In meinem Interview am Developer Open Space in Leipzig (#devspace) spreche ich mit Janek über seine favorisierten Sessions und den Vergleich zw. typischen Konferenzen und dem Open Space als Unkonferenz.

Den Link, der euch direkt auf YouTube führt, findet ihr hier. Ich würde euch allerdings bitten beim Teilen den Blog Link zu verwenden.

 

Developer Open Space 2013 – Teil 3

Vor dem Mittag gab es noch 6 Sessions. Zum Session Plan geht es übrigens hier.

Zunächst nahm ich an der Session von Johannes teil, welcher über seine Studie zu empathischem Code etwas erzählt. Auf das Wesentliche gekürzt, geht es darum, warum

var t = new Tarif()

wesentlich schlecht zu lesen und verstehen ist als

var tarif = new Tarif()

Johannes will darüber selbst noch einen Artikel schreiben und seine Ergebnisse veröffentlichen, deshalb möchte ich an dieser Stelle nicht weiter darauf eingehen. Allerdings bitte ich Teilnehmer der Session sich bei mir zu melden, um ein kurzes Statement abzugeben wie der Inhalt wahrgenommen wurde.

Die letzten 15 Minuten war ich in “Scrum ruinieren”, was vom Ablauf ziemlich das Gegenteil zur vorher erwähnten Session war. Hier gab es eine rege Diskussion unter allen Beteiligten, die sich über Probleme von Scrum unterhielten. Das Publikum war bunt gemischt, angefangen von Verantwortlichen, die Scrum wieder erfolgreich abgeschafft haben bis hin zu Teams, die sehr erfolgreich und glücklich mit Scrum sind. Das Ergebnis war ein Board (siehe Bilder), welches die krassen Negativen auflistete. Die Frage des Session Hosters am Ende bzgl. wer jetzt mehr oder weniger von Scrum überzeugt ist, fand ich besonders gelungen. Meine Interpretation hebe ich mir allerdings für einen dedizierten Artikel auf.

CIMG4552 CIMG4553

Alle Bilder gibt es wie immer hier. Wer bei einer Session ein besonderes AHA-Erlebnis hatte, der kann mich einfach ansprechen und es mir mitteilen, dann nehme ich das gerne in den Artikel über den Open Space mit auf.

Developer Open Space 2013 – Teil 2

 

Mein Resümee zu Tag 1 – dem “Workshop-Tag”:

Tag1 Panorama

Knapp 100 Teilnehmer waren am ersten Tag anwesend. Es wurden zahlenmäßig genauso viele Workshops angeboten wie im Jahr zuvor. Ein stark limitierender Faktor ist verständlicherweise die Zeit, was mir die Teilnehmer als Hauptmanko genannt haben. Sessions, die besonders auf das Internet angewiesen waren, hatten zudem mit der schlechten Anbindung zu kämpfen. Hinweis von meiner Seite: Vielleicht sollten Setups im nächsten Jahr per USB-Stick verteilt werden. Ansonsten ziehen die meisten ein positives Fazit. Persönlich wurden meine Erwartungen im Architektur Workshop nicht ganz erfüllt. Als Erfahrungen mitgenommen habe ich wie andere Entwickler an das Thema Architektur herangehen und welche Hilfsmittel sie einsetzen. Sicher bin ich mir bei einem: Guten Architektur Schulungen wäre eine hoher Teilnehmerquote sicher!

Besonders lohnenswert – wie sollte es auf einem Open Space auch anders sein – waren die Gespräche in den Pausen, allen voran zum Thema Scrum. Hier noch die zwei erwähnten Buchempfehlungen von Boris Gloger (Produkte zuverlässig und schnell entwickeln und Der agile Festpreis (von mir nicht gelesen)). Hierzu will ich heute eine Session anregen, die sich mit konkreten Fragen beschäftigt, d.h. eine Fragerunde zu Scrum. Beispielsweise wird in der Literatur einhellig die Meinung vertreten, dass Entwickler die User Stories schreiben sollen. Davon bin ich beispielsweise gar nicht überzeugt. Was ist, wenn das Team das Sprintziel früher erreicht? Sollte der Sprint deshalb gekürzt werden, wenngleich eine Verlängerung immer auszuschließen ist. Schauen wir mal wie das Interesse sein wird.

Interessant war auch eine Diskussion über Staging und Continuous Integration, was sich übrigens hervorragend an die Scrum Gespräche angeschlossen hat (vgl. Balanced Agility). Bei uns im Betrieb haben wir einen sehr gut funktionierenden Deployment Prozess mit TeamCity implementiert. Mich würde interessieren wie es in anderen Firmen aussieht und ob die Entwickler mit ihren Lösungen zufrieden sind.

Gegen Ende wurde noch in kleiner Runde auf die bereits im Sommer von Johannes Hofmeister angeregte “Sexismus”-Session eingegangen. Da Johannes das für heute in diskussionsgerechter Form aufbereitet hat, will ich an dieser Stelle nicht vorgreifen.

Besonders cool fand ich die Teilnahme unseres jüngsten Teilnehmers mit gerade einmal 14 Jahren. Er schaute sich die Session über Android/iOS Entwicklung an. In einem kurzen Interview sagte er mir, dass er bereits für den Windows Store mit C# entwickelt hat und das Gelernte zuhause weiterverfolgen will.

Die neusten Fotos gibt es wie immer hier. Wer ebenfalls Fotos geschossen hat, kann diese dort ebenfalls hochladen.

Developer Open Space 2013 – Teil 1

Inzwischen ist Mittagpause am Workshop Tag. Ich habe den Eindruck, dass dieses Jahr noch mehr Leute zu den Workshops gekommen sind. Das ist auch nicht weiter verwunderlich, wenn man sich die hochkarätigen Themen anschaut (siehe hier).CIMG4481

Es freut mich besonders, dass es ab diesem Jahr auch eine dedizierte Facebook Fanpage gibt. Leider lassen sich dort aktuell noch keine eigenen neuen Posts erstellen. Ich hoffe, dass sich das noch ändert.

Die ersten Fotos habe ich bereits auf DaWaWas hochgeladen, da mich die Plattform beim diesjährigen .NET Open Space in Karlsruhe überzeugt hat. Wer Fotos von sich entdeckt, die er nicht veröffentlich sehen will, einfach kurz melden. An dieser Stelle sei auch nochmal darauf hingewiesen, dass es in Karlsruhe weiterhin .NET Open Space heißt, wohingegen Leipzig sich für die Bezeichnung Developer Open Space entschieden hat.

CIMG4465 Tom Wendel ist ja inzwischen nicht mehr bei Microsoft tätig, jedoch konnte ich bereits Dariusz Parys treffen. Mal schauen, ob sich eine Microsoft Bash Session organisieren lässt.

Zu guter Letzt noch ein Hinweis in eigener Sache: Ich schreibe in diesem Jahr einen Artikel üben den Open Space für die dotnet pro und würde mich über Interviews und Feedback freuen. Gerne könnt ihr mich direkt ansprechen, auf diesen Blog posten oder über Twitter oder Facebook antworten.

NET Open Space – Interview mit Constantin Klein

In meinem Interview am .NET Open Space in Karlsruhe (#nossued) spreche ich mit Kostja über seine favorisierten Sessions und den Vergleich zw. typischen Konferenzen und dem Open Space als Unkonferenz.

Der Link, der euch direkt auf YouTube führt, findet ihr hier. Ich würde euch allerdings bitten beim Teilen den Blog Link zu verwenden.

NET Open Space – Interview mit Manuel Naujoks

In meinem Interview am .NET Open Space in Karlsruhe (#nossued) spreche ich mit Manuel über seine favorisierten Sessions und den Vergleich zw. typischen Konferenzen und dem Open Space als Unkonferenz.

Der Link, der euch direkt auf YouTube führt, findet ihr hier. Ich würde euch allerdings bitten beim Teilen den Blog Link zu verwenden.

NET Open Space – Interview mit Gregor Biswanger

In meinem Interview am .NET Open Space in Karlsruhe (#nossued) spreche ich mit Gregor, Inhaber von web-enliven, über seine favorisierten Sessions und den Vergleich zw. typischen Konferenzen und dem Open Space als Unkonferenz.

Der Link, der euch direkt auf YouTube führt, findet ihr hier. Ich würde euch allerdings bitten beim Teilen den Blog Link zu verwenden.

NET Open Space – Interview mit Johannes Hofmeister

In meinem Interview am .NET Open Space in Karlsruhe (#nossued) spreche ich mit Johannes über seine favorisierten Sessions und den Vergleich zw. typischen Konferenzen und dem Open Space als Unkonferenz. An dieser Stelle sei auch auf seine Studie zu lesbarem Code hingewiesen, zu welcher man sich hier anmelden kann.

Der Link, der euch direkt auf YouTube führt, findet ihr hier. Ich würde euch allerdings bitten beim Teilen den Blog Link zu verwenden.

NET Open Space – Interview mit Aydin Mir Mohammadi

In meinem Interview am .NET Open Space in Karlsruhe (#nossued) spreche ich mit Aydin, der mit seiner Firma bluehands die Räumlichkeiten jedes Jahr zur Verfügung stellt, über seine favorisierten Sessions und den Vergleich zw. typischen Konferenzen und dem Open Space als Unkonferenz.

Der Link, der euch direkt auf YouTube führt, findet ihr hier. Ich würde euch allerdings bitten beim Teilen den Blog Link zu verwenden.

Open Space 2012 – Das Video

Das geschnittene Video aus den Amateur-Aufnahmen ist jetzt online. Wenn Szenen auftauchen, die ich entfernen soll, dann kontaktiert mich über die üblichen Kanäle.

Panorama2

 

 

 

 

 

Wenn ihr den Link weiterleitet, dann verweist bitte auf den Blogeintrag, statt direkt auf das Video!

 

Alle Aufnahmen zusammengeschnitten

Eindrücke vom Developer Open Space

Session Berichte–Teil 3

Hiermit komplettiere ich die Berichte zu den Sessions. In diesem Beitrag geht spreche ich über den Sonntag, an dem wie gewöhnlich nicht mehr ganz so viel Teilnehmer anzutreffen waren. Nichtsdestotrotz war zu jeder Zeit für mich eine spannende Session verfügbar.

Freelancer II:

Leider war ich in der ersten Session samstags nicht anwesend. Ich sage leider, weil ich aus der Diskussion sehr viel mitnehmen konnte und gerne noch mehr erfahren hätte. Wenngleich ich aktuell keinen Grund darin sehe mich selbstständig zu machen, so kam mir immer wieder einmal der Gedanke, dass für sehr kleine, dedizierte Projekte außerhalb meines Angestelltenverhältnisses eine eigene Firma nicht schlecht wäre. Aufgrund weniger Kenntnisse und der Scheu vor zu viel Zeitaufwand habe ich den Weg allerdings immer gemieden. Vermutlich konnte ich deshalb so viele Infos von den überwiegend selbstständigen Teilnehmern mitnehmen. Auf den Punkt gebracht, kann kurz und knapp resümiert werden:

  • Beauftrage in jedem Fall einen Steuerberater (idealerweise einen Selbstständigen und keine Kanzlei)
  • Sichere dich vor privater Haftung (z.B. durch Bildung einer GmbH)
  • Für ein kleines Geschäft nebenher (bis 12.500€ oder 50.000€ Jahresumsatz ist Gründungsaufwand recht gering und gefahrlos

 

Rabbit MQ:

Hier stellte der Hoster eine eigene Lösung für Bus-Architekturen vor, die genau auf die eigenen Bedürfnisse zugeschnitten war. Im Untergrund nutze er Rabbit MQ als Messaging Lösung. Geprägt war das Gespräch von dem direkten Vergleich zu MSMQ. In Erinnerung geblieben ist mir, dass die API von ersterem einwandfrei zu konsumieren ist, wohingegen letzteres neben diverser Bugs (Queues verschwinden) weniger Feature mitbringt. Allerdings gilt es bei einer Evaluierung noch einmal die aktuellen Versionen zu vergleichen. Laut den Anwesenden würde beispielsweise die Möglichkeit zur Verschlüsselung fehlen, welche nach der englischen Wikipedia-Ausgabe seit Version 5 enthalten ist. Natürlich wurden auch die gängigen Bus-Systeme NServiceBus, Mass Transit und Rhino ServiceBus erörtert Stichwort make-it oder buy-it Analyse. Hier konnte an den Vortag angeschlossen werden, v.a. da viele Teilnehmer von früheren Sessions wieder anwesend waren. Wenn es um Infrastruktur geht, so tendiere ich oftmals zum Kauf fertiger Frameworks, um Entwicklerzeit für Domänenlogik freizuhalten. Alles in allem komplettierte sich für mich damit der Blick in Messaging und Bus Architekturen. Wer aktuelle Vergleiche zw. den unterschiedlichen Messaging und Service Bus Frameworks kennt, der möge mich doch bitte anschreiben. Gerne auch konkrete Praxiserfahrungen!

 

Web Compiler:

Alex Groß stellt am späten Nachmittag noch die GROSSWEBER Web Lösung vor. Da die Homepage zum Großteil aus statischem Content besteht, konnte er mit Ruby und dem Package Nanoc, sowie diversen Datenformaten (Markdown und Haml), einen wie ich finde interessanten, unkonventionellen Lösungsansatz aufzeigen. Diesen will ich für meine Homepage bei Gelegenheit ausprobieren. Vor allem die Geschwindigkeit und die Google Optimierung bestachen hierbei!

Interviews vom Developer Open Space

Meinen YouTube Channel findet ihr hier.

Tom Wendel: Link zum YouTube Video

Tom ist Microsoft Evangelist und hat einen sehr guten Draht zur Entwicklerszene. Nach insgesamt 5 Open Space Besuchen gehört er bereits zu den alten Hasen. Besonders erwähnenswert ist, dass Tom sich nicht scheut, dahin zu gehen, wo es weh tut: Mit den Microsoft Bash Sessions geht er direkt zum Puls der Entwickler.

Tom von Microsoft spricht über den Open Space

 

 

Alexander Groß: Link zum YouTube Video

Alexander Groß ist technischer Geschäftsführer von GROSSWEBER und Ausrichter des Open Space Nord. Er genießt in der Community ein hohes Ansehen und tritt unter anderem als Sprecher auf diversen Konferenzen auf.

Alex von GROSSWEBER spricht über den Open Space

 

 

Olga Sheshukova: Link zum YouTube Video

Olga von Beautiful Inc spricht über Persönlichkeitstypologien

Session Berichte–Teil 2

Kurzer Zwischenbericht zu drei hammergeilen Sessions!

 

Domain Driven Design + CQRS => Eventual Consistency:

Hier wurden mir quasi die Augen geöffnet. Das kann ich am besten so beschreiben: Wenn jemand nur das Reisen mit dem Auto kennt, dann staunt er nicht schlecht, wenn ihm das Fliegen gezeigt wird. Natürlich wird von da an jetzt nicht jede Strecke geflogen, das wäre für kurze Strecken weder sinnvoll, noch rentabel. Aber für weite Distanzen ist das eine ganz neue Welt. Nachdem Dennis gestern in seinem Workshop bereits darauf hindeutete, dass DDD konsequent zu Ende gedacht  zu CQRS führt, konnte heute der Hintergrund und Rahmen durch diverse Praxisexperten geklärt werden. Als ERP-Developer würde ich Stand heute auf einem Greenfield definitiv einen großen Bereich mit diesen Ansätzen zu lösen versuchen.

Direkt im Anschluss fand Eventual Consistency statt, getrieben von den gleichen Hostern wie aus eben genannter Session. Demzufolge schließt sich folgende Aussage direkt an: Für DDD + CQRS wird ein Umdenken notwendig. Beispielsweise muss man sich von der Denke verabschieden, dass immer irgendwo in der Datenbank ein aktueller Objektzustand in Form eines Datensatzes liegt. Beispielsweise der aktuelle Kontostand von Person xy. Das ist einfach nicht mehr der Fall. Gleiches gilt für eine “aktuelle” Anzeige, was de facto, wie es auch schon der CIO von Amazon erläutert hat, nichts existiert. Bei korrekter Domänenbetrachtung ist das auch in de wenigsten Fällen nötig. Die Vorteile überwiegen imho immens einige wenige, bei näherer Betrachtung vernachlässigbar Unschönheiten. Da fällt beispielsweise der OR-Mapper in vielen Fällen einfach weg, da das Lesen von Daten sich auf eine einzig Form von Abfrage beschränkt. Das Testen ist wesentlich spezifischer und einfacher; immer verhaltensgetrieben!

 

WIX:

Bei uns ist es bereits seit Jahren ein Krampf zu einem vernünftigen, automatisierten Setup zu kommen. Unsere Anforderungen sind klar: Ein durch den Buildserver TeamCity dynamisch erzeugtes Installpaket, welches auf die Clients ohne Admin-Rechte verteilt werden kann. Hinzu kommt die Einschränkung, dass wir VB6-COM-Komponenten dabei registrieren müssen. Leider gibt es auf dem Gebiet nur wenige Experten und noch weniger aktuelle Literatur. Dank Sebastian Seidel konnte ich nun einen Einblick gewinnen. Da er auch Consultant auf dem Gebiet ist, steht hier noch die Make-it or Buy-it Evaluierung noch aus, die vermutlich zu Gunsten von Sebastian ausfallen wird.

Session Berichte–Teil 1

Heute Vormittag habe ich die Sessions zu MVVM++ und Continuous Deployment/Delivery besucht.

Continuous Deployment:

Persönlich empfand ich die Gespräche nicht zielführend, weil immer wieder die Gründe für den Einsatz von Versionskontrollsystemen und Buildservern angesprochen wurde. Es gab die verschiedensten Ausführungen, von wo man eigentlich kommt; den manuellen Builds (Stichwort: “Bei mir läuft’s doch”) der Anwendungen und dem XCopy-Austauschen von DLLs. Außerdem wurde primär über den TFS gesprochen. Hier zeichnet sich klar ab, dass so ziemlich jeder Kritikpunkte hat, die das tägliche Arbeiten erheblich stören. Meiner Meinung nach ist ein System, welches mir keinen Support für dezentrale Versionskontrollsysteme out of the box bietet, keine Empfehlung wert. In unserem Betrieb kommen Team City, YouTrack und Git im Verbund zum Einsatz. Ohne TFS eingesetzt zu haben, nahm ich die Situation so wahr, dass die Konfiguration und das Neuaufsetzen durch aus mehrere Tage in Anspruch nehmen könnte. Einig sind sich aber alle darin, dass es – egal welche Produkte zum Einsatz kommen – jederzeit möglich sein sollte, per Knopfdruck eine aktuell lauffähige Version auf die Clients zu deployen. Dabei ist Continuous Integration von Continuous Deployment dahingehend abzugrenzen, dass bei ersterem die Möglichkeit bestünde dies zu tun, bei letzterem es aber tatsächlich getan wird. Auch hier ist sollte man nochmal an die Verantwortlichen in den Unternehmen appellieren, dass sie eine entsprechende Infrastruktur schnellstmöglich einführen. Die Kosten, wenn denn welche entstehen (es gibt sehr viel Open Source Software), haben sich sehr schnell amortisiert.

 

MVVM++:

Auf der Session Wall finden sich aus gutem Grund – wie ich finde – viele UI Themen. MVVM++ ging hier primär auf entsprechende Frameworks und das Integrieren in einer modularen Anwendung ein. Neben Anfängern saßen auch erfahrene Profis im Raum. Die Gespräche waren imho sehr lohnend. So konnte abgegrenzt werden, dass Prism als sehr komplexes Framework klar von MVVM Light und Caliburn.Micro abzugrenzen ist. Im gleichen Kontext musste klar gestellt werden, dass modulare UIs (korrekt wäre Composite UI) zunächst einmal nichts mit einer modularen Architektur, wie sie durch die Verwendung von IoC Containern möglich werden, zu tun haben. Zusammenfassend lässt sich in jedem Fall sagen, dass Technologieentscheidungen betriebswirtschaftlich getrieben sein sollten. Wenn der Kunde eine Composite UI benötigt und auch bereit ist hierfür Geld in die Hand zu nehmen, dann verwende ich Prism. Soll hingegen der Overhead durch MVVM auf Basis von Konventionen reduziert werden, so ist Caliburn.Micro völlig ausreichend. Außerdem ist es eine Frage des Wissenstandes: Im Zweifel mit weniger komplexen Frameworks einsteigen!

Über IoC habe ich inzwischen mehrfach gebloggt und auch einen Webcast aufgenommen.

World Cafe beim Developer Open Space

 

 

Viel Spaß damit. Ich hoffe, es ist keiner ungünstig getroffen. Gerne auf YouTube liken! Falls jemand gar nicht damit leben kann, wie er abgebildet ist, dann kurze Nachricht an mich.

Workshop Test Driven Development

Nach dem DDD Workshop nahm ich ebenfalls bei Dennis an der TDD Session teil. Persönlich habe ich hier einige Erfahrungen. Angefangen bei dem praktischen Einsatz in unserem ERP System über betriebsinterne Coding Dojos bis hin zu Katas in der Karlsruhe User Group.

In dem Kontext brachte mir der Workshop leider nicht weiter. Meine eigentlichen Erwartungen waren dahingehend gerichtet:

  • Besonders gute TDD/BDD Frameworks kennen lernen
  • Best Practices für konkrete Spezialfälle (Parallelisierung, Zeitstempel, Datenbankzugriff) exerzieren

Allerdings konnte ich den Einblick bekommen, dass es (leider!) immer noch Entwickler gibt, die vom Arbeitgeber kein ReSharper zur Verfügung gestellt bekommen oder mit Windows XP arbeiten müssen. Meiner Ansicht nach ein absolutes No-Go! Hier lässt sich nur hoffen, dass ein Umdenken in den verantwortlichen Stellen noch stattfinden wird.

Workshop Domain Driven Design

Heute Vormittag hatte ich das ausgesprochene Vergnügen dem Workshop von Dennis Traub beizuwohnen.  Für mich persönlich immer wieder ein Klassiker und das aus gutem Grund: Egal mit welcher Sprache und auf welcher Plattform man entwickelt, die Domänensprache ist omnipotent. Wer hier nicht mitreden kann, disqualifiziert sich schon fast als ernstzunehmender Entwickler.

Nichtsdestotrotz handelt es sich um einen sehr umfassenden, teils komplexen Ansatz, dessen vorgeschlagenen Praktiken immer wieder an konkreten Fallbeispielen geübt und ggf. im Kontext von diversen Prinzipien (SRP, DRY, etc.) evaluiert werden müssen. So verwundert es auch nicht, dass Dennis mehrfach darauf hinwies, dass es mehrere Lösungen geben kann, je nachdem wie die Context Boundaries definiert sind.

Besonders gefallen hat mir der Austausch mit den anwesenden Entwicklern. Selbst vermeintlich eingefleischte Theoretiker konnten hier sicher etwas mitnehmen. Und sei es nur, dass bei einer deutschen Fachdomänensprache der entsprechende Code ebenfalls in Deutsch sein sollte! Gefüttert wurden die Diskussionen mit einfachen User Stories, die betont unspezifisch respektive fachlich fragwürdig gehalten wurden. Ganz so, wie es in der täglichen Arbeit mit dem vermeintlichen Domänen-Experte auch der Fall ist. In kleinen Gruppen wurden diese zunächst gelöst, um dann in der Runde die Ergebnisse zu konsolidieren.

Zusammenfassend ein sehr lohnenswerter Workshop, in dem ich einige Punkte mitnehmen konnte. So zum Beispiel die interessante Aussage: DDD konsequent weitergedacht führt zu CQRS. Vor allem bin ich auf die anhängende Diskussionen bzgl. dreier Artikel gespannt, welche ich dem Präsentator zur Verfügung gestellt habe. Wem ich diese später zukommen lassen soll, der kann mich gerne kontaktieren.

Themen für den Developer Open Space

Auf der langen Fahrt nach Leipzig habe ich mich gefragt, welche Themen dieses Jahr wohl besonderen Anklang finden, sodass Sessions daraus resultieren können.

Nach meiner Einschätzung werden wieder die Dauerklassiker Agile Development, TDD, BDD und DDD auftauchen. Sicherlich werden auch weniger verbreitete Sprachen, Technologien und Architekturen auftauchen: Darunter Python, Node.js, CQRS und F#. Hier ist das Interesse zwar immer recht groß und jeder hat bereits davon gehört, allerdings haben nur wenige damit aktiv gearbeitet und kennen sich eher oberflächlich damit aus.

Naturgemäß sind Webtechnologien wie HTML 5, JavaScript und REST ebenfalls vertreten. Weniger Interesse seitens der Gemeinde sehe ich was Windows 8 und Modern UI angeht. Da stünde Microsofts neuester Spross auf der gleichen Ebene wie Parallelisierung, was letztes Jahr eher unterdurchschnittlich besucht war. Inwieweit Neuerungen aus 4.5 eingebracht werden, lässt sich imho gar nicht abschätzen.

Persönlich hoffe ich auf Sessions zu NServiceBus, IoC, MVVM und NoSQL Datenbanken.

Zu guter Letzt konnte ich auch immer wieder beobachten, dass jeder Entwickler, egal mit welchem Hintergrund und Kenntnisstand, immer die Ohren spitzt, wenn es um das Entwerfen, Modellieren und Planen von von Projekten geht. Verständlich, schließlich steht und fällt damit selbiges.

Darüber hinaus bin ich allgemein auf die Gespräche gespannt. Welche Markteinschätzungen herrschen vor? Ist die Zufriedenheit mit dem eigenen Arbeitgeber gefallen oder gestiegen? Wie wird es sich wohl in den nächsten Monaten bei der aktuellen Wirtschaftslage entwickeln.

%d Bloggern gefällt das: