Sherlock Versus Calvin Ball

We can classify software development into: 1. Maintaining and enhancing existing software. 2. Software development from scratch. Given a choice between the two, developers usually gravitate towards from scratch development. Developing something from scratch is an intensive creative work where you have the freedom to shape the product the way you see fit. Hence, it … Continue reading Sherlock Versus Calvin Ball

Switching Languages

Many are apprehensive about switching programming languages. It is perfectly fine to have preferences - I am heavily biased towards statically typed languages with great tooling support, but being dogmatic is not something one should aim for. What could be the downsides of switching programming languages? I am disregarding the psychological aversion to change and … Continue reading Switching Languages

Nothing is sacrosanct

There is an interesting bug opened against Kafka. For those of you too lazy to click on the link and read through the description, I am reproducing it here in full.It appears that validation of configuration properties is performed in the ConsumerConfig and ProducerConfig constructors. This is generally bad practice as it couples object construction … Continue reading Nothing is sacrosanct