Freitag, 17. September 2010

Der gute Zweck des prio.walk

Entscheidungen sollen zum spätestmöglich verantwortbaren Zeitpunkt getroffen werden – das ist ein Grundsatz agiler Softwareentwicklung. Darüber hinaus ist man damit aber auch gut beraten im Leben. So haben wir beim Professional Developer College z.B. die Entscheidung über den guten Zweck des prio.walk nicht sofort bei Ankündigung festgelegt, sondern damit bis jetzt gewartet. Das schien uns verantwortbar, denn nicht der konkrete Spendenzweck sollte den Ausschlag für eine Spende geben, sondern der Spaß an einem ungewöhnlichen Event und die Möglichkeit, sich eine ansonsten kostenlose Beratung “zu erlaufen”.

Nun sind wir aber über einen guten Zweck gestolpert und schier begeistert. Das Warten hat sich gelohnt! Wir sind von der guten Sache überzeugt. Sie lohnt die Mühe des prio.walk und Ihre Spende.

Der gute Zweck des prio.walk ist das RealExperiment sinnvoll wirtschaften. Beschrieben wird es hier in engagierten und motivierenden Worte. Und berichtet wird darüber kontinuierlich im Blog des Experiments: http://swinfo.wordpress.com. Dort gibt es auch weitere Hintergrundinformationen. Hier vorab in knappen Worten:

Drei visionäre und rastlose Geister starten das RealExperiment, um herauszufinden, ob es mit dem Arbeiten und der Unternehmensführung nicht auch mal anders gehen kann als in den letzten 150 Jahren. Sind wirtschaftlicher Erfolg, begeisterte Kunden und motivierte Mitarbeiter vom Geschäftsführer bis zum Pförtner wirklich unvereinbar oder höchstens märchenhafte Glücksfälle? Sie glauben, nein.

Zufriedenheit auf allen Seiten und Nachhaltigkeit und hohe Produktqualität gehen zusammen. Hier und heute ist es möglich – allerdings ist dafür vieles anders zu machen. Und deshalb gründen die drei rastlosen Geister Zeuch, Borck, Stegfellner dafür eigens eine Firma, in der sie die Bedingungen dafür schaffen können. Denn anders muss es werden, wenn es besser werden soll. Sie beginnen also auf der grünen Wiese – allerdings ohne jede Gewissheit, dass es klappt. Sie sind “nur” Visionäre, sie haben die Weisheit nicht mit Löffeln gefressen, sie behaupten nicht, dass sie ein solches Unternehmen “einfach so” aufbauen könnten – doch sie glauben fest daran, dass das möglich ist, wenn man es wirklich will und eben nicht nur Gewinnsteigerung im Blick hat, sondern auch die Menschen. Die Experimentatoren wollen also Hirn und Herz zusammenbringen.

Anders als üblich erfolgt die Firmengründung jedoch nicht stickum, sondern öffentlich und transparent. Sie sind so mutig und lassen sich in die Karten schauen, ob es klappt mit ihrer Vision. Damit leben sie schon einen Teil ihrer These selbst: “Fehlerfreundlichkeit - aus dem Tabu eine Chance machen.” Sie sehen Fehler nicht als negativ, sondern als unvermeidlich und Quelle für Erkenntnisse an. Wir alle, die wir das Experiment beobachten, sollen mit und an ihnen etwas lernen können.

Wer es visueller und uninterpretiert mag, der kann sich hier in 4:17 Minuten informieren, was es mit dem RealExperiment auf sich hat:

<video missing>

Das Professional Developer College findet diese Idee klasse. Bei unseren Trainings sehen wir immer wieder, dass Entwickler nicht nur fachlich etwas dazulernen müssen, sondern dass auch die Organisationen, in denen sie arbeiten, Lernbedarf haben. Das Unternehmensumfeld für Softwareentwickler ist leider oft in einem Zustand, dass qualitativ hochwertige Arbeit und Zufriedenheit nicht recht aufkommen wollen – trotz aller technischer Kompetenzen.

Peter Drucker hat dafür den Grund so formuliert: “Culture eats strategy for breakfast.” Die Unternehmenskultur – dazu gehört z.B. der Umgang mit Fehlern, Zeit, Räumlichkeit, Gehalt, Budget, Rollenverteilung – ist oft derart, dass produktive, kreative, ja, gar innovative Arbeit für Softwareentwickler schwierig ist. Natürlich ist das so nicht aus bösem Willen. Geschäftsführer und Manager bemühen sich redlich und versuchen das, was sie gelernt haben, so gut zu machen wie möglich. Dennoch bleibt das Ergebnis hinter den Erwartungen und allemal hinter dem Möglichen zurück.

