Published by Fabian on 31 Mar 2008 at 02:30 pm
performance or maintenance?
I wonder what the makers of the PHP5 practice exam wanted to express with the following question:
In a general sense, which is more important: performance or maintainability of an application?
- performance first, maintainability second
- Maintainability first, performance second
- Maintainability
- Performance
Are options 1&2 for the cowards that do not dare to restrict themselves to a single answer? Or for the wise that know that a single answer is never sufficient?
Do they want to convince us that maintainability of spaghetti PHP code is not so important because its fast? Or do they want to make us better coders, reminding of the important mission to write maintainable code?
Is this question anyway valid? Is there a universal truth out there that is valid for each and every code?
So I opt for
- Code should be written according to customer requirements.
At least this answer can never be wrong
stefan on 31 Mar 2008 at 3:24 pm #
if I really really *had* to pick, I’d say maintainability. But no, there is no universal truth for this question, it differs on so many factors that you just can’t say one is always more important than the other.
Guildenstern on 31 Mar 2008 at 10:04 pm #
don’t you know? One size fits all!
That question fits for every programming language. Well, a friend of mine is a selfmade consultant without any vocational training or academic title. He prefers performance to handle 100,000 bigger queries a hour…
the thing is… he doesn’t maintain his own code
°u°
Guildenstern on 31 Mar 2008 at 10:06 pm #
oh I forgot..
I usually pick maintainability in first and testability as second in my job.
Fabian on 01 Apr 2008 at 12:38 am #
PS: Experience shows: Customers pay for performance. And they even pay more if you have to re-do the whole thing because its not maintainable, so its win-win for performance
Mark1inLA on 24 Dec 2008 at 2:41 am #
I’ve been looking for a definitive answer, but after thinking about it, the answer seems pretty clear to me.
I’d pick:
-Performance first, maintainability second.
True maintainability is very important, but if the application isn’t up to par in performance, is it really worth maintaining? If an application was quick and efficient before the ‘enhancement’ was made to make it more maintainabe, is it justified? I would say up until a point, but preserving performance would be a priority for me.