Live data from Hacker News

If you move your mouse continually the query may not fail. Do not stop moving

support.microsoft.com

131–140 of 168 posts

Re: If you move your mouse continually the query may not fail. Do not stop moving

#131
post #92

Earlier quoted context omitted.

I am familiar with the design of message queues, though not specifically with the design of Windows message pumps. > If you violate the run loop's threading requirements it's not totally inconceivable that a mouse event could affect behavior. That's true. But the possibility remains that the design of Windows message queues is so byzantine and imposes so many arcane requirements on the developer that it is easy to mi…

You overlooked the fact that programming model of windowed/GUI applications is quite complex and very sensitive to non-cooperative code - a thread that frequently blocks for 100 ms can cause very unpleasant hiccup. Introduction of OLE/COM interprocess communication mechanism made things worse as one unresponsive application could block other programs and halt their message loops. But it was quite efficient and you di…

> You overlooked the fact that programming model of windowed/GUI applications is quite complex and very sensitive to non-cooperative code - a thread that frequently blocks for 100 ms can cause very unpleasant hiccup.

No, I didn't overlook this. But this is 2013. IMO, a multitasking architecture that is "sensitive to non-cooperative code" ought to be considered broken, and so if that's the cause of this problem, that still counts as Microsoft's fault in my book.

Re: If you move your mouse continually the query may not fail. Do not stop moving

#132
post #78

Earlier quoted context omitted.

It's a sign we're having trouble in handling the complexity of our computer systems. Programming is mostly human-mind-bound now (and has been for many years); we need better tools and better abstractions.

I think we need to remove that complexity and find a simpler approach to things, not just "better" (more complex) tools to layer even more complexity on top of complex.

I also would recommend that approach! The problem is, that you need more professional and better programmers that are aware of the problem and do reduce the complexity. Many self indulgent programmers, that think they are smart, won't.

But the trend is more to hire more and more novice programmers (because they are cheaper) ... so we get more into trouble in the future!

Re: If you move your mouse continually the query may not fail. Do not stop moving

#133
post #64

Nothing new for Microsoft: There is a reason, they had to drop Office 95 and completely re-implemented it. I guess, the day will come, that the current implementation must be abandoned too. The trouble with today's computing is: Just to much complexity around (starting from the OS, and that is also valid for Linux, I must say!) and to few really good programmers that make things better (and not worse). I see also in…

The issue with simplicity is that computing is a complex problem. It's all well and good to say "Just keep it simple!" It's another to implement that. I built and maintain a fairly popular RubyMotion library. It's goal is pretty simple: DSL out the ViewController hierarchy management and make it manageable for the application developer. Every bit of code I add to what is now a fairly mature and full featured system p…

>Simple for users just isn't the same as simple under the hood.

Right, and exactly that is the reason, why we are in desperate need for really professional computer scientists (or programmers, how you want to name it). But the trend is the other way around. Everybody is searching for the quick solution and the cheapest programmers, or hackers (I even see many job offers that go in the direction hacker rather than professionals).

It takes a real professional to cope with the complexity and reduce it to the minimal value. But in our current trend, we will thinks getting worse and worse, because we have far to much coding and far to less professionals (and even they can't afford to make a clean job oftentimes).

Re: If you move your mouse continually the query may not fail. Do not stop moving

#134
I don't really understand why people make fun of this. Would you rather they do not provide a workaround for the bug? And yes as every programmer should know, workarounds can be sometimes odd (I did similar things in the past to work around things).

And yes of course providing a bug fix is better, but providing a workaround is always the first step. A workaround is plenty good enough for many people for whom updating is more risk and hassle.

The whole thing reminds me a bit of the classic "known knowns" episode with Rummy where he dared to bring some decision theory into an interview answer ( http://en.wikipedia.org/wiki/There_are_known_knowns ) The reaction to it really showed more about journalists than about the statement.

Re: If you move your mouse continually the query may not fail. Do not stop moving

#135
post #128

Internet Explorer (v2 or v3 I can't remember) suffered a similar bug, basically pages would load or load faster if you "gave more cpu" to the thread, by moving your mouse over the window. Noone ever believed me but now I feel a bit less crazy for thinking that worked.

I remember that too with IE 4 on Win95.

IE has still the same UI mouse feeling of Spyglass Mosaic. IE 1 started with its source code and even after the major improvements of IE 3 it still feels very similar. (IE up to IE 6 mentioned "Spyglass source code" on the about dialog.)

Even the print preview window of IE 11 looks like the same window in NCSA Mosaic 2 (1995) (I just downloaded and run on it on Win7)

Re: If you move your mouse continually the query may not fail. Do not stop moving

#136
post #131

Earlier quoted context omitted.

You overlooked the fact that programming model of windowed/GUI applications is quite complex and very sensitive to non-cooperative code - a thread that frequently blocks for 100 ms can cause very unpleasant hiccup. Introduction of OLE/COM interprocess communication mechanism made things worse as one unresponsive application could block other programs and halt their message loops. But it was quite efficient and you di…

> You overlooked the fact that programming model of windowed/GUI applications is quite complex and very sensitive to non-cooperative code - a thread that frequently blocks for 100 ms can cause very unpleasant hiccup. No, I didn't overlook this. But this is 2013. IMO, a multitasking architecture that is "sensitive to non-cooperative code" ought to be considered broken, and so if that's the cause of this problem, that…

It's now 2014, actually, and you're talking about a problem from 1997, in an OS where backwards compatibility has been an extremely high priority since the 1980s.

Re: If you move your mouse continually the query may not fail. Do not stop moving

#137
post #21

Can you imagine how crazy you'd think the customer was if you were giving technical support and they insisted they had to do this?

Despite never being a Windows developer, I ended up reading Raymond Chen's "The Old New Thing" blog from start to finish while lying in bed with a nasty flu and wanting to die a couple years ago. After that, I don't think anything somebody reports as a Windows application bug could make me think they're crazy.

The book's worth reading too - even if you've read the blog.

Re: If you move your mouse continually the query may not fail. Do not stop moving

#138
post #92

Earlier quoted context omitted.

Elsewhere on this thread there is the suggestion that this could have to do with improper use of message pumps... Message pumps as a concept has equivalents in pretty much every UI framework I've looked at. (Some examples: run loops in Cocoa, g_main_loop in glib/Gtk+) If you violate the run loop's threading requirements it's not totally inconceivable that a mouse event could affect behavior. I suggest it might be hel…

I am familiar with the design of message queues, though not specifically with the design of Windows message pumps. > If you violate the run loop's threading requirements it's not totally inconceivable that a mouse event could affect behavior. That's true. But the possibility remains that the design of Windows message queues is so byzantine and imposes so many arcane requirements on the developer that it is easy to mi…

It looks more to me that there's some problem with the background polling mechanism in the app, as implied by solution #1. Presumably something in the mouse event handler does something that prods the polling code into life, perhaps because something somewhere is trying to update the list of things on screen in order to handle hovering. Kind of hard to say without looking at the code, though...

(The Windows message queue is actually fairly straightforward, and if you read the documentation then it's simpler still. The somewhat magical WM_PAINT message is a bit ugly, but aside from that it's actually quite difficult to get things massively wrong. Which is probably why this sort of freakish bug is rather rare.)

Re: If you move your mouse continually the query may not fail. Do not stop moving

#139
post #97
post #88

Earlier quoted context omitted.

I don't think it's as crazy as telling them to pick their computer up and drop it on the desk: http://en.wikipedia.org/wiki/Apple_III#Design_flaws

Or baking your laser printer in the oven: http://h30434.www3.hp.com/t5/Other-Printing-Questions/Has-HP...

Reflowing stuff in an baking oven seems to be an increasingly common method of fixing electronics. Hell, my friend reflowed an RF dongle for TI Chronos watch with a heat gun the other day.

Re: If you move your mouse continually the query may not fail. Do not stop moving

#140
post #113
post #72

Earlier quoted context omitted.

Agreed that it's dumb behaviour, but it's not exactly a complicated hack - just run excel again (from start menu, from win+R, etc.) and it creates a new instance.

You think I didn't try that? IIRC opening up Excel again from the start menu didn't create a new instance, it just gave focus to the document/instance I had open. My jaw kinda dropped cause it wasn't like I had an extremely uncommon use case. There was no File > Open new window. I tried dragging the document to outside, like you can do in Firefox with a tab, nope. Opening a new document simply opened it in the curren…

Excel is MDI so what I do is stretch the main window to two screens then put the child windows side by side.
Post reply on HN