Woran liegt das? Wir beim Professional Developer College und auch Zeuch, Borck, Stegfellner glauben, es liegt womöglich daran, dass die tradierten Werkzeuge – von der Kostenbuchhaltung bis zur Weihnachtsgeld, von der Kernarbeitszeit bis zum Abteilungsbudget – nicht mehr passen. Sie müssen angepasst oder gar ersetzt werden. Eine Wirtschaft, die heute nicht mehr dieselbe wie vor 50 oder 150 Jahren ist, erfordert das. Eine Kundschaft, die auch nicht mehr dieselbe ist wie in Zeiten des Mangels nach dem zweiten Weltkrieg, erfordert das. Und schließlich sind die Mitarbeiter auch nicht mehr das, was sie mal waren – in positiver und negativer Hinsicht.

Es wäre also dumm, wenn man meinte, nur mehr derselben Werkzeuge würden helfen. Nein, andere müssen her. Aber welche? Jenseits der bunten Managementliteratur wollen Zeuch, Borck, Stegfellner das nun in ihrem RealExperiment herausfinden. Toll! Das ist mutig – nicht nur, weil sie das öffentlich tun, sondern weil sie daran ihre Existenz knüpfen. Sie experimentieren nicht nach Dienst in einer Garage, sondern fulltime zur besten Arbeitszeit auf dem freien Markt. Hut ab!

Deshalb will der prio.walk dieses Experiment unterstützen. Jeder Beitrag zählt. Und keine Angst: mit diesen Spenden und weiteren wollen sich die Gründerforscher nicht durchmogeln. Sie suchen lediglich nach einer Starthilfe wie jeder andere Unternehmensgründer, der zu einer Bank geht oder bei VC-Gebern Klinken putzt.

Also: Wer macht mit beim prio.walk auf dem Weg zu einem erfolgreichen RealExperiment? Es kann uns allen nur nutzen. Jede Erkenntnis, die das Experiment erzeugt, ist eine gute Erkenntnis.

Die Route des prio.walk ist klar. Gesellt euch zu uns. Lasst euch beraten – und unterstützt den guten Zweck RealExperiment mit einer Spende. Wir freuen uns auf spannende Wandertage.

Mittwoch, 1. September 2010

Route des prio.walk 2010 steht fest

Der Termin des prio.walk rückt näher. Stefan Lieser und Ralf Westphal werden anlässlich des fünfjährigen Jubiläums der www.prioconference.de, aber auch für den guten Zweck und aus Lust an der Sache von München, dem Sitz des Veranstalters dotnetpro, nach Nürnberg zum Veranstaltungsort wandern. Mehr zu diesen Event erfahren Sie auf der prodevcollege.de Seite hier.

Nach einigen Vorarbeiten steht für den prio.walk nun die Route fest. Die Karte zeigt den ungefähren Verlauf des Fußweges von Stefan und Ralf. Start ist bei (A) am 13.10.2010 um 9:00h in der Bayerstraße 16a. Ende ist bei (G) in Nürnberg an der Meistersingerhalle am 18.10.2010 im Laufe des Tages – so denn die Füße die beiden wirklich so weit tragen. Aber daran haben wir keinen Zweifel…


Größere Kartenansicht

Als Wegstationen und nächtliche “Rastplätze” sind geplant:

Wer mag, ist herzlich eingeladen, Stefan und Ralf auf ihrem Weg abschnittweise zu begleiten; jeden Tag geht es um 9h am “Rastplatz” des Vortages los, also am Tag 1 in München, Bayerstraße 16, am Tag 2 bei der Akademie Schönbrunn usw.

Eine Spende für den guten Zweck würde dabei Stefans und Ralfs Zunge lockern für nutzbringende fachliche Beratung… Denn das Motto ist am Ende: Wandern für die andern! Bei prio.walk mitzumachen bedeutet, unterwegs zu sein für einen guten Zweck.

Donnerstag, 10. Dezember 2009

Best Speaker Award für Rhetoriktraining-Absolvent

imageDas Professional Developer College gratuliert Christian Lescher (rechts im Bild) zur Verleihung des Best Speaker Award auf der MetriKon 2009!

Christian ist Absolvent unseres Rhetoriktrainings für Softwareprofis und führt seinen Erfolg bei der MetriKon nicht zuletzt auf das Seminar zurück. Das macht uns natürlich sehr froh und wir freuen uns doppelt mit Christian.

