ANAND MANI SANKAR thoughts.toString( )

Jekyll Starter: Scaffold a blog in seconds with Yeoman

Since there were a few requests to re-use my blog as a template, I decided to create a bootstrap based on my blog, called Jekyll Starter. I’ve also created a Yeoman based generator to easily scaffold a Jekyll based blog and generate new post templates within it.

If you are new to Jekyll, you can read my earlier posts on why I chose Jekyll as a blogging platform, how to set-up a blog with Jekyll and Github Pages Part 1 and Part 2.

What is Jekyll Starter?

Jekyll Starter is a bootstrap project for quickly creating a blog site based on Jekyll. The starter project provides a foundation based on Lanyon, which is a flavor of Poole.

In addition to the clean, minimalistic styling borrowed from Lanyon, Jekyll Starter provides the following functionality out-of-the-box:

Continue reading...

Internet of Things: The Good, the Bad and the Ugly

IoT- the good, the bad and the ugly

Internet of Things (IoT) is a phrase gaining foothold in the international lexicon of technology. It refers to the growing number of everyday objects that are able to connect to the internet and communicate with each other.

The Internet of Things (IoT) is the interconnection of uniquely identifiable embedded computing devices within the existing Internet infrastructure.

Kevin Ashton coined the term “Internet of Things” to describe a system where the Internet is connected to the physical world via ubiquitous sensors. The ‘thing’ could be anything from a shoe, watch to medical instruments and household devices. But a ‘thing’ needs to have certain qualities to be part of the ‘Internet of Things’.

Continue reading...

AngularJS: The Provider Subsystem

In my previous post, I did a deep-dive into the injector sub-system of AngularJS, which plays a very significant role in managing the dependency injection mechanics of the framework. Another equally important player in supporting dependency injection is the provider, also referred to as $provide.

The injector needs to know how to create the objects that are to be injected, and the provider has precisely this knowledge. That’s how they work together!

In this post, I’ll get into the details of how the provider works, the different ways in which you can create custom services and some details on an elegant design pattern built into the provider.

Continue reading...

AngularJS Dependency Injection - Demystified

One of the features that I really like in AngularJS is its use of dependency injection across the framework. I listed it as one of the best features of Angular in my last post. And as promised, I’ll try to cover this topic in a little more detail here.

What is Dependency Injection?

Dependency Injection is a software design pattern in which an object is given its dependencies, rather than the object creating them itself. It is about removing the hard-coded dependencies and making it possible to change them whenever needed.

Continue reading...

AngularJS: The Best Parts

Having concluded my blog series on ‘Jekyll’, I decided to move on to a topic that I have been glued to for sometime now - AngularJS.

Having worked on web technologies for a few years now, I have some experience working with a few JavaScript frameworks and libraries. Surprisingly, AngularJS turned out to be a very different beast.

The superheroic Javascript MVW framework

AngularJS is a structural framework for building dynamic web applications. It is not a library. So, by the principle of ‘inversion of control’, the developer is expected to code following certain rules and guidelines laid out by the framework.

Angular is opinionated about how a dynamic web application should be built. And almost all of the opinions are backed by strong design principles and justifications. It also simplifies the application development process by abstracting a lot of the internal complexity and exposing only what the application developer needs to know.

Continue reading...