After finishing the Steve Jobs video from yesterday’s post I thought Jobs took an interesting position on what software companies should do. He said they should spend more time building objects than apps.
I thought this point was important because it suggests that software companies should focus on building the tools that the makers are going to use and then non-technical organizations should hire software developers to build the custom tools they need to do their work. This seems to imply that many of the challenges faced by organizations were specific enough that off the shelf software was not sufficient. Or the cost of marketing software is so expensive that it is just as cheap if not cheaper to pay an engineer to implement a custom solution using objects sold by other companies than it is to buy an off the shelf solution from a software vendor.
The best choice is going to depend on the organizations usage. My own experience shows that off the shelf solutions are great for pilots and small scale operations but as usage scales up, the cost exceeds what the organization wants to pay or building a custom solution looks less expensive. Another challenge is the organization sometimes has so many custom needs for their software that the vendor becomes an outsourced custom developer for the organization. The tension between serving a large customer and building a real product then festers. The product then either becomes a salad of needs from different users that make no sense together, or the organization has to go without features it needs and users begin to resent it.