Shanika Wickramasinghe

What Is Terraform? Terraform & Its IaC Role Explained

Managing infrastructure is a core requirement for most modern applications. Even in PaaS or serverless environments, there will still be components that require user intervention for customization and management. With the ever-increasing complexity of software applications, more and more infrastructure modifications are required to facilitate the functionality of the software. It is unable to keep …

What Is Terraform? Terraform & Its IaC Role Explained Read More »

NodeJS vs Python: When & How To Use Both

NodeJS and Python are two of the most popular technologies for application development. Python is one of the widely adopted programming languages, facilitating developments in many areas. On the other hand, NodeJS is a runtime environment. Both are excellent for their intended purposes with overlapping use cases. In this post, we will dig into Python …

NodeJS vs Python: When & How To Use Both Read More »

Deploying PostgreSQL as a StatefulSet in Kubernetes

There are different types of applications, from single large applications to microservices-based applications that cater to different needs. When it comes to the states of those applications, there are two states: Stateless applications can be run independently in isolation without any knowledge of past transactions. Stateful applications have full knowledge of the past information (state). …

Deploying PostgreSQL as a StatefulSet in Kubernetes Read More »

Kubernetes Multi-Clusters: How & Why To Use Them

Containerized deployments offer more scalability and availability improvements over traditional deployments. Even with these improvements, complex applications can quickly overwhelm containerized environments without proper management. Kubernetes helps organizations to: Effectively orchestrate containerized environments Efficiently manage the underlying resources and user demands However, there are situations where a single Kubernetes cluster is unable to handle the …

Kubernetes Multi-Clusters: How & Why To Use Them Read More »

Using Spinnaker with Kubernetes for Continuous Delivery

In this era of fast-paced technology, more and more organizations and teams are moving towards agile practices with rapidly evolving software development lifecycles. With that, Continuous Delivery (CD) has become a major part of the DevOps process, where the whole software release process is automated—the build, the testing, the deployment. With the popularity of Kubernetes …

Using Spinnaker with Kubernetes for Continuous Delivery Read More »

How Containers & Kubernetes Work Together

Application containerization has become the norm in the IT industry. It allows organizations or developers to encapsulate the application code and all its dependencies in a portable environment so that the app can be deployed virtually anywhere. Kubernetes is a powerful, open-source orchestration service that can be used to manage containers in a containerized application. …

How Containers & Kubernetes Work Together Read More »

The Lua Programming Language Beginner’s Guide

In this article, we’ll cover the basics of the Lua programming language, including: Let’s get started. What is Lua? Lua is a robust, lightweight, and embeddable scripting language that supports multiple programming methods, including procedural, object-oriented, functional, and data-driven programming. As the primary focus on Lua is for scripting, it is rarely used as a …

The Lua Programming Language Beginner’s Guide Read More »

Testing in DevOps: Concepts, Best Practices & More

DevOps empowers smooth collaboration and communication between development and operations teams in today’s competitive software development environments. In DevOps, the two teams work together, sharing responsibilities towards achieving their primary goal: frequent and faster delivery of high-quality software that satisfies evolving customer needs. DevOps practices, along with relevant tools and technologies, drive organizations to accomplish …

Testing in DevOps: Concepts, Best Practices & More Read More »

How To Set Up a Continuous Integration & Delivery (CI/CD) Pipeline

An effective continuous integration (CI) and continuous delivery (CD) pipeline is essential for modern DevOps teams to cope with the rapidly evolving technology landscape. Combined with agile concepts, a fine CI/CD pipeline can streamline the software development life cycle resulting in higher-quality software with faster delivery. In this article, I will: (This article is part …

How To Set Up a Continuous Integration & Delivery (CI/CD) Pipeline Read More »