Wer sich nun motiviert fühlt, seine Präsentationsfähigkeiten zu verbessern, melde sich einfach unter info (at) prodevcollege.de. Nach einer Reihe von inhouse Rhetoriktrainings bereiten wir gerade wieder ein offenes Training für 2010 vor.

Montag, 27. Juli 2009

And the winner is: Gewinnerziehung für die Jobzufriedenheitsumfrage

Am 2. Juli 2009 hatte das Professional Developer College zu einer Jobzufriedenheitsumfrage aufgerufen. Einsendeschluss der Fragebogen-Auswertungen war der 24. Juli.

In den knapp 3 Wochen Laufzeit der Umfrage sind insgesamt 56 Fragebogen-Auswertungen eingegangen, die ein interessantes Bild von der Jobzufriedenheit der .NET-Community zeichnen. Manches kam heraus wie erwartet, anderes ist überraschend oder ein Fingerzeit. Seien Sie gespannt auf die ganze Wahrheit in einer der nächsten dotnetpro-Ausgaben.

Die Gewinner

Einstweilen möchten wir jedoch schon den Gewinnern der Umfrage gratulieren. Sie sollen nicht bis zum Erscheinen der Umfrageauswertung warten. Hier die Teilnehmerliste mit soweit anonymisierten Email-Adressen, dass höchstens ihr Inhaber sie erkennen kann:

image 

Der Code für die Ziehung

Für die Gewinnerziehung haben wir die Email-Adressen in alphabetische Reihenfolge gebracht und dann folgenden Algorithmus gestartet:

static void Main()
{
    Console.WriteLine("And the winner is...\n");

    Console.Write("Number of contestants: ");
    int numberOfContestants = int.Parse(Console.ReadLine());

    Console.Write("Number of prizes: ");
    int numberOfPrizes = int.Parse(Console.ReadLine());

    Console.Write("Seed for random number generator (e.g. final date of contest): ");
    int randomGenSeed = int.Parse(Console.ReadLine());

    Random rnd = new Random(randomGenSeed);
    HashSet<int> winnerIndexes = new HashSet<int>();
    List<int> winnerList = new List<int>();

    while(winnerIndexes.Count < numberOfPrizes)
    {
        int winnerIndex = rnd.Next(1, numberOfContestants);
        if (!winnerIndexes.Contains(winnerIndex))
        {
            winnerIndexes.Add(winnerIndex);
            winnerList.Add(winnerIndex);
        }
    }

    Console.WriteLine("\nList of winners (indexes of contestants):");
    foreach (int winnerIndex in winnerList)
        Console.WriteLine(winnerIndex);
}

Die Ziehung

Die Eingabedaten waren wie folgt:

image

Als Gewinnerindizes für die alphabetische Liste ergaben sich daraus in der üblichen Reihenfolge vom 3. zum 1. Preis:

3. Preise: Indizes 28, 15, 30 – Ein Dilbert-Comic

2. Preise: Indizes 31, 11 – Das Buch “Clean Code” von Robert C. Martin

1. Preise: Index 19 – Ein dotnetpro-Abo

Der Rechtswegs war und ist ausgeschlossen. Wer möchte, kann das Ergebnis nachvollziehen mit dem Code, der hier zum Download bereitsteht. Das ist doch besser als im Fernsehen, oder? ;-)

Wir gratulieren den Gewinnern, die nun per Email benachrichtigt werden:

1. Hans Martin Hertzberg, Bremen
2. Jens Nösel, Hamburg
2. Markus Zywitza, Aarbergen
3. Marc Ambrosius, Hannover
3. Markus Klein, Wien
3. Frank Jurisch, Erfurt

Und wir danken allen Teilnehmern für ihr Mitmachen.

Donnerstag, 2. Juli 2009

Umfrage mit Gewinn: Wie zufrieden sind Sie mit Ihrem Job?

image Der DGB lässt jedes Jahr danach fragen, wie zufrieden die deutschen Arbeitnehmer mit ihren Jobs sind. Das Ergebnis dieser Studien präsentiert der DGB-Index Gute Arbeit. Was sagt dieser Index aber über die Softwarebranche aus?

Mitgründer des Professional Developer College Ralf Westphal hat sich diese Frage in einem Blogartikel auch gestellt. Und er hat Spekulationen darüber angestellt, wie ein solcher Index für die Softwareentwicklung aussehen könnte. Um nun jedoch nicht bei Spekulationen stehen zu bleiben, hat Ralf auch dazu aufgerufen, ihm Auswertungen des DGB-Fragebogens, der online frei verfügbar ist, zuzusenden.

