Lazy Evaluation, Streams, Reactive Programming and Reactive architecture

Last year I have worked a lot on Distributed Runtime environments specially using Spring XD. Spring XD provides a way to create Streams which can process lot of flowing data in real time. Spring XD internally uses Spring Integration for most of the processing of data. However, it is impossible for any module to handle lots of data in real time. This is handled through defining protocols for message transfer which is nothing but a Queue. This queueing mechanism enables the creation of real-time streams. …

Migrating SVN Repo to Git

Recently, I had to move one of my SVN repository (loans-autoloans-duedatechanges) from SVN to Git. As there was no tag or trunk and only branch (it is weird but true) it was fairly simple. Git comes with a great Git-Svn toolkit that you can use. However, there are few caveats and I will tell you how I overcame them. …

Traceability Matrix - How important is its role in an Agile World

Requirements traceability is “the ability to describe and follow the life of a requirement, in both a forwards and backwards direction (i.e., from its origins, through its development and specification, to its subsequent deployment and use, and through all periods of on-going refinement and iteration in any of these phases)” [1]. It is primarily useful for verification and validation to make sure that the right processes have been used to build the right system. Mostly in the old world, namely, Waterfall, the way to maintain traceability was using Requirements Traceability Matrix or simply Traceability Matrix (RTM). However, from my experience,...…

Clojure and Polish Notation

Clojure is a functional programming language targeting JVM developed by Rich Hickey. It is a dialect of Lisp, which is distinctive with the use of parenthesis and Polish notation (generally referred to as Prefix notation). Clojure follows the same fully-parenthesized Polish prefix notation. It is a beautiful language. However, people get scared when they see the prefix notation and lot of parenthesis. For example, (+ 3 4 (+ 3 3 5) Recently, a question was asked on Java Ranch and I tried to answer the question to the best of my knowledge. I am just presenting it here. I can...…

Got a new bicycle!

Today in the morning Ray wanted to get out and play; he misses school when it is an off day for him from school. He wanted us to take him out but 8 am in the morning before you are even awake and in your senses. However, Priti brought out the idea that we may go to Perot Museum to which I readily agreed. At around 11 AM, we left for the Museum and went straight to see the Dinosaurs exhibit on the fourth floor. After that went to third floor for earth and energy related exhibits. The only thing...…

Book Review - Go in Action by Kennedy, Ketelsen and Martin

Go in Action sets out to do what other books lack. It is kind of an academic introduction to Golang, which is beneficial for developers who have academic interest in the language development and also for those who are looking for a little hand-holding in GoLang. The book will act as a comprehensive language specification for GoLang. …