And after the HW guys do their thing, you software geeks come along and bloat the code up some more, and bring the hardware back down to a crawl.
The never ending cycle.
Yep, it happens. First you get it working, although it might be a resource hog. Then you find the hot spots and optimize the code and memory usage.
There are also errors to consider... the CICS system software I wrote devoted a bunch of code to error detection / handling / messages, and so forth. You only take an OLTP system down because something catastrophic has happened. :-)
- Big, inefficient and correct is tolerable in limited situations
- Small, efficient and buggy is a no-no
- As long as you're correct, there should be a reasonable trade-off between the other two options.