For example, one might like using MapReduce or Kafka Streams for their programming paradigms, not for the redundancy or scale they provide.
Another example, Kubernetes, which makes it trivial to run containers and attach storage to them.
For example, one might like using MapReduce or Kafka Streams for their programming paradigms, not for the redundancy or scale they provide.
Another example, Kubernetes, which makes it trivial to run containers and attach storage to them.
You'd think so, right? But what happens to me all the time is I try to use "small-scale" tools to handle some small problem, and then I find myself writing glue code that's already implemented in, say, Kafka Streams. So I might as well just run one Kafka broker locally and write a Kafka Streams application. Or the same with the Django ORM, which I reach for all the time just because I don't like writing database access code when I can write up some models and be done with it. Every time I reach for "small" tools I end up writing tons of code that's not actually solving my immediate problem or question.