You mind going into a little detail on how you’ll go about this?
You mind going into a little detail on how you’ll go about this?
In the macbook I'd try hard to have no npm/rubygems/maven/... because these are all a security risk.
The unix box would be heavily firewalled so that no bad code could not talk home or reach my macbook.
Communication would happen primarily via ssh (e.g. macos iTerm -> unix box), but also as a NFS share so that I can edit files from my IDE flawlessly (I use Emacs which has a thing called Tramp which makes this unnecessary, but I'm hesitant about its effectiveness).
So, in my macbook I'd have a small number of trusted tools like iTerm and Emacs while everything else, like Ruby/node.js/Java/postgresql processes would happen in the unix box. My workflow would be typically:
- edit files to the NFS share;
- issue commands to the unix box via ssh (an IDE can abstract this away); and
- have some port forwarding for accessing e.g. the webapp I'm working on from macOS chrome.
In the end it would be a pretty vanilla approach and not tremendously different from using a virtual machine via Vagrant. The difference would be that the macOS machine would be thinner, and that the unix box would have greater focus on security and stability.
And of course performance - with a real box I don't have to worry about Vagrant/Docker/... making my macbook overheat.
And while most would not fly that often, being able to code when internet is not available or in a bad shape is not only a 'nice to have' option, but almost a 'must have'