TL: DR; Deploying Go is as simple as deploying PHP 20 years ago. If something takes over PHP domination. It is the Go language.
I had to deploy my Go code very quickly at the beginning of this week. Unfortunately, even though I always prepared the deployment process at the beginning of the initial process of any project, I was not ready this time.
I did just this:
- Created an AWS EC2 instance.
- Created a GNU/Linux-specific 64-bit binary with a single command with the help of my Makefile.
- Use scp to upload the binary code.
- SSH into the EC2 VM and run the code with a single command.
That is all. (Not scalable, but most people do not need scalability.)
After creating the VM, the actual deployment is three-steps process. First, if you are a customer, you buy a hosting service from your provider. And if you do not build your code. You upload and run the code. It is that simple.
This resembles the days I used PHP scripts (remember PHP Nuke or Postnuke?) Even this page is being served by WordPress, which has the same deployment process. This kind of web project only requires a database connectivity configuration. It is done via web interfaces, so I can consider the product is running when you start the configuration wizard.
Language features are important for software developers, but the decision to purchase is mainly made by customers, and language rarely affects the quality of the software. (Developers can build good software products even with the .NET framework.) This makes the deployment process more important for the customer and the middlemen who sell the platform.
I have used the enjoyable Django framework for over 15 years. Django helped me to adopt the deploy first strategy. It was always harder to make things work when I was a newbie. Of course, platforms like Google App Engine and Heroku broke this unfortunate situation, but it is still hard for a customer if they download an artifact of a Python project and use it right away.
Go, or another language, whichever has an easier path to reach the customer will win the race for the next decades.