The Prime Minister and the Press

The stand-off between the Parliamentary Press Gallery and Conservative Prime Minister Stephen Harper is pretty amusing to observe. And so are the reactions to it, as blogged by The Toronto Star’s Antonia Zerbisias. After 5+ years of watching the White House Press Corps lick King George’s boots, it’s hard to believe that anyone in the press has a spine anymmore. But perhaps it’s precisely because of the dramatic failure of White House press coverage that some members of the PPG (I can’t resist noting that The Star’s representative was not one of those who took a stand) are trying to take back their jobs and challenge the government for the good of the public.

We’ll see how this plays out. There’s still time for the press to return to shamelessness. In the meantime it’s gratifying to see Harper make his first Texan-sized faux pas. BTW, pogge has an interesting alternate analysis of how the press can turn Harper’s political (mis)calculation to their advantage.

The Web: Beyond SOA

Along with a significant minority of developers, I never believed that SOAP and WS-* based Web Services were going to be a practical way of constructing loosely-coupled, Internet-scale distributed applications—let alone the architectural answer to everything. (Hint: once people begin discussing the notion that human-readability and -writability are unnecessary as long as there is “adequate tool support”, you know the technology is a big fat expensive dead end.) Now I guess it’s official: WOA is the new SOA.

I have to agree with Tim Bray:

I think we should take the “Web Services” label into the jailyard, strap on a blindfold, give it a last cigarette, and shoot it. It doesn’t mean much any more, and to the extent that it does, it’s misleading: WS-* doesn’t have much of the Web about it.

Long live the Web-style.

Jesus Never Killed Anyone

As a practicing Catholic…I believe that Christ never was or claimed to be a Nietzchean ubermensch bent on faith-based genocide. Nor do I believe for a second that he’s going to rapture the Baptist-Evangelical-Pentecostals’ hate-mongering, willfully ignorant, terminally intolerant, gun-toting, gay-bashing, race-baiting, blame-the-poor-for-poverty, I’m-saved-and-you’re-not asses up to heaven.

Sure, we respect their right to believe whatever they please. But we’re under no obligation to respect what they believe.

If you’re fed up with self-righteous theocratic thugs telling you who you must hate, you might enjoy this anti-Dominionist rant by the author of The Messiah of Morris Avenue.

Artefacts of Computation

One of my favourite algorithmic artists is Jared Tarbell. He creates, among other things, visualizations of complexity. About his work, he writes:

I write computer programs to create graphic images.

With an algorithmic goal in mind, I manipulate the work by finely crafting the semantics of each program. Specific results are pursued, although occasionally surprising discoveries are made.

I believe all code is dead unless executing within the computer. For this reason I distribute the source code of my programs in modifiable form to encourage life and spread love. Opening one’s code is a beneficial practice for both the programmer and the community. I appreciate modifications and extensions of these algorithms. Please send me your experiences.

A couple of my favourite pieces include “Bubble Chamber” and “Node Garden”. You can watch each instance of the work evolve before your eyes, if your browser supports Java applets. The artist provides notes on design, process, and experiments, as well as source code (in Processing) anyone can play with.

Bubble Chamber sample thumbnail

Node Garden sample thumbnail

Also see levitated.net.

JXTA Pipes vs. Sockets

Some people are unsure about when it is appropriate to use JxtaSockets and when it appropriate to use Jxta Pipes (especially the JxtaBiDiPipe). These are a few of my reasons for deciding to choose sockets over pipes:

  • if your messages are (or could be) larger than 64K. Since 64K is the maximum message size for JXTA messages, you’re going to have to chunk them anyway. Why not let the socket layer take care of it for you? The socket code will ensure chunks are reassembled in the right order, and will take care of retransmissions if used in reliable mode.
  • If you need to make sure messages are received in the order they are sent. My understanding is that with pipes messages *usually* arrive ordered, but there’s no guarantee.
  • If you want to handle flow- and congestion-control automatically. With pipes, you’re on your own in figuring out how quickly to send messages, when to back off, and so on.
  • If you have existing code based on java.net.Socket, which you wish to convert or adapt to work in a JXTA network. Just don’t forget that you must explicitly flush() the output stream.

