Planning, Startups, Stories


Tim Berry on business planning, starting and growing your business, and having a life in the meantime.

iPhone, Luvya and All That, but Couldya Clean This Up?

It’s not like I don’t know how to read around this, but with all the slickness of the iPhone, iPhone Weatherwhy allow this simple error? The high for the day is 92 degrees when the current temperature is 100 degrees? Isn’t that just sloppy?

There is no computer language that doesn’t have an IF- THEN clause capable of making this look good. Call the high temperature that was there when we started the day H, and the actual temperature A. I don’t program iPhones but whoever does has the ability to do this:

If A > H, then H = A

Which would replace the 92 with the 100. Why not? Wouldn’t that look better? What bothers me is my own in-my-mind related if-clause:

If a logical error like this one, as obvious as this one is, shows up in this obvious a place, what’s going on with the system software in the core?

Software does have its production values, and it’s not like Apple Computer doesn’t have the resources. My guess is they’ve decided to let us keep the predicted high as a reference value, so we can compare it to the actual. Still, is it just me?

  • evan

    I can think of a couple reasons why they wouldn’t update the “high” value:

    One, if they updated the high value based on the highest temperature you’ve seen today, it would be inconsistant. If I looked at the weather on my iPhone when it was 98°, my high for the day would be 98° – but if you looked when it was 100° you’d see the high as 100°. The only way to be consistent would be for the weather app to be open all the time, constantly checking the temperature to update the high or the low, which would be unacceptable (battery drain etc).

    Two, if you looked at it at noon and the temperature was 100°, the app would have to store that temperature along with a date lest you check back later to find that today’s high dropped 8 degrees. Not a major issue since iPhone has pretty decent data stores but for such a simple app, it could easily balloon the complexity. As it is, simply showing data they get from Yahoo! is simple.

    Three, there may be a terms of service issue from Yahoo! that says they can’t modify the data they show to users. Just a guess but I doubt you could get away with putting out an app that claimed to get weather data from Yahoo! and then showed totally wrong info. Yahoo! would look bad. Again, I don’t have any special knowledge, but I just would assume that Yahoo! would forbid modifying its weather data before showing it to the user.

    Four, displaying the same number twice doesn’t give you any new information, but if you see that it’s substantially hotter (or cooler!) than predicted, that gives you an extra data point to do with as you please. Why destroy data?

    Obviously I have no special knowledge of the situation, I’m just thinking about it from a programming perspective.

    • Well there, thanks Sara and Evan, I suppose I stand corrected then. Tim

  • Sara

    Your app is just telling you the actual high was higher than anticipated.

    Most weather apps have a contingent high, meaning they’ll keep listing the original projected high, regardless of what the final high temp is, or say “high not valid after X p.m.” Otherwise it looks like they’re gaming the results, changing their projections after the fact to make it look like they weren’t originally wrong.