# Recent Posts

# Inverse Transform Sampling and Maximum Likelihood Estimation

-- Introduction In this blog post we are going to look at how we can generate a random sample out of a random variable, and then look at the maximum likelihood method for estimating the parameters of distribution of that random variable. Generating a random sample Let's assume we have a sample $x_1,...,x_n$ out of a sequence of i.i.d. random variables $X_1,...,X_n \sim X$, where X for example has Poisson distribution with parameter $\theta$.

read more
# Functional Programming With Javascript. Part 2

In Part I of Functional Programming with Javascript we explained what Functional Programming is, i.e. a programming paradigm where programs are constructed by applying and composing functions. We explained the concepts of state, pure and impure functions, higher order functions. We left with the JavaScript functions being first class citizens and showed a Dynamic Programming technique called memoization. In this article we are going to explain what a closure is and delve into more advanced functional programming constructs using the closure.

read more
# Using Data Mapper in Angular 2

In this post I'm going to show you a way of separating your concerns when it comes to dealing with the network communication of your application. First, lets start with a simple diagram.
Data Mapper is an architectural pattern for separating the business logic of your domain model from the network communication logic. A Data Mapper is a Data Access Layer that performs bidirectional transfer of data between a persistent data store (often a relational database) and an in memory data representation (the domain layer).

read more