How many times do we ask ourselves, "what could I have done differently"? It would be nice if software development teams would put more emphasis in creating guidelines to make difficult decisions
On the 2nd part of this series, we'll look into how to separate the task of building HTTP responses using our web framework of preference from our web service implementation and how this separation simplifies test specs and makes our code DRY.
This is the 1st part of a series of articles about how to use higher order functions to create modular (and hence maintainable) programs. On this article, we explore what separation of concerns is and introduce a case of study where we'll refactor a complex function into a group of smaller ones.