< mari
a
a
chi
[ Page 2 of 2 ]
From: Smylers Date: 11:24 on 21 Feb 2007 Subject: Something Using ALSA I return to a shell window I haven't used for a few minutes, to be greeted by the message: ALSA: underrun, at least 0ms. Gee, thanks. Not only an underrun, but one that doesn't have a negative suze! The most recent command run in that shell was whois. This computer doesn't have any speakers; it may not even have a soundcard. I've never instructed it to do anything sound-related; I've no idea what might be doing this, what an underrun is, or why I should care. But I hate that the pointless message is cluttering up my terminal. Smylers
From: Smylers Date: 05:28 on 31 Oct 2006 Subject: OfflineImap OfflineImap crashes partway through syncing my mail with: Thread 'New msg sync from spam' terminated with exception: Traceback (most recent call last): [Snipped many lines of Python stack trace] error: APPEND command error: BAD ['Invalid internal date.'] Last 11 debug messages logged for New msg sync from spam prior to exception: imap: savemessage: called imap: savemessage: using date "31-Nov-2006 02:50:01 +0000" [Snipped the entire spam message] So you've found something in my spam folder which has an invalid header? Oooh, that can't possibly be right, because obviously spammers _always_ make sure to follow all the relevant RFCs. And you've decided that this invalid header prevents you from being able copy the message between this computer and the imap server, rather than just, say, copying the invalid message as it is and letting me have a message with a stupid date in it? And this is despite the fact that the message is in the spam folder on this computer because I moved it there from my inbox, and it got to the inbox my, erm, you! So you can happily sync invalid messages from the server to this computer, just not cope with sending them in t'other direction? And further you've decided that your inability to copy this one, spam, message means you should abort any attempts to sync any of the rest of my mail, even that in other folders, until I've used something else to move the broken message out of the way? Hate! Smylers
From: Smylers Date: 14:34 on 26 Jul 2006 Subject: Firefox Page Setup I've just printed a bunch of pages in Firefox, then collected them from the printer and found them all to be landscape when I expected portrait. I printed something landscape last week and forgot to change the setting back. That's because Firefox (on Linux at least) doesn't include the portrait/landscape option in the Print dialogue box which pops up every time I'm printing, but in a separate Page Setup dialogue box which persists its state. Portrait/landscape is not a property of my printer or corporate policy or whatever; it isn't something I wish to customize to my preferences then use for evermore; it depends on the particular shape of the thing I'm printing. Hate. And I can't imagine ever wanting to set this except just before printing, but there isn't an easy way of getting from Page Setup to Print (or even the other way round). Hate. While looking at my wrong-way-round print-outs I spotted that some of the footer text is off the edge of the page. I see that for juggling this there is a Margins option in page Setup (I think the footer appears in the bottom margin). Separately, from the Print dialogue box there's a button for opening the Printer Properties dialogue box which has settings for 'Gap from edge of paper to Margin'. The margins setting is in millimetres; the 'gap from edge' one in inches. Hate. Smylers
From: Smylers Date: 16:30 on 25 Jul 2006 Subject: Outlook Web Access Calendar Outlook Web Access[*0] is so easy hate, but here's the one that's just bitten me. 'New Appointment' has, quite reasonably, 'Start time' and 'End time', each with drop-down fields for day, month, and year, in that order. Both default to today. I set 'Start time' to "30 August 2006", and 'End time' is automatically updated to the same. I set the day field of 'End time' to 1 and tab to the next field, where I change "August" to "September", then I submit the thing. Only then to notice that it's turned a 3-day event into a month-long one! On trying to repeat the exercise I discover that after I set the end day to "1", Outlook changed it back again to "30". Apparently its JavaScript couldn't cope with the fields saying "1 August 2006" (which is before the start date) even transitionally -- even though I'd just left the day field so as to set the month! Hate!! Under what circumstances could I have possibly wanted the behaviour I What right has Outlook got to decide that even though I picked the 1st of the month it is going to change this -- and do it silently, so that I don't even spot it happening! Surely if I've just set the day to "1" then the one thing you can be sure of is that I want the day to be "1"; if that creates an inconsistency then update the _other_ fields, the ones I haven't yet set, to resolve the matter, you idiot. How can it possibly make sense to insist on setting the date fields in descending order of magnitude yet display them (and have their tabbing) in ascending order? My guess is that the field order is localized, and this was developed by people with a locale which has month before day, so that it didn't bite them (well, unless they have the completely stupid order of month-day-year and tried to schedule an event over December to January, but obviously they didn't test that much) and then shipped the thing treating localizations as being purely cosmetic. Hate. [*0] Actually I only have experience of the non-Internet-Explorer version. I believe that WinIE gets a much-souped-up version, but really, what's the point in that? If I were on Windows then I wouldn't be needing to use Outlook Web Access anyway cos Outlook itself would run there. Smylers
From: Smylers Date: 22:00 on 08 Sep 2005 Subject: Perl FindBin Module Perl comes with a module called FindBin, which generally finds the directory in which the currently executing script is located. It comes with this caveat: If there are two modules using FindBin from different directories under the same interpreter, this won't work. Since FindBin uses a BEGIN block, it'll be executed only once, and only the first caller will get it right. This is a problem under mod_perl and other persistent Perl environments, where you shouldn't use this module. That's fair enough -- if I use FindBin in mod_perl, the directory it provides may not be what I want. What it doesn't say is that if under mod_perl I use a module which in turn loads FindBin, that will make 'Apache' non-deterministic, such that I will spend over 3 hours wondering why sometimes my code just fails with a 500 message to the browser yet nothing at all in the 'Apache' error log; sometimes it fails with a 500 and a log message about not being able to find a method that blatantly does exist; and sometimes it manages to find an execute the method but does the wrong thing because a package variable in the module that loaded FindBin is mysteriously empty.[*0] All this just from _loading_ FindBin! I'm not even giving it a chance to return the wrong directory because the module that loads FindBin only uses it in one method, and I'm not calling that method. Hate Hate-Hate-Hate HateHateHate hatehatehatehatehatehatehatehatehate. And while I'm here, can I also hate 'OTRS', a ticketing system which runs under mod_perl yet tries to make use of FindBin anyway, despite its being documented as not working (and talking of not working, the 'OTRS' website has been down for at least the past several hours, so I can't even channel my hate into a patch or bug report) in that environment. This conveniently allows 'OTRS' to surprise you by suddenly breaking at a moment when you weren't anywhere near it. [*0] Also sometimes it appears to fail by completely locking the server such that it needs power-cycling to do anything. But our sys-admin's current hunch is that was caused by dodgy memory, so I'm excluding that from the hate at the moment. Smylers
From: Smylers Date: 21:45 on 08 Sep 2005 Subject: Windows VPN A VPN connection is down on a Windows server. I look for where the thingy is to reconnect it. It isn't in 'My Computer'. It isn't in 'My Network Places'. It isn't in 'Routing & Remote Access'. It isn't in 'Services'. Feeling too much like I'm in a picture book for toddlers, I give up looking everywhere I can think of and ask a colleague, who points out 'Settings' > 'Network Connections'. I marvel at how many different places Microsoft manage to put network-related config. I choose 'Connect', and then the subsequent thing, which is also labelled 'Connect'. After a few seconds the connection fails. The resultant dialogue box has the offer: If you continue to receive error messages, you can enable logging for analysis. Sounds like a good idea. I check the 'Enable logging' box. Underneath is the advice: For logging options, see _diagnostics_. That last word is a hyperlink (in a dialogue box? hmmm), so I click it. Another dialogue box appears, but the one I already saw conveniently jumps on top of it less than a second later, obscuring whatever the new one is asking. I bring it back into focus. It's asking for 'Location Information': Before you can make any phone or modem connections, Windows needs the following information about your current location. It wants my country, area code, access number, and whether I use tone or pulse dialing. This for options about logging for a VPN connection? What? The server doesn't have a modem in it, so I feel justified in clicking 'Cancel'. Windows then pops up a message: Windows needs telephone information about the location from which you will be dialing. If you cancel without providing this information, this program may not function correctly when dialing. In addition, some applications respond to your canceling this dialog box by immediately re-posting it. Are you sure you want to cancel? But I won't be dialing! What on earth is it on about? And nice of it to tip me off about the potential infinite loop -- I'm sure offering a 'cancel' option but warning me about the loop is the right way of dealing with his. I proceed anyway, after double-checking which of 'Yes' or 'No' means 'Cancel' in this situation. Another window appears, 'Remote Access Preferences' (though seemingly no relation to the 'Routing & Remote Access' I found earlier). It has 3 tabs. The 3rd tab, 'Diagnostics' is currently selected. Absolutely everything in the tab is greyed out, which isn't much help. The greyed-out text says: If you are disconnected from a network, autodial attempts to connect to a network whenever you try to access remote information. Then there's a big greyed-out box and some greyed-out checkboxes. This isn't much use. I wonder why Windows has brought me here. I have a quick look at the other tabs to see if they do anything. The 1st is 'Autodial'. Everything there is greyed out too. In fact, it's identical to the tab I've just left, with the same greyed-out text and controls. Why have 2 tabs that contain the same stuff? The middle tab is 'Callback'. Still everything is greyed out, but at least this is different stuff. I absent-mindedly click on the 3rd tab again. It's changed! This time it contains completely different content, and none of it is greyed out! An interface which changes when you go away and come back to it -- how exciting! Now there's checkbox labelled 'Enable logging'. This is already checked, presumably because it's actually the same checkbox as on the first dialogue box. There's also the text: To view or save log files as one report or send them in one e-mail message, click Generate Report. So I do. Many options appear. I choose to view the report, rather than having it mailed to me, then: This process can take several minutes. Do you want to continue? I do -- I've waited this long, what's a few more minutes? A progress bar appears. It takes less than 2 seconds to get to 78% complete; that's a good sign. A few seconds later it's at 90%, but it seems to have stuck there. Did somebody make percentages logarithmic while I wasn't looking? At some point later I notice the progress bar has disappeared. I can't spot the report anywhere. I give up. Even later I stumble across the report -- it's in HTML and had opened in a new tab of the 'Firefox' I already had running. It had never occurred to me that a VPN log might come in HTML. The report is thousands of lines long. It contains many things I wouldn't expect to find in a log (the contents of this server's 'phonebook', for instance). It is far from apparent when giving a list including many items such as 'IASACCT.LOG' and 'IASNAP.LOG' which of them might pertain to the failed VPN connection which directed me here. I search for the VPN's connection by name. Other than the phonebook entry the only occurrence is in NETSHELL.LOG, which seems to be logging whenever something in the system tray pops up some balloon help. It complains that the icon for this VPN connection is missing but that it should be there. So I still don't have a VPN connection, and now I'm lost in a twisty maze of log files, all alike. I think I'm now beyond hate. Smylers
From: Smylers Date: 16:22 on 07 Sep 2005 Subject: Windows Timekeeping 'Firefox' objects that an SSL cert isn't valid on one of our servers, on the surprising grounds that it isn't yet 09/09/2002. It turns out that the Windows PC thinks it is Friday, March 24 2000. The 'Date and Time' bit of 'Control Panel' has a tab 'Internet Time', where I learn the time is currently being synchronized with that of time.windows.com (a domain owned by Microsoft). It continues: The time has been successfully synchronized with time.windows.com on 06/09/2005 at 03:27. Next synchronization: 30/03/2000 at 02:09. Nice. I especially like how if I believe it regarding the current time, the most recent update was over 5 years in the future. Nor did it seem bothered by making such a huge change to the time. So then I press the 'Update Now' button, in an attempt to get this sorted out. This yields: An error occurred while Windows was synchronizing with time.windows.com. For security reasons, Windows can not synchronize with the server because your date does not match. Please fix the date and try again. The time was most recently synchronized on 07/09/2005 at 07:18. Next synchronization: 31/03/2000 at 05:59. What? It's prepared to break the time, but you decline to fix it for "security reasons"? Hate! Smylers
From: Smylers Date: 10:25 on 17 Aug 2005 Subject: PPM PPM (version 3.1, if that matters) is being particularly hateful today. We've got a windows server which has Email::Send 1.45 on it, which is broken. I wish to upgrade it to 1.46, which isn't broken. C:\>ppm install Email::Send Searching for 'Email::Send' returned multiple results. Using 'search' instead... Searching in Active Repositories 1. Email-Send [1.46] Simply Sending Email 2. Email-Send [1.4] Simply Sending Email 3. Email-Send [1.41] Simply Sending Email 4. Email-Send [1.43] Simply Sending Email 5. Email-Send [1.45] Simply Sending Email 6. Email-Send [1.46] Simply Sending Email Hmmm, a list of "multiple" results, all for the same package. Guess what, it's the _latest_ version of that package I wish to install. Actually, _either_ of the latest versions would do, given that items 1 and 6 in the above list are hatefully displayed the same, giving me no clue at all as to in what way they might differ. Let's give installation another go, remembering that PPM is stateful (as well as hateful) and that once one command has emitted a numbered list a following command can use those numbers to refer particular itmes: C:\>ppm install 1 No search results to install -- use 'search' to find a package. Yes, but I've just used 'search' -- or rather it used it for me! Presumably PPM is only stateful when run as a shell, rather than with sub-commands directly on the command line. But it's hateful that the error messages don't mention that point, and, even worse, try to goad you into doing something that won't work. Let's try again: C:\>ppm ... ppm> search Email::Send Searching in Active Repositories 1. Email-Send [1.46] Simply Sending Email 2. Email-Send [1.4] Simply Sending Email 3. Email-Send [1.41] Simply Sending Email 4. Email-Send [1.43] Simply Sending Email 5. Email-Send [1.45] Simply Sending Email 6. Email-Send [1.46] Simply Sending Email ppm> install 1 Package 1: Note: Package 'Email-Send' is already installed. Yes, I know Email-Send is already installed, but package 1 in the above list is most definitely version 1.46, which is newer than the version I've installed. Look, it'll even tell me that: ppm> q Email::Send Querying target 1 (ActivePerl 5.8.4.810) No matches for 'Email::Send'; see 'help query'. At least it would if it kept track of which packages supply which modules, so that users could refer to modules, things they program with and actually want to use, in all PPM commands -- rather than hatefully and tantalizingly letting us use modules in some commands and forcing us to use packages in others: ppm> q Email-Send Querying target 1 (ActivePerl 5.8.4.810) 1. Email-Send [1.45] Simply Sending Email So that's what I want to upgrade. Let's try the upgrade command: ppm> upgrade Email::Send Error: package 'Email::Send' is not installed. So install can cope with a module name but even upgrade can't? Hate! ppm> upgrade Email-Send Email-Send 1.45: up to date. Yes, I know that Email-Send 1.45 is up to date; what I'm wanting you to install is Email-Send 1.46 which you listed for me earlier! Let's go back to that list and try to upgrade it from there: ppm> search Email::Send Searching in Active Repositories 1. Email-Send [1.46] Simply Sending Email 2. Email-Send [1.4] Simply Sending Email 3. Email-Send [1.41] Simply Sending Email 4. Email-Send [1.43] Simply Sending Email 5. Email-Send [1.45] Simply Sending Email 6. Email-Send [1.46] Simply Sending Email ppm> upgrade 1 Email-Send 1.45: up to date. Huh? What? Now, really, there's no excuse for that. Oh, from reading the help it transpires that upgrade only _lists_ potential upgrades; it hatefully doesn't try to install an upgrade unless you give it the -install flag (not to be confused with the install command, above, which hatefully won't install upgrades either): ppm> upgrade -install Email-Send Email-Send 1.45: up to date. Noooo!!! Let's try that list again. ppm> search Email::Send Searching in Active Repositories 1. Email-Send [1.46] Simply Sending Email 2. Email-Send [1.4] Simply Sending Email 3. Email-Send [1.41] Simply Sending Email 4. Email-Send [1.43] Simply Sending Email 5. Email-Send [1.45] Simply Sending Email 6. Email-Send [1.46] Simply Sending Email ppm> upgrade -install 1 Error: package '1' is not installed. So the install command can take numbers from a search list instead of package names; the upgrade command can take such numbers when searching for a package; but give the upgrade the -install flag and it suddenly forgets how to use these numbers? Yer-what??? Let's try removing the ambiguity in the above list. PPM comes configured to search 2 repositories by default. The above list looks suspiciously like one of those repositories has lots of versions of Email-Send and one only has the version I want, so if I disable the repository with lots there should be just the one I want left. ppm> rep Repositories: [1] ActiveState PPM2 Repository [2] ActiveState Package Repository Wow, those are sure good names for making absolutely clear the distinction between the two them. Let's disable the first one: ppm> rep off 1 Repositories: [1] ActiveState Package Repository [ ] ActiveState PPM2 Repository and try that search again: ppm> search Email::Send Searching in Active Repositories 1. Email-Send [1.4] Simply Sending Email 2. Email-Send [1.41] Simply Sending Email 3. Email-Send [1.43] Simply Sending Email 4. Email-Send [1.45] Simply Sending Email 5. Email-Send [1.46] Simply Sending Email Ooops, chose wrong. Let's disable that repository and enable the other one: ppm> rep off 1 Repositories: [ ] ActiveState Package Repository [ ] ActiveState PPM2 Repository Hmmm, it indicates that a repository is disabled by removing its number. So now there's no handy way of indicating which of the disabled repositories I wish to enable; its name has to be typed in full. I'm _so_ glad somebody redundantly put "Repository" at the end of the name of a package repository, in a list of package repositories, just so that I could type it in again: ppm> rep on ActiveState PPM2 Repository [1] ActiveState PPM2 Repository [ ] ActiveState Package Repository Search again: ppm> search Email::Send 1. Email-Send [1.46] Simply Sending Email Hurrah! No ambiguity there, let's try that upgrade: ppm> upgrade -install Email-Send ppm> That's right: nothing. Just the PPM prompt back again. And no, this isn't the 'no news is good news' sense of nothing that you get with Unix commands, where a lack of error message indicates success. The installed package is still at version 1.45. I'm completely stumped. I've got a package manager which can tell me about a package that I want, but I can't find a way of actually persuading it to install it. This is ridiculous! What on earth is the point of a package manager that declines to install packages that it's told you are available for installation? So What I actually did to fix Email::Send on this server is use Cpan Search's diff feature to view the 2 lines that have changed between 1.45 and 1.46, then use 'WordPad' to hack those changes directly on to the installed module. As a technique it doesn't scale well, but it has the advantage of actually working. Smylers
From: Smylers Date: 17:09 on 23 Apr 2005 Subject: ps2pdf ps2pdf, I'm fully aware that the default paper size on this system is USA letter[*0], and I can understand that size being used when creating a brand new document -- but why on earth would you think I want to use it when converting a document's rendering language from PostScript to PDF, in preference to the paper size _used by that particular document_? The PostScript document was on A4, and -- guess what? -- it was formatted to fit nicely on A4; maybe it's just me, but I didn't get the urge to chop off bits off each page just because I was converting it to PDF! Hate! [*0] Though that's a separate hate -- that I haven't spotted where to change that on this Fedora system. On Debian /etc/papersize exists and has a manpage, and even has the program paperconfig for manipulating it; Fedora has none of these things. Quite possibly Fedora has some other easy way of configuring this -- and if Debian has warped my mind into expecting things to be in odd places, it's hardly fair to hate Fedora for not targeting their OS at Debian converts. So currently I've got the unsatisfying feeling of having some unresolved hate there and not knowing where to direct it. Smylers
From: Smylers Date: 17:13 on 16 Apr 2005 Subject: Travel Agent Booking Software This is a vicarious hate: I haven't touched the softare myself, but just sat behind a travel agent employee trying to use it. I didn't take it as a good sign when her first action was to press Ctrl+Alt+Del to bring up the Windows 95 'Close Program' list and use it to quit the program she'd been using with the previous customer. I also wasn't impressed that when listing possible holidays all the available actions are listed with 2-digit codes, but require pressing Enter after them anyway -- so simply paging through the list involves typing 5 0 Enter 5 0 Enter 5 0 Enter ... But my main complaint is with the lack of control the user has when searching. I was initially told that our requirements were so flexible they gave lots of possibilities -- mainly cos they didn't include a destination, nor a price. That ought to make it easy to come up with something acceptable, but apparently not. Many of the criteria we did have the system had no way of using for narrowing down the search results. Now for some things, such as "not overrun with rampaging mobs of British lager louts", that's understandable. But for easily categorized multiple-choice criteria such as the number of stars on the hotel and how many meals we want included not being able to search by them makes no sense at all -- they are clearly fields in the database, since they appear as separate columns in the output, but the only way to use them is to page through the results (5 0 Enter, remember) scanning that column by eye and ignoring the ones we don't want! The travel agent person mentions again that because so many holidays meet our requirements it's quite hard to choose. So I try to help out by adding in some criteria which aren't essential, but nice to have: in particular, I say to restrict the airports to London (rather than London or Leeds) and the date to ending on the day of the London.pm June social meeting (rather than being any 7 days within a 12-day window) -- since we're in a position to be picky, let's take advantage of a trip I'm making to London anyway and avoid me having to make a separate trip (or my friend having to make a trip from London to Leeds). But that only seems to make things worse, because for the destinations the travel agent person has chosen to look at there aren't any flights meeting those additional criteria -- not that that's particularly easy to determine, because the software presumes a tolerance on the flight dates so we have flights on dates we don't want mixed in with those on the right dates, because the output isn't even in chronological order! So it lists holidays that have the wrong flights, the wrong accommodation, or both -- and we have to wade through it manually just to determine that it's done this. I say "destinations the travel agent person has chosen to look at" because that's what the software insists on: performing searches for holidays at a named place. So she has to guess places that might be appropriate for us and try out our criteria -- which are now _too_ constraining for any particular destination! Apparently it doesn't matter how restrictive our constraints are -- if we don't know where we want to go, then the software won't let us at the information it's hiding in the database. Hmmm, maybe if there's a holiday website out there with an SQL injection bug in it's code then I could exploit it to inject some SQL that searches for a holiday that meets our criteria -- that'd certainly be more user-friendly than the system in the local travel agent ... Smylers
< mari
a
a
chi
[ Page 2 of 2 ]
Generated at 10:27 on 16 Apr 2008 by mariachi