There are many common mistakes that are made, but which seem to the companies that make them to be reasonable at the time. A classic is to decide to drop off of maintenance because one has customized the source too heavily to update to a VAR's newer versions and the VAR doesn't support an old version of their code on a new version of Progress. Then, some years down the line they hardware is old and tired and expensive to maintain and it costs them a new license just to do a platform change. There is also the classic pattern which stems from ABL having a low total cost of ownership which, instead of people being more willing to invest some of the savings in improvements, seems to make them cheapskates who hire the minimum staff to not quite keep up with the demand for changes, thus leaving no time for improvement. What I wish I could get across to these companies is the false economy. Spending something on making the product better will actually make it cheaper to maintain over the long run and will make it more stable and predictable, lessening the likelihood of expensive outages and errors. There are a lot of people who don't seem to want to hear the message, though.