• en | es

Approaching Outside-in TDD on Android III

In the previous post, we wrote the acceptance test as a first step and started creating the classes on the entry points of our system. In this post, we will finish implementing the system, and will summarize what we have learnt during the process. Inner...


Visualise interruptions on a LEGO Wall

I had the privilege to attend the Certified Scrum Product Owner course at Skills Matter. During the two-day course, I learnt many techniques to deliver value efficiently, and I am going to share a less widely known tool to help teams visualise interruptions. Keeping track...


Database Testing With tSQLt

Evolutionary Database Development, as coined in Martin Fowler’s book Refactoring Databases, is a concept whereby the design of the database is not done upfront, but instead is done in a way that evolves as the software that is relying on the data store does. In...


What I wish I knew when I started as a software developer

Having worked in the software engineering field for 6 years, I sometimes pause and consider how much I have learned since I started my career. One thing that strikes me is how many things I would want to tell just-out-of-college me if I had the...


When a good architecture helps you in your UI design iterations

I’m currently working on an internal app for Codurance, which started as a pet project while I was working with my previous client. I started the project with one simple goal: to make it work. After six or seven months of trying to put it...


Complex refactoring in simple steps Part II

Screencast - Complex refactoring in simple steps, Part II: Steps towards Polymorphism Matthew Butt demonstrates how to compose simple automated refactoring steps in ReSharper to refactor code to better designs. In this episode we spot a conditional with three branches. We Decompose this Conditional to...


Approaching Outside-in TDD on Android II

In the previous post, we introduced the Bank kata. We explained how we are going to implement it in Android, reviewed the different kinds of tests that we use in Outside-in and transformed a user story into a bunch of acceptance criteria. In this second...


Approaching Outside-in TDD on Android I

Outside-in Test-Driven Development (TDD) can be a challenge to implement. In this 3-part post series, Christian and I would like to share our experiences applying it to Android development and offer some practical tips for doing so yourself. In this first post of the series...


Codurance Barcelona

We are very happy to announce that we have opened a new office in Barcelona. Why Barcelona? Barcelona has a vibrant Software Craftsmanship community which is very aligned to our values at Codurance. We hope to provide a home for some of the talented developers...


Bowling Kata in Kotlin

Screencast - Bowling Kata in Kotlin Sergio Rodrigo implements the Bowling Game kata in Kotlin using TDD, showing some of the features of the language, such as support for Functional Programming (Higher Order Functions, Lambdas and built-in functions), Pattern Matching, Extension Functions, Expression Bodies, and...


Subscribe to newsletter