How To Set Up GitHub Continuous Integration Pipelines With Self-Hosted Runners on Ubuntu 22.04.

Introduction Software Engineering is a fast-paced and competitive field. Rolling out your products to users faster will give you an edge over your competitors. On the bright side, industry best practices are in place to help companies have a level playing field. Continuous Integration and Continuous Development(CICD) is an example of a strategy that leverages industry best practices to give …

Containerize A Python App using Docker

Docker is a free and open-source solution for developing, deploying, and managing apps in lightweight, OS-level virtualization. In this guide, we will demonstrate creating a Python app within a Docker container. Prerequisites To perform the steps demonstrated in this guide, you will need the following components: A Linux system. Check out configuring your own Ubuntu VPS on CloudSigma. The latest …

An Overview of Queries in MySQL featured image

An Overview of Queries in MySQL

Sustainability in business is difficult without proper data management. Building a well-defined system is essential to managing internal and external operations. Detailed insight into business data helps to understand the overall workflow and measure performance. Moreover, using databases saves time and allows to access information effortlessly. What is a database? A database is an organized system used to store information …

The Architecture of Iptables and Netfilter featured image

The Architecture of Iptables and Netfilter

A firewall is a security device (hardware/software) that protects the network by filtering traffic and blocking unwanted/unauthorized access to private data. Having a proper firewall is important to protect your servers and infrastructure. It can not only block unwanted traffic but also block malicious software from infecting the system. In the Linux ecosystem, iptables is a popular firewall that interfaces …

Writing Packages in Go

In Go programming, packages are one of the most powerful features. Packages help maintain a large number of programs by grouping them together into single units. This makes code maintenance much easier. This modular approach also allows better code sharing and reuse. In this guide, we will learn about writing our own Go packages and implementing them in our projects. …

LAMP with Ansible featured image

Installing and Configuring LAMP on Ubuntu 20.04 with Ansible

Server automation is a secure and reliable process of managing and monitoring servers in an effective and tech-savvy way. Unlike the traditional style of managing servers at data centers controlled by a dedicated team of experts, all servers are managed using automation. As a result, human errors are minimized. Configuration management tools like Ansible, Puppet, Terraform, to name a few, …

Pagination featured image

Applying Pagination to Display Multiple Records using MySQL with PHP on Ubuntu 20.04

Introduction Pagination is an important concept in building data-driven applications. When pulling out the records from the database, a large number of records may be fetched. For instance, when running the query for active users or users belonging to some specific location, a large number of users in hundreds or even thousands can be returned. Displaying this huge number of …

Git Branches featured image

Using Git Branches: A Tutorial

Git is an open-source version control system (VCS) that can handle projects of every size. This DevOps tool is free and open-source (Git source code on GitHub). It tracks changes in the source code, allowing multiple developers to work in sync on a non-linear development. Git was first introduced back in 2005 by Linus Torvalds. This guide will showcase how …

Installing Drupal featured image

Your Guide to Installing Drupal on Ubuntu 20.04

Introduction Drupal is one of the most preferred Content Management Systems(CMS) for running blogs and managing enterprise content. Developers and businesses prefer it because of its robustness and usability. It is very customizable and it can be extended to implement a wide variety of use cases. In this tutorial, we will demonstrate how to install Drupal on Ubuntu 20.04 with …

R on Ubuntu featured image

Installing R on Ubuntu 21.04: A Tutorial

R is a programming language that specializes in working with data. R is free software that supports an extensive catalog of statistical and graphical methods. The list includes various machine learning algorithms, time series, linear regression, and more. It’s used by industry giants like Google, Facebook, Airbnb, Uber, etc. As the description suggests, R is the go-to option when big …

Port Forwarding featured image

Forwarding Ports with Iptables in Linux: A How-To Guide

Port forwarding also referred to as port mapping, is a method for allowing remote devices to connect to a specific service within your private local-area network (LAN). As the name suggests, the process involves forwarding requests for a specific port to another port or network. It modifies the destination of the packet in-flight and is considered a type of network …

Generating SSH Key Pairs with PuTTY featured image

Generating SSH Key Pairs with PuTTY to Connect to a VPS

Security is a prime consideration for server admins, especially when there is a need to access servers remotely at regular intervals. Protection from cyber-attacks is of crucial importance to streamline workflows and to ensure business continuity. The standard practice of using a username and password is highly insecure, unsafe, and ineffective. You need a robust and advanced method like SSH …