The Artima Developer Community
Sponsored Link

Java Community News
Donald Knuth on Multi-Core, Unit Testing, Literate Programming, and XP

38 replies on 39 pages. Most recent reply: Jun 14, 2008 1:09 PM by John Zabroski

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 38 replies on 39 pages [ « | 1 ... 34 35 36 37 38 39 | » ]
James Watson

Posts: 2024
Nickname: watson
Registered: Sep, 2005

Re: Donald Knuth on Multi-Core, Unit Testing, Literate Programming, and XP Posted: May 4, 2008 10:42 PM
Reply to this message Reply
Advertisement
> To turn things back around somewhat, what happened to the
> write documentation first, then write the source from the
> documentation? If something needs to be added (and who
> knows of a program where it doesn't?) then document it
> first?

You haven't specified the detail of the documentation so any response is going to be based on the reader's assumptions of what you mean.

But to give an example where I think the above doesn't make any sense, I can take an example from my current work. One group I work with requires that all designs be documented to a level of detail such that 'any developer can code from them'. In other words, these documents basically contain the same level of detail as the code itself. These documents also take roughly the same amount of time to write as the code itself. Effectively, this means the code is written at least twice: once in Word and once in the target language. Any changes compound this duplication of effort.

While there is value in the document in that it's easier to read than the code, especially if you aren't familiar with the language, most of the useful detail could be generated from the code automatically.

Basically what you are suggesting is exactly what a lot of shops force on their developers. And yes, you can do it that way but you are going extremely inefficient (i.e. slow). Where I work, this problem manifests itself as unhappy customers. Their expectations and needs are not met by this approach. Often the final product arrives long after it is no longer needed.

> Also, how does this contrast with the "only document
> what's needed" mindset that most programmers end up in,
> because there's literally no time to do anything else? At
> what point does practicality kick in?

What's the argument against "only document what is needed?" What's the value in writing documents that are not needed?

Flat View: This topic has 38 replies on 39 pages [ « | 34  35  36  37  38  39 | » ]
Topic: David Pollak on Scala's Option Class Previous Topic   Next Topic Topic: Dojo 1.0 Released


Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2017 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us