TDD like Mozart
2013-08-19
A couple of days ago, J. B. Rainsberger wrote on Twitter:
CSS Vertical Align: Divs
2013-08-07
Update 2021: This post is extremely out-dated. You might want to goole “CSS FlexBox” or “CSS Grid” instead of reading it ;)
If you have done anything with CSS yet, you probably know the following problem: You want to vertically align some parts of your page, but you do not know the total height of the group. That is, you do not know the height of the largest element. This article shows you how to solve this problem. The approach shown here works in Chrome, Firefox and IE9, I have not tested other browsers.
First, change the box sizing to border-box. Because for me, CSS makes much more sense when box-sizing is border-box.
Smaller Steps
2013-08-07
I always thought that I was doing my unit testing, programming and refactoring in small steps. But during the last year or so I learned that I was wrong. Dead wrong.
I have been interested in code quality and craftsmanship for some time now. The books I read and the people I talked to gave me the first hints that I should do my work in smaller steps. Then, at SoCraTes Conference 2012, I learned about the Taking Baby Steps exercise by Adrian Bolboaca. This showed me how small your steps could really be.
Softwarequalität für Entwickler
2013-07-30
“Softwarequalität für Entwickler” zeigt Ihnen in 6 Teilen, wie sie die Qualität Ihrer Anwendungen verbessern können.
79 € - Sie sparen 35 € gegenüber Einzelkäufen
Verbessern Sie die Qualität Ihrer Software
So können Sie den langfristigen Erfolg Ihrer Anwendungen sicherstellen
In diesem Kurs lernen Sie verschiedene Techniken, die Sie sofort einsetzen können, um die Qualität Ihrer Software zu verbessern. Jeder Teil beginnt mit einem Theorie-Video, in dem ich die Themen des jeweiligen Teils erkläre.
Danach folgen praktische Beispiele: Ich zeige an Hand des Source-Codes einer Beispielanwendung, wie Sie die jeweiligen Techniken in die Praxis umsetzen können. Diese Beispiele können - und sollen - Sie auch selbst implementieren. So bekommen Sie ein Gefühl dafür, wie diese Techniken funktionieren.
Ich werde die Theorie-Videos in den nächsten Wochen gratis auf Youtube zur Verfügung stellen. Aber Theorie alleine ist nur die halbe Miete. Kaufen Sie den gesamten Kurs, um den Praxisteil und die Übungen zu erhalten.
Kursteile und Themen
Diese Techniken lernen Sie in diesem Kurs
Teil 1: Test Driven Development
- Unit Tests
- Aufbau eines Unit-Tests
- Test Driven Development
- Gute Namen für Tests
Teil 2: Defensive Programmierung
- Fail Fast
- Weniger Code schreiben
- Object Peer Stereotypes
- Assertions und Exceptions
- One Reason to Fail
Teil 3: Selbstdokumentierender Code
- Schlumpf-Namen
- Sprache aus der Anwendungsdomäne
- Setter zerstören Objekte
- Tell, don't ask
- Fluent Interfaces
- Lesbarkeit von Boolschen Ausdrücken
- Weitere Faktoren
Teil 4: Outside-In TDD
- Mock-Objekte
- Outside-In TDD
Teil 5: Simple Design
- 4 Elemente von einfachem Design
- SOLID
- Primitive Obsession
- Entities vs. Values
- Equals und HashCode
- Inheritance vs. Composition
Teil 6: Weiterführende Themen
- Arten von Tests
- Validierung
- "Evil Unit Tests"
- Richtige Verwendung von Mocks
Korrektur-Service
So wissen Sie, dass Sie die Übungen richtig gemacht haben
Sie haben die Übungen implementiert und wollen meine Meinung dazu hören? Ich biete zusätzlich zu diesem Online-Kurs einen Korrekturservice an. Wenn Sie diesen Service buchen, können Sie mir Ihre ausgearbeiteten Übungen schicken. Ich werde Ihnen dann Kommentare zu Ihrer Lösung senden. Außerdem stehe ich Ihnen für weitere Fragen zur Verfügung.
Interessiert? Dann schicken Sie mir bitte Ihre Anfrage per E-Mail, und ich sende Ihnen ein Angebot: Business@DavidTanzer.net
Student & Startup Edition
Sie können sich den vollen Preis nicht leisten?
Sie sind Student, ein Startup, ein kleines Unternehmen oder können sich den vollen Preis aus einem andern Grund nicht leisten? Kein Problem! Schicken Sie mir eine E-Mail und Begründen Sie, warum Sie gerne einen Rabatt hätten. Wir finden eine Lösung!
Workshop Softwarequalität
Trainieren Sie die neuen Fähigkeiten vor dem Einsatz
Wollen Sie das eben gelernte noch weiter festigen? Ich biete zu diesem Thema einen dreitägigen Workshop an, in dem Sie mit Ihrem Team verschiedene Techniken rund um das Thema Softwarequalität üben und trainieren können. Alle Informationen dazu finden Sie hier: Workshop Softwarequalität
Beratung Softwarequalität
Die Techniken im Projekt einsetzen...
Wie können Sie das eben gelernte am Besten in Ihrer täglichen Arbeit umsetzen? Ich kann Ihnen dabei helfen, die Inhalte dieses Kurses in Ihren Projekten umzusetzen. Ich komme gerne zu Ihnen und analysiere gemeinsam mit Ihrem Team, was in Ihrem Projekt den größten Nutzen bringt und welche Schritte Sie als nächstes setzen können.
Ich schicke Ihnen gerne ein Angebot – Senden Sie Ihre Anfrage bitte per EMail an: Business@DavidTanzer.net
Jetzt Kaufen
Software Quality
2013-07-30
“Software Quality for Developers” is a 6-part online course that teaches software developers how to improve the quality of their applications. It teaches topics like developer testing, TDD, mock objects, object oriented design and others. Unfortunately the English version of this course is not available yet - but I am working on it. If you speak German check out the German version here: “Softwarequalität für Entwickler”.
Developer Week Nürnberg 2013
2013-06-22
The fact that you are here probably means that we either met at Developer Week (DWX13) or that you are interested in the things I presented there. Here is some Information about who I am and what I did at DWX13.
My name is David Tanzer and I am a freelancer from Linz, Austria. I work as a trainer, coach and consultant and I help teams to become/stay agile and develop better software. More information about me, including all the ways you can contact me, can be found on the home page of davidtanzer.net.
Immutable Business Objects
2013-04-11
So, mutability is evil. At least some people think so - including myself. Because of that, I have been thinking about immutable business objects for some time now, and here are some of my ideas. I don’t really know yet if these are good ideas and I have not yet tried to implement this. Maybe you could help me out here: Please send me your comments and suggestions, you can find my contact details at the bottom of this page.