Archive for the 'annoyance' Category

Tuesday, February 10th, 2009

iPhone battery life after carrier update

A few days ago, a carrier update arrived for my iPhone. Since then, my battery life has suffered a significant decline. Anyone else seen this? -m

Wednesday, December 24th, 2008

Semi-spam on the rise

With tough times comes a rise in semi-spam. What’s that? There’s a grey area between solicited and unsolicted email. Take a company you’ve done business once in the past. These guys are dredging up their old databases and really searching for business. Since these are companies I actually like, I don’t have the heart to click the ‘Spam’ button on their emails… -m

Monday, December 1st, 2008

Where have all the acorns gone?

First the bee colonies start to disappear. Next, acorns. Does anyone have a map of the acorn-devoid areas? -m

Friday, November 7th, 2008

Sign of the times

I got a call today from a pushy recruiter. That’s nothing new. What’s different is that she was not looking for the usual resume, but rather desperately trying to place candidates. (Or maybe it was just social engineering…)

Is anyone else seeing a reversal in recruiter cold-call strategies? How flooded is the tech job market at this point? -m

Monday, October 20th, 2008

Running jEdit on Mac Java 1.6

I haven’t seen this anywhere else: jEdit doesn’t start up under the recent Mac Java 1.6. It bounces in the dock a few times then goes away.

The solution: manually run the main jar with java -jar path-to/jedit.jar, which will work. Go to the plugin manager and delete the MacOSX plugin. Java integration is good enough in 1.6 that this really isn’t needed anyway. Quit jEdit and now it will start up fine the usual way. -m

Thursday, October 2nd, 2008

XForms spambots on the loose

A determined spambot has been submitting the XForms contact form on XForms Institute. OK, so it’s probably more Flash-aware than XForms-aware, but still. -m

Thursday, September 11th, 2008

Breaking news: Jerry Seinfeld still unfunny

And Microsoft still unhip. I’m not even bothering to click through the second ad… -m

Tuesday, August 12th, 2008

Captchas are getting really hard these days…

Or maybe a certain wireless carrier is getting more incompetent.


Sigh. It’s going to be a long two years. I hope the iPhone is worth it. -m

Thursday, July 31st, 2008

The rare benefit of easily-mockable names

From the observing-the-human-condition department.

Seems I have a hard to pronounce name. For the record my first name has a long I; it’s MY-ka, not MEE-ka. When someone gets it wrong, I don’t hold anything against them. Afterall, how to pronounce any given name is pretty arbitrary.

But there are a few names that are easily mockable. Either a letter of two off from a word with a less favorable meaning, or a shared name with an infamous person–a few notable examples being a popular figure in the XML world and one of the current U.S. presidential candidates. I find that in these infrequent cases, an easily-mockable name can be a useful thing, since it allows me to immediately flip the bozo bit on any commentator/blogger/reporter who chooses to engage with the mockery. Without such low-hanging invective, sometimes it’s harder to tell when somebody is an idiot.

If you want to constructively criticize someone, go for it. But make sure to use founded, fact-based arguments that can stand on their own without resorting to childish attacks. Go forth and na-na-na-boo-boo no more. -m

Saturday, July 5th, 2008

My Horrible Realization…

The old rule: only even-numbered Star Trek movies are any good.

The new rule: only odd-numbered Indiana Jones movies are any good.


Monday, June 23rd, 2008

Review: The Instant Productivity Toolkit

I hoped for something fresh, but this from Len Merson is only warmed-over GTD. Avoid–go for the original. -m

Monday, June 9th, 2008

The comedy stylings of the Windows Vista Blog

For instance, The Business Value of Windows Vista. Seriously, Vista for “speed and security”? Or mobile? The comments on this post alone are worth the click. -m

Monday, June 2nd, 2008

Apple Mobile Me? (But watch out for falling SCO)

Rumor is that the .Mac service is being renamed to “Mobile Me”. Great, in it’s present state, it’s always been the kind of thing that’s completely useless to me, even aside from the annoying name.

But watch out: everyone’s favorite gang of bankrupt litigious weasels, the SCO group, in a desperate effort to prove they they have a broader business plan than making up claims about owning open source software, already have a mobile-related product called “Me, Inc.“. On the plus side, these guys are so deep into their bankruptcy proceedings that they probably don’t have the mettle to go up against Apple at this point. But neither do they have much to lose for trying… -m

Wednesday, May 21st, 2008

XQuery Annoyances…

