Earlier quoted context omitted.
Thanks, I suppose I'll read it myself to get a better idea of the degree of interpretation involved. There's a comment on the Atwood article which makes a point similar to yours above and Atwood's reply is very odd: https://discourse.codinghorror.com/t/the-ten-commandments-of... He seems to think these are, in part at least, quotes. And it's not just the "guy in the room" bit - when the commenter points out the book…
Sorry I was not clear. He is quoting generic noun phrases, these are not quotes from the "Psychology of computer programming."
Dad and the ten commandments of egoless programming (2012)
51–60 of 110 posts
Re: Dad and the ten commandments of egoless programming (2012)
#52This is a great list - thank you. I learned a long time ago to not use “you” or similar in code reviews, as it is too easy to associate a critique of code with a critique of the coder. Changing “You should change this” to “This should be changed” or even “We should change this” can make a world of difference.
This: Returning a string from this method is an error because ...
vs: You made an error by returning a string from this method because ...
The second one is more likely to make people defensive, IMHO.
Re: Dad and the ten commandments of egoless programming (2012)
#53Earlier quoted context omitted.
Thanks, I suppose I'll read it myself to get a better idea of the degree of interpretation involved. There's a comment on the Atwood article which makes a point similar to yours above and Atwood's reply is very odd: https://discourse.codinghorror.com/t/the-ten-commandments-of... He seems to think these are, in part at least, quotes. And it's not just the "guy in the room" bit - when the commenter points out the book…
That's weird isn't it! In a quick search, I couldn't find any occurrence online of the phrase "Don't rewrite code without consultation", one of those commandments, earlier than Atwood's article. This[0] was the earliest other one I could find, from a few months after Atwood's, which says "What Weinberg wrote in that book was a set of guidelines for developers working in a team environment to keep their egos separate…
This is the earliest google hit for "Ten Commandments for egoless programming".
Curiously, the author, Lamont Adams, does not explicitly state that the commandments are from the book. Maybe "I present The (Almost) Ten Commandments for egoless programming" means that it's a summary by Adams?
Re: Dad and the ten commandments of egoless programming (2012)
#54Earlier quoted context omitted.
That's weird isn't it! In a quick search, I couldn't find any occurrence online of the phrase "Don't rewrite code without consultation", one of those commandments, earlier than Atwood's article. This[0] was the earliest other one I could find, from a few months after Atwood's, which says "What Weinberg wrote in that book was a set of guidelines for developers working in a team environment to keep their egos separate…
An earlier article from techrepublic written in 2001: https://www.techrepublic.com/article/egoless-programming-the... This is the earliest google hit for "Ten Commandments for egoless programming". Curiously, the author, Lamont Adams, does not explicitly state that the commandments are from the book. Maybe "I present The (Almost) Ten Commandments for egoless programming" means that it's a summary by Adams?
p.s. I just wrote to him now asking about this! Maybe the truth will surface...
Re: Dad and the ten commandments of egoless programming (2012)
#55For a contrast on Egoless Programming: https://dawnproject.com/ "THE DAWN PROJECT: Making Computers Safe for Humanity. We Demand Software that Never Fails and Can’t Be Hacked"
I... I can't find anything that's not simply boosting Mr. O'Dowd. This is clearly a B2B marketing website, not a technical resource. More power to them, but there's nothing here for outsiders.
It's also kind of concerning that software like CompCert and seL4 isn't mentioned anywhere. Academic work in software verification is making steady progress; it feels really dirty to pose as the lone group that cares about this stuff.
I don't really disagree with the ethical or factual material; there's just nothing actionable.
Re: Dad and the ten commandments of egoless programming (2012)
#56I agree with all of it. I find commandment 2 to be the most enlightening one. > You are not your code. Remember that the entire point of a review is to find problems, and problems will be found. Don’t take it personally when one is uncovered. In my career, I have had to deal with other senior developers who would throw tantrums whenever I pointed out something problematic about their code. Over the years, there's som…
I LOVE this frame of mind and I love this statement but it is usually only used in the negative alignment of expectations: don't take critique personally. No disagreement. But let's get pedantic: The umbrella "you are not your code" would dismiss improvement as well. And praise. Ok, so I am not my code. But if I don't learn from my mistakes my code will not improve. I... I... I... Anyway, I much prefer to reframe it…
I don't see why you think this is the same thing.
Improvement in someone's coding skill is good from a business/colleague/project perspective. And from a "practice paid off" perspective. And positive feedback is always good to give, you certainly shouldn't only give negative feedback.
But you shouldn't get too attached to your code in either case. Today's good code is likely to be tomorrow's bad legacy code anyway. It shouldn't be an "intimate experience," programming for a company is an exercise in utility.
Re: Dad and the ten commandments of egoless programming (2012)
#57I agree with all of it. I find commandment 2 to be the most enlightening one. > You are not your code. Remember that the entire point of a review is to find problems, and problems will be found. Don’t take it personally when one is uncovered. In my career, I have had to deal with other senior developers who would throw tantrums whenever I pointed out something problematic about their code. Over the years, there's som…
I LOVE this frame of mind and I love this statement but it is usually only used in the negative alignment of expectations: don't take critique personally. No disagreement. But let's get pedantic: The umbrella "you are not your code" would dismiss improvement as well. And praise. Ok, so I am not my code. But if I don't learn from my mistakes my code will not improve. I... I... I... Anyway, I much prefer to reframe it…
>The same as creating art. It is the manifestation of your thoughts and opinions, small and large, put out in to the world.
I respectfully disagree. This thought process is why other people are left holding the bag at 11pm on a Friday fixing the 'art' of someone else. Computer Science is a derivative of mathematics. Math is not art. Math IS beautiful, explicitly because it is NOT ambiguous or subject to interpretation. Math is right or wrong. It works or it is flawed.
Programming isn't art.
edit: forgot a >
Re: Dad and the ten commandments of egoless programming (2012)
#58Earlier quoted context omitted.
Sorry I was not clear. He is quoting generic noun phrases, these are not quotes from the "Psychology of computer programming."
No no, I understood what you meant! It's just that Atwood seems to think they are quotes, at least in part - the lack of clarity is entirely on his end. In fact, just about everyone on the internet who's ever mentioned these, with or without attribution to Atwood seems to think they are Weinberg quotes or at a minimum that these 'principles' are enumerated in the book. It looks, on the surface at least, a fairly majo…
https://smoothspan.com/2010/09/15/jeff-atwood-is-not-quite-g...
https://www.skmurphy.com/blog/2015/07/26/planning-and-reflec...
Your hypothesis that he copied the points from somewhere else is certainly plausible, much of the phrasing in his "10 commandments" does not match Weinberg's diction although Weinberg did use the phrase "egoless programming."
Re: Dad and the ten commandments of egoless programming (2012)
#59Earlier quoted context omitted.
That's weird isn't it! In a quick search, I couldn't find any occurrence online of the phrase "Don't rewrite code without consultation", one of those commandments, earlier than Atwood's article. This[0] was the earliest other one I could find, from a few months after Atwood's, which says "What Weinberg wrote in that book was a set of guidelines for developers working in a team environment to keep their egos separate…
An earlier article from techrepublic written in 2001: https://www.techrepublic.com/article/egoless-programming-the... This is the earliest google hit for "Ten Commandments for egoless programming". Curiously, the author, Lamont Adams, does not explicitly state that the commandments are from the book. Maybe "I present The (Almost) Ten Commandments for egoless programming" means that it's a summary by Adams?
Re: Dad and the ten commandments of egoless programming (2012)
#60Earlier quoted context omitted.
An earlier article from techrepublic written in 2001: https://www.techrepublic.com/article/egoless-programming-the... This is the earliest google hit for "Ten Commandments for egoless programming". Curiously, the author, Lamont Adams, does not explicitly state that the commandments are from the book. Maybe "I present The (Almost) Ten Commandments for egoless programming" means that it's a summary by Adams?
Oh thanks! Yeah, seems Adams may well be the originator. p.s. I just wrote to him now asking about this! Maybe the truth will surface...