image

Diese Idee möchte das Professional Developer College unterstützen. Wir begrüßen diesen Versuch, über die Branche zu reflektieren. Ein Index für Jobzufrieden von Softwareentwicklern könnte Stärken und Schwächen der Branche finden helfen. Und er könnte womöglich nützen, die Softwareentwicklung auch attraktiver zu machen. Denn “neue Entwickler braucht das Land” in Zeiten des Fachkräftemangels!

Die Umfrage

Wir möchten die informelle Umfrage von Ralf daher auf offiziellere Füße stellen und bitten Sie:

  • Nehmen Sie sich 5 Minuten Zeit, den DGB-Fragebogen in Bezug auf Ihren Job auszufüllen. Sie werden mit einer Grafik belohnt, die Ihnen ein differenziertes Bild Ihrer Zufriedenheit zeichnet. Der Fragebogen ist natürlich anonym. Vielleicht bestätigt Ihnen das Ergenis Ihr bisheriges Bauchgefühl, vielleicht überrascht es Sie aber auch, weil Sie bisher nicht so im Detail auf Ihren Job geschaut haben.
  • Kopieren Sie die Ergebnisgrafik in eine Email an das Professional Developer College (info (at) prodevcollege.de) und beantworten Sie noch folgende Fragen:
    • Sind Sie angestellt oder selbstständig?
    • Was ist Ihre Hauptaufgabe (Entwicklung, Test, Architektur, …)?
    • Wieviele Jahre Berufserfahrung in der Softwareentwicklungsbranche haben Sie?
    • Arbeiten Sie an einem CCD-Grad? Wenn ja, an welchem?
    • Haben Sie Personalverantwortung?
    • Wie groß ist das Team, in dem Sie arbeiten?
    • Wie groß ist das Unternehmen, in dem Ihr Team aufgehängt ist?
    • Welche Laufzeit haben die Projekte durchschnittlich, an denen Sie arbeiten?
  • Drücken Sie die Daumen, dass Sie einen der Gewinne einstreichen, die wir verlosen.

image Wir werden alle eingesandten Ergebnisgrafiken und Zusatzangaben zu einem Branchenindex der Jobzufriedenheit verdichten. Die zusätzlichen Fragen dienen dabei der Differenzierung, denn es könnte ja sein, dass z.B. Softwarearchitekten tendenziell (un)zufriedener als Entwickler sind oder die Zufriedenheit in großen Teams höher/niedriger als in kleinen Teams ist usw. Selbstverständlich sind alle Angaben wie ja auch die ganze Teilnahme freiwillig. Doch wir würden uns sehr über möglichst viele Auskünfte freuen, um ein differenziertes und fundiertes Bild der Branchen zeichnen zu können.

Ob der Fragebogen des DGB für eine solche Umfrage ideal ist, sei dahingestellt. Im Sinne agilen Vorgehens ist er jedenfalls gut genug, um einen ersten Schritt bei der Messung der Zufriedenheit zu machen. Und er ist online und kostenlos verfügbar. Einfacher kann es kaum werden.

Die Gewinne

image Ihre Mühe beim Ausfüllen des Fragebogens wird natürlich sofort mit einem persönlichen Erkenntnisgewinn belohnt. Dabei wollen wir in diesem Aufruf aber nicht stehenbleiben. Als weiteren Anreiz für eine Email mit Ergebnisgrafik an uns bieten wir eine Verlosung von sechs Preisen unter den Einsendern (der Rechtsweg ist dabei natürlich wie immer ausgeschlossen):

image Einsendeschluss für die Ergebnisgrafiken ist der 24. Juli 2009.

Das Ergebnis der Auswertung aller eingegangenen Grafiken+Zusatzangaben wird dann in einer Ausgabe der dotnetpro im Herbst veröffentlicht.

Die Gewinner informieren wir per Email. Weitere persönliche Angaben müssen Sie bei Ihren Einsendungen also nicht machen.

Vertraulichkeit

Alle Einsendungen behandeln wir vertraulich. Wir speichern sie nur zum Zwecke der Auswertung. Persönliche Daten müssen die Einsendungen nicht enthalten. Nur die Absender-Email-Adresse muss dazu geeignet sein, über einen Gewinn zu informieren.

 

