It Brings on Many Changes

by Michael Swaine

Thanks for dropping in on the online edition of "Programming Paradigms"&$151;a 21st Century innovation in a column that, in its print form, is now in its 15th year. "Programming Paradigms" is written by me, Michael Swaine, editor-at-large for Dr. Dobb's Journal, and it covers... well, let's see. The things that are on my mind this month are: suicide, changes, video post-processing, intentional programming, Stephen Wolfram versus Ed Fredkin, online columns versus print columns, a challenge to the Church-Turing thesis, and the popularity of PLoP.

A New Paradigm for Paradigms

"Programming Paradigms" now appears in the print version of DDJ in odd months, and here online in even months. Or is it the other way around? Anyway, "Paradigms" alternates between a print column and an online column. And I'm just coming to understand the implications of this innovation.

I have been writing both print and online columns for years, so I think I know the difference. But writing a single column bimedially is a new twist, and I'm just starting to find my way. Deadlines are interesting. "C Programming" columnist Al Stevens is grappling with the same challenge. I'll be interested to see how he deals with it.

My tentative plan is to present shorter, more timely items here online, such as this month's short takes on Darbee Labs and the list of links to subjects Simonyian. Same theme, programming paradigms, but different approach. I'll also present more interactive material. Reader contributions will more likely appear here than in the print column, such as this month's two letters on the Wolfram-Fredkin theme. And I'll use some of this flexible online column space to keep you apprised of what I'm up to.

I'm also using shorter paragraphs.

Let's dispense with what I'm up to right now. Briefly, though. I don't want to make this column excessively narcissistic. That's what my Web site is for.

I have a book coming out in January (knock wood) on developing applications in REALbasic. It's from Peachpit Press and is called The Visual QuickStart Guide to REALbasic. For most DDJ readers it'll probably be too, uh, basic. What can I say? I'm a Saturday-morning programmer and I needed to learn a Saturday-morning programming language. So I wrote a book about one.

You learn a lot from writing a book. I learned what I always learn when I write a book: writing a book differs from other forms of torture only in that you do it to yourself. I recommend writing a book if you are, say, a would-be terrorist with a lot of idle time. The Unabomber counterexample notwithstanding, there are very few people who could carry out a campaign of terror while writing a book. Especially a book on programming.

While I'm going on about me, I'll let you in on a secret. Those asides attributed to someone called ed in the DDJ newsletters recently are mine. I took over the editing of the newsletters with the October issues. To a writer, doing a stint as an editor is the sweetest revenge. DDJ newsletter authors: I'm only kidding. Everyone else: <evil grin>.

Visions of the things to be

But enough about me. Darbee Labs is a startup company with technology that is supposed to add realism to movies and DVDs. Its CEO claims to be the inventor of the universal remote control and its President is the person who, many years ago, wrote the following:

Through early morning fog I see
Visions of the things to be
The pains that are withheld for me
I realize and I can see
That suicide is painless....

...when he was 14 years old.

I don't know if Robert Altman's son Michael knows anything about software, but "Suicide Is Painless" has always appealed to the 14-year-old boy in me and I'd wondered off and on over the years what its author was doing since writing the theme for M.A.S.H. Working in the movie industry, is the unsurprising answer. Until this year, that is, when, surprisingly, he left Fox to become the President of this tech startup.

So what's Darbee Labs all about? CEO and founder Paul Darbee answers: "Think of it as 'pre-emphasizing' an image for the human brain."

The product, DarbeeVision, is a filter that you apply to a movie after it has been digitized. It uses knowledge of how humans process visual information to emphasize depth of field and improve clarity in all images during film/video postproduction, even giving a subtle 3D-ish effect. The first big customer for the technology was legendary director Robert Altman, who insisted on using DarbeeVision to enhance his Academy Award-winning movie Gosford Park; when it went to DVD. I think this was before his son joined the firm.

Darbee has applied for a patent on the technology, and the company hopes to see it adopted for high-definition broadcasts, theatrical film prints, still photography, standard television broadcast, advertising, and games.

Darbee got the idea behind DarbeeVision while working with 3D images. He developed a technique that seemed to retain some of the perceived sharpness and depth of 3D even when the multiple images of 3D data were collapsed into a single 2D image. Then he found that he could achieve the same effect starting from a 2D image.

So is it any good? Well, if Robert Altman thinks so, that's a pretty good recommendation. But at least one reviewer of the Gosford Park DVD disagrees.

Reviewer Dan Ramer on May 29, 2002: " [T]he experiment just doesn't work..... [A]t 55:00, each pheasant, silhouetted against the gray, overcast sky, is enclosed by a bright halo. The image is also a bit on the soft side, as the video was filtered to remove the high frequency textures that would make the compression more challenging. Pity."

