Categories: Virtualization

5 Reasons Why Every Developer Must Adopt Dockers

This blog represents my thoughts on why every developer must adopt dockers for their day-to-day development purpose.

I got introduced to Dockers technologies a couple of months back and trust me, I have started wondering on how I have been developing/coding prior to that.  Honestly speaking, I am floored. Here are some of the top reasons why you should also give a shot to Dockers.

Bring up Dev Environment in No Time

One of the issue that I faced in the programming/development experience is living with same Dev environment through out the entire development cycle for months all together. At times, due to installation of software updates, the environment used to get corrupted and lot of time was spent on rectifying it. Also, due to configuration changes from time to time, the Dev environment moved or drifted from one state to another. And, I always wished if there was some way I could bring up Dev Environment in very quick time. This is where Dockers help. Based on the Dev environment requirements, one could create an image, and commit it. From next time onwards, one could quickly create and run the containers running the Dev environment.

Dump Dev Environment in No Time

In my development experience, I often felt the need to uninstall/delete the software and start afresh. Also, I wanted to experiment with different configurations while keeping my baseline configuration intact. And, the way I used to do it is create copies of different configurations while testing with one of them. With the Dockers, it has become so very easy. I could have a base image created and I could then create containers using this base image and test my configurations simultaneously. And, once done, I could easily dump my containers using command such as “docker rm containerName”.

Test Simultaneously across Different Dev Environments

Many a time, I wanted to have access to test my code in different environments comprising of different platforms/OS, configurations etc and I could not do it primarily due to several reasons such as availability of machines (physical/VMs) etc. All of this have changed after I have started working with Dockers. I could now test my application on different platforms by starting appropriate containers and testing the applications.

Test Simultaneously across Different Software Versions

Many a time, I wanted to test my application across different software versions. For example, I wanted to test my application across different Java versions. Traditionally, this could be achieved by installing software of different versions and setting environment variables such as PATH, CLASSPATH variables appropriately. With dockers, it has become as easy as creating and running containers (which takes no time) with different software versions and testing your applications on each of these containers.

Easy-to-create Dev, QA Environments

With dockers, gone are the days, when one would call out extra time and effort to create Dev, QA Environments. It virtually takes NO time. In fact, one could create Dev/QA images and developers/QA engineers could get hold of these images, start the containers and get their work done absolutely hassle free.

Above are top reasons that I could comprehend based on my experience of Dockers within last couple of months. There are other utilities which are specific such as creation of automation environments, high-availability (HA) environments that becomes very easy to achieve using Dockers about which I would write another blogs. In the mean time, please feel free to sight other reasons that you feel are important why every developer should/must start using Dockers.

Latest posts by Ajitesh Kumar (see all)
Ajitesh Kumar

I have been recently working in the area of Data analytics including Data Science and Machine Learning / Deep Learning. I am also passionate about different technologies including programming languages such as Java/JEE, Javascript, Python, R, Julia, etc, and technologies such as Blockchain, mobile computing, cloud-native technologies, application security, cloud computing platforms, big data, etc. I would love to connect with you on Linkedin. Check out my latest book titled as First Principles Thinking: Building winning products using first principles thinking.

Share
Published by
Ajitesh Kumar
Tags: docker

Recent Posts

What are AI Agents? How do they work?

Artificial Intelligence (AI) agents have started becoming an integral part of our lives. Imagine asking…

2 weeks ago

Agentic AI Design Patterns Examples

In the ever-evolving landscape of agentic AI workflows and applications, understanding and leveraging design patterns…

2 weeks ago

List of Agentic AI Resources, Papers, Courses

In this blog, I aim to provide a comprehensive list of valuable resources for learning…

2 weeks ago

Understanding FAR, FRR, and EER in Auth Systems

Have you ever wondered how systems determine whether to grant or deny access, and how…

3 weeks ago

Top 10 Gartner Technology Trends for 2025

What revolutionary technologies and industries will define the future of business in 2025? As we…

3 weeks ago

OpenAI GPT Models in 2024: What’s in it for Data Scientists

For data scientists and machine learning researchers, 2024 has been a landmark year in AI…

3 weeks ago