Und jetzt geht´s los! Machen Sie mit! Sie können nur gewinnen: an Erkenntnis oder gar an Lesestoff. Hier gehts zum Fragebogen des DGB

School of .NET - Berufs- und projektbegleitende Fortbildung

image Ob Sie sich als Softwareentwickler fortbilden sollten oder nicht, ist keine Frage. Wenn nicht Softwareentwickler ständig dazulernen müssen, wer dann? Das fällt Ihnen natürlich nicht immer leicht. Abends noch eine Zeitschrift oder ein Buch mit nach Hause nehmen, zwischen den Aufgaben des Tagesgeschäftes mal etwas ausprobieren oder gar über längere Zeit evaluieren – das erfordert Kraft.

Und manchmal ist solches Autodidaktentum bei allem Krafteinsatz sogar ineffektiv. Unter Anleitung von Trainern lernen Sie schneller. In einer Gruppe lernen Sie schneller. Die Trial-and-Error-Zyklen sind kürzer, weil Ihre Aufmerksamkeit auf das Wesentliche gelenkt wird. Außerdem werden Sie in einem Training nicht so häufig beim Lernen unterbrochen wie am Arbeitsplatz. Sie können sich also viel besser konzentrieren.

Lernen allein, d.h. in der eigenen Geschwindigkeit und in vertrauter Umgebung, sowie Lernen in einem Unterricht haben also unterschiedliche Vorzüge. Beides ist wichtig, wenn sie nicht auf der Stelle treten wollen.

image Für die Teilnahme an einem Unterricht müssen Sie aber wahrscheinlich Ihren Chef fragen. Der muss auf Sie ja einige Zeit am Arbeitsplatz verzichten. Für 1 oder 2 Tage tut er das noch relativ leicht. Bei 3 oder 5 Tagen knirscht er mit den Zähnen. Darüber hinaus ist mit ihm kaum zu verhandeln.

Das ist aus seiner Sicht verständlich. Es geht ihm auch gar nicht so sehr um die Trainingskosten, sondern eben darum, dass sie “raus aus dem Geschäft" sind”. Sie sind nicht im Zugriff, Sie können nicht einspringen, Sie sind kaum für Fragen verfügbar. Das alles mag der Chef nicht gern.

Aber wie denn dann lernen? Wenn Sie sich wirklich solide Lernstoff aneignen wollen, dann geht das nicht immer in 1-2 Tagen. 2 Tage WCF, 3 Tage O/R Mapping, 1 Tag Scrum, 2  Tage Clean Code Developer, 4 Tage WPF… das haut nicht hin. Es ist eine Illusion anzunehmen, dass umfangreiche Themen sich so auf 1, 2, 3 Tage zusammendampfen lassen, dass sich in so kurzer Zeit wirklich etwas lernen lässt.

Der übliche “Kurzblockunterricht” von maximal 5 Tagen kann für die meisten Themen nur einen Überblick und eine Einführung bieten. Sie haben dann mal einige Facetten des Themas kennengelernt und auch damit gespielt. Doch wirklich geübt, wirklich angeeignet haben Sie sich das Neue dann noch lange nicht. Das wirkliche Lernen beginnt dann erst wieder am Arbeitsplatz unter dem Druck des Tagesgeschäftes.

image In der wesentlichen Phase des Lernens, nämlich beim ausgiebigen Ausprobieren und beim Transfer des Stoffes auf das eigene Projekt, sind sie nach einem “Kurzblockunterricht” also allein. Sie stehen unter Druck. Sie stehen womöglich unter Beobachtung, weil der Chef ja sehen will, ob das teure Training auch schnell Früchte trägt.

Solch üblicher einmaliger Blockunterricht hält am Ende also selten, was er verspricht. Dass es ihn gibt, ist verständlich. Er bedient das Bedürfnis nach “schnell lernen” der Teilnehmer und nach “großer Reichweite” des Veranstalters. Doch auch wenn das Bedürfnis, schnell viel lernen zu wollen, nachvollziehbar ist, so ist seine Erfüllung meist eine Illusion. Es gibt keinen Nürnberger Trichter. Eine “Druckbetankung” des Kopfes ist unmöglich. Lernen hat immer Zeit gebraucht und braucht sie auch weiterhin. Und: Lernen braucht auch die Unterbrechung. Zeitlich “verteiltes Lernen” ist effektiver als “massiertes Lernen”.

Der Mitgründer des Professional Developer College, Ralf Westphal, und College-Trainer Stefan Lieser haben sich diese Erkenntnisse nun zu Herzen genommen und ein ganz neues Trainingskonzept für das College entwickelt: die School of .NET. In den Blogs von Westphal und Lieser finden Sie eine Diskussion dazu.

