Jenkins X - a Cloud-Native approach to CI/CD

Jenkins X - a Cloud-Native approach to CI/CD

Jenkins X is a project which rethinks how developers should interact with CI/CD in the cloud with a focus on making development teams productive through automation, tooling and DevOps best practices.

In this blog, we explore Jenkins X, understand how it differs from Jenkins and how to go about building and deploying our first application using it.

A Beginner's Guide to Edge Computing

A Beginner's Guide to Edge Computing

There is a recent trend in change in architecture of the way data is stored and compute is done. Edge computing is one of such phenomena in which either the data or the compute is decentralized and taken to the nearest nodes of the user it can either be smartphone or local region servers.

In this blog we will delve into what Edge Computing really is, it’s various types, and see how it is implemented and managed in the real world.

Deploy serverless, event-driven Python applications using Zappa

Deploy serverless, event-driven Python applications using Zappa

Zappa makes it super easy to build and deploy server-less, event-driven Python applications (including, but not limited to, WSGI web apps) on AWS Lambda + API Gateway. Think of it as "serverless" web hosting for your Python apps. That means infinite scalingzero downtimezero maintenance - and at a fraction of the cost of your current deployments!

This blog acts a simple tutorial to deploy a sample Django/Python application using Zappa.

Demystifying High Availability in Kubernetes using Kubeadm

Demystifying High Availability in Kubernetes using Kubeadm

Kubernetes allows deployment and management container-based applications at scale. One of the main advantages of Kubernetes is how it brings greater reliability and stability to the container-based distributed application, through the use of dynamic scheduling of containers.  But, how do you make sure Kubernetes itself stays up when a component or its master node goes down?

In this blog we look at the steps to ensure that your kubernetes cluster is always highly available and fault tolerant.

Exploring Upgrade Strategies for Stateful Sets in Kubernetes

Exploring Upgrade Strategies for Stateful Sets in Kubernetes

In the age of continuous delivery and agility where the software is being deployed 10s of times per day and sometimes per hour as well using container orchestration platforms, a seamless upgrade mechanism becomes a critical aspect of any technology adoption. In this blog we explore the various upgrade strategies available for Statefulsets in Kubernetes with Cassandra as the database.

Exploring OpenAI Gym: A Platform for Reinforcement Learning Algorithms

Exploring OpenAI Gym: A Platform for Reinforcement Learning Algorithms

According to the OpenAI Gym GitHub repository “OpenAI Gym is a toolkit for developing and comparing reinforcement learning algorithms. This is the gym open-source library, which gives you access to a standardized set of environments.”

Open AI Gym has an environment-agent arrangement. It simply means Gym gives you access to an “agent” which can perform specific actions in an “environment”. In return, it gets the observation and reward as a consequence of performing a particular action in the environment.

Lessons learnt while building an ETL pipeline for MongoDB & Amazon Redshift using Apache Airflow

Lessons learnt while building an ETL pipeline for MongoDB & Amazon Redshift using Apache Airflow

Recently, the author was involved in building a custom ETL(Extract-Transform-Load) pipeline using Apache Airflow which included extracting data from MongoDB collections and putting it into Amazon Redshift tables. 

Each ETL pipeline comes with a specific business requirement around processing data which is hard to be achieved using off-the-shelf ETL solutions. This is why a majority of ETL solutions are built manually, from scratch. In this blog, I am going to talk about my learnings around building an optimized, efficient, near real-time and fault tolerant custom ETL solution using Apache Airflow which involved moving data from MongoDB to Redshift.

Real Time Text Classification using Kafka and scikit-learn

Real Time Text Classification using Kafka and scikit-learn

Text classification is one of the important tasks in supervised machine learning (ML). Assigning categories to text, which can be tweets, facebook posts, web page, library book, media articles, gallery etc. has many applications like spam filtering, sentiment analysis etc.

In this blog we build a text classification engine to classify topics in an incoming Twitter stream using Apache Kafka and scikit-learn - Python based Machine Learning Library.

Web Scraping: Introduction, Best Practices & Caveats

Web Scraping: Introduction, Best Practices & Caveats

Web Scraping is the process of data extraction from various websites present over the internet. Web Scraping has a wide variety of use cases. Marketing & Sales Intelligence companies use web scraping to fetch customer related information, Real Estate Tech companies use web scraping to fetch real estate listings, Price Comparison Portals use web scraping to fetch product and price information from various e-commerce sites. This blog is meant to be a primer on building highly scale-able scrappers. The blog will cover different ways to scrape, how to scrape at scale and guidelines while writing scrappers.

Building Stateless Bots using Rasa Stack

Building Stateless Bots using Rasa Stack

This blog aims at exploring the Rasa Stack to create a stateless chat-bot. We will look into how, the recently released Rasa Core, which provides machine learning based dialogue management, helps in maintaining the context of conversations using machine learning in an efficient way.

We will also build a sample chatbot using Rasa Core.

Continuous Deployment with Azure Kubernetes Service, Azure Container Registry & Jenkins

Continuous Deployment with Azure Kubernetes Service, Azure Container Registry & Jenkins

This blog talks about Azure's Kubernetes as a Service offering - AKS. I came across various issues while setting up AKS and its container registry so wanted to share some gotchas.

Finally, this blog provides the steps to setup continuous deployment pipeline with Azure Kubernetes Service, Azure Container Registry & Jenkins.

Chatbots with Google DialogFlow: Build a fun Reddit chatbot in 30 minutes

Chatbots with Google DialogFlow: Build a fun Reddit chatbot in 30 minutes

Google DialogFlow (formerly, api.ai) is a platform that provides a use-case specific, engaging voice and text-based conversations, powered by AI. In this blog, we will learn about DialogFlow and proceed to build a chatbot that can interact with Reddit.