When comparing Google VM Instance vs Google Cloud Shell, the Slant community recommends Google VM Instance for most people. In the question“What are the best cloud IDEs?” Google VM Instance is ranked 13th while Google Cloud Shell is ranked 15th.
Ranked in these QuestionsQuestion Ranking
Pro Total environment control
Pro Can run any sort of web-based editor software
For example, one can run Jupyter Notebook on the VM.
Pro Real vi or Emacs editor
Pro Real Linux console
Pro Already has Google Cloud SDK and other tooling installed
Thus eliminating a setup step for interacting with Google Cloud.
Pro Already provisioned with Google Application Default Credentials
This makes it easier to run/test code that interacts with Google APIs.
Pro Includes Eclipse Orion IDE already configured
Eclipse Orion can be difficult to setup/configure if creating a do-it-yourself VM running Eclipse. This makes it easier to have a working IDE.
Google Cloud Shell is free for Google Cloud Platform customers.
Pro Supports multiple open files at the same time
One can split the screen and edit two files at once, making it easy to edit one file while consulting the contents of some other file.
Pro Supports editor and terminal in the same screen
This makes it easy to run commands while editing files at the same time.
Pro Supports "Boost Mode"
Allowing you to provision a more powerful instance when necessary.
Con This is not a "cloud IDE," this is a remotely accessible virtual machine.
This topic is about the best cloud IDEs and having a Google VM Instance on the list is a bit of a stretch. That's not to say that the service isn't valuable or great, but it is a completely separate purpose. Granted, you can certainly install the necessary tools on your virtual machine to make it an IDE that is remotely accessible, but that's not exactly the ideal situation and not what someone looking for a cloud IDE is likely looking to do.
Con Can be expensive
If one selects a powerful type of instance or if one does not take care and remember to shut off the instance when it is not being used.
Con Less ideal if you have a slow internet connection
Though this applies to any Cloud IDE, as well.
Con Less ideal if you are mouse dependent
Assuming you are using Vi or Emacs, and not Jupyter or some other web-based editor that is running on the remote VM instance.
Con Ephemeral Disk
Software installed globally as root (such as via "sudo apt-get install..." ) can be lost when restarting Cloud Shell; any software that needs to be persistent has to be installed in the user directory.
Con Minimal UI
Cloud Shell's editor is not as featureful as some alternatives.