The programmer should never be allowed to assume that what may be logical to them is logical to the user. The concept of open source software implies that the idea of open source code is more important then the product itself. Open source computing is the developer centered approach to free software. The average user does not care that they can modify source code if the need arises. There is a lot of free software with closed source code that users will use just as easily as open source.
Companies hire programmers to design software for others to use.
How they create the finished product is of no importance to the people who hire them. Flat files or databases, C of Java. It should never matter from a user's point of view since it is all a matter of implementation. Another good example of developer centered computing are window managers. A window manager provides the user interface to the system.