The word opinion has two distinct meanings according to the Oxford Dictionary: A view or judgement formed about something, not necessarily based on fact or knowledge. A statement of advice by an expert on a professional matter. Synonyms to the word opinion are: belief, judgement,...
If you are working on a node project there may come a point where your app has a dependency on another custom module you have created. For example, at one of our clients, my colleagues and I are responsible for a shared component called the...
My team have been working on improving the performance our API, and identified a database call as the cause of some problems. The team suggested three ways to tackle this problem: Scale up the database till it can meet our requirements. Introduce some light-weight caching...
Scala can be used to build Android applications, as an alternative to Java or Kotlin. Unlike them, setting up an Android project in Scala with SBT is not straightforward, and can give us some headaches to get it right. To show how this can be...
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...
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...
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...
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...
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...
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...
Software is our passion.
We are software craftspeople. We build well-crafted software for our clients, we help developers to get better at their craft through training, coaching and mentoring, and we help companies get better at delivering software.