If only there was lint for XPath...

Paul Brown @ 2007-08-16T00:05:00Z

An alternate title might be why true is false.

I got some help from Matthieu debugging a BPEL process today, and it boiled down to this little construct:

<b:while>
  <b:condition>true</b:condition>
  [...]
</b:while>

A lint for XPath 1.0 would have caught this one. As written, true is a relative location path, and depending on the document and context node, if there isn't a node named true, it would evaluate to the boolean value false. (The expressions section of WS-BPEL 2.0 specification further states that the XPath function boolean(...) should be applied to any value not already a boolean.)

This is what the true() function is for. Kudos to Matthieu for spotting it after we'd explored a few rabbit holes looking for an explanation. (And, yes, I still write WS-BPEL by hand in Emacs. I'll get around to updating my Relax NG Compact schema for transitional BPEL to WS-BPEL 2.0 at some point.)

(comment bubbles) 0 comments

A Dirty G5 is a Sleepy G5

Paul Brown @ 2007-08-15T02:02:51Z

I use a venerable G5 quad for most of my work at home, and other than being noisy and producing a lot of heat, it's been a good machine. Then last night, after I tweaked some of the base options (with /usr/sbin/sysctl) to get more processes per user, it started going to sleep at random times. A look in the system log showed:

Aug 14 21:15:54 g5-2 kernel[0]: SMU_Neo2_PlatformPlugin core dump:
Aug 14 21:15:54 g5-2 kernel[0]: IOHWControls:
[...]
Aug 14 21:15:55 g5-2 kernel[0]: [11] "CPU A0 DIODE TEMP" Type:"temp" Id:11 CUR:79.40960 C
Aug 14 21:15:55 g5-2 kernel[0]: [12] "CPU A1 DIODE TEMP" Type:"temp" Id:21 CUR:78.49152 C
Aug 14 21:15:55 g5-2 kernel[0]: [13] "CPU B0 DIODE TEMP" Type:"temp" Id:31 CUR:89.51200 C
Aug 14 21:15:55 g5-2 kernel[0]: [14] "CPU B1 DIODE TEMP" Type:"temp" Id:41 CUR:100.7168 C
[...]

Ah. CPU B is too hot...

I popped the side panel off, pulled the air deflector and fans, cleaned a bunch of dust off of the air filter for the CPU module, put things back together, and all is well — and quieter.

(comment bubbles) 0 comments

Follow-up on AVCHD and MacOS

Paul Brown @ 2007-08-12T00:20:00Z

As a follow-up to my last post about iMovie '08's "support" for AVCHD, I've now got a usable workflow on my G5.

First up, the AVCHD clips are on the order of 5x-10x smaller than the transcoded versions, so it makes sense to store the original AVCHD clips and only transcode for the purpose of editing and assembling a larger clip.

Second, a couple of guys have done the work of wrapping FFmpeg up as a MacOS application ("Voltaic", shareware, $30), and the transcoded clips work just fine with iMovie '08. (I haven't done a careful comparison of clips transcoded with iMovie and Voltaic, but the results with Voltaic look acceptable so far.)

(comment bubbles) 0 comments

iMovie and HDR-SR1 Headaches

Paul Brown @ 2007-08-10T03:32:00Z

I was actually excited to see iLife '08 come out because of one small feature in iMovie:

I took "AVCHD support" to mean that HD footage from my camcorder (Sony HDR-SR1) was finally supported, but trying to import AVCHD video in iMovie on my G5 pops up an error dialog:

The fine print isn't linked from the iMovie product page or from the iMovie applicaction help, but there is a camcorder support document that links to a knowledgebase article that explains that AVCHD support is Intel only for the HDR-SR1. (Oddly, other cameras appear to have no problems with AVCHD import on the G5?)

That little issue might be worth an asterisk on the feature list.

(comment bubbles) 0 comments

Early Childhood TV Causes Post Hoc

Paul Brown @ 2007-08-09T03:06:00Z

After reading the recent Time article about Baby Einstein, I have wonder if early childhood education about statistics and logical reasoning can prevent bad studies in future generations. The authors of the cited study have an ax to grind on the subject, and that's not necessarily a bad thing — I don't think any reasonable person would fail to be appalled by the statistic in the article that 90% of children are spending two to three hours a day in front of a screen. Nonetheless, I find this statement troubling:

Three studies have shown that watching television, even if it includes educational programming such as Sesame Street, delays language development.

I'm willing to accept a statement that babies and toddlers who watch more television also develop more slowly than their peers, but that hardly establishes a causal relationship. Dubner and Levitt would try to convince us that both outcomes (watching television and slower development) are correlated to the socioeconomic status of the parents.

I should figure out some way to make money off of post hoc fallacies — some way other than writing books and publishing articles that contain them, that is.

(comment bubbles) 0 comments

Trade Opt-Out for Privacy?

Paul Brown @ 2007-07-24T00:28:24Z

As a heavy GMail user, I see a lot of Google ads. I used to enjoy the relatively random nature of the ads, but now I just wish I didn't see the same ads over and over again. If Google is going to track my online behavior, then maybe after the 1,000th impression they'd get the hint that I don't want to work for them in Bangalore and stop showing me that ad... (Advertisements for jobs at Google are the primary offender, actually.)

(comment bubbles) 0 comments

Three Random Thoughts

Paul Brown @ 2007-07-23T01:11:31Z

Three random thoughts for the day:

  • If the Internet is converging on a collective consciousness, then it doesn't surprise me that it's full of relatively low-brow content.
  • I wish that the people who designed our gas range had provided it with controls that made it impossible to turn on a burner with my ass.
  • Like lots of other folks, I was hoping to spend this weekend reading a hot new book, but my (hard) copy hasn't yet arrived.
(comment bubbles) 0 comments

All Posts contains 399 items in 57 pages of 7 items each:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57