Posts

How are AI tools helping solve real, complex, and time-consuming problems faster?

Nowadays, almost everyone is either using AI tools or thinking about incorporating them into their daily work. At the same time, many professionals are still hesitant, worrying that AI might replace their jobs. While those concerns are understandable, I believe the bigger risk is ignoring these tools altogether. From my experience, AI isn't replacing engineers—it is helping engineers work faster and focus on solving more meaningful problems. Like any other tool, its value depends on how effectively we use it. The more we learn to collaborate with AI, the more productive and efficient we can become. Here are two real examples from my recent work where AI tools helped me solve complex and time-consuming engineering problems significantly faster. AI helped me audit and upgrade my project's tech stack by checking dependency compatibility and flagging version-specific issues in advance. Instead of manually reviewing every package and verifying the latest compatible versions, I was ...

Postman Collection Run - How to Test File Uploading API on CircleCi or Jenkins

Image
From last couple of days,  I was doing R&D on how we can test file uploading API on CircleCi or Postman collection Run? Finally, I found a way to test the File uploading APIs using the Postman Desktop app  OR Postman CLI collection run. I have also tested this solution, even on CircleCi for running the automated testing postman APIs by Postman CLI collection run. Here is step by step process, how you can test the file uploading API on CircleCi or Postman collection Run? Local Desktop App settings: Open and go to Local Postman app settings -> General Set working directly location  ( default is postman installation directory but can also choose any other directory ) Place files (to use in file upload APIs during the collection run) in the working directory selected as in the above step and also in the root directory of your project. Now go to the API in which you need to upload a file, and select the file from the working directory selected in step 2. Save that ...

How to Build Nested Tree Structures for Parent-Child using The Laravel Eloquent Relationships

A few days back, working on a Laravel project I had to create an API returning the deeply nested Tree structure for the parent-child relationship of a given object entity - in this case, a Company. Although as an experienced PHP developer, I know how to build Nested Tree Structures for Parent-Child relationships using core PHP and SQL queries. But I was looking to, if Laravel Eloquent provides any efficient inbuilt method to fetch the Parent-child relationship with a deep nested tree structure. This led me to search on ChatGPT for the same. Here I want to give credit to ChatGPT which not only saved my time but also suggested a new way to get the desired result using Laravel Eloquent Relationships. Before I explain the solution for building a Nested Tree Structure, first let's understand it. Understanding Nested Tree Structures: A nested tree structure organizes data in a hierarchical manner, making it easy to represent parent-child relationships. Each node in the tree can have mult...

Challenges and Solutions: Deploying Thoughtworks Tech Radar Node.js + Webpack on Heroku.

A few days back, I got a chance to deploy Thoughtworks Tech Radar  (a Node.js package) on Heroku as our own organization Tech Radar. Although Deploying a Node.js application with Webpack on Heroku can be an easy process, still you may face certain challenges while deploying. Here's a brief rundown of the challenges I have faced and how I tackled them during the deployment process. 1. Missing Procfile One of the initial challenges I faced was forgetting to include a Procfile in my project's root directory. This resulted in Heroku not knowing how to start my application as Heroku uses a Procfile to determine how to run your application. Know more about Procfile To resolve this, I created a simple Procfile that specifies the below command to run my Node.js server. ``` web: npm install --include=dev && npm run dev ``` 2. Heroku-prebuild - command Webpack is commonly used to bundle and optimize JavaScript code for production. However, after the build process, I realized that...

Helping others costs nothing But your selfish nature.

Helping others costs nothing,  But your selfish nature. When things are for others only then we can see others' needs and the difficulties they are facing. Helping others need courage and time to help as well, which ultimately cuts time for ourselves. Being selfish we can't do all this.

Install Docker Desktop on Ubuntu 22.04 LTS

Install Docker Desktop on Ubuntu Prerequisites For non-Gnome Desktop environments, gnome terminal must be installed:      $ sudo apt install gnome-terminal Set up the repository 1. Update the apt package index and install packages to allow apt to use a repository over HTTPS: $ sudo apt-get update $ sudo apt-get install ca-certificates curl gnupg lsb-release 2. Add Docker’s official GPG key: $ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg 3. Use the following command to set up the repository: $ echo \    "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null...

Solution for Screen Sharing not working on Ubuntu 22.04

Recently, I upgraded my system OS from ubuntu 20.04 LTS to 22.04 LTS which I have been waiting for a long-time. It seems all goes well until I faced issues while sharing my screen over MEET or ZOOM meetings. I searched for solutions and found most of the solutions on Stackoverflow suggesting to disable the Wayland display feature and working with X11 which was used in earlier versions of Ubuntu OS. But disabling the Wayland UI scheme is not the correct solution,  because will slow down the system because the Wayland display feature is very fast in performance as compared to Xorg X11. Moreover, the Wayland display feature is more secure than Xorg X11 while providing access to the system. Actually, it is not a problem with Ubuntu OS itself. It is problem with the browser hasn't developed a feature compatible with Wayland security protocols. If anyone is facing problems with screen sharing because of OS upgraded to ubuntu 22.04, Here is the solution (without disabling the Wayla...

Laravel Middleware - Block IPs using Middleware class

When talking about securing the Laravel application, we might also want to restrict IP address to access our application, especially when we have Laravel setup as a Backend server providing data through APIs or web services. As of today, you might find no. of Laravel package providing IP address restriction functionality but I found it does not make any sense to install a package when it is achieved through only One class.  Yes! we can just do this with a simple middleware class.  Let me explain to you little details on how we can achieve it using the Middleware class. First, let's create a middleware class using the Laravel artisan command: php artisan make:middleware RestrictIPAddress It will create a new class in your Laravel project under the ` app/Http/Middleware ` directory. It will have a default empty method handle(), where you have to write your logic. Logic is simple, you just have to get the IP address from where the request is coming. here is the method...

Popular posts from this blog

Differences between json and jsonb - JSON data type in PostgreSQL

Laravel Validation - Unique rule with multiple column and condition.

Using Virtual Columns in Laravel - Accessors and Appends