On Wed, Oct 23, 2013 at 4:27 AM, Steven D'Aprano <steve+comp.lang.pyt...@pearwood.info> wrote: > On Tue, 22 Oct 2013 23:20:52 +1100, Chris Angelico wrote: > >> Considering that rapiding took about 1200ms (ish - again, cold cache) >> previously, adding even just 250ms is noticeable. > > Please excuse my skepticism, but in my experience, that would probably > mean in practice: > > ... rapiding took about 1200ms, plus or minus 200ms, plus 500ms if the > system is under load, plus 800ms if the developer vagued out for a > moment, plus 1900ms if he happened to be scratching an itch, plus 2700ms > if the anti-virus happened to be scanning something, plus 4100ms if the > dev decided this was a good time to take a sip of coffee, plus 437000ms > if he needed to make the coffee first, plus 72000000ms if he was just > taking a moment to check something on Reddit or answer an email...
Yes; and more importantly, at the times when it actually would be used, the cache will likely be warm. > You're right, of course, that 1/4 second is noticeable. I just find it > hard to credit that it's *significant* in the circumstances you're > describing. But I could be wrong. Yeah, but the problem here is a fundamental of human nature. I mentioned earlier that I was trying to "sell" the notion of an instant pre-check of the code. I use one myself, have done for ages, and it's helped me often enough that I don't care if it occasionally adds a second to my time. (I have a few such assistants that involve searching through recent git commit messages, so they can take multiple seconds if the cache is cold. I don't care; once it's in cache, it's way faster.) But imagine sitting beside a skeptical fellow developer and saying, "Enable this line here and it'll catch these sorts of bugs before you even spin it up in your testbox" - and he hits F7 and notices that it takes twice as long as he's used to. That's going to make it a pretty hard sell. That's why I wanted to get the time cost of the smoke test as low as I possibly could, even on a cold cache. (I'm used to tough sells at my workplace. It took years before we adopted source control.... yes, seriously. And even once we did, I had to fight to get other developers to make useful commits and commit messages. One in particular - who, fortunately, is no longer with us - saw the whole thing as a nuisance that got in the way of his genius, so he'd just commit once at the end of the day with a barely-useful message. But then, he was pretty astounding in a lot of other areas, too - really amazing... like using the For-Case paradigm in PHP with an off-by-one error...) ChrisA -- https://mail.python.org/mailman/listinfo/python-list