UPS, Progress, Ooops

[New UPS]So I splurged on a new UPS Saturday, an APC Back-UPS RS 1500—hope­fully it’ll work, it’s been charg­ing so-far, and hope­fully the con­troller soft­ware works under Ubuntu. I have an UPS already, but it’s under­pow­ered for my sys­tem. So when the guy next door turns on his (fire-code vio­lat­ing) microwave, it flux­u­ates the power just enough to kick in the bat­tery, which promptly trips it’s cir­cuit breaker (effec­tively tog­gling the power to my machine). Bigger, bad­der UPS it is.

[New Blog Template]I’ve also updated my blog tem­plate in honor of WordPress 2.0. The tem­plate uses JavaScript menus and tables-for-layout, but I don’t really care about niceties in web design any­more. If every­one used a recent copy of Firefox or Safari, I would ditch tables in favor of doing all the lay­out in CSS and JavaScript, leav­ing a clean, pressed, cell-phone friendly blog in it’s place, but a full third of the peo­ple view­ing this site (includ­ing most employ­ers, sadly enough) use IE, so the more I do in CSS and JavaScript, the more “work, damn you” moments I cre­ate for myself.

IE, BTW, is the devil. Not a min­ion, not a hench­fiend, the full-on devil him­self. I’m going to tweak the tem­plate to show a link to GetFirefox​.com if you aren’t using a Mozilla browser.

On the work front, I fig­ured out how to do a incre­men­tal progress-bar using JavaScript and PHP, so a ten-minute val­i­da­tion of 30,000 records in a MySQL data­base doesn’t look like it’s crashed your browser or hung. The way, BTW, is to write two classes, a JavaScript one which actu­ally han­dles adding the images to the win­dow and updates them, etc. and a PHP class to han­dle cal­cu­lat­ing what to do, and then writes out JavaScript to update the progress-bar image (ugli­est part was actu­ally get­ting PHP to flush it’s buffers).

It works well, in spite of it’s sta­tus as a sick hack. The val­i­da­tion results are stored in another table in the data­base, so the items lists and edit­ing pages can dis­play a “this record has issues” icon. Yes, yes, the solu­tion is to prop­erly val­i­date input, blah-blah-blah. If I was rewrit­ing the sys­tem, that’s what I’d do, but the soft­ware didn’t for a long time (and still doesn’t, in a grad­u­ally dwin­dling set of cases), and many of our cus­tomers have loads of data they’re drag­ging in from a vari­ety of pro­pri­etary Access night­mares. So pro­vid­ing a “here’s a list of things to fix” page when get­ting a new cus­tomer going with the sys­tem is really use­ful — as is mark­ing all the bro­ken items as such when­ever they appear in the system.

Oh, and I missed the release of FUSA 2.13.4 (in time to get in with the GNOME 2.13.4 release) by a half-hour. I’ll choose to blame biol­ogy — in that the woman who lives across the hall wran­gled me into giv­ing her a ride to the bus sta­tion about an hour before the release was due. Yeah, I’m a sucker like that.

And now it’s off to my 4 hours of sleep, hop­ing that I can wake myself early enough to get into the office and find out what’s wrong with the CVS server. Sigh.…

4 Responses

  1. Anonymous says:

    You might try IE7, a com­bi­na­tion Javascript and CSS hack which fixes a large num­ber of the defi­cien­cies with Internet Explorer, with­out requir­ing you to change your site to cater to it. This includes advanced CSS selec­tors like attribute match­ing and before/after (mark all exter­nal links with: a[href^=“http://”]:before { con­tent: url(/external.png) }), hover on arbi­trary attrib­utes (imple­ment a menu in pure CSS), the CSS “opac­ity” prop­erty, PNG trans­parency, background-attachment: fixed, form sub­mis­sion, and var­i­ous bugfixes.

Leave a Reply

*