If you are used to XSLT 1.0 and XForms, you see { $book/bk:title } and think nothing of it. XSLT 1.0 calls the curly-brace construct an Attribute Value Template, which is pretty descriptive of where it’s used. Always in an attribute, always converted into a string, even if you are actually pointing to an element.

In XQuery, though, the curly-brace construct can be used in many different places. Depending on the context, the above code might well insert a bk:title element into your output. The proper thing to do, of course, is { $book/bk:title/text() }. Many XSLT and XForms authors would omit the extra text() selector as superfluous, but in XQuery it matters.

What’s worse, depending on your browser, you might not see any output on the page within a <bk:title> element (or a title element of any namespace). Caveat browser! -m


Monday, March 3rd, 2008

WebPath and Wikipedia

The WebPath bug reports continue to roll in. For one, queries against *.wikipedia.* don’t seem to work. You get something back, but it has no resemblance to the page you were looking for. The problem comes from the W3C tidy service that I use, specifically that the (understandably overworked and understaffed) admins at the Wikimedia Foundation seem to have blocked it. It seems like more than a simple IP or user-agent-based block. I’ve emailed them about it but haven’t heard back yet.

So, this highlights the limitation of having a single-source converter in the Platonic Web module of WebPath. So I turn to my readers: do you know of any other tidy servers? Or converters of a non-tidy origin? For any of these to work, they need to return clean XML corresponding to the original page (as opposed to, say, returning something with big headers/footers or ampersand-encoded). This seems like an outstanding need for the open source community.

Please comment below with ideas. Thanks! -m

UPDATE: heard back from the Wikipedia admins, and although professional and helpful-as-can-be-expected, they won’t be changing anything on their end. Still looking for more open source options.

Tuesday, January 1st, 2008

My new year resolution

Holding steady at 1280 x 854 but due for an upgrade soon.

Seriously, if you find yourself setting various goals just because something on the calendar changed, you probably don’t have the long-term motivation needed to see it through, which is why so many new years’ resolutions lie in broken heaps by mid February. If you think something is worth doing (like this for example), then forget the calendar and do it.


Monday, December 31st, 2007

Should documents self-version?

This blog page at the W3C discusses the TAG finding that a data format specification SHOULD provide for version information, specifically reconsidering that suggestion. As a few data points, XML 1.1 (with explicit version identifiers) is something of a non-starter, while Atom (without explicit version identifiers) is doing OK so far–though a significant revision to the core hasn’t happened and perhaps never will.

In a chat with Dave Orchard at XML 2007, I suggested that the evolution of browser User-Agent strings might be a useful model, since it developed in response to the actual kinds of problems that versioning needs to solve.

Indeed, the idea seemed familiar in my mind. In fact, I posted it here, in Feb 2004. The remainder of this posting republishes it with minor edits for clarity:

‘Standard practice’ of x.y.z versioning, where x is major, y is minor, and z is sub-minor (often build number) is not best practice. If you look at how systems actually evolve over time, a more ‘organic’ approach is needed.

For example, look at how browser user agent strings have evolved. Take this, for example:

Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows 98) Opera 7.02 [en]

Wow, if detection code is looking for a substring of “Mozilla” or “Mozilla/4” or “Mozilla/4.0”, or “MSIE” or “MSIE 6” or “MSIE 6.0” or “Opera” or “Opera 7” or “Opera 7.0” or “Opera 7.0.2” it will hit. If you look at the kind of code to determine what version of Windows is running, or the exact make and model of processor, you will see a similar pattern.

Since this is the way of nature, don’t fight it with artificial, fixed-length major.minor versioning. Embrace organically growing versions.

The first version of anything should be “1.” including the dot. (letters will work in practice too) All sample code, etc. that checks versions must stop at the first dot character; anything beyond that is on a ‘needs-to-know’ basis. A check-this-version API would be extremely useful, though a basic string compare SHOULD work.

Then, whenever revisions come out, the designers need to decide if the revision is compatible or not. A completely incompatible release would then be “2.”. However, a compatible release would be “1.1.”. All version checking code would continue to look only up to the first dot, unless it has a specific reason to need more details. Then it can go up to the 2nd dot, no more.

Now, even code that is expecting version “1.1.” will work fine with “1.1.1.” or 1.1.86.” or “”.

Every new release needs to decide (and explicitly encode in the version string) how compatible it is with the entire tree of earlier versions.

Now, as long as compatible revisions keep coming out, the version string gets longer and longer. This is the key benefit, and why fixed-field version numbers are so inflexible. (and why you get silly things like Samba reporting itself as “Windows 4.9”).

