Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: Problem Domains and Multiple Disciplines

by Ytrew (Pilgrim)
on Sep 15, 2004 at 15:16 UTC ( #391206=note: print w/replies, xml ) Need Help??


in reply to Problem Domains and Multiple Disciplines

At my university, Computer Science was a department in the Faculty of Mathematics, but I understand your distinction between mathematicians and programmers. A professional statistician or applied mathematican may know algorithms I've never heard of.

However, I'm not sure calling in specialists is a very practical idea in the business world. They all want to be paid, and they usually cost a lot. The more they know, in general, the more they cost.

And sometimes, what the programmer should code may still be the O(n) solution, not the O(1) solution. The O(n) solution is slower, but it's simpler, more obviously correct to someone who doesn't know the mathematics involved, and "fast enough". A simpler solution may also be more maintainable.

Three weeks from now, when someone from the marketing department steps in and says 'We need you to omit all the odd primes from that calculation, when run for the following customers', you'ld have to throw away Gauss's formula -- it doesn't apply.

You can keep the loop from the other version, and add an if statement, "if (is_odd_prime($i) && is_special_customer($cust)) { $sum += $i }". Admittedly, the whole thing is toy problem, but hopefully you see my point.

In some applications, fast code is important. In almost all applications, correct code is as important. Optimizing for verifyably correct, maintainable code is not the same as optimizing for speed, but it's arguably more important. And for businesses, the optimization computation really comes down to the utility of the application in terms of cost savings versus the development and maintainance costs.

So, yes, your points about cross-disciplinary understanding are well taken, but they need to be balanced with the costs involved, as well.

Just some musings, -- Ytrew

  • Comment on Re: Problem Domains and Multiple Disciplines

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://391206]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (6)
As of 2021-03-01 23:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    My favorite kind of desktop background is:











    Results (28 votes). Check out past polls.

    Notices?