1) Always give software developers the slowest weakest machine possible so that it becomes impossible to write bad/inefficient code. If they can't run their code to test it, then they'll write it better.
I don't know if that's a stupid idea or a really stupid idea. I have seen what kind of code developers can write before compiling, and it much much wrose than stuff they write after some test. At least it works sometime with testing.
If code can't be tested in a reasonable amount of time, it doesn't work. Period. Exclamation. Reasonable may be defined differently for different applications, and for the code I'm looking at, it could've been written to go quickly on a pentium, but instead it runs slowly on a P4. If you're trying to simulate the big bang or the aerodynamic properties of a plane, then you really need all those operations and it'll take days. I just want to generate some files.
Oh, I see. You are talking about runtime effiiency not correctness of the program. Is it in the spec on how fast the program should run? If not, well too bad.
Ha! Specs? It'd be nice to have gotten a spec. Anyways, if runtime efficiency is not part of the spec, that does not mean you should go off and solve the meaning of Life, the Universe, and Everything first. Make the thing "reasonably" efficient. I think the problem with most engineering code is two fold. One, usually only the author can run the code. Two, even when someone else can figure out how to use the code, it's so god-awful slow and painful, that you could've done the same thing by hand quicker and easier. The whole point of writing code is to do a job quickly and easily.
Algorithms didn't teach anything about how to be a better coder. It only taught us to accept our limitations (like getting a 10% on the first test). I suspect Alan learned something similar from his time in 213.
I feel like I just beat a kitten to death... with a bag of puppies.
Regarding engineering code, I see the first problem all the time. Can't say I've witnessed the second. We do have a script which takes a long time to run, but honestly it is just because disk accesses for thousands of gzipped files are painful.
George wrote:Algorithms didn't teach anything about how to be a better coder. It only taught us to accept our limitations (like getting a 10% on the first test). I suspect Alan learned something similar from his time in 213.
Yes, thanks to my 7% midterm grade, I ran away from computer science. It was probably the best thing for me as well as the field of computer science.