I've been remote for eight years now and I work on a codebase so huge that no one person understands it all beneath the 10,000 foot level. Nearly all of us are remote (only the managers are "local" to San Jose). Once a quarter we get together and meet up, coming from Vancouver, Toronto, Bangalore, Colorado and northern California.
Yes, kernels are not difficult because most of the problems are purely technical problems, that programmers can just decide for themselves any ambiguities, and many of the parts can be worked on separately. Software with users is 10-100x more difficult.
Sorry if I was unclear. I was just using Linux as an example. The product I work on has plenty of users. I don't agree that it's orders of magnitude more difficult but that's beside the point.
Although it's insanely technically challenging, many computer science projects are more difficult than the Linux kernel to do remotely. For example, watching users interact with the software, anything that involves expensive test equipment, anything that runs on embedded/custom hardware.
I've been remote for eight years now and I work on a codebase so huge that no one person understands it all beneath the 10,000 foot level. Nearly all of us are remote (only the managers are "local" to San Jose). Once a quarter we get together and meet up, coming from Vancouver, Toronto, Bangalore, Colorado and northern California.