Basta 2013: Dependency-Injection-Grundlagen

I presented “Dependency-Injection-Grundlagen” at the Basta 2013 on 2013-09-24:

Durch Auslagerung der Abhängigkeiten via Dependency Injection (DI) wird der eigene Code einfacher konfigurierbar und besser testbar. Doch fällt es vielen nicht leicht, das Konzept für sich zu nutzen. Wir zeigen in einer Livedemo, wie man am besten anfängt, was DI kann und was es nicht kann. Eine Übersicht über (Anti-)Patterns hilft Ihnen dabei, zu beurteilen, was Ihnen tatsächlich Mehrwert bringt.

Slides are available here: Dependency Injection Grundlagen (PDF). Get the source code at GitHub.

Herbstcampus 2013: Geister, Gurken und Halbmetalle

I presented “Geister, Gurken und Halbmetalle – Tools für Web-UI-Acceptance-Tests” at the Herbstcampus 2013 on 2013-09-03:

Automatisierte Unit-Tests und Integrations-Tests gehören inzwischen für viele Entwickler zum Alltag. Wir zeigen in einer Live-Demo, wie man darüber hinaus durch Acceptance Tests einer Web-UI sicherstellt, dass der Benutzer auch genau das Gewünschte sieht. Mit einer KnockoutJS-basierten Seite führen wir Selenium, PhantomJS und SpecFlow vor, um von der Beschreibung in Textform zu C#-Code zu kommen. Abgerundet wird die Demo durch konkrete Hinweise aus der Entwicklerpraxis.

Slides are available here: Geister, Gurken und Halbmetalle (PDF). Get the source code at GitHub.

Entwicklertag: Acceptance Tests für Web-UIs

I presented “Acceptance Tests für Web-UIs” at the Karlsruher Entwicklertag 2013 on 2013-06-06:

Automatisierte Tests gehören inzwischen für viele Entwickler zum Alltag. Auch Web-Entwickler greifen häufig zu Unit-Tests und Integration-Tests, um den serverseitigen Code zu prüfen. Wir zeigen, wie man einen Schritt weitergeht und durch Acceptance Tests der Web-UI sicherstellt, dass der Benutzer auch genau das sieht was er sich gewünscht hat. Am Beispiel einer KnockoutJS-basierten Seite führen wir Selenium, PhantomJS und SpecFlow vor, um von der Beschreibung in Textform zu einer Implementierung in .NET zu kommen. Abgerundet wird die Demo durch konkrete Hinweise aus der Entwicklerpraxis.

Slides are available here: Acceptance Tests für Web-UIs (PDF). Get the source code at GitHub.

Basta Spring 2013: Knockout

I presented “Wartbare Webanwendungen mit Knockout und Model View ViewModel (MVVM)” at the Basta Spring 2013 on 2013-02-28:

Spätestens mit Visual Studio 2012 ist Knockout im Mainstream angekommen. Doch wie kann man es sinnvoll nutzen? Wir zeigen ganz pragmatisch mit einer Livedemo, dass nicht nur typische Single-Page Applications davon profitieren, sondern auch alle ASP.NET-MVC- und Web-Forms-Projekte, die etwas komplexere Eingabeformulare verwenden.

Slides are available here: Wartbare Webanwendungen mit Knockout und Model View ViewModel (MVVM) (PDF). Get the source code at GitHub.

2. iSAQB Architekturtage: Architektur als Balance der Problemlösung

I presented “Architektur als Balance der Problemlösung” at the 2. iSAQB Architekturtage on 2012-11-22:

Software-Architekturen sind nicht nur technisch – die optimale Balance hängt von den technischen, fachlichen und insbesondere den menschlichen Anforderungen ab und ändert sich über die Zeit. Eine gute Architektur findet in den Dimensionen Verständlichkeit, Performance, Kompatibilität und Testbarkeit einen Bereich, in dem mehr Probleme gelöst als neu geschaffen werden. Danach ist es aber mindestens ebenso wichtig sicherzustellen, dass dies auch so bleibt. Der Vortrag zeigt ganz konkret Erfahrungen und Lessons Learned aus mehreren langjährigen Projekten und gibt Hinweise, die eigenen Architekturen zu überdenken.

