brutalizer
[H]ard|Gawd
- Joined
- Oct 23, 2010
- Messages
- 1,602
We talked about performance, right? Which cpu/server is the fastest. We did not talk about if a computer is portable. In the performance arena, which we talked about, a computer that can emulate another sufficiently enough (but not the other way around) is faster - and therefore better.I guess the problem is that I have a more practical definition of superiority.
Your car has an ECU on it which controls engine function. That ECU contains a computer which listens to sensors, makes some decisions, and controls the engine. That ECU can't emulate a large computing cluster, but the large computing cluster can certainly emulate the ECU.
Is the ECU superior to the computing cluster? It certainly is: nobody wants to buy a car that requires a genset to run a computing cluster that weighs a few orders of magnitude more than the car itself.
I might not argue that the cluster is more capable in most respects, but even then it's not capable of being portable or running in constrained heat or power environments. Things like capability and superiority are situational, not absolute; a fact that makes your comparisons of minicomputers to mainframes very brittle.
Sure, if you talk about minimialistic and portable computers then there is another discussion. But we talk about best performance. So your example is flawed.
All serious developers aim to write beautiful code, small and efficent. Lean and mean. If you dont know this, you have not programmed a lot, nor talked to developers that care about programming.I never said that bloat wasn't a bad thing. I just said that you're wrong in claiming that all developers try to actively refactor code; and that you're wrong when you claim smaller code is always better; and that you're wrong in your belief that minimization is most important.
Have you heard about Einsteins saying: "perfection is not achieved when you have nothing left to add, but when you have nothing left to take away".
Churchill said once "I am short on time, so my letter will be long. I dont have time to write short". If you are going to aim only for the most important and delete unnecessary cruft, you need to think a lot and reformulate again and again. Anyone who wrote their thesis or research papers knows this. Any fool can add functionality, but it takes much effort and brain power to create something minimalistic, that only contains the important stuff. The essence.
For instance, in designing the Go language, they designers tried to create a minimalistic language with no unnecessary features. They followed the KISS-principle. Creators of Unix, C and Plan9, etc is behind Go. Real old gurus with big beards.
There is another book, "Coders at work" by Seibel. In that book he has lengthy interviews of several hacker stars, such as Guy Steele, Ken, Don Knuth, etc. In almost every interview they talk about how code should be small and beautiful, only contain the essential.
Serious coders think like that. Just read that book and see it yourself. Educate yourself about programming.