suppose I need some help with getting a big, complex Java project with a bunch of outside dependencies to build. So I hire somebody to do it through TeamViewer. But, I don’t want the somebody to either be able to mess up my machine or examine the source code of the project.
Obviously the messing up the machine can be prevented by using an OS running in virtual machine.
Now back to source code protection. I could prohibit files from being uploaded onto the net. I could sit there and watch it all happen, to discourage any malicious activities as well as just the plain reading of source code. Or I could use spyware type apps to monitor what is happening in my absence. But that all sort of sucks.
So I wonder - could the “get a Java project to build” operation be completely decoupled from examination of the source code? Let’s say we were to have an app that would show the user the file structure of the project as well as the lines with reported compile errors, if any. So the user can add and remove jar files, can edit the Ant script, set environmental variables and do other stuff of this sort, but viewing source code is either not allowed completely or else is very limited.
Would that work? Or maybe, “would that work in a pretty big percent of cases”?
Incidentally, the question focuses on Java because this seems to be the most popular technology where builds are thought to be complex. E.g. AFAIK builds in .net are not considered particularly hard.