Creating Cloudwatch Dashboards per Environment with Python

Reading Time: 5 minutes


Show Me The Code Already

After installing Cloudwatch Agent to the machines you want to monitor, it’s time to create dashboards to view real-time metrics.

There are some ways to create Cloudwatch Dashboards such as creating them manually by selecting widgets from AWS Console, with Cloudformation etc.

I’ve decided to create them with Python because in DevOps literature, there is no such a thing as manually creating something. I also didn’t want to use Cloudformation because I like scripting and we have many applications to monitor in our company, thus, I needed something to iterate over our environments and create dashboards for each of them.

Continue reading

Monthly DevOps News #1

Reading Time: 3 minutes


Monthly DevOps Track #1 – 14/07/2018

Some great posts this month on important topics, including the economics of serverless, management in organisations adopting devops, and the importance and risks of metrics and measurements.


1 -) An excellent, detailed analysis of the economics of serverless – looking at when EC2 pricing is more efficient than AWS Lambda. Lots of data and the assumptions made.

2 -) A post on the human scalability of devops. Lots of good points, although the arguments are based on a specific definition and a startup usecase. In my experience large organisations are better about the non-fungibility of engineers.

3 -) Metrics and measurement are important parts of adopting devops but using the wrong metrics, or not evolving those metrics as your organisation evolves, can be problematic.

4 -) Some interesting, practical, observations around managing teams adopting devops practices. Devops tends to encourage multi-functional teams, but what management structures best support those functions working well together?

Continue reading

Linux vs Minix vs UNIX vs POSIX

Reading Time: 3 minutes


First of All, What is Linux?

You see, there is a contradiction on what Linux really is. We see that people refer Linux as an Operating System but on the other hand, some people say that Linux is a kernel. Well, let’s put it this way.

In fact, Linux is a kernel written and named by Linus Torvalds which you can take a look from When you think about it, kernel is a useless thingy if there is no software using it since kernel manages hardware based on software inputs.

At this point, we have a cute kernel with us.

On the other hand, Richard Stallman initiated GNU Project, aiming to create a free Operating System with free tools. They were pretty succesful with the mission but there was one thing missing. A proper kernel to manipulate hardware by these tools.

Now in addition to a kernel, we have these pretty GNU Project tools with us.

Both Linux and GNU Project were written with the same UNIX mindset therefore, both were compatible. Hence, they mixed Linux and GNU Project together and crafted this magnificent Full-Operating System called “GNU/Linux”.

But even this kind of bare Full-Operating System GNU/Linux was still not really useful since you couldn’t run applications you wanted such as Web Browser, E-mail etc.

To fulfill this emptiness, distributions such as RedHat, Debian, Arch have come into play. They have provided GNU/Linux with user-specific applications.

To cut a long story short, today people often just use the name of the central kernel to refer to the whole system.

It is for you to decide what you call an “operating system”. Is it just the thing that manages hardware (like Linux) or is it the thing you interact with (like your favorite desktop environment), or maybe something in between like a basic (command line based) GNU/Linux.

Continue reading