What is the most important difference between generic software product development and custom software development? What might this mean in practice for users of generic software products?