Und das erste konkrete Produkt finden Sie auf der Homepage des Professional Developer College: die School of .NET – Synchronous Developer.

Entscheidend anders bei der School of .NET im Vergleich zu anderen Trainingsangeboten ist gar nicht der Inhalt. Der Synchronous Developer richtet sich an Entwickler, die solide in die .NET-Entwicklung einsteigen und gleichzeitig Clean Code produzieren wollen. Aber auch technologisch speziellere Inhalte können wir mit der School of .NET vermitteln.

Anders ist die School of .NET durch ihre Form. Sie ist nicht als “Druckbetankung” im Block ausgelegt. Sie findet vielmehr rhythmisch statt. Sie nutzt den “Spacing Effect” des verteilten Lernens, indem sie jede Woche nur einen Unterrichtstag hat.

 

image

 

Die School of .NET beginnt mit einem “Konstruktor”, d.h. einem 2-tägigen Kick-off-Workshop, bei dem sich die Teilnehmer kennenlernen. Der dauert zwei (oder auch mal drei) Tage, weil gruppendynamische Prozesse einfach Zeit brauchen und in diesen Tagen alle auf ein Anfangsniveau gehoben werden sollen, das ihnen die Arbeit am Thema zwischen den folgenden einzelnen Unterrichtstagen mit Gewinn ermöglicht.

Darauf folgen einige Wochen mit je einem Unterrichtstag. Wieviele, das hängt natürlich vom Thema ab. Für den grundlegenden Synchronous Developer sind es z.B. 10 Wochen. Ein Tag Unterricht, 6 Tage Pause – in denen aber jeder Teilnehmer natürlich weiter am Thema bleibt. Es gibt (kleine) Hausaufgaben – aber vor allem kann jeder auch schon versuchen, das Gelernte im Tagesgeschäft einzubringen. Dann wieder ein Tag Unterricht.

Am Ende noch einmal ein kleiner Block, in dem die Teilnehmer das Gelernte in einer abschließenden Aufgabe zusammenfassen und reflektieren.

Die Vorteile solch zeitlich “verteilten Lernens” sollten auf der Hand liegen:

  • Keine Abwesenheit vom Arbeitsplatz über längere Zeit. Der Chef muss auf seine Mitarbeiter nicht verzichten – und doch lernen sie etwas ganz effektiv in der geschützten Atmosphäre eines Unterrichts.
  • Sofortige Anwendung des Gelernten auf die Praxis – soweit möglich.
  • Fragen, die sich in der Praxis ergeben, können am nächsten Unterrichtstag gestellt werden. Das Training ist also gleichzeitig auch ein Coaching.
  • Die Trainingslänge kann dem Stoff angemessener sein, da es ja keine längeren Abwesenheiten mehr vom Arbeitsplatz gibt.

image Die School of .NET ist also berufs- bzw. projektbegleitendes Lernen. Das macht sie effektiv. Teurer als ein einmaliges Blocktraining ist sie deshalb auch nicht. Im Gegenteil! Die School of .NET ist in doppelter Hinsicht günstiger: Zum einen nützt das Training mehr, weil es näher an der lernpsychologischen Realität ist. Zum anderen bietet es mehr, weil nicht nur Unterricht als Einbahnstraße stattfindet, sondern immer wieder Fragen aus der Praxis zwischendurch behandelt werden können. Das Lernen wird begleitet, die Teilnehmer sind mit dem Lernstoff gerade in der schwierigen Phase des Transfers nicht allein.

Das Professional Developer College bietet die School of .NET als offene Trainings an – aber auch als firmenbezogenen Unterricht. Termine finden Sie in der Übersicht.

Oder schreiben Sie uns eine Email an info (at) prodevcollege.de.

Mittwoch, 1. April 2009

Ausbildung für mehr Softwarequalität - Das Clean Code Developer Camp

Jetzt ist es endlich passiert: Das Professional Developer Camp hat die grundlegende Ausbildung in der Softwareentwicklung aufgenommen. Im Feburar und März 2009 fand das erste Clean Code Developer Camp mit Stefan Lieser und Ralf Westphal als Trainern statt.

image Clean Code ist der Titel eines erfolgreichen Buches von Robert C. Martin, das eine Lanze bricht für mehr innere Qualität von Software. Die Clean Code Developer Initiative baut darauf auf, indem sie die Botschaft des Buches in leicht verdaubare Happen zerlegt, weitere hinzufügt und das Ganze in den Dienst eines Wertesystems für bessere Software stellt.

