• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Extremely naive view of software engineering Was Re: [OT] was: Where is NSList? (All Threads)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Extremely naive view of software engineering Was Re: [OT] was: Where is NSList? (All Threads)


  • Subject: Re: Extremely naive view of software engineering Was Re: [OT] was: Where is NSList? (All Threads)
  • From: Marco Scheurer <email@hidden>
  • Date: Fri, 30 Jul 2004 16:38:24 +0200

AnOn Jul 30, 2004, at 3:52 PM, Erik M. Buck wrote:
A very good programmer will first:
1) analyse his data structures and required methods (procedures)
2) available languages and resources
3) intended distribution (effects choices in 2)
4) time table for development
Ok, I got a great laugh out of the above quote. I am still smiling. I
would have thought by now that this type of naiveti was so thoroughly
discredited that universities would no longer teach it.

Yeah, the data structure + procedures seems dated. I was under the impression that "structured design" had been dead for 10 or 15 years...

It is particularly
ironic or perhaps sad that the poster went on to list the archetypical
example of premature optimization. He described a way to make matrix
arithmetic much more computationally efficient by making the algorithm/code
much more complex. The whole point is that there is no need to make the
code more complex unless profiling reveals that matrix multiplication is the
performance bottleneck in the system.

And who is still implementing matrix multiplication anyway when optimized and trusted packages such as CBLAS or SparseBLAS exist? With the additonal benefit, on Mac OS X of using Altivec for free...

Finally, just to ridicule traditional "Software Engineering" for fun:

Any software development process that requires the existence of complete and
correct requirements is doomed to failure. [...]

I agree of course... it's sad to think that the "everything can and should be known in advance" school is still going strong. There is an historic reason for trying to specify and plan everything on paper: punching and running a program was extremely costly. Change was costly. Nowadays, with our tools, change is cheap and time should not be wasted on extensive analysis and design phases.


Marco Scheurer
Sen:te, Lausanne, Switzerland http://www.sente.ch
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.


References: 
 >Extremely naive view of software engineering Was Re: [OT] was: Where is NSList? (All Threads) (From: "Erik M. Buck" <email@hidden>)

  • Prev by Date: Re: [OT] was: Where is NSList? (All Threads)
  • Next by Date: speeding view loading
  • Previous by thread: Re: Extremely naive view of software engineering Was Re: [OT] was: Where is NSList? (All Threads)
  • Next by thread: What does it mean when po puts % before class name?
  • Index(es):
    • Date
    • Thread