Coding as relaxation is plausible, but mostly for short projects and nothing serious. It is hard to focus on serious mental activity after laborious work.
Just FYI, RTT to Mars to between 6 minutes and 44 minutes.
The marginal cost in terms of power may be very small (compared to a rocket), but the infrastructure costs are enormous, and as a result you're severely capacity-constrained.
Current link to Mars Odyssey from DSS 35 in Canberra is 14.22 kbps (roughly equivalent to a modem from 1991).
Sounds like a major flaw to me. What if communication back to Earth is disrupted? Having the entire mission rely on a communication link is not a good idea. The people on Mars should be totally capable of conducting all manual repairs and bugfixes on their own. All of the software they use to run the entire base should be open source, available in a local Martian repository, and at least two of the people on the planet should be intimately familiar with the codebase and how all of the equipment works.
Ideally, they should also have physical books documenting all of the mission-critical stuff.
After-all having a working terminal that let's someone code is a hell of a lot more complex and uses a lot more power than a radio.
PS: This ends up getting back to the huge cost benefit of sending rover instead of people. Sure if you ever built up a self sustaining base including the ability to manufacture everything it needs from replacement parts, to CPU's, food, and fuel then sure send people. Until then you don't actually get any redundancy from sending people there.
Secondly, if all of the computers on Earth die we can still go outside and breathe the air, drink water from rivers and lakes, gather plants and hunt wild game for food. None of those options are available on Mars. If the computer controlling life support suddenly fails, what options are there to survive? All of this has to be planned for and taken into account. If there is nobody on Mars capable of repairing the life support system (including its software) then they are utterly dependent on the communication link back to Earth.
If I had access to a couple Computer Science books, all the documentation for my languages and the entirety of Stack Overflow at my fingertips? I think I could do just fine.
If I wanted to take it a step further, I could download common libraries that I thought would be useful. I've been learning Rust lately, and I bet I could write a script to download every git repo of all 2000 libraries in Cargo and it still wouldn't be that big.
I'm one of those people who do their best work when put under serious constraints. I think 520 days devoted to programming and study with no access to the outside internet would be a neat opportunity.
> I bet I could write a script to download every git repo of
> all 2000 libraries in Cargo
Funnily enough, the Rust developers have actually already written that script, and they run it weekly in order to determine that there have been no stability regressions in the nightly version of the compiler. :)That was unnecessary.
I don't know where the line is drawn between 'programmer' and 'cut n paster'; but ams6110 has a point that once you have enough foundational information on a particular stack then anyone calling themselves a programmer should be able to run from there. If you can't problem solve once you have the core information then I'd say ams6110's statement is accurate. Especially if everything you're working with is open source.
man svn
[...]
For more information about the Subversion project, visit http://subversion.tigris.org.
Of course you would use a DVCS in space, but still.