Ein Wiki dokumentiert diese Bausteine für mehr Korrektheit, Evolvierbarkeit, Produktionseffizienz und Reflexion ausführlich und verweist auf Quellen zusätzlicher Informationen. Zudem findet in einer Google Gruppe und bei XING dazu ein Austausch der Community statt, der die Bausteine weiterentwickelt und Fragen zur Umsetzung in der Praxis erörtert. Jeder interessierte Softwareentwickler kann sofort seinen eigenen Weg zu mehr Softwarequalität beginnen.

So kann es sein und so soll es sein. Allerdings bedeutet das vielfach, eigene, womöglich jahrelang gepflegte Gewohnheiten mit viel Selbstdisziplin unter dem Sperrfeuer des Tagesgeschäftes zu verändern. image Programmierer werden also quasi zu Umprogrammierern ihrer selbst. Denn Projekte, die bisher vor allem darauf achten, unmittelbaren Kundenutzen zu generieren, programmieren ihre Entwickler auch in diesem Sinne. So entstehen Softwaresysteme, die zwar funktionieren - unter der Haube aber unter hoher innerer Entropie des Codes und einer Qualitätsschuldenlast (technical debt) leiden. Und so haben es ihre Entwickler denn auch schwer, sich dieser Programmierung (im doppelten Sinn) zu entziehen.

Schade wäre es, wenn die Veränderungen, die CCD bedeutet, der Nutzen, den CCD für die Softwareprojekte bietet, deshalb bald im Sperrfeuer des Tagesgeschäftes einknicken würden. Stefan Lieser und Ralf Westphal, die Gründer der CCD Initiative, haben die Bausteine zwar schon in Modulen zusammengefasst, die die Einarbeitung erleichtern. Dennoch bedeutet Clean Code Development teilweis erhebliche Veränderungen. Sich im Tagesgeschäft neue Gewohnheiten "draufzuschaffen" ist nicht leicht.

Aus diesem Grund bietet das Professional Developer College Hilfe bei diesen Veränderungen. Die Clean Code Developer Camps sind als Zonen des geschützten, effizienten Lernens gedacht. Sie vermitteln die Bausteine des CCD-Wertesystems in 5-Tage-Blöcken mit vielen praktischen Übungen. Alte Gewohnheiten werden abgelegt, neue Gewohnheiten werden "konditioniert". Denn nicht weniger als "Konditionierung" ist nötig, um die Prinzipien, Regeln und Praktiken von Clean Code Development im täglichen Projektkampf auch einzusetzen.

Die Trainer legen daher viel Wert auf die Arbeit an Projekten während der Camps. 75% der Zeit ist Projektarbeit - allein, im Pair Programming oder in Gruppen. Dabei geht es dann allerdings nicht um die üblichen aktuellen oder neuesten Technologien, sondern um den richtigen Umgang mit den aktuellen. Statt Technologieseminar - wie es viele gibt - ist das CCD Camp Grundlagentraining. Es vermittelt, was eigentlich schon in Ausbildungen wie zum Fachinformatiker oder Dipl. Inf. hätte vermittelt werden sollen - aber nur selten wird.

Dem CCD Camp geht es nicht um schnellere Algorithmen. Es geht ihm auch nicht um Entity Framework  statt ADO.NET. Ebenfalls nebensächlich sind Visual Studio 2010, dynamische Programmierung, WCF, WF, WPF, imageVSTO oder andere Akronyme.

Stattdessen konzentriert sich das CCD Camp in seinen Blöcken auf den Rahmen für den Einsatz von  Technologien. Technologien sind Werkzeuge, die man nicht nur unsachgemäß oder sachgemäß einsetzen kann, sondern auch kurzsichtig oder nachhaltig. Und gerade Nachhaltigkeit findet in den üblichen Ausbildungen eben kaum Beachtung. Nachhaltigkeit jedoch ist es, die den Erfolg einer Software über längere Zeit sichert.

 

  • Dazu gehört, dass sie jederzeit nachweisbar korrekt ist und auch nach Veränderungen bleibt.
  • Dazu gehört, dass sie sich neuen Anforderungen über die Zeit nicht immer schwerer anpassen lässt.
  • Dazu gehört, dass ihre Produktion so effizient wie möglich, d.h. systematisch und automatisiert ist.
  • Und schließlich gehört zur Nachhaltigkeit die Arbeit der Softwareproduzenten an sich selbst. Denn ohne solche "Selbstverbesserung" bleiben sie im Vergleich zum Technologstehen

