Mohammad Abu Mattar
I’m a Software Engineer/DevOps Engineer passionate about software development and automation. With expertise in building web applications and automating infrastructure, I thrive on tackling challenges and delivering efficient solutions. I’m deeply committed to contributing to the open-source community whenever possible.
Git SSH Keys for GitHub, GitLab, and Bitbucket on Linux
Introduction Git connects to remotes by default via HTTPS, which requires you to enter your login and password every time you run a command like Git pull or git push, using the SSH protocol. You
read moreDotfiles: A Git-Based Strategy for Configuration Management
Keeping your dotfiles — those hidden configuration files that dot your home directory — both safe and easily accessible across various machines can seem daunting. However, with the strategy outlined
read moreSetting up Node JS, Express, MongoDB, Prettier, ESLint and Husky Application with Babel and authentication as an example
Introduction All code from this tutorial as a complete package is available in this repository. If you find this tutorial helpful, please share
read moreSetting up Node JS, Express, Prettier, ESLint and Husky Application with Babel and Typescript: Part 1
Introduction All code from this tutorial as a complete package is available in this repo
read moreSetting up JWT Authentication in Typescript with Express, MongoDB, Babel, Prettier, ESLint, and Husky: Part 2
Introduction Why do we even need an authentication mechanism in an application? in my opinion, it doesn't need to be explained. The phrases authentication and authorization have likely crossed yo
read moreHow To Create A Custom VPC Using AWS CLI
Introduction In the sample that follows, an IPv4 CIDR block, a public subnet, and a private subnet are all created using AWS CLI instructions. You can run an instance in the public subnet and con
read moreIntroduction to Linux CLI
Introduction The Linux operating system family is a group of free and open-source Unix systems. They consist of Red Hat, Arch Linux, Ubuntu, Debian, openSUSE, and Fedora. You must utilize a shell
read moreVIM Cheat Sheet
What Is a VIM? VIM is a text editor that is available on most Linux distributions. It is a powerful text editor that can be used to edit files from the command line. It is a modal text editor, wh
read moreCustomization Windows Terminal With Starship
Introduction In this article, we will learn how to install PowerShell and Starship, how to configure the Windows Terminal, and how to customize the Windows Terminal with Starship. What Is a
read moreGit SSH Keys for GitHub, GitLab, and Bitbucket on Windows
Introduction Git connects to remotes by default via HTTPS, which requires you to enter your login and password every time you run a command like Git pull or git push, using the SSH protocol. You
read moreHow to Install and Setup FireWall on Amazon Linux 2
Introduction We will learn how to install and setup FireWall on Amazon Linux 2 in this tutorial. We will also discover how to set up FireWall so that it functions with the Amazon Linux 2. Pre
read moreHow to Install Apache Web Server on Amazon Linux 2
Introduction In this tutorial, we will learn how to install Apache web server on Amazon Linux 2. We will also learn how to configure Apache web server to run simple HTML web page. Prerequisit
read moreHow to Install PHP and MariaDB on Amazon Linux 2
Introduction We will learn how to set up PHP and MariaDB on Amazon Linux 2 in this tutorial. We will also discover how to set up PHP so that it functions with the Apache web server. We will also
read moreHow to Install WordPress on Amazon Linux 2
Introduction We will learn how to install WordPress on Amazon Linux 2 in this tutorial. We will also discover how to set up WordPress so that it functions with the Apache web server. We will also
read moreHow To Create An AWS EC2 Instance Using AWS CLI
Introduction We will learn how to create an AWS EC2 instance using AWS CLI in this tutorial. We will also discover how to set up an AWS EC2 instance so that it functions with the Apache web serve
read moreHow to Run an Apache Web Server Using Docker on an AWS EC2 Instance
Introduction In this post, we will learn how to run an Apache web server using Docker on an AWS EC2 instance. We will use the following tools:AWS EC2 [Docker]
read moreHow to Create a AWS RDS MySQL Database and Connect to it using MySQL Workbench
Introduction RDS is a managed service that makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while automating time-
read moreHow to Install and Configure Node.js on EC2 Instance Amazon Linux 2
Introduction Node.js does not exist in the default Amazon Linux 2 repository. So, we need to add the Node.js repository to the system. In this post, we will learn how to install and configure Nod
read moreHow to Connect to AWS RDS MySQL Database to EC2 Instance With PHP By Using PDO
Introduction In this post, we will learn how to connect to AWS RDS MySQL Database to EC2 Instance With PHP By Using PDO. PrerequisitesAWS Account EC2 Instance Amazon Linux 2 RDS MySQL
read moreSetup Nextjs Tailwind CSS Styled Components with TypeScript
Introduction In this post, we will setup Nextjs Tailwind CSS Styled Components with TypeScript, and we will use the following tools:Nextjs Tailwind CSS Styled Components TypeScript
read moreWhat is a CI/CD?
Introduction Continuous Integration and Continuous Delivery are two of the most important concepts in DevOps. In this article, we will discuss what is a CI/CD and how it can help you to improve y
read moreHow To Create a DynamoDB Table Using AWS CLI
Introduction In this article, we will learn how to create a DynamoDB table using AWS CLI. We will also learn how to add items to the table and how to query the table. Prerequisites To follow
read moreHow To Create a AWS S3 Bucket Using AWS CLI
Introduction In this post, I will show you how to create a AWS S3 bucket using AWS CLI. Prerequisites You need to have:AWS CLI installed and configured AWS S3 bucket nameAWS S3 Bu
read moreHow To Connect A Two EC2 Instances Data Transfer Using AWS CLI Without AWS EFS
Introduction In this post, I will show you how to connect a two EC2 instances data transfer using AWS CLI without AWS EFS. We will use AWS S3 bucket to transfer data between two EC2 instances. W
read moreHow Version Number Software Works
Introduction Introducing new package versions in systems with a lot of dependencies may rapidly turn into a headache. You run the risk of experiencing version lock if the dependency specification
read moreHow To Connect A Two EC2 Instances Database and Files Transfer Using AWS CLI
Introduction In this post, I will show you how to connect a two EC2 instances database and files transfer using AWS CLI. I will use AWS CLI to create a VPC, EC2 instances, EBS, EFS, and security
read moreHow To Connect A EBS Volume To An Windows EC2 Instance Using Powershell/GUI
Introduction In this post, we will learn how to connect a EBS volume to an Windows EC2 instance using Powershell/GUI and also how to mount the EBS volume to the EC2 instance. Prerequisites
read moreWhat is DevOps?
What is DevOps, and why is it important? The name "DevOps" is a combination of the terms "development" and "operations," although it refers to a far broader range of principles and procedures tha
read moreReact With Redux Toolkit
Prerequisites This post assumes that you have a basic understanding of React and Redux. and it will be better if you have some experience with React Hooks like useReducer. Introduction Now
read moreRun TypeScript Without Compiling
Introduction In this post, I will show you how to run TypeScript without compiling it to JavaScript. This is useful for debugging and testing. In this post, I will show you how to do it. Setu
read moreHow to Install Jenkins on AWS EC2 Instance
Introduction In this post, I will show you how to Create an EC2 Instance on AWS and install Jenkins on it. PrerequisitesAWS CLI installed and configured IAM user with the following perm
read moreHow to CI/CD AWS With Github using Jenkins
Introduction In previous posts, I have shown you how to setup Jenkins on AWS EC2 instance. You can check the post here. In this post, I will sho
read moreHow to Setup Jenkins on AWS Using CloudFormation
Introduction In a previous blog post, we setup Jenkins on AWS using the AWS CLI (How to Install Jenkins on AWS EC2 Instance). In this blog
read moreHow To Setup Bastion Host on AWS using AWS CLI
Introduction In today's world, security is the top priority for any infrastructure and applications, that's why a Bastion host is a must-have in your infrastructure if you want to secure your rem
read moreHow To Setup Bastion Host on AWS using CloudFormation Template
Introduction In previous post How To Setup Bastion Host on AWS using CloudFormation Template, we will learn how to setup a Bastion hos
read moreIntroduction to Spring Boot Framework
Introduction For creating web apps and microservices, many developers utilize the Spring Boot framework. The fact that it is built on top of the Spring Framework and offers a number of advantages
read moreHow to Deploy a Spring Boot Application to AWS CloudFormation
Introduction Deploying a Spring Boot application to the cloud can provide many benefits such as scalability and easy management. AWS CloudFormation is a service that allows for the creation and m
read moreHow to Avoid Common Cloud Services Mistakes
Introduction By offering scalable, on-demand resources and services, cloud services have completely changed the way organizations operate. Implementing cloud services, however, can provide its ow
read moreHow To Install Docker On Linux In 4 Easy Steps!
Introduction Docker is a powerful platform that allows developers to create, deploy, and run applications in containers. Containers are isolated environments that allow you to run your applicatio
read moreHow To Run MySQL in a Docker Container: A Step-by-Step Guide with Customization Tips
Introduction Docker has revolutionized the way we run and manage applications by making it easy to package, deploy, and run applications in containers. Containers allow applications to run in a c
read moreBuilding a Customizable Image Slider in React Using Hooks, SCSS, and TypeScript
Introduction In this tutorial, we will be building a customizable image slider in React using hooks, SCSS, and TypeScript. An image slider is a common UI element used in web applications to displ
read moreGet Started with Building ReactJS and Docker: A Complete Guide
Introduction Docker is a powerful tool that allows developers to create, deploy, and run applications in a portable and scalable way. It uses containerization to encapsulate all the dependencies
read moreMastering AWS Architecture: A Comprehensive Guide to the Well-Architected Framework
TL;DR AWS Well-Architected Framework is a collection of best practices for creating and running systems on AWS that are dependable, secure, effective, economical, and long-lasting. The framework
read moreRESTful API vs. GraphQL: Which API is the Right Choice for Your Project?
TL;DR When deciding between RESTful and GraphQL APIs for a data analysis and display application, it is important to consider the advantages and disadvantages of each. RESTful APIs have been arou
read moreTypeScript vs. JSDoc: Exploring the Pros and Cons of Static Type Checking in JavaScript
TL;DRTypeScript and JSDoc are two tools for static type checking in JavaScript. TypeScript offers a comprehensive type system, advanced features, and strict type checking. JSDoc provides l
read moreDecoding REST API Architecture: A Comprehensive Guide for Developers
Introduction Hey there, fellow developers! Buckle up because we're about to dive into the crazy world of REST API architecture. Prepare to decode the mysterious differences between REST API and R
read moreMastering Infrastructure Automation: Harnessing the Power of IaC in a Cloud Native AWS Environment
Introduction Hey there, fellow tech enthusiasts! Welcome to another exciting adventure in the world of infrastructure automation. Today, we're diving deep into the powerful realm of Infrastructur
read moreUnderstanding Infrastructure as Code (IaC): Unleashing the Magic of Code-Driven Infrastructure Management
Introduction In the realm of modern technology, infrastructure management has undergone a revolutionary transformation with the emergence of Infrastructure as Code (IaC). Imagine having the power
read moreUnleashing the Power of Cloud Native Infrastructure on AWS: Building Castles in the Sky
Introduction In the realm of cloud computing, Cloud Native Infrastructure stands tall as a modern sorcery, empowering developers to design and deploy applications tailored explicitly for the clou
read moreLeveraging AWS CloudFormation for Infrastructure as Code (IaC): The Mighty Sword of Automation
Introduction In the realm of Infrastructure as Code (IaC), AWS CloudFormation emerges as a powerful tool, akin to a mighty sword in your infrastructure automation arsenal. With CloudFormation, yo
read moreSimplifying Application Deployment with AWS SAM: Unleashing the Power of Serverless Magic
Introduction: When it comes to deploying serverless applications, AWS SAM (Serverless Application Model) emerges as your trusty sidekick, simplifying the process and harnessing the full power of
read moreOrchestrating Infrastructure with Terraform: Unleashing the Magic of Infrastructure Provisioning
Introduction: In the realm of infrastructure orchestration, Terraform emerges as a versatile sorcerer's apprentice, allowing you to create and manage your infrastructure across multiple cloud pro
read moreUnleashing the Magic: Best Practices for Infrastructure Automation in a Cloud Native AWS Environment
Introduction: In the realm of Cloud Native AWS environments, mastering infrastructure automation is essential to unlock the full potential of your magical kingdom. From security spells to optimiz
read moreScaling Up, Staying Strong: Hands-On AWS CloudFormation Techniques for Building Resilient and Scalable Systems
Introduction: In today's rapidly evolving digital landscape, building resilient and scalable systems is crucial for businesses to meet growing demands and maintain high availability. Cloud native
read moreMastering Caching Strategies with Redis Cache: Boosting Performance in Node.js and TypeScript
Introduction In the ever-evolving realm of software development, the pursuit of optimizing application performance is a perpetual endeavor. Among the arsenal of strategies to attain this goal, th
read moreThe ORM Dilemma: To Use or Not to Use
Introduction In the world of software engineering, seasoned professionals are often confronted with pivotal decisions that wield substantial influence over the course and outcome of a project. Am
read moreUnderstanding Generative AI in Depth
Introduction In the ever-evolving landscape of artificial intelligence, it's paramount for senior software engineers to remain at the forefront of emerging technologies. One such technology that
read moreBuilding a Code Generative AI Model: Empowering Code Writing with AI
Introduction In the ever-evolving landscape of software engineering, automation stands as a cornerstone. As a software engineer, have you ever envisioned having an AI companion capable of craftin
read moreBecoming an AWS Pro: A Deep Dive into Amazon Elastic Container Service
Introduction Are you a passionate AWS Cloud Engineer DevOps enthusiast, looking to sharpen your container orchestration skills and level up your cloud infrastructure management game? Amazon Elast
read moreUnlocking the Power of React Context API: Demystifying State Management
Introduction In the ever-evolving realm of web development, the effective management of application state is a pivotal aspect that can either elevate or hinder your project's success. In this con
read morePhases of the Modernization Process
Modernizing IT infrastructure is essential for organizations to stay competitive, secure, and efficient. The modernization process, involves several strategic phases. Each phase is critical to ensure
read moreSoftware Engineering Principles Every Developer Should Know
In the dynamic world of software development, certain principles stand the test of time, guiding developers towards creating robust, maintainable, and efficient code. Let's delve into these principle
read moreHow to Avoid Over-Engineering Your Code?
In software development, over-engineering is a typical mistake that can result in more complexity, longer development periods, and superfluous functionality. This blog article discusses how to avoid
read moreWhy You Should Not Use Else Statements in Your Code
In software engineering, how you structure your code can significantly impact its readability, maintainability, and overall quality. One often-debated topic is the use of else statements. While they
read moreWhen to Use Serverless?
As a DevOps engineer working with AWS, understanding when to use serverless architecture can be a game-changer for your projects. Serverless computing offers numerous benefits, but it's essential to
read moreAI is Not Real: A Software Engineering Perspective
The term artificial intelligence (AI) has been bandied about a lot in the last few years. AI appears to be present everywhere, from tech conferences to science fiction films. But does it actually del
read moreDeploying Infrastructure with Terraform in CI/CD Pipelines
In today’s fast-paced DevOps environments, Infrastructure as Code (IaC) has become a cornerstone for managing and scaling infrastructure efficiently. Terraform, a leading open-source IaC tool, is
read moreGetting Addicted to Coding: Why We Love Programming More Than Sleep
Coding is not just a skill; for many, it becomes a passion, a lifestyle, and sometimes, an obsession. But what makes programming so captivating? Why do some developers lose track of time while coding
read more