Slides are available here: Architektur als Balance der Problemlösung – Malte Clasen – 2. iSAQB Architekturtage (PDF).

Herbstcampus 2012: WebForms in MVC

I presented “Umzug – ASP.NET-WebForms-Elemente in MVC weiterverwenden” at the Herbstcampus 2012 on 2012-09-06:

Über Jahre entwickelte ASP.NET WebForms-Anwendungen enthalten oft komplexe Controls und Pages. Das stellt für eine Migration auf ASP.NET eine Hürde dar, weil die dahinter liegende Eingabe- und Darstellungslogik oft nicht ausreichend spezifiziert und dokumentiert ist. Aber auch in Fällen mit guter Spezifikation ist der damit verbundene Implementierungsaufwand nicht zu unterschätzen.

In diesem Vortrag wird an einem Beispiel aus der Praxis gezeigt, wie man bestehende WebForms-Controls und -Pages in MVC-Anwendungen und -Layouts integriert und so innerhalb des neuen Frameworks nutzen kann.

Slides are available here: Umzug – Malte Clasen – Herbstcampus 2012 (PowerPoint 2010, 1.3 MB). You can get the source code on github.

Herbstcampus 2012: Bibliotheken

I presented “Schatzsuche – In-House-Bibliotheken identifizieren und fördern” at the Herbstcampus 2012 conference on 2012-09-04:

Software-Entwickler erleichtern sich gerne ihre tägliche Arbeit. Dabei entstehen vielfältige Hilfsmittel, von Shell-Skripten über einzelne Klassen bis zu ganzen Bibliotheken. Diese sind allerdings meist nur dem ursprünglichen Entwickler und seinem engeren Umfeld bekannt.

In diesem Vortrag wird anhand eines Beispiels gezeigt, wie man dieses Wissen und die zugehörigen Implementierungen findet und für ein größeres Publikum nutzbar machen kann.

Slides are available here: Schatzsuche – Malte Clasen – Herbstcampus 2012 (PowerPoint 2010, 0.8 MB).

ShareConf 2012

Christian Ahrenkiel and I presented “Toolkit für agile SharePoint-Entwicklung” at the ShareConf 2012 conference on 2012-06-20:

Agile Softwareentwicklung für SharePoint ist möglich, trifft aber auf einige technische Hindernisse. Das sind beispielsweise Änderungen an deklarativen Strukturen im bereits produktiven System oder mangels Transaktionen nicht voneinander isolierte Integrationtests. Wir zeigen, wie man diese Einschränkungen prinzipiell umgehen kann, und stellen einen Satz Bibliotheken vor, der einem diese Arbeit erleichtert.

Slides are available here: Agile SharePoint-Entwicklung – Malte_Clasen – ShareConf 2012 (PowerPoint 2010, 1.4 MB), and additionally on the ShareConf site. The content basically matches the Agile SharePoint Development series of blog postings.

Basta Spring 2012

Christian Ahrenkiel and I presented “Agile SharePoint-Entwicklung” at the Basta Spring 2012 conference on 2012-03-01:

Agile Softwareentwicklung für SharePoint ist möglich, trifft aber auf einige Hindernisse. Das sind beispielsweise Änderungen an deklarativen Strukturen im bereits produktiven System oder mangels Transaktionen nicht voneinander isolierte Integrationtests. Wir zeigen, wie man diese Einschränkungen umgehen kann, um die Vorteile eines agilen Prozesses für SharePoint-Entwickler zugänglich zu machen.

Slides are available here: Agile SharePoint-Entwicklung – Malte Clasen – Basta Spring 2012 (PowerPoint 2010, 1.5 MB). The content basically matches the Agile SharePoint Development series of blog postings.