digitalmars.D - Quality of D
- Andreas Schmid (24/24) Apr 21 2005 Hi,
- jicman (8/32) Apr 21 2005 Andreas,
- Charlie (14/38) Apr 21 2005 I'd have to agree here, Im glad Walter kept it closed source. I think i...
- Walter (19/25) Apr 21 2005 only
- Matthew (6/46) Apr 21 2005 Yes, and, alas, this gets tied up in other GC-languages with other
- TechnoZeus (3/54) Apr 22 2005 Yes, it is so nice when more than one way of thinking is supported... as...
- uframer (2/33) Apr 22 2005
- John Reimer (31/55) Apr 21 2005 1) It was never doubted that Walter should pull the strings. I agree he...
- Georg Wrede (6/9) Apr 21 2005 Ouch, something hit my ankle!
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (18/28) Apr 22 2005 I don't understand this, Walter has "open-sourced" D long ago ?
- Charles Hixson (4/21) Apr 22 2005 FWIW, D has been open sourced (not just suggested). Ref: gdc.
- John Reimer (2/23) Apr 22 2005 My statement about open-source was indeed ambiguous, I apologize. I mean...
- Matthew (12/41) Apr 21 2005 Well, despite carping a lot recently (and having a lot to carp
- Derek Parnell (9/10) Apr 21 2005 Have I mentioned my Build utility? ;-)
- Unknown W. Brackets (27/36) Apr 21 2005 Personally, I think it's a good thing to have a single person or group
- Derek Parnell (14/23) Apr 21 2005 Totally agree.
- Unknown W. Brackets (10/13) Apr 21 2005 Agreed on both counts. In my opinion, it's going to happen. I see
- Derek Parnell (25/27) Apr 21 2005 We have used it on documentation, test cases, training materials,
- Matthew (7/48) Apr 21 2005 Peer review is an amazingly powerful tool.
- Derek Parnell (11/18) Apr 21 2005 Exactly, and it works at all levels and is so simple.
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (4/9) Apr 22 2005 For those without daughters / dads, you can try other patient listeners:
- Unknown W. Brackets (12/16) Apr 22 2005 I find this works remarkably well with comments as well, so long as you
- TechnoZeus (4/9) Apr 22 2005 Yep. I've always felt that a person generally learns more by teaching t...
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (3/10) Apr 22 2005 Funny, I read that as *earns* more - and agreed to that too ;-)
- TechnoZeus (3/13) Apr 23 2005 Hehe. Cute. :)
- Matthias Becker (6/12) Apr 22 2005 I don't think so. GCs have been there since LISP wich is one of the olde...
Hi, I have not spent a long time programming in D and am still discovering all the wonderful features it has to offer - but I can already say with certainty it is by far the best programming language I have ever used. It seems to me that Walter, after all the years of developing the C++ compiler, has gathered immense knowledge of useful features and expensive features that not only bloat the language itself but also add significantly to compilation time. Writing a compiler is certainly one of the more demanding programming tasks, to say the least - I wonder: Would the quality of D have suffered if it was an open source project in which virtually everyone, no matter how much experience or what background, could participate? I know that many programmers dislike garbage collection. I suspect that only true experts like Walter really know how expensive a garbage collector is in various situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would have been one of the first to be dropped due to popular demand. I've followed the "F Word" thread in D.gnu and and have the feeling that maybe it's a good thing that Walter pulls the strings. Like: "I'm giving you a garbage collector and many other extremely useful features against your will, and although you won't immediately realize it, it's good for you." ;-) -Andreas
Apr 21 2005
Andreas, I couldn't agree more. Also, Walter does, from time to time, listen to us. But I like it that he does not listen to us all the time. Otherwise, he would go crazy. Or as we, the hispanic community say, "loco." Great job, Walter! Thanks for the wonderful post, Andreas. We don't see enough of these. josé Andreas Schmid says...Hi, I have not spent a long time programming in D and am still discovering all the wonderful features it has to offer - but I can already say with certainty it is by far the best programming language I have ever used. It seems to me that Walter, after all the years of developing the C++ compiler, has gathered immense knowledge of useful features and expensive features that not only bloat the language itself but also add significantly to compilation time. Writing a compiler is certainly one of the more demanding programming tasks, to say the least - I wonder: Would the quality of D have suffered if it was an open source project in which virtually everyone, no matter how much experience or what background, could participate? I know that many programmers dislike garbage collection. I suspect that only true experts like Walter really know how expensive a garbage collector is in various situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would have been one of the first to be dropped due to popular demand. I've followed the "F Word" thread in D.gnu and and have the feeling that maybe it's a good thing that Walter pulls the strings. Like: "I'm giving you a garbage collector and many other extremely useful features against your will, and although you won't immediately realize it, it's good for you." ;-) -Andreas
Apr 21 2005
I'd have to agree here, Im glad Walter kept it closed source. I think it was also a great move to leave the front-end open for tool writers / other compiler writers. I think this will go along way for the development of the language also :). Hip Hip! Charlie "Andreas Schmid" <monkey gmx.info> wrote in message news:d4997k$v07$1 digitaldaemon.com...Hi, I have not spent a long time programming in D and am still discovering all the wonderful features it has to offer - but I can already say with certainty it is by far the best programming language I have ever used. It seems to me that Walter, after all the years of developing the C++ compiler, has gathered immense knowledge of useful features and expensive features that not only bloat the language itself but also addsignificantlyto compilation time. Writing a compiler is certainly one of the more demanding programmingtasks,to say the least - I wonder: Would the quality of D have suffered if itwasan open source project in which virtually everyone, no matter how much experience or what background, could participate? I know that many programmers dislike garbage collection. I suspect thatonlytrue experts like Walter really know how expensive a garbage collector isinvarious situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would havebeenone of the first to be dropped due to popular demand. I've followed the "F Word" thread in D.gnu and and have the feeling that maybe it's a good thing that Walter pulls the strings. Like: "I'm giving you a garbage collector and many other extremely useful features against your will, and although you won't immediately realize it, it's good for you." ;-) -Andreas
Apr 21 2005
"Andreas Schmid" <monkey gmx.info> wrote in message news:d4997k$v07$1 digitaldaemon.com...I know that many programmers dislike garbage collection. I suspect thatonlytrue experts like Walter really know how expensive a garbage collector isinvarious situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would havebeenone of the first to be dropped due to popular demand.I, for a very long time, was convinced that garbage collectors were crutches for poor programmers, and that there's no way a gc app could beat a carefully written explicitly memory managed app. It's so obvious by inspection. It's the conventional wisdom (see the thread entitled "Why do you program in C++?" 4/18/2005 on comp.lang.c++.moderated). Then, when writing a Java compiler, I was forced into dealing with one. Imagine my disbelief when I discovered that gc programs are often *faster*, in addition to being quicker to write and less buggy. This effect is often why D outperforms C++, to the point where the proponents of the Conventional Wisdom have literally accused me of "sabotaging" C++. (Of course, gc isn't a panacea for all memory management problems, which is why D allows one to use explicit memory management where that makes sense.) An interesting discovery I made was that much of the numbing complexity in C++ comes from attempts to deal with managing memory.
Apr 21 2005
"Walter" <newshound digitalmars.com> wrote in message news:d49ed9$13kn$1 digitaldaemon.com..."Andreas Schmid" <monkey gmx.info> wrote in message news:d4997k$v07$1 digitaldaemon.com...Yes, and, alas, this gets tied up in other GC-languages with other resources, which is so wrong-headed it makes your cheeks laugh. Thankfully we have auto in D, and therefore adroitly sidestep the debate completely. ;)I know that many programmers dislike garbage collection. I suspect thatonlytrue experts like Walter really know how expensive a garbage collector isinvarious situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would havebeenone of the first to be dropped due to popular demand.I, for a very long time, was convinced that garbage collectors were crutches for poor programmers, and that there's no way a gc app could beat a carefully written explicitly memory managed app. It's so obvious by inspection. It's the conventional wisdom (see the thread entitled "Why do you program in C++?" 4/18/2005 on comp.lang.c++.moderated). Then, when writing a Java compiler, I was forced into dealing with one. Imagine my disbelief when I discovered that gc programs are often *faster*, in addition to being quicker to write and less buggy. This effect is often why D outperforms C++, to the point where the proponents of the Conventional Wisdom have literally accused me of "sabotaging" C++. (Of course, gc isn't a panacea for all memory management problems, which is why D allows one to use explicit memory management where that makes sense.) An interesting discovery I made was that much of the numbing complexity in C++ comes from attempts to deal with managing memory.
Apr 21 2005
Yes, it is so nice when more than one way of thinking is supported... as I was just stating in another thread should be much more common than it is. :) TZ "Matthew" <admin stlsoft.dot.dot.dot.dot.org> wrote in message news:d49f4t$14ab$1 digitaldaemon.com..."Walter" <newshound digitalmars.com> wrote in message news:d49ed9$13kn$1 digitaldaemon.com..."Andreas Schmid" <monkey gmx.info> wrote in message news:d4997k$v07$1 digitaldaemon.com...Yes, and, alas, this gets tied up in other GC-languages with other resources, which is so wrong-headed it makes your cheeks laugh. Thankfully we have auto in D, and therefore adroitly sidestep the debate completely. ;)I know that many programmers dislike garbage collection. I suspect thatonlytrue experts like Walter really know how expensive a garbage collector isinvarious situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would havebeenone of the first to be dropped due to popular demand.I, for a very long time, was convinced that garbage collectors were crutches for poor programmers, and that there's no way a gc app could beat a carefully written explicitly memory managed app. It's so obvious by inspection. It's the conventional wisdom (see the thread entitled "Why do you program in C++?" 4/18/2005 on comp.lang.c++.moderated). Then, when writing a Java compiler, I was forced into dealing with one. Imagine my disbelief when I discovered that gc programs are often *faster*, in addition to being quicker to write and less buggy. This effect is often why D outperforms C++, to the point where the proponents of the Conventional Wisdom have literally accused me of "sabotaging" C++. (Of course, gc isn't a panacea for all memory management problems, which is why D allows one to use explicit memory management where that makes sense.) An interesting discovery I made was that much of the numbing complexity in C++ comes from attempts to deal with managing memory.
Apr 22 2005
I Vote for GC! "Walter" <newshound digitalmars.com> дÈëÏûÏ¢ÐÂÎÅ:d49ed9$13kn$1 digitaldaemon.com..."Andreas Schmid" <monkey gmx.info> wrote in message news:d4997k$v07$1 digitaldaemon.com...I know that many programmers dislike garbage collection. I suspect thatonlytrue experts like Walter really know how expensive a garbage collector isinvarious situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would havebeenone of the first to be dropped due to popular demand.I, for a very long time, was convinced that garbage collectors were crutches for poor programmers, and that there's no way a gc app could beat a carefully written explicitly memory managed app. It's so obvious by inspection. It's the conventional wisdom (see the thread entitled "Why do you program in C++?" 4/18/2005 on comp.lang.c++.moderated). Then, when writing a Java compiler, I was forced into dealing with one. Imagine my disbelief when I discovered that gc programs are often *faster*, in addition to being quicker to write and less buggy. This effect is often why D outperforms C++, to the point where the proponents of the Conventional Wisdom have literally accused me of "sabotaging" C++. (Of course, gc isn't a panacea for all memory management problems, which is why D allows one to use explicit memory management where that makes sense.) An interesting discovery I made was that much of the numbing complexity in C++ comes from attempts to deal with managing memory.
Apr 22 2005
In article <d4997k$v07$1 digitaldaemon.com>, Andreas Schmid says...Hi, I have not spent a long time programming in D and am still discovering all the wonderful features it has to offer - but I can already say with certainty it is by far the best programming language I have ever used. It seems to me that Walter, after all the years of developing the C++ compiler, has gathered immense knowledge of useful features and expensive features that not only bloat the language itself but also add significantly to compilation time. Writing a compiler is certainly one of the more demanding programming tasks, to say the least - I wonder: Would the quality of D have suffered if it was an open source project in which virtually everyone, no matter how much experience or what background, could participate? I know that many programmers dislike garbage collection. I suspect that only true experts like Walter really know how expensive a garbage collector is in various situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would have been one of the first to be dropped due to popular demand. I've followed the "F Word" thread in D.gnu and and have the feeling that maybe it's a good thing that Walter pulls the strings. Like: "I'm giving you a garbage collector and many other extremely useful features against your will, and although you won't immediately realize it, it's good for you." ;-) -Andreas1) It was never doubted that Walter should pull the strings. I agree he always should... 2) It was never suggested (to my knowledge) that the language should be open-sourced. This was not the object of the "F-word" discussions. really means). Many suggestions have been made to encourage faster improvements to D (bug fixes or language features critical to current projects), specifically shared work load and better management. discussions really made no aspersion to such an idea. They emphasized better interaction/communication/feedback with/to Walter. There were hopes that if Walter surrounded himself with a semi-official committee of sorts, there would be better accountability and responsiveness. This is the current problem. The single man team called Walter doesn't or can't respond to suggestions from people struggling with langauage issues in important projects (especially as the size of the d community grows and the number of d projects increases -- overload!). And if he does respond, fixes don't occur fast enough to keep important projects rocketing forward. All the deligthtful suggestions recently proffered to solve this problem were indeed "good" as far as their intent goes. But I can't see the Big guy even coming close to gleaning this newsgroup's priority items with or without decorative tags, let alone responding to suggestions. Direct emails to him would be a better solution -- *shudder*. The bug-fixing marathon alone is enough to keep that guy busy for a long time. Take a look at dstress. Why am I beating at this again? Boy, Matthew was right, I am beginning to sound like a GOM. Oh no, it can't be happening yet! By the way, I'm just kinda grumpy, not so much where this topic is concerned anymore... and it has more to do with my not having my one and only laptop to console (oops! pun!) me. :-) (in for repairs *sigh*) - JJR
Apr 21 2005
John Reimer wrote:2) It was never suggested (to my knowledge) that the language should be open-sourced. This was not the object of the "F-word" discussions.Ouch, something hit my ankle! I have to elaborate on my Micro Forks talk. The Micro Forks were actually not demands to open source DMD. Instead, I was thinking of GDC packaged so that any beginner could start tinkering "out of the box".
Apr 21 2005
Georg Wrede wrote:I don't understand this, Walter has "open-sourced" D long ago ? (at least the parsing/lexing/front-end and the standard library) That the back-end of DMD is not open source is understandable, and as far as I know most of it is being shared with DMD anyway (just as the GDC backend is being shared with GCC, I suppose ?) And since both DMC and DMD are free of charge, most don't care. The only thing that is missing now is the D specification itself, but as I understood it - that was mostly due to fear-of-forking before it had been finalized as "D (the programming language) 1.0" ? http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D/20694 Hopefully this means that it will eventually be an open standard... (no idea what's involved in getting something like ISO or EMCA) Meanwhile, my company is sponsoring work on the Mac version of GDC both based on "hope" and since it has already proven useful enough. It's all GPL. (will be on http://sourceforge.net/projects/gdcmac/) But currently the only documentation is on Digital Mars home page. --anders2) It was never suggested (to my knowledge) that the language should be open-sourced. This was not the object of the "F-word" discussions.Ouch, something hit my ankle! I have to elaborate on my Micro Forks talk. The Micro Forks were actually not demands to open source DMD. Instead, I was thinking of GDC packaged so that any beginner could start tinkering "out of the box".
Apr 22 2005
John Reimer wrote:... 2) It was never suggested (to my knowledge) that the language should be open-sourced. This was not the object of the "F-word" discussions. ... discussions really made no aspersion to such an idea. They emphasized better interaction/communication/feedback with/to Walter. There were hopes that if Walter surrounded himself with a semi-official committee of sorts, there would be better accountability and responsiveness. This is the current problem. The single man team called Walter doesn't or can't respond to suggestions from people struggling with langauage issues in important projects (especially as the size of the d community grows and the number of d projects increases -- overload!). And if he does respond, fixes don't occur fast enough to keep important projects rocketing forward. ... - JJRFWIW, D has been open sourced (not just suggested). Ref: gdc. This doesn't reflect on Walter at all, but I'd be much less interested if there weren't an open source edition.
Apr 22 2005
In article <d4blvk$3e1$1 digitaldaemon.com>, Charles Hixson says...John Reimer wrote:My statement about open-source was indeed ambiguous, I apologize. I meant "open-sourcing" the /language/ as in "opening" the language /specification/ to free, unmoderated public modification. My point was to indicate that doing so was not the topic of discussion in previous posts (perhaps I interpreted wrong?). It was not my intention to refer to the actual software tools that implement the language specification (open source tools for D do indeed exist). Poor choice of words on my part, I fear. D definitely needs the rudder operator, and Walter is it. But the rudder operator needs a bunch more oars-men to move that boat.... 2) It was never suggested (to my knowledge) that the language should be open-sourced. This was not the object of the "F-word" discussions. ... discussions really made no aspersion to such an idea. They emphasized better interaction/communication/feedback with/to Walter. There were hopes that if Walter surrounded himself with a semi-official committee of sorts, there would be better accountability and responsiveness. This is the current problem. The single man team called Walter doesn't or can't respond to suggestions from people struggling with langauage issues in important projects (especially as the size of the d community grows and the number of d projects increases -- overload!). And if he does respond, fixes don't occur fast enough to keep important projects rocketing forward. ... - JJRFWIW, D has been open sourced (not just suggested). Ref: gdc. This doesn't reflect on Walter at all, but I'd be much less interested if there weren't an open source edition.
Apr 22 2005
Well, despite carping a lot recently (and having a lot to carp about, to be sure), there is no doubt that D has *much* merit. Lars and I are currently considering ways of enhancing std.openrj. One of the things I've wanted to do is read the comment for a record and represent it as a property of the Record object. I've just coded and tested this, and it took me 10 - yes, that's ten, a one and a zero, minutes - to code and test. And more of that was spent changing the makefile than the D code. How d'ya like them apples?!? :-) "Andreas Schmid" <monkey gmx.info> wrote in message news:d4997k$v07$1 digitaldaemon.com...Hi, I have not spent a long time programming in D and am still discovering all the wonderful features it has to offer - but I can already say with certainty it is by far the best programming language I have ever used. It seems to me that Walter, after all the years of developing the C++ compiler, has gathered immense knowledge of useful features and expensive features that not only bloat the language itself but also add significantly to compilation time. Writing a compiler is certainly one of the more demanding programming tasks, to say the least - I wonder: Would the quality of D have suffered if it was an open source project in which virtually everyone, no matter how much experience or what background, could participate? I know that many programmers dislike garbage collection. I suspect that only true experts like Walter really know how expensive a garbage collector is in various situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would have been one of the first to be dropped due to popular demand. I've followed the "F Word" thread in D.gnu and and have the feeling that maybe it's a good thing that Walter pulls the strings. Like: "I'm giving you a garbage collector and many other extremely useful features against your will, and although you won't immediately realize it, it's good for you." ;-) -Andreas
Apr 21 2005
On Fri, 22 Apr 2005 10:01:53 +1000, Matthew wrote: [snip]And more of that was spent changing the makefile than the D code.Have I mentioned my Build utility? ;-) -- Derek Parnell Melbourne, Australia http://www.dsource.org/projects/build/ v2.03 released 20/Apr/2005 http://www.prowiki.org/wiki4d/wiki.cgi?FrontPage 22/04/2005 11:05:44 AM
Apr 21 2005
Personally, I think it's a good thing to have a single person or group thereof in control of a single project. Indeed, that only makes sense. It has obviously benefitted D, and no one can say that Walter isn't a very smart man who knows what he's doing (or, they couldn't say that and be right.) However, I don't like the slant against open source here. I think I know what you're saying, or hope I do, but it almost sounds like you're saying things about open source that aren't totally true. A great example of an open source project is Mozilla Firefox. Its development is led by a small group of people, and not a single piece of code goes into the tree without their approval. They are, however, only a subset of the developers who work on Firefox; some of the larger group's changes are accepted, some are not. Every patch must be checked by two separate people to go into the tree, in their system. Personally, I think D would benefit from having not only more people, but much more importantly having peer review. Peer review is perhaps the most important, or at least one of the most important, parts of open source. Some projects choose to throw the project to the dogs, and let anyone do whatever they want. To me, that sounds totally crazy. It tends to create disorganized boats, and I don't believe any project would benefit from it. I think D is a great project, and solves many of the problems of D without the problems other solutions have had. But, it could use a bit more open source. Then again, I'm an open source guy. -[Unknown]It seems to me that Walter, after all the years of developing the C++ compiler, has gathered immense knowledge of useful features and expensive features that not only bloat the language itself but also add significantly to compilation time. Writing a compiler is certainly one of the more demanding programming tasks, to say the least - I wonder: Would the quality of D have suffered if it was an open source project in which virtually everyone, no matter how much experience or what background, could participate?
Apr 21 2005
On Thu, 21 Apr 2005 18:29:14 -0700, Unknown W. Brackets wrote:Personally, I think it's a good thing to have a single person or group thereof in control of a single project. Indeed, that only makes sense. It has obviously benefitted D, and no one can say that Walter isn't a very smart man who knows what he's doing (or, they couldn't say that and be right.)Totally agree. [snip]Personally, I think D would benefit from having not only more people, but much more importantly having peer review. Peer review is perhaps the most important, or at least one of the most important, parts of open source.Absolutely! And not only on open source projects. All projects, including non-software ones, will always benefit from good peer reviewing. I too wish that Walter would accept some help. He still needs to have ultimate say about what goes into D, but there is no need for him to do all the leg-work. -- Derek Parnell Melbourne, Australia http://www.dsource.org/projects/build/ v2.03 released 20/Apr/2005 http://www.prowiki.org/wiki4d/wiki.cgi?FrontPage 22/04/2005 11:38:42 AM
Apr 21 2005
Agreed on both counts. In my opinion, it's going to happen. I see where D is going, and even if Walter doesn't want to lose any control at all, it's still going to have to happen. It would take an external force to stop D, I think, and if it doesn't stop it's going to be too much for Walter. Eventually, he will see that it has to change for D to grow, and I am pretty sure he won't hold it back. It just means it might take a bit longer, is all. As for peer review: good point. I had applied it to things other than code before, but I'd never thought of it in quite that general a scope. -[Unknown]I too wish that Walter would accept some help. He still needs to have ultimate say about what goes into D, but there is no need for him to do all the leg-work.
Apr 21 2005
On Thu, 21 Apr 2005 21:23:13 -0700, Unknown W. Brackets wrote:As for peer review: good point. I had applied it to things other than code before, but I'd never thought of it in quite that general a scope.We have used it on documentation, test cases, training materials, specifications, tenders, in-house work processes, project planning, management summaries, etc ... in fact everything that has a human-readable output produced by human effort. And I suspect that if we were in the building construction business, we'd apply it to blueprints, drawings, and actual buildings too. The results have been always positive. When I first introduced it to the company, I trained a small development team (6 people) in how to do it well, and their bug rate went down from 95% to 1% in three months. That's right, nearly every program they released to a client for user acceptance testing failed. And *just* by doing peer reviews, we got that down to one program in 100 which failed. After some more experience and training, the team began to teach other teams in the company. That built up a solid collection of reviewing checklists, better coding and development standards, and a *lot* of pride in their work. The overall company customer-fail rate went down to around 0.1% (1 in a 1000) inside of six months. Naturally enough, I didn't get a nice bonus for it either ;-) -- Derek Parnell Melbourne, Australia http://www.dsource.org/projects/build/ v2.03 released 20/Apr/2005 http://www.prowiki.org/wiki4d/wiki.cgi?FrontPage 22/04/2005 2:48:49 PM
Apr 21 2005
Peer review is an amazingly powerful tool. A nice effect is seen when one is explaining one's code to a peer. Just the very act of explaining something can lead one to seeing it from a different and/or fresh perspective, and consequently discover bugs. "Derek Parnell" <derek psych.ward> wrote in message news:1ok0kbl844k03.nrcpe9oqyjqe.dlg 40tude.net...On Thu, 21 Apr 2005 21:23:13 -0700, Unknown W. Brackets wrote:As for peer review: good point. I had applied it to things other than code before, but I'd never thought of it in quite that general a scope.We have used it on documentation, test cases, training materials, specifications, tenders, in-house work processes, project planning, management summaries, etc ... in fact everything that has a human-readable output produced by human effort. And I suspect that if we were in the building construction business, we'd apply it to blueprints, drawings, and actual buildings too. The results have been always positive. When I first introduced it to the company, I trained a small development team (6 people) in how to do it well, and their bug rate went down from 95% to 1% in three months. That's right, nearly every program they released to a client for user acceptance testing failed. And *just* by doing peer reviews, we got that down to one program in 100 which failed. After some more experience and training, the team began to teach other teams in the company. That built up a solid collection of reviewing checklists, better coding and development standards, and a *lot* of pride in their work. The overall company customer-fail rate went down to around 0.1% (1 in a 1000) inside of six months. Naturally enough, I didn't get a nice bonus for it either ;-) -- Derek Parnell Melbourne, Australia http://www.dsource.org/projects/build/ v2.03 released 20/Apr/2005 http://www.prowiki.org/wiki4d/wiki.cgi?FrontPage 22/04/2005 2:48:49 PM
Apr 21 2005
On Fri, 22 Apr 2005 15:49:01 +1000, Matthew wrote:Peer review is an amazingly powerful tool. A nice effect is seen when one is explaining one's code to a peer. Just the very act of explaining something can lead one to seeing it from a different and/or fresh perspective, and consequently discover bugs.Exactly, and it works at all levels and is so simple. My 10-year-old daughter was writing a story for her homework. There was one paragraph that was just not coming out right. So I got her to explain to me what the paragraph was trying to say, as opposed to what it was actually saying. The act of her explaining it to me enabled her to discover the precise words that the paragraph needed. It only took a few minutes. -- Derek Melbourne, Australia 22/04/2005 4:32:33 PM
Apr 21 2005
Derek Parnell wrote:My 10-year-old daughter was writing a story for her homework. There was one paragraph that was just not coming out right. So I got her to explain to me what the paragraph was trying to say, as opposed to what it was actually saying. The act of her explaining it to me enabled her to discover the precise words that the paragraph needed. It only took a few minutes.For those without daughters / dads, you can try other patient listeners: http://c2.com/cgi/wiki?RubberDucking --anders
Apr 22 2005
I find this works remarkably well with comments as well, so long as you do them after the fact, but too many programmers have that three step "always out of date, always wrong, or always missing" opinion of them. Really, any review (even self review) tends to find bugs, mistakes, or bottlenecks. Explaining it - whether in speech, comments, or coding documentation - tends to help you reapply the concepts in a very enlightening manner. This works, as Derek Parnell mentioned, on other things as well - even math, history, speech skills, and the like. It all goes back to the well-accepted idea that you never really know something until you both can and have taught it to someone else. -[Unknown]A nice effect is seen when one is explaining one's code to a peer. Just the very act of explaining something can lead one to seeing it from a different and/or fresh perspective, and consequently discover bugs.
Apr 22 2005
Yep. I've always felt that a person generally learns more by teaching than by studying. :) TZ "Unknown W. Brackets" <unknown simplemachines.org> wrote in message news:d4a92l$1tqc$1 digitaldaemon.com... *snip*This works, as Derek Parnell mentioned, on other things as well - even math, history, speech skills, and the like. It all goes back to the well-accepted idea that you never really know something until you both can and have taught it to someone else. -[Unknown]
Apr 22 2005
TechnoZeus wrote:Funny, I read that as *earns* more - and agreed to that too ;-) --andersThis works, as Derek Parnell mentioned, on other things as well - even math, history, speech skills, and the like. It all goes back to the well-accepted idea that you never really know something until you both can and have taught it to someone else.Yep. I've always felt that a person generally learns more by teaching than by studying. :)
Apr 22 2005
"Anders F Björklund" <afb algonet.se> wrote in message news:d4ags7$241b$2 digitaldaemon.com...TechnoZeus wrote:Hehe. Cute. :) TZFunny, I read that as *earns* more - and agreed to that too ;-) --andersThis works, as Derek Parnell mentioned, on other things as well - even math, history, speech skills, and the like. It all goes back to the well-accepted idea that you never really know something until you both can and have taught it to someone else.Yep. I've always felt that a person generally learns more by teaching than by studying. :)
Apr 23 2005
I know that many programmers dislike garbage collection. I suspect that only true experts like Walter really know how expensive a garbage collector is in various situations, can correctly evaluate its usefulness and devise an efficient implementation - and am afraid that if D had been a community-project from the ground up, this wonderful feature would have been one of the first to be dropped due to popular demand.I don't think so. GCs have been there since LISP wich is one of the oldest programming languages. Most polular languages have a GC. I don't know any functional languages without a GC and most OO languages have a GC, too. Only pure proceduaral languages come without a GC, because there isn't much use for it. But D isn't a pure procedural language, so it's obvious that D should have a GC, IMHO.
Apr 22 2005