- You need software/dependendencies/licences you don't have in your local machine.
- You need to edit a config file (/etc/hosts or whatever) in your server
- You are in a Windows computer (that's not yours) and you need to make a quick change in your Ubuntu development server.
- You need to edit some files when deploying (databases are no longer in localhost, /home/myname/ is /home/servername/, etc.)
- You launched a large script in your server and need to (view or parse logs | edit the code and re-launch it | check why it didn't work)
- etc.
Even the sequential performance of the remote systems is much higher than my laptop. The system in front of me is a means to interface with the real system, and has been for a long time. Granted, I have worked on parallel and distributed languages and runtimes for most of my professional life.