HTML 5, Real Soon Now(tm)

Here's an interesting preview of features planned for the HTML 5 standard.

It's all very nice, but here's the problem:
Work on HTML 5 is rapidly progressing, yet it is still expected to continue for several years. Due to the requirement to produce test cases and achieve interoperable implementations, current estimates have work finishing in around ten to fifteen years.
Say what? Look at what the Web has done to overcome the problems and limitations of HTML 4 (now a decade old); remember that the Web is proceeding a lot faster today than it did in the nineties; do you really think HTML5 coming out in fifteen years could possibly have any value for the Web? Could it possibly solve the problems that'd interest us in fifteen years?

Unless it's a joke, these guys should get a reality shot, quick. They must publish and promote HTML 5 in no more than two years for it to be at all relevant.

A Microsoft Moment

The System process is a special type of process on Vista called a “protected process” that doesn’t allow any access to its threads or memory. Protected processes were introduced to support Digital Rights Management (DRM) so that hi-definition content providers can store content encryption keys with a reduced risk of an administrative user using DRM-stripping tools to reach into the process and read the keys.

-- Mark Russinovich, "The Case of the System Process CPU Spikes"
Thank you ever so much, Microsoft.


Lately, legitimate, manual e-mail I've been sending through the server (to project volunteers and users) has been bouncing or getting rejected due to blacklisting. I'm reasonably careful in my server setup, I know for a fact it is neither an open relay nor 0wned nor backscattering. So I've been wondering what made whoever-it-was blacklist my server.

After digging around a bit, I found that the UCEPROTECT network has a "Level 3" blacklist on my server, but it's entirely not my server's fault! What's the deal? It is this: (bear with the spelling, they're Germans)
What means listed at UCEPROTECT-Level 3?
GAME OVER. We and our users have seen enough spam and heared all possible excusions why some lazy providers think to be not responsible for what their customers are doing.

We are not just another blacklist. We really know better. Massive spam is always a problem tolerated by the provider.

We have very bad news for you: It is not you, it is your complete provider which got listed.
Your IP was NOT part of a spamrun, but your provider seems to believe that spam is what the internet was made for.
By tolerating your provider doesn't care about spammers you are also supporting the global spam.
If all people would boycott spammerhaevens, spam-friendly providers wouldn't even exist.

Please send a compliant to your provider and request him to fix this problem immediatly.
Think about this: You pay him for, that you can use the internet without problems.

If he ignores your complaint or claims he can't do anything, you should consider to change your provider.
Don't accept to be fooled. If your provider really wants to stop spam he would install preventive measures.
Dang. is hosted by the Shenkar college, themselves hosted on SMILE-ASN Euronet Digital Communications, (1992) LTD, Israel. Good luck talking them into behaving! So can I just unlist my own IP? Nuh-uh:
Can't you make an exception for me?
We never make exceptions. Requests are futile. Only your provider can fix this problem.
Bummer! Any ideas? (Other than moving my server to a compliant ISP, a move meaning we'd start to pay for the Int0rnetz. It's not out of the question, but naturally I'd rather not.)

All Hail Prototype!

I never liked writing user interface code1. I particularly abhor user interface code on the Web2. I have succeeded in avoiding any kind of Web UI work in my professional software work, not writing a single line of JavaScript for my employer.

But these days I'm working on a little web app to facilitate collaborative work on producing an electronic version of (part of) Eliezer Ben-Yehuda's classic Hebrew dictionary, driving a streamlined process of allocating small images to type, typing, proofing (multiple rounds), and publishing. Since it involves a modicum of image editing and requires some immediate responses to the user, I am brought to use the accursed thing3.

Mercifully, some clever folks brought forth upon this Internet a new framework, conceived in good sense, and dedicated to the proposition that all programmers should be rid of mucking around with the DOM. That framework is Prototype. And it is good. And I get to keep my sanity.

1 Alright, I kinda liked Borland's OWL, back when I was excited by the discovery of event-driven programming. We're talking thirteen years ago. But, really, I don't like implementing UI. Too repetitive.

2 Beside being too repetitive (am I being too repetitive?), Web UI work also features the profound brokenness of HTML, and the exigencies of the stateless nature of the Web. Then there's the doomed battle for perfect cross-browser functionality. Gah!

3 Yes, I know, JavaScript is actually very feature-rich and has lambdas and things. And hey, Yegge chose it even for server-side work at Google. But, you know, it's not the language I mind, it's the operating environment (browsers and the DOM, that is).
  • Current Music
    air-conditioner whirring

VS.NET's "solutions" suck

(what else is new...)

Has any of you worked with a Visual Studio .NET "solution" which included "projects" from some orthogonal branch, such that you wanted to *parameterize* the path (rather than use an absolute or a relative path) to that other project?

Essentially, I want to support working on branches, in the svn/Perforce style, i.e. branches have different filesystem paths. So my Solution should include:


Where CUR_BRANCH is some environment variable set to "v1.3" or whatever. The snag is that unlike Visual Studio "projects", where this approach works nicely, the "solution" files do not seem to interpolate environment variables in the entries for their constituent project files themselves. Thus the solution can't be branch-conscious and load the correct (branched) project files.

Have you encountered this? Got an idea to circumnavigate this? I'm having weird ideas (remember SUBST.EXE? :)), but I feel this should be simpler.
  • Current Music
    The Smiths -- Frankly, Mr. Shankly

New Machine's Linux Distro

So I'm getting a new machine, a high-end powerhouse (spec to be posted in a few days).

I want its primary OS to be Linux. I love Debian, and am running it on several servers I maintain (the BY project, and a couple at work), so it's my natural choice for the new machine as well.

But I don't have much experience with Linux at home, so I'm wondering whether the Debian-based Ubuntu would be better than plain Debian for home use (including multimedia, games, etc.).

Also, do you have some advice on partitioning for a basic Linux-for-work-and-general-use-and-Windows-for-some-games-and-occasional-compatibility-problems scenario?

Thanks in advance!
  • Current Music
    Roger Waters -- Live in Israel (live, as in RIGHT NOW!)