Increasing expenditure on modern infrastructure and construction activities coupled with growing focus on the adoption of energy-efficient HVAC systems, drives the demand for HVAC system across the globe. The global HVAC market is likely to ascend from USD 182.1 billion in 2019 to USD 243.5 billion by 2027, at a CAGR of 4.5% over the forecast period (2020–2027) according to QuantAlign Research.

Image for post
Image for post

The world has been witnessing a significant growth in the residential and commercial construction activities which is anticipated to fuel the market demand over the coming years. Moreover, governments across the world are implementing new rules and policies to promote energy efficiency for HVAC systems which is accounted to hold major share of electricity consumption. Thus, there is growing demand for better and efficient cooling solutions in the construction industry prompting the replacement of old cooling systems. …

Image for post
Image for post
Photo by Scott Webb on Unsplash

We all love slacking and we all love slack. See what I did there.. wink. Its the new bad boy of the corporate messaging market. It pretty much blows all of the other messaging solutions out of the water including skype and lync with its slack app add-on’s. In this post we will talk about one such add on that I wrote recently to setup an integration between Rally and Slack.

Personally I am more of an Jira guy but this customer that I was working with recently, had all its teams using Rally. …

With use of OpenCV

Image for post
Image for post
Image Processing


Image Processing and Machine Learning, the two hot cakes of tech world. Did you know that we are the most documented generation in history of humanity. Every minute a whooping 1.78 million GB data gets produced online !!!. That’s a lot of data and a big chunk that of data is images and videos. This is where automated image processing and machine learning comes in.
There never has been an more awesome time to be a geek. …

Vagrant is an wonderful tool if you have a need to provision throw away development envs every now and then. I usually use vagrant to provision vm locally for any new poc that I am working on and once all looks good locally, I can choose to throw away the local setup or archive it for future use.

Ansible is an python based, agent less, automation engine which is use to automate configuration management across various hosts remotely and securely.

Since vagrant gives me the option of spinning off throw away vms on the fly, its a good fit if you are testing waters out with ansible. …

Date Thu 13 September 2018 Tags Python / Image Processing

This is the continuation of my previous blog where we learned, what is fourier transform and how application of high pass filter on fourier transform of an image can potentially help us with edge detection. In case you missed it, please find it here :

Edge detection in images using Fourier Transform

In this post we are gonna learn about two other types of filters and see how can they help us in image analysis :

  • Low pass filter
  • Band pass filter


I’ll quickly go over the the concept of filters in the context of Fourier transform again. I am reproducing it as is from my last post here…

Often while working with image processing, you end up exploring different methods to evaluate the best approach that fits your particular needs. I am going to talk about one such approach here, Fourier Transform.

What is Fourier Transform?

In the simplest terms, a Fourier Transform helps in breaking down an incoming signal into its building blocks. For example, consider a signal f(x) having made by superimposing two or more sinusoidal functions with different frequencies. Now by just looking at the plot of f(x) you won’t be able to decide what or how many original functions were used to form f(x).

This is where Fourier does its magic. By passing f(x) through a fourier transformer, we get a new function F(x). What’s sweet about F(x) is that it’s a plot of frequencies that made f(x) originally. So, just by looking at F(x) you can tell what original frequencies were, that were used to form f(x). In doing so Fourier transform can reveal important characteristics of a signal, namely, its frequency components. …

Image for post
Image for post

With the kind of pace that industry works in now, I don’t think that this even qualifies as a valid topic of discussion anymore. Of course automation is necessary. I myself started out as a build and release guy in IT and transitioned over to DevOps, so automation is kind of like my bread and butter. However in this blog, I would like to talk about the “side-effects”, if you will, that have been kicking in for past decade because of this rampant automation in IT and about.

Over the last few years that I have worked as an Automation expert in IT, I have seen a disturbing pattern developing among the IT people. There has been a rush to develop tools and technologies to better user experience. And that’s what IT is supposed to do. isn’t it? However somewhere along the way, we as developers also started seeing ourselves as users and started writing software to better developers experience. Nothing’s wrong with that either. What’s wrong IMHO is the kind of abstraction that these software provides is now dumbing down an entire generation of developers. It’s their unsatisfiable need of abstracting everything behind a pretty screen that worries me. I’ve had teams of developers, with plenty of experience, spending hours upon hours on a rather trivial issue, just because they never thought to look into the server logs for errors. The logs dashboard dint’t had the right filter defined and developers never knew where to look for logs. Command line is like a world of past now and frowned upon in most of developers communities. A build gets failed and no one has a clue as to was it a compilation error or configurational. Setting up a local instance of tomcat is now no longer a trivial task. Linux is now treated as a this mystical place like Narnia that everyone talks about but no one really knows what goes on. Is this the kind of development practice that we want to cultivate ? Its like doctors expecting scalpel to perform the surgery while they watch. A software is only as good as a person writing it. …

Image for post
Image for post

Better not give up, before you try,
Better not die, before you die.

Understanding CORS

CORS or Cross Origin Resource Sharing is an http mechanism to let a user gain access to resources located on a domain other that the one the site lives on by using some additional headers. So for example lets say your app located on needs to make a REST call to an api located on

Now By default a browser wouldn’t allow such a request. This is done for http security reasons. What that means is a browser wouldn’t allow a request made from within a script on a webpage to access any HTTP resources located on a domain other than the one site was originally loaded from. For example both XMLHttpRequest and the Fetch API follow same-origin policy. Thats where CORS comes in. CORS facilitates this behavior by first validating

Installing CUDA and cuDNN on windows 10

This is an how-to guide for someone who is trying to figure our, how to install CUDA and cuDNN on windows to be used with tensorflow.

It should be noted that at the time of writing this, tensor flow is supporting only upto CUDA version 9.0 and corresponding cuDNN libraries so please don’t download CUDA 9.2.

Installing CUDA 9.0 on windows.

Pre requisites :

Please note if your connection permits, please download the local version. …


Akshay Sinha

A Utopian Dreamer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store