Microservices – Panacea or just another pattern?

Microservices is the keyword these days. And it is solving many problems, helping applications become agile and the support team getting better sleep. But, as it is catching the fire, it also raised eyebrows – is it necessary to have microservices in my application? The other day, I faced this question from such an angle. And, here I want to express my thoughts and experiences with microservices. First, let us accept that Microservices is just another design pattern. Each design pattern has a scope and is actually a path or approach to the solution to a design problem. So, microservices

Continue reading

XML Data Storage and XmlSerializer : The easy data store

Earlier I worked in an application where the data storage was XML and we spent quite some time designing the XSD and finalising what tags will be there for storing the different data. This is quite trivial when we need to use it as a datastore and the application need to be able to get some specific data out of it or we need some query implementations on top of this data storage. Sometime back, in a team that I was associated with, needed a small datastore for some hierarchical data. The requirement was to get the data loaded into

Continue reading

Importance of Up-Front Design or formal design discipline

Design-before-you-code is a school of thought that believes that what code is to be done (or what classes to be made and how they will interact) should be thought of and documented, reviewed looking at alternatives and also checking for the necessary and sufficient condition of fulfilling the need with probable extensibility in case of changes. So if we see, any one who is not doing "design" before coding, must also be having these thoughts in mind while firing up the code editor and writing the classes and its methods. If someone is thinking about the classes and its interaction,

Continue reading