🐳 Docker is 10-year-old and I never used it. 🤷
I am a software architect, but I never feel the pain that Docker tries to fix. Why? 🧐
Because of:
– ☁️ cloud services (PaaS & SaaS)
– 📦 package management (NuGet, npm)
– 🏗️ build automation
– ☁️ hosted development environments
I haven’t used VM’s for the last 6 years, only in edge cases. Embracing the cloud means you don’t need to manage the OS or VM’s yourself anymore. Docker containers have clear benefits above VM’s, but I am not on the VM bandwagon anymore. 🚫
Also, when I moved to the cloud, I focused on SaaS and PaaS, not IaaS (Infrastructure as a Service). This simplifies the complexity and decencies of solutions a lot. 🔄
We no longer need to install and setup external decencies like SQL Server. Spin up an Azure SQL Database (= as a service) and add the Connection String to the app and be done with it. Also, for local development I use the same cloud services. 🌐
At the same time package managers were getting traction, like NuGet and npm. This simplified working with dependencies within solutions. 📚
Build Servers are powerful now a days. Automating builds and deployments, including its environment configuration, has never been easier. This eliminates a lot of human errors. 🤖
And now cloud hosted development environments, like GitHub Codespaces, are gaining traction. This technology makes sure you have all the tools you need to develop solutions. 🔧
Further my own philosophy is to keep solutions as simple as possible for building it and maintaining. Every added dependency should have enough merit to counter the added complexity. 🧠
Docker is also a dependency and adds complexity. You need to install it and learn how it works. When my only dependency is dotnet, I prefer to install dotnet instead of Docker and let the zip file be the ‘container’ of my app. 📂
Do you use Docker? Which problem did it solve for you? 💡