One possible enhancement, purely to make version numbers look more like what folks are used to, is to allow a superfluous zero at the end. This the first version is 1.0, followed by 1.1.0,, (this next one made an incompatible change) 1.2.0, and so on.

So if a document needs to self-version at all, perhaps a scheme like this should be used? -m

Monday, December 31st, 2007

XPath puzzler: solution

Thanks to all the folks who showed interest in this little XPath puzzler published here a few weeks ago. Some asked to see the dataset, but I’m not able to release it at this time (but ask me again in 3 months).

Turns out it was a combination of two bugs, one mine, one somebody else’s. Careful observers noted that I wasn’t using any namespace prefixes in the XPath, and since I did specify that it was XPath 1.0, that technically rules out XHTML as the source language. Like nearly all XML I work with these days, the first thing I do is strip off the namespaces to make it easier to work with. Bug #1 was that in a few cases, the namespaces didn’t get stripped.

Bug #2 was in the XPath engine itself. Which one? Uh, whatever one ships with the “XPath” plugin for JEdit. It’s hard to tell directly, but I think it might be an older version of Xalan-J. In the case of the expression //meta, it properly located only those elements part of no namespace. But in the case of //meta/@property, it was including all the nodes that would have been selected by //*[local-name(.)='meta']/@property. Hence, a larger number of returned nodes.

Confusing? You bet!  -m

P.S. WebPath would not have this problem, since in the default mode it matches local-names only to begin with.

Saturday, December 15th, 2007

XML spell check

Surely somebody has implemented this in at least one tool.

In a text editor, I come across a misspelled close tag like </xsl:stylsheet>. My editor highlights the line as an error, which is is, not matching the start tag and all. Why can’t it go the extra step and give me the same kind of interface as I get for misspelled words, which an easy option to repair the spelling? This seems like a much simpler problem than all the hairy cases around human-language spell check…

So, what tools already do this today? -m

Thursday, November 22nd, 2007

Reducing my online profile

Due to some unauthorized activities on my webspace, I’m trimming my online profile, notably the Brain Attic sites. These were my home base for consulting, which I haven’t been doing for 2+ years. Less surface area exposed means less exposure to the bad guys. This site, and XForms Institute are staying up for now, as should be the email address you are currently using. There will be a few broken links that will take some time to eradicate.

If you notice anything amiss, any unseemly references to ‘viagra’ in my pages etc., email me at “mdubinko” in the reversed “” domain. -m

Update: whoops, looks like I cut a little too deep. Turns out that all my mail was routing through one of the domains I chopped. For several hours overnight email sent to me was bouncing. If you ran into that, please re-sent. -m

Monday, November 19th, 2007

Kindle as a writing tool?

Amazon announced their ebook reader today, Kindle. Some of the earlier hype I’d read about it suggested that it would be not only a reading tool, but a writing tool as well.


The obvious thing is the keyboard, an immediate non-starter for typing more than a few words. But if an external keyboard is possible, I could still live with it. For now, it seems like an OLPC would better serve my needs for an ultra-portable writing station. And for the same price, I get one and so does somebody else who need it. -m

Monday, November 5th, 2007

A better name for CURIEs (?)

“Compact Clark Notation“. (Inspired by reading this) -m

Monday, October 22nd, 2007

Is there fertile ground between RDFa and GRDDL?

The more I look at RDFa, the more I like it. But still it doesn’t help with the pain-point of namespaces, specifically of unmemorable URLs all over the place and qnames (or CURIEs) in content.

Does GRDDL offer a way out? Could, for instance, the namespace name for Dublin Core metadata be assigned to the prefix “dc:” in an external file, linked via transformation to the document in question? Then it would be simpler, from a producer or consumer viewpoint, to simply use names like “dc:title” with no problems or ambiguity.

This could be especially useful not that discussions are reopening around XML in HTML.

As usual, comments welcome. -m

Wednesday, October 3rd, 2007

XML Annoyance: do greater-than signs need to be escaped?

Let’s see how many downstream pieces of software trip over this post…

Do greater-than and less-than signs need to be escaped in XML? Conventional wisdom has it that less-than signs always do, since that character starts a fresh “tag”, but greater-than signs are safe.


There is a particular sequence, namely ]]> , not allowed to occur unescaped in XML “for compatibility“–a particular phrase the spec uses to indicate rules that only an SGML-head could love (but still strict requirements nonetheless). Does your software prevent this condition from causing an error? -m