How to approach TDD for the 1st time?

TDD is not an easy concept to begin with. Even though writing a unit-test is a rather obvious task, many developers restrain themselves from trying to build a new feature in a test-first approach. The article shows how to start doing TDD on a real-life usage scenario.…

Imperative shell, functional core

Imperative shell, functional core is one of the concepts that influenced my programming career the most. It perfectly formulates how to write clean, easily testable code and always keeps you wondering whether you did enough to extract the functional pieces. During my preparations for the Mobile Warsaw #62 talk I…

UI testing iOS apps for humans

No one likes to be blamed for the mistakes. This is especially true for software engineers. Over the years they came up with countless ideas which make software development less fragile and error-prone. It is safe to say that ever growing number of precaution steps taken to maximize the quality…