3 ms·
Not a fan of this post. Link bait title followed by almost zero substance. Stockbroker performance would be an ok point of comparison for another non-determini
by ebbv 14y ago
Not a fan of this post. Link bait title followed by almost zero substance.
Stockbroker performance would be an ok point of comparison for another non-deterministic profession, like an athlete. But programming is deterministic. Your code either performs the desired function in the desired way or it does not.
Additionally, there are clear skills you can pick up. You either know these things or you don't.
You really can objectively improve at programming, without room for any interpretation or argument. There's no randomness involved.
With being a stock broker, there's a luck factor. Your pick may have been based on sound objective reasons. Made better by more thorough processes than picks you made in your 20's. But natural disasters or internal corruption which was not disclosed may cause an outcome completely against what everything else predicted thus ruining your performance.
Unpredictable disasters for us can be setbacks, but they don't ruin our performance as developers.
- emiliobumachar 14y agoImportant parts of programming are subjective, such as usability, code readability, maintainability, requirements elicitation.
- ebbv 14y agoYes but totally irrelevant to my point.
- emiliobumachar 14y agoThen I'm afraid I may have misunderstood you. I enumerated those subjectivities because they make room for "interpretation or argument", and there is a kind of "randomness" involved. Even between "Your code either performs the desired function in the desired way or it does not", there's the classic case where it does what someone asked for, but not what they meant (bad elicitation). If that's really irrelevant, please do explain your point a bit further.
- jrajav 14y agoI think you're making a dangerous correlation between the determinism of software and the supposed determinism of skill at software development. Yes, one of the most important aspects of software development is making code that runs correctly, but that is not the only aspect. Even if we focus on that alone, we run into many issues: - How do we determine whether anything but the most trivial program is correct? - Are the specifications so clearly defined that you could actually say your program is "correct" assuming that you could reason perfectly about its behavior? If you are the one writing the specifications, you know that the preceding question has no answer, because the specifications are just as hard to match to the problem as the program is to match to the specifications. - Can a program be said to be complete and production-ready if both it and the specifications are correct? What about security, performance, legacy support, and other concerns? Correctness, even if you take that alone, is not so simple. Even if it was simple, that's not the only metric for measuring skill in software development, and it's not the only (or even most) important thing to focus on.
- ebbv 14y agoYou missed my point. Of course there are subjective qualities to code. That's irrelevant to my point. Which was that a stockbroker is a bad analogy because he can be 10x better than he was in his 20's and bad luck can negate all his skill and effort. That doesn't happen with programming. There's not that luck factor. Even to the subjective aspects.