Just cancel, OK?

Paul R. Brown @ 2008-05-20T23:36:03Z

Usability according to Abbott and Costello:

Are you sure you want to cancel? OK or Cancel.

(comment bubbles) 0 comments

Mea Culpa on Duplicate Posts

Paul R. Brown @ 2008-02-17T00:31:09Z

Apologies for the duplicate posts that showed up last night and are probably still stuck in some aggregators. I inadvertently deployed my development configuration to my production host, and that's why there were lots of posts with localhost:7007 in their permalinks. Needless to say, better configuration management moved up the list of features to be added to perpubplat.

(comment bubbles) 0 comments

Phishing Without a Pole

Paul R. Brown @ 2007-12-19T09:15:26Z

The following phishing email showed up in my GMail inbox today:

Even if I was to be taken in by the ploy, there is no web link or other way to submit the form. Maybe I'm supposed to reply to the email? Too bad it's not as amusing as other stupid criminal tricks.

(comment bubbles) 0 comments

Just a Scoatch More Memory

Paul R. Brown @ 2007-12-12T20:23:05Z

After I saw post about a WTF-worthy comment a while back, I had meant to post this gem, which I'll paraphrase from memory:

foo *f;
f = (foo *) malloc(sizeof(foo)+4); // seems about right

The comment was the tip that code elsewhere was abusing the allocated memory, and the developer had added the padding to avoid segmentation faults...

There were quite a few similar gems lurking around in that particular app, like a catch block wrapped around printing "Whoops!" to stdout, which wouldn't be so bad if it hadn't been cut-and-pasted all over the place, making it difficult to determine where a "Whoops!" on stdout for the app actually came from...

(comment bubbles) 0 comments

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

Java Brainteaser on Regular Expressions

Paul Brown @ 2007-03-20T00:32:11Z

Suppose that you have a Java web application where regular expressions are used deep down in the implementation to do some work, but you observe that the an array index exception is occurring sporadically where the regular expressions are being used.

What's causing the exceptions? What's the solution?

(comment bubbles) 1 comment

Value to You versus Value to Them

Paul Brown @ 2006-11-16T02:04:36Z

Pricing is a black art, especially when it comes to things like a company, a highly specialized piece of software, or a business relationship with intangible benefits. The rookie mistake is to set the price according to the cost or even to use the cost as an anchor in explaining the price. The value to you in whatever units (dollars, years, number of bowls of Top Ramen eaten, broken marriages, quatloos, whatever...) is irrelevant to the purchaser, while the value to them is some proportion more than you can expect a rational actor to be willing to pay.

Putting the cost on the table in front of the potential purchaser can only weaken your position. Instead, keep the discussion focused on the value and how to ensure that the purchaser realizes it. If they try to low ball you, just say "no"; there's no need to justify it or explain your reasoning.

(comment bubbles) 0 comments

Posts tagged ["oops"] contains 10 items in 2 pages of 7 items each:
1 2