• Miles Neale (5/9/2013)


    Steve Jones - SSC Editor (5/9/2013)


    ... We've shoehorned some of those features in there, and that causes issues.

    The bane of developers and their system, shoehorning. I have learned to dislike this process over the years. But a developer cannot stop it from happening. We cannot even slow it down. Many think it is cheap and easy but there is a cost somewhere in the process where others or you yourself will have to pay.

    After years of use and resurfacing or shoehorning, systems start to show the results of the series of compromises that have been made. Like using a pair of pliers as a hammer you are going to get hurt before it is over, and you had best watch out for it will in fact be wrong.

    Thanks Steve! You helped me get off a late afternoon vent 🙂

    M.

    Shoehorning is, unfortunately, not just inevitable, but necessary. Unlike the textbook computer science world where applications are planned, built, and used, and redesigned when new requirements arise, it is simply not possible to rip everything out and rethink stuff when requirements change. Organizations and societies function on continuity and consistency (as much as possible); consider the importance of precedent in the legal world. Existing systems must be preserved, at least until requirements change so much that it is necessary to make changes along with all the disruption they cause are justified.

    When you want a computer to behave in a different way, you simply load new software. When an organization or society has to behave in a different way, it's a much more complex problem

    ...

    -- FORTRAN manual for Xerox Computers --