Still, if Altman likes it....

Michael Altman's lyrics can be read at various sites, such as this one.

The losing card I'll someday play

Charles Simonyi is leaving Microsoft. He wants to pursue his dream of creating what he calls intentional programming. Is he taking a huge risk? And what's intentional programming?

Risk? He's rich. What's he risking? And Microsoft will license what he develops if there's anything to it. No, Simonyi's bigger risk would be if it turns out that his very good friend Martha Stewart turned him on to Imclone stock and then told him when to sell it on the basis of insider information. So far as I know that's not the case, but Martha is in the investigators' crosshairs. But I have no inside information to impart.

So what is intentional programming? Here's the inside information from Charles:

"To enable the ecology, all you have to do is make the abstractions completely self-describing, so that an abstraction will carry all of its description, both of how it looks and of what it does. It's called intentional programming because the abstractions really represent the programmers' original computational intent."

To find out what that means, you might check some of these links:

...plus these seemingly-related topics:

Of course the trick is to decide how any or all of these is related to intentional programming.

The Game of Life is hard to play

It would be churlish to characterize the work of Stephen Wolfram and Ed Fredkin as elaborations on the Game of Life. But both have studied cellular automata like the Game of Life and think that these simple program-worlds hold deep insights into the structure of reality. Several readers sent thoughtful responses to my recent columns on Wolfram and Fredkin. In the following, DP refers to Fredkin's Digital Philosophy and NKS refers to Wolfram's A New Kind of Science.

Mike Naegele wrote:

"Where DP proponents are trying to build a basis for 'real physics', NKS is trying to kick the props out from under the whole shebang. DP tries to distance itself from lattice gas models, for instance, which are seen as just an approximation of the real equations. NKS is saying that (I am stretching a point here) a lattice model *is* the real physics, or at least may be one of many valid rule sets.

"In short, Wolfram's vision is much broader, and certainly not limited to physics. In the Theory-of-Everything department, however, Wolfram goes considerably beyond DP. If you put together causality digraphs, mobile automata, and node-replacement rules, you might get the Node and the Rule. The Rule operated on the Node, which begat more nodes, creating a causal graph of the world. It does't get more elegant than that."

Kovas Boguta wrote:

"The difference between Fredkin's and Wolfram's approach is as follows. Fredkin tries to challenge the assumption of continuity in the fundamental physical quantities. Wolfram tries to challenge the assumption of fundamentalness in the same quantities. While this leads to a slew of differences, a particularly important one is that Fredkin and others make a fundamental distinction between space and its contents which Wolfram does not - and for this reason alone I believe Wolfram makes an original contribution. In my opinion, Wolfram's proposals are also more tangible: despite obliterating time, space, and matter he is able to reproduce special and general relativity, with the ideas coming up again in his discussion on how quantum mechanics has the potential to work in the deterministic setup.

"But Fundamental Physics is not a chapter about principles but a demonstration of method, and by itself does not come close to encompassing the most important points of Wolfram's thought. And so, to fully understand Wolfram's rather direct criticism of the "Universe as CA" proposal it becomes necessary to understand Wolfram's ideas about the correspondence between models and reality, which in turns requires understanding the PCE and its implications for perception and analysis."

Wolfram's work can be explored in his book A New Kind of Science and through a software package from Wolfram Research, A New Kind of Science Explorer. Fredkin's work can be found at his Digital Philosophy Website.

Personally, I still think that Fredkin had some of the key ideas first, but I also agree that Wolfram is after something bigger. Bigger than just about anybody.

The only way to win is cheat

I've been weaving a thread on quantum computing in this column for about a year, but for this installment I just want to point you to this good article on why a quantum computer could undermine the Church-Turing thesis, crack uncrackable codes, and solve unsolvable problems.

It doesn't hurt when it begins

Reader Kristian Elof Soerensen writes:

"I have been reading your various columns in DDJ for years, and found both amusement, joy and the occasional insight in them ;-)"

Sounds good, but then she goes on:

"In the recently arrived November 2002 issue you are writing about writers workshops. A few weeks ago we had the first Nordic PLoP conference - VikingPLoP, which I had the honour of being conference chair for. I wonder why you do not mention the PLoP series of conferences that has taken place several times a year since the mid 90s. At these conferences software people from industry and a minority from academia bring their patterns papers to be workshopped in writers workshops."

Okay, Okay, here is the official list of PLoP conferences. Each is a yearly event.

So this is all I have to say

Till next time, peace, love, and open source,

Michael Swaine