Clojure Destructuring


Clojure provides sequence abstraction over many of its data structures(even maps) which provides a lot of functions and helps working with sequential things

Clojure Abstractions

Collection Abstractions

Introduction to Clojure

##Introduction to Clojure I just started working and clojure and I am writing a series of blogs just for my self so that if I want to refer to someting quickly, I can have a look.

Introduction to Actors (Akka)

Creating Actors

  1. Extending Actor Class

Akka Actors Api - Scala


Actors are objects which encapsulate state and behavior, they communicate exclusively by exchanging messages which are placed into the recipient’s mailbox. One actor, which is to oversee a certain function in the program might want to split up its task into smaller, more manageable pieces. For this purpose it starts child actors which it supervises. The only prerequisite is to know that each actor has exactly one supervisor, which is the actor that created it.

An actor is a container for State, Behavior, a Mailbox, Children and a Supervisor Strategy. All of this is encapsulated behind an Actor Reference.

Redux vs Flux


Flux simplifies the application by providing more of a single directional data flow. This avoids a lot of the arrows that go into both directions.

Introduction to Flux


So far one of the most common architectural patterns that have been used in the we has been MVC. Though MVC has been used for last couple of decades, with the new highly interactive websites/apps it doesn’t scale that well. With the increasing number of model and views the relation between them no longer remains one to one and it sort of becomes like a web.

Scala Intricacies


Scala compiler can convert any type to Unit. For example, if the last result of a method is a String, but the method’s result type is declared to be Unit, the String will be converted to Unit and its value lost.

Scala - Classes and Objects


``` class Employee { var name = “Name” }

Why OSGi - Part 1 : Module - Private Access

The access modifiers for Java are of real help for smaller projects, But for enterprise level projects they don’t suffice the needs. Let’s try to understand by taking some examples. Suppose you are working on a multi module project is which you create JARs for each module, and then use these JARs in a parent project. Each of these JARs will consist of several packages.

Docker vs VM

In the last blog post I talked about the basic concepts of “Containers” and about Docker’s components that makes it easy to work with containers. Since Docker is a virtualization technology, to understand its benefits and drawbacks, we should be clear with how it differs from the currently most widely used virtualization technology “Virtual Machines”.

Understanding Containers and Docker

Containers provide a lightweight and high-speed alternative to Virtual Machines. Containers run inside a host operating system and provide very convenient way of application process and network isolation. A virtual machine runs its own kernel and operating system, whereas container shares its kernel with the host operating system. Even though there can be multiple containers running on the host machine, each of these containers containers is completely isolated from one another.

Introduction to Senna.js

Problem Statement

As we have seen in the last blog that the architecture of SPA greatly differs from the architecture of conventional apps. Hence, SPA approach works fine with the application that needs to be developed from scratch. But refactoring of the huge application that have already been developed is sometimes not feasible. For project that had costed around $10 million, making it SPA can cost another $2 million. Now this is just the upfront cost. Then there will be opportunity cost as for the next 6 months or an year, there might be no new features as most of the team would be involved in refactoring.

What are Single Page Apps ?

Single page apps or Websites are the websites that load the page upon first request and there is no page refresh on all the subsequent actions of the user. So when the first request goes to the server, the server responds with an HTML page which has link to one of the JavaScript Frameworks.