Das erste Clean Code Developer Camp im Februar/März mit diesem "Curriculum der anderen Art" schon ernst gemacht.  10 Teilnehmer hatten sich darauf eingelassen, 2 x 5 Tage lang nicht "neuen Schnickschnack" zu lernen, sondern an ihren fundamentalen "Codiermustern" zu arbeiten.

image

Sogar eine Führungskraft hatte sich in das Camp "verirrt" - und stand am Ende der Begeisterung der "normalen" Softwareentwickler-Teilnehmer über den Nutzen von CCD in nichts nach. Das hat die Trainer Stefan Lieser (3. v.r.) und Ralf Westphal (2. v.l.) besonders gefreut. Denn Clean Code Developer kann jeder Entwickler durch Eigeninitiative werden - ganze Teams brauchen dafür jedoch die Rückendeckung des Management.

Diesem Unterschied trägt das nächste Clean Code Developer Camp insofern auch Rechnung, als dass es die CCD-Bausteine in drei Staffeln vermittelt:

  • Staffel 1: Bausteine für mehr Korrektheit und höhere Evolvierbarkeit von Software, 2 x 5 Tage ab Ende Mai 2009 [mehr Info]. Diese Staffel richtet sich an Entwickler, die zunächst eher für sich CCD betreiben müssen oder wollen.
  • Staffel 2: Bausteine für mehr Produktionseffizienz in der Softwareentwicklung, 5 Tage im Juni 2009 [mehr Info]. In dieser Staffel geht es um Pratiken und Werkzeuge, die Auswirkungen auf das ganze Team haben.
  • Staffel 3: Bausteine für die Reflexion auf allen Organisationsebenen, 5 Tage - bisher noch ohne Termin [mehr Info]. Mit der Staffel geht das Camp über die Softwaretechnik hinaus in die Kommunikation bzw. Organisation in und von Teams. Ab einem gewissen Punkt lassen sich weitere Verbesserung im Produkt nur erreichen, wenn "dem Zwischenmenschlichen" gleiche Aufmerksamkeit geschenkt wird. Die Japaner sagen: "mono tsukuri wa, hito tsukuri!", d.h. in etwa "Wie die Menschen, so ihre Produkte."

Clean Code Developer kann jeder einfach so werden. Wer jedoch schnell die Früchte von Clean Code Development ernten möchte, dem empfiehlt das Professional Developer College einen "Kickstart" durch Besuch des CCD Camp. Asmund Stensrud, ein Teilnehmer des ersten CCD Camp, fasst den Nutzen des CCD Camp so zusammen:

image Durch das CCD Camp realisieren wir sehr schnell eine Kostenersparnis im Allgemeinen und vor allem einen Imagegewinn beim Kunden, für den Qualität eine Selbstverständlichkeit ist. Wir erwarten nach Auslieferung weniger unangenehme Gespräche mit dem Kunden über Programmierfehler.
Asmund Stensrud, Entwicklungsleiter und Geschäftsführung, www.unique-solutions.eu

 

P.S.: Waum ist es eigentlich "endlich passiert" das CCD Camp? Weil das Professional Developer College mit der Idee einer ähnlichen technischen Grundlagenausbildung vor einigen Jahren gegründet worden war - seitdem sich aber vor allem auf Softskill-Trainings konzentriert hatte. Damals war der Arbeitstitel für ein längeres technisches Curriculum noch "Microsoft University". Die Kombination aus Technik+Grundlagen+Softskills war damals aber vielleicht noch etwas ihrer Zeit voraus. So war es schwer, dafür das nötige Interesse in der Community und bei Trainern zu generieren. Inzwischen hat sich die Branche jedoch verändert. Auch auf der .NET-Plattform gibt es nun Berge an altem, quasi unwartbarem Code und die Frage ist, wie die Situation verbessert werden kann. Neuentwicklungen sind oft nicht möglich. Und wenn, wie sollten die aussehen, um die Fehler der Vergangenheit nicht zu wiederholen? Grundlagen in punkto Softwarequalität sind also gefragt. Ebenfalls auf der nicht-technischen Seite ist das Interesse gestiegen. Softskills sind in aller Munde; die OOP 2009 stand zum Beispiel in ihrem Zeichen. So ist nun scheinbar die Zeit reif für eine Ausbildung "der anderen Art". Die bietet das Clean Code Developer Camp.