'value' to who? You yourself and your direct environment, presumably. How much did your other interests contribute to your software skills? Maybe a bit, but not as much as other skills would have that you could (with directed effort) have learned in the time you spend on other things.
I'm not saying it's wrong, I too live my life for myself, not for others, and not to be the very best developer I could potentially be at the exclusion of everything else. I like to do things outside of software as well, every now and then. But that doesn't take away from the fact that I could have been better if I'd spend the time on it.
So, 'the ultimate hacker' (as in, 'the theoretical ideal of the very best developer') is someone who eats, breathes and drinks programming (or at least 'software development' in the broad sense). Socializing, a family, learning macrame - all of those things do not add to being the ultimate hacker.
> Socializing, a family, learning macrame - all of those things do not add to being the ultimate hacker.
When you build stuff for the outside world to use (software, architecture etc.) then knowledge of the "outside world" is of extreme importance. You being the "ultimate hacker" or the greatest architect since Phidias has no importance whatsoever.
I agree. But your point is not at odds with my point. Just taking a macrame class to 'learn about the outside world' is not the most efficient use of time. What I meant was (it was implied my 'with directed effort' sideline) that there are ways to learn about what you need to build from specific focus on those things. You don't have to have family picnics each Sunday to learn how to best design something for 'the outside world'. When you recognize you need to know something for the audience you're building for, you can study that specifically, you don't need the rest.
Of course it's much nicer to go on Sunday picnics and solve cognitive dissonance between 'I want a personal life' and 'I want to be the best at XYZ' by rationalizing it as 'oh but these non-specific activities will make me a more well-rounded person, which will make me better at 'XYZ'. In itself that's OK, humans need such rationalizations otherwise we'd go crazy in no time. BUT, just because we use those rationalizations, that doesn't mean we shouldn't recognize them as such.
So, after this detour ;), my point is: having a family, socializing etc. are not necessary to know what you need to know about the outside world to be the best at anything.
Sure they do. Because if you don't socialize, have a family, and learn macrame, then you'll have a nervous breakdown before you get to be a great hacker.
I'm not saying it's wrong, I too live my life for myself, not for others, and not to be the very best developer I could potentially be at the exclusion of everything else. I like to do things outside of software as well, every now and then. But that doesn't take away from the fact that I could have been better if I'd spend the time on it.
So, 'the ultimate hacker' (as in, 'the theoretical ideal of the very best developer') is someone who eats, breathes and drinks programming (or at least 'software development' in the broad sense). Socializing, a family, learning macrame - all of those things do not add to being the ultimate hacker.