Recently, at E-Bee, I developed a framework for enabling Micro Services using Apache Camel. I have always been a big fan, nay, a fanatic, of modularisation. Combine the modularisation concept with the notion of Micro services and you would stipulate that all modules need to expose Micro services. All the services that are available from one module must […]
“Why it is simply impassible!
Alice: Why, don’t you mean impossible?
Door: No, I do mean impassible. (chuckles) Nothing’s impossible!”
– Lewis Carroll, Alice’s adventures in Wonderland and Through the looking glass
This entry is part 2 of 9 in the series Software Engineering & AgilityTechnical debt has been mentioned in multiple blogs. Ward Cunningham apparently coined the term. As a software product starts acquiring more and more features and thence complexity; it tends to degrade in certain ways technically. If all potential product features are documented in a […]
The Micro Services Architecture has emerged as yet another old wine packaged in a spanking new bottle. Thought Works and Netflix have published this architecture to the multitude with their blogs and frameworks. People have jumped into the bandwagon and have deployed Micro Services for multiple situations. Look at this video for instance. There are […]
This entry is part 1 of 2 in the series Architecture Viewpoints and perspectivesIt is one of software’s little ironies that most architects would fervently wish to see their software run forever and yet fail to foresee how the system would be maintained after it goes LIVE. This is where the operational viewpoint shines. This view point […]
This entry is part 2 of 2 in the series Architecture Viewpoints and perspectivesLegend has it that Bill Gates was the first self proclaimed software architect. Then the fad caught on and the rest is history. Everyone wants to now be part of this selective fraternity. So much so that it is hard to fling […]
Event Driven Architecture (EDA) is a paradigm that I became familiar with when I was coding the earliest GUI components. The user interaction with a GUI application is modeled as a series of events that the application responds to. There is an “infinite loop” of events which can potentially be engendered by user interactions with […]
This entry is part 5 of 9 in the series Software Engineering & AgilityAs I think back about all the failed projects that I had seen, I recognize one unifying feature about them. They all took too long to ramp up! I am not saying that they did not spend enough time on design or […]
This entry is part 3 of 9 in the series Software Engineering & AgilityI was doing an estimation review recently. At first blush, I am instinctively uncomfortable about anything that requires a high degree of predictability in software development since that is going to be violated if you are ever intending to produce software that could be […]
This entry is part 1 of 9 in the series optimizationIf we elevate ourselves enough to sit on a figurative perch in the programming world and look down at the applications that are being developed, we realize that Inversion of Control (IoC) containers have most definitely come here to stay. You see more people than […]