835 words on Bugs
There are many bugs around in software. Many of them are quite harsh ones. Doing the wrong steps might crash an application. What’s good about those bugs is that you’ll quickly learn your lesson and avoid those steps in the future. While it’s sad that bugs in the product will shape your future behaviour in this way – for example I never plug USB devices into sleeping Macs and even shiver when I see other people doing it, just because I’ve seen my old Powerbook fall into sleep of death from that too many times that I sort-of subconsciously consider this a wrong thing to do – those little ‘habits’ don’t hurt your daily productivity too badly if the non-breaking behaviour isn’t more complicated than the original one. Thus, in a way, some of the really bad bugs don’t really affect you all that much once you know about them and ‘learned your lesson’. (I think this observation could be extended to the whole world of Windows software and the strange habits of its users who don’t see any problems, btw.)
On the other hand, there are bugs which aren’t really technical bugs and often fail to have a proper classification in bug-tracking mechanisms. They might be referred to as ‘UI-quirks’ or in other diminutive ways which may give programmers an excuse to look over them. But those problems can be problems which you run into every day and for which you know no escape route to avoid them. And the problem I want to present this week is one of these.
Safari has a nice auto-fill feature which tries to fill the forms it finds on web pages automatically with values from previous visits. Particularly the user names and passwords from login-forms will be saved and automatically entered. With all the different accounts you need to have these days, this feature is vital for me. I wouldn’t need it if every site in the internet let me have the username ‘ssp’ and if each of them at least had the same requirements for the length and allowed/required characters in a password. But that isn’t the case. So I just leave it to the auto-fill feature. Indeed, I don’t even bother to change the password to something I can remember for accounts I use rarely but just stick with the one they give me when I sign up. The auto-fill feature takes care of it for me. In short: the auto-fill feature working smoothly is important for me as I use it frequently.
But there’s a little problem with it. The automatic filling of the user name and password fields only takes place after a page has been completely loaded. And by ‘completely loaded’ I mean that all of the page’s elements such as images have been loaded – not just the HTML. And, you know, sometimes web sites are quirky. One of those little images gets stuck somewhere on the way; an ad-server is slow; you’re on a slow internet connection; the site is on an encrypted connection – which often means it is generally slow, particularly when all of those little spacer-gifs are also served using the encrypted connection. Any of these reasons can cause the time until the page is completely loaded to be rather long, much longer than the time it takes to download the HTML and much longer than it takes Safari / WebKit to display a preliminary version of the page. So you end up seeing those empty login fields and expect them to be automatically filled with your user name and password but nothing happens … nothing happens … nothing happens … ahhh, there it is.
Those are just seconds but seconds spent unnecessarily waiting for a computer can be very long seconds. And, yes, there is a workaround: you can just invoke auto-filling manually, but why should that be necessary? So here we go, my bug of the week, number 4258676 [Hmmm, I keep thinking that it’s rude to add a link to those numbers as the inconvenience/confusion to people who don’t happen to work at Apple might be bigger than the use of them to the 0.02 people who might benefit from them] is about Safari triggering the auto-fill feature only after a page has been completely loaded rather than at an earlier stage.
And it’s not classified as a ‘proper’ bug of some sort but with the mysterious ‘Enhancement’ tag. So possibly it went straight to the round filing cabinet. Of course it’s not the only bad thing about Safari. Even after years it’s handling of pages with frames remains poor as far as scrolling and back/forward navigation are concerned. And I keep thinking that you should be able to drag and ‘poof’ bookmarks out of opened bookmark bar menus as I keep thinking that it’s too slow / complicated to go to the bookmarks section and locate them just to delete a bookmark that stopped working. I might file those at some other time… or not.
“Even after years it’s handling of pages with frames remains poor as far as scrolling and back/forward navigation are concerned.”
Then again, frames in general are a bad UI concept and have been deprecated since HTML 4 (1997!) — its “Strict” DTD doesn’t allow frames. XHTML 1.1 gets rid of the frames-permitting “Transitional” and “Frameset” DTDs altogether.
Just as a sidenote.
This shouldn’t keep Apple from making the usage of sites which decide to use frames less painful, though ;)
Any of these reasons can cause the time until the page is completely loaded to be rather long, much longer than the time it takes to download the HTML and much longer than it takes Safari / WebKit to display a preliminary version of the page.
have you considered posting a bug report on the WebKit bugzilla?
No I haven’t considered the Bugzilla thing. Because yet another bug reporter would annoy me too much and because I suspect that the autofilling may be part of Safari’s UI part rather than just WebKit.
I find Autofill more annoying than than too. Often enough, even if a page has loaded completely, I’ll try clicking the Autofill button and I’ll get an error reporting that there’s nothing to fill in. So I’ll start typing in the “Name” field, and suddenly Autofill will kick in (often, as in this comment field, trying to fill in “your web page” with my email address).
Then there’s the autocompletion of URIs that seems to want to fill in the longest possible address, when all I want is the top-level home page, and demands a bunch of selecting and deleting before I can get there.
Hmm. Why am I not using Firefox or Camino again? Force of habit, I guess.
yeah, that delay really bugs me too. Ironically enough, the main place I see it is connect.apple.com .. that page always takes forever (I think it’s fetching images over SSL or something stupid like that)
Derek: yeah, I find the URL completion to be broken, too. I wish it would use the shortest possible completion, as that’s usually what I want. If it’s not, then I’ll type a few more characters.
I’m in agreement with you on the autofill, but perhaps the implementers thought it necessary to let all scripts load and initialize in case said scripts want to muck with the page elements, before jumping in to autofill. Just a thought, but were it in my hands, I’d be filling sooner unless experience dictated waiting.