One exception is JxtaBiDiPipe. It has a reliable mode, so some of these reasons don’t apply. A JxtaBiDiPipe is reliable like a “reliable mode” socket, but you still have to do the message chunking yourself. You can use it in place of a socket if you don’t care about having a stream-based interface.

A further complication involves the use of secure sockets created using a JxtaUnicastSecure pipe and the TLS transport. Since reliability, flow- and congestion-control are provided by the TLS layer, you should turn the reliable mode off on the socket in this case to avoid inefficient duplication of effort.

In practical terms, it boils down to this for me: I generally use pipes for application-level protocol messages (usually unreliable JxtaBiDiPipes) and sockets for sending data (usually based on secure pipes, with the socket’s “stream”/reliable mode turned off.)

For a more detailed discussion of Pipe and Socket implementations and some common pitfalls, see “Demystifying Pipes, JxtaSockets, JxtaMulticastSocket, and JxtaBiDiPipes” by Mohamed Abdelaziz (hamada).

“Something bad is going to happen.”

The New Yorker outs the Bush admminstration’s plans for tactical nuclear war against Iran. Don’t read it if, like me, you suffer from Post Cold War Nuclear Stress Disorder. Or if you have an unreasonable fear of psychotic Messiah wannabes itching for the Apocalypse. (If you think I’m talking about the Iranian regime, you’re right. If you think I’m talking about the American regime, you’re right.) It totally f’ed up my Saturday morning, that’s for sure. All we can do is pray that Seymour Hersh has been smoking something very nasty.

Via The War in Context.

For more on the US government’s nuclear nightmares, see the essay “The Rise of U.S. Nuclear Primacy” in Foreign Affairs.

oponia networks

Since “What are you up to these days?” is becoming a FAQ, here’s the short answer: I co-founded a technology company called oponia networks. We’ve got some money, some super-smart people, and a cool project on the go. Our lawyers won’t let me say much about what we’re doing just yet, but I can say that we’re developing distributed applications for the consumer and enterprise markets. We think we’re going to change the way people use the web—but then doesn’t everybody say that these days? Heh.

Stay tuned for some more info on the alpha in a few days…

Michael Moore on the Canadian Election

Another warning from one of our friends down south:

I know you have a great sense of humor, and certainly a well-developed sense of irony, but this is no longer funny.

First, you have the courage to stand against the war in Iraq — and then you elect a prime minister who’s for it. You declare gay people have equal rights — and then you elect a man who says they don’t. You give your native peoples their own autonomy and their own territory — and then you vote for a man who wants to cut aid to these poorest of your citizens.

Read Michael Moore’s complete letter.

I guess that’s my last comment on the campaign. Tomorrow, we vote.

“Don’t Make The Same Mistake We Did”

Frankly, I’m finding the Canadian election just too depressing to write anything about. I have terrifying visions of Stephen Harper grinning like the proverbial cat that swallowed the canary, barely able to control his glee: “I’m the Prime Minister. I AM THE PRIME MINISTER! BWAA-HA-HAHAHA.” Whether this happens before or after he begs the White House for permission to “perform a sexual favour” for George Bush in the Rose Garden, my imagination can’t encompass.

So to avoid having to say much myself, I offer this post from an American blogger at the Huffington Post. Russell Shaw urges us not to make the same mistake Americans did in 2000. I can’t say I entirely agree with his “don’t waste your vote on the NDP” view, but it’s nice to see that someone down there cares about what happens to us.

I know that it is tempting for you Canadian progressives tired of scandal to vote NDP, sit this one out, or vote for the Conservative Party in the hopes that they won’t be all that conservative.

But I have to tell you that many of us (not me, but many fellow progressives) made that mistake back in 2000. And we are about to pay for it in ways that frankly, are both depressing and a bit scary.

No matter how much you despise Mr. Dithers, don’t give the wing-nut right a foothold in this country. Some mistakes take decades to undo, and Canada can’t afford it. ‘Nuff said (by me, anyway.)

Update: I may not have the heart to write about Canadian federal politics right now, but others do and they do a much better job of it. I recommend the blog “Peace, order and good government, eh?” as a progressive place to start.

Posts and pointers on software, art, math, noise, and other obsessions…