Eigen wrote:As hardware gets better and more capable, programmers get sloppier because there are no real performance issues to be tackled. Sure, methods for code/project organization/management are being improved on and researched, but the quality of code, I believe, suffers in quality.
More capable hardware however allows for cleaner coding styles. If you have ever done any low-level programming for 'older' (and even some current) hardware you'll see that you will have to resort to some rather dirty hacks to get things to run the way you want.
A good example of this is video mode switching; to do this in a protected mode environment on an x86 CPU you'll have to resort to writing a full-blown video driver, which is kind of overkill if you only need to set a video mode (not to mention that implementations differ depending on your graphics card vendor), while you are able to switch video modes with relative ease in a real mode environment by using BIOS calls
Making the switch to real mode from protected mode is a rather dirty hack, and it has been this way throughout the entire lifespan of the x86 architecture and still exists to this day
This issue has not been solved yet, and I doubt it will be, but others have been solved by advancements in hardware leading to cleaner and more efficient coding styles.
If code is of a low quality it's entirely the programmers fault; there's no excuse for writing bad code, even if the hardware allows for less optimization