Category Programming

Liskov Substitution Principle

Liskov Substitution Principle (LSP) is a slick one. Violating this principle leads up to bugs which are hard to spot since the overriding subclasses change the internal state of the...

Coroutines in Java

A few months ago, as I was attending the Devoxx’18 Conference in Antwerp, Belgium, one of the most spectacular topics which I was excitedly looking forward to following, was the...

Protocols and multimethods in Clojure

Similar in Command Pattern, that we are familiar from object-orient programming, Clojure provides multimethods and protocols which enable developers to implement such runtime polymorphism while forming abstractions in functional-fashion and...

Dockerized Java Enterprise

Since Docker containers became the new virtualization layer between the operating system and the applications, Java engineers whose job was to develop web services in the SOA epoch, had to...

A Guide to Access Control for Rest Services with Spring

As service architecture grows and encompasses new services, the question, which service is authorized to run some operations throughout the back-end landscape?”, still needs to be answered: “Does the feedback...

Powermocking and OOP

Encapsulation helps us to define boundaries of data and behavior within a class, though there are mocking frameworks which bend the rules of this protection. But, if you consider, is...

Lifting in Scala

Partial functions are widely used in Scala. Just like their mathematical counterpart, a partial function, e.g f: X => Y, is a generalisation of functions, that don’t necessarily map every...

Story of flatMap()

The function flatMap, in Scala, is basically a binding element (and also a functional combinator) in the language and key to understand some important concepts of functional programming, and in...

Scala Companion Objects

It’s a very common approach to create new objects using factory methods in object-oriented programming as it is in Java. It allows us to decrease coupling between software components while...

Category Infrastructure

Mesos: A Datacenter OS

The need of orchestration of heterogeneous infrastructure, non-unified characteristics of the hardware on different server systems and fluctuating resource needs of software and the challenges in resource utilisation, urges us...

Category Random

Routine

Once you get a job, and code for others and get paid for it, you are a professional, a part of the whole, a cell in business organism and the...

Category Data Science

R in Practice: Pipes

The more I write code in R, the more I am impressed with the facilities that the language provides which is perfectly tailored to cleaning and tidying data, one of...

Category Book Reviews

How to Create a Mind (A Book Review)

The dream of emulating human brain is one of the most challenging endeavour of our time. As technological advancement is gradually speeding up and the vast amount of data giving...

Category Testing

Rhino: Load Testing Framework

Rhino Load and Performance Testing Framework is a sub-project of the Rhino umbrella project and an SDK which enables developers to write load and performance tests in JUnit style. With...