One common cause of this is some sort of a bypass connection allowing cold water into the hot water piping without going through the heater. Usually this is either because the winterizing bypass valve hasn't been shut, or because the outside shower has the hot and cold water taps on but the water turned off at the shower head. (The inside shower can also work this way, of course, but most people don't forget to turn it off, not to mention that complaining of a cold shower implies that it's not turned off.)