- Feature Articles
- CodeSOD
- Error'd
- Forums
-
Other Articles
- Random Article
- Other Series
- Alex's Soapbox
- Announcements
- Best of…
- Best of Email
- Best of the Sidebar
- Bring Your Own Code
- Coded Smorgasbord
- Mandatory Fun Day
- Off Topic
- Representative Line
- News Roundup
- Editor's Soapbox
- Software on the Rocks
- Souvenir Potpourri
- Sponsor Post
- Tales from the Interview
- The Daily WTF: Live
- Virtudyne
Admin
I wrote this coment while you were moving your mouse
Admin
Please move your mouse rapidly from side to side so the rest of this comment can be loaded.
Admin
Fair enough. Isn't that when people are going to start buying Vista?
Admin
Admin
...gives a whole new meaning to the hourglass cursor ;)
Admin
So if you never move your mouse will it update?
Admin
Hah, I believe I know this application and did support for it for a year or so. If I am correct, this is the same software that to reset the admin password, you go to the install directory and rename a file from pwd.new to pwd.exe and run it. Not that it much matters because the password encryption took all of 30 minutes to crack. Way to go "TaxQuik"!
Admin
They should have put it in the code for when the "Any" key is clicked. Most users couldn't find it on their keyboards back then.
Admin
Core business logic in a MouseMove event? Oh, but this is just priceless! Just when I was thinking that TDWTF had fallen into an endless loop of XML abuse and switch statements with duplicate case logic, finally we have something new and wholly frightening to behold. Thanks very much for this gem.
Admin
Please stop moving your mouses! I am trying to get some work done!
Admin
That's the best one for ages. I haven't gone "W-T-F!!!" quite that loud for some time.
Admin
And here all those people who say shaking their mouse back and forth makes the sand fall quicker in the hour glass were actually on to something.
Admin
I'm going to sue!
My jaw dropped so hard it broke when it hit the floor!
Admin
Why does this sound like something an old Mac programmer would who was use to Apple's co-operative multitasking?
If I remember right Tasks/Processes were switched when mousemove() was inquired so a smart programmer would either call the mouse function less often to speed up their code or add code to the mouse movement functions so as to get move of the time time-slices.
Or am I just full of #$^%^ and this is just bad logic/programming from day one?
Admin
Support for previous versions? Man, did they ever pull a 180 on that one.
Admin
You should take into account the fact that in 1996, almost no one really knew how to code good GUI code, since good gui frameworks did not exist (and the documentation). The guy applied what looked like a correct thing in a DOS environment (doing business logic in keypressed handlers, since it was when a key was pressed that you launched it - no threads, no message passing, no OO framework).
Admin
You recall somewhat correctly. There was a discrete system call you made to allow other apps to run GetNextEvent(); . It wasn't just to get mouse events, but any system/user event such as being alerted to redraw a window, display a menu or deal with a new volume that was mounted. When you called this the OS would allot time for other apps to run. You could manipulate how often you app performed that system call to alter how much runtime you got.
Admin
Wait a minute, don't some of the new phones perform actions based upon movement input (thing about that commercial where they shake the phone to pick the next restaurant)...
These folks were way ahead of their time!
Admin
Heh, 30 minutes to crack is nothing. I once worked with a financial/CRM application based on Paradox for DOS. The Paradox files were supposedly encrypted for security. I needed to get at the raw data without the application to run some reports but the vendor wouldn't give us the password. Turns out that the version of Paradox they used has a serious hole in its encryption that allows one to simply bypass it. You don't even need to crack the password.
Although none of the "legit" WIndows programs i could find would use the hack. They always asked for the password. Then I found a Linux library that would happily just open the files regardless of whether "encryption" turned on for the files or not.
Admin
No, I think you're right. Windows 3.X used a similar "co-operative" (i.e. non-preemptive) multiprocessing model as well. This kind of system often forces programmers to shoehorn ongoing activities into loops and events where they're conceptually out-of-place.
I think Windows 95 (and Windows NT, for a few of us) introduced preemption and threading, which is designed to address this kind of issue.
When I ran the first edition of XP, it felt eerily like using Win3.1. I don't think they brought back cooperative multitasking, but I think they went overboard with aggressive thread locking to fix some bugs and perhaps to achieve easy determinism for some of their new code.
Since then, things seemed to have improved. Windows seems less likely to arbitrarily let a single thread lock the whole message system. But at times, especially under that first edition of XP, it was deja-vu-all-over-again.
Admin
The XML abuse, case abuse, and other code-related issues are always put in the CodeSOD. If you don't like them, then just read the Feature Articles instead, listed in the Content box on the left. Likewise, you can just ignore any CodeSOD articles that have a red header on the main page.
That said, I know you're not stupid, just don't complain in feature articles about codeSOD's being repetative.
Admin
Too bad they didn't tie Visual Studio's compiler code to the joystick. I could be sitting here right now playing Call of Duty so my code would compile.
Admin
nothing is happening. it must be the damm Interweb again...dialing IT
Admin
Heh, WordPerfect 8.1 for Windows had similar issues. In 1998 I did some testing for a University, and if you ran WordPerfect off an NFS share (NFS on Windows!), it gave forth a hideous spurt of network traffic when you moved the mouse. We eventually got a patch for it, but it caused all sorts of grief in the meantime. I never did find out exactly what the WordPerfect developers had done.
Admin
HA - that does remind me of some application I just used a few weeks ago. I think maybe its Putty to generate an SFTP key. To create a "more random" key you have to move the mouse back and forth like a crazy person. The fast you do it the faster the status bar goes.
Anyone know what I'm talking about? I think its Putty....
Admin
Admin
Here's another tidbit from the "TaxQuick" saga -- the installation was crap. It overwrote several system ODBC DLLs basically making any other program that used die. DLL Hell to the max!
I did get to do my taxes for several years for free, though. The tax calculations were perfect despite the rest of the system being a mess.
Admin
BlackBerry Desktop software requires you to shake the mouse to generate an encryption key.
Admin
It was 1995. The latest buzzword was probably ".ini file" or something
Admin
Admin
No, that's not something a Mac programmer would do -- GetNextEvent returned immediately if there was no pending event, allowing you to do any "background" processing you needed. WaitNextEvent, however, did not (for obvious reasons). The proper way of doing things was to call GetNextEvent in a loop, process the event, and then at the end of the loop do your background processing before looping back to GetNextEvent again.
These days, of course, it's completely different, as Mac OS X is based on BSD UNIX, supports preemptive multitasking with threads, and any new programs are implemented using Cocoa...
Admin
Maybe someone can come up with something semi-useful, or at least really funny to bury in a mouse_move event. Nah, probably not.
One thing for sure (hindsight being 20-20) is that those dudes were, in no way, ready to develop for a GUI.
-- Furry cows moo and decompress.
Admin
I promise next time I'll preview before I post.
-- Furry cows moo and decompress.
Admin
Hmm, any chance this "TaxQuik" is based out of Bellevue, WA or is this kind of Windows WTF'ery extremely common among tax software companies?
Admin
Unfortunately, I was connected through ssh, with no mouse support. And it made no differense whether or not I logged in to another terminal and ran other programs, it did not count. I ended up generating the keypair on another machine, where I could access the mouse.
Admin
Bastards. I worked for one of their competitors. One of the programs I worked on kept dying with obscure errors that we eventually traced to a competitor that was overwriting only some of the data access DLLs. We started sending out an installer to fix the problem that was on the CD, but didn't normally run.
Oh, and changed the data storage code the next year to prevent that happening again. Mind you, the code we wrote is probably itself a WTF...
Well, yeah. They bear a certain amount of liability if the calculations aren't correct--and even if they don't, if the calcs aren't correct and, when incorrect, aren't promptly fixed, you tend to lose customers in a hurry...
Admin
Taxquik is people! It's made from people!!
Admin
Hmm, WP X3 on Vista (maybe XP as well, I've only used Vista) also does strange things. (This happened 2007-2008 time frame, keep in mind when you see the server date...)
While not so much a tied to the mouse movement, if you use their enhanced file dialog and have a slowish server (NT4 SP3 (!), installed March 1999, I was looking into this in Fall 2007) it would take a few minutes to open up any of the folders, longer with the folders with lots of files in them. While I first wanted to blame the machines, using the task manager to view CPU and network usage showed nothing of note. If you didn't use their enhanced file dialog(meaning standard windows) it worked fine. Faster server fixed the amount of time it took to bring up the enhanced file dialog, confirming that it was something to do with the server.
Reason for wanting the enhanced file dialog? The secretaries wanted preview since they use names like 'LTR-BOB.wpd', 'LTR-BOB2.wpd', 'LTR-MARY.wpd', 'LTR-MARY2.wpd'. Yes, entirely useless if you are looking for a file based on the name alone and have mailed someone several letters. And did I mention they had a LTR folder had a few hundred files in it, almost all of them named in this fashion? (Law office, you would think there would be some useful structures since almost every client has a physical folder with stuff stuck in it for that particular case(meaning if they had a real estate transaction and a will, they got different folders). They just don't seem to be able to apply this to computers)
On my todo list is teaching file and directory naming, maybe directory structures.
Admin
OK ... I've taken it into account. And this is still a WTF. I wrote some Windows GUI stuff back in 1993/94. While I would never claim that what I wrote then was good, it at least worked, and I'm damn sure I'd have said "WTF?" if someone had suggested I put business logic in a mouse-move event.
Admin
I didn't say it was a WTF. I just said his post reminded me of Putty.
Admin
Admin
Obviously Mac PowerPlant developers would know the real way to solve this issue was via an LPeriodical.
Admin
You don't need good frameworks to write good GUI code. Granted these guys didn't have a clue...
As for key presses, if what you said is correct, then the code should have been done during the mousedown event. This is like running business logic while the Shift key is pressed.
Admin
Linux uses the mouse movements to populate "/dev/random". It must be some Linux program that uses /dev/random to generate sftp keys. I don't think it is Putty as that is a Windows program.
Admin
Sadly, I don't think TaxQuik is the only company to have the feature of using mouse sliding to process. I've run across several programs that stop processing altogether if the mouse stands still. Try watching a video that plays exactly as fast as you move the mouse around.
Admin
Uh, it's putty. An SSH client is responsible for generating its user's private key. Putty is an ssh client. And it uses mouse movement for its entropy.
Admin
Even better, they should make it so you can yell gibberish into the microphone while it's generating the key. I could have a lot of fun with that.
Admin
Bearshare (if that program still exists) does this right: You can add entropy through any combination of mashing the keyboard and wiggling the mouse.
Admin
A program I was recently working on appeared to be doing exactly that: a progess bar was updated from an OnIdle function. If you moved the mouse, more OnIdle events were being generated hence the progress bar would be updated more often...
Admin
In the old days of Win3 and 95 you COULD make a page scroll faster by wiggling the mouse. Just start a selection and drag to the bottom of the screen where upon the page will start to scroll up. Drag past the bottom of the document window and start wigging. Voila! Faster scroll.
I can do it on my current XP machine by opening a largish document and clicking the middle mouse button (to get that scrolly thing that nobody actually uses). Move the mouse just down from the click point and the window contents should start to scroll slowly. Wiggle the mouse from side-to-side and the scrolling speeds up. Stop wiggling and it slows down again.
I would post a screen shot but I don't have a wooden table handy.