If I wanted to dig into OS code, or modify it, I would rather do that with BSD. There is the license, but there is also the notion that the kernel may be smaller, not trying to support every device as if it were Windows, not every fancy latest GUI technology, and most importantly conventions and code which don't change as much.
If it's just an OS with abstract plumbing, then use Linux. People who want control go for BSD, or Gentoo, but BSD there are more standardized ways of doing things than with Gentoo is my perception. If I am an admin, I would want lock-down control so can rebuild a similar server quickly, but I know Ubuntu Server is big and you virtually have to answer the question "Well, why didn't you just use Ubuntu Server then?" if there are any problems.