Wordyard

Hand-forged posts since 2002

Archives

About

Greatest hits

Code Reads #3: Edsger Dijkstra’s “The Humble Programmer”

October 18, 2006 by Scott Rosenberg

Code ReadsThis is the third edition of Code Reads, a weekly discussion of some of the central essays, documents and texts in the history of software. You can go straight to the comments and post something if you like. Here’s the full Code Reads archive.

This will be a briefer entry than I originally planned. I’ve fallen behind a bit this week! So rather than post about all three essays I mentioned last week, I’m going to confine myself to “The Humble Programmer,” Edsger Dijkstra’s Turing Lecture, delivered in 1972.

In “The Humble Programmer” (text, PDF) Dijkstra offers an overview of the programming universe as he saw it in 1972. In the ’50s and early ’60s, programming pioneers struggled against the “painfully pinching shoe” of inadequate equipment. Then they got the more powerful machines they longed for. “But instead of finding ourselves in the state of eternal bliss of all progamming problems solved,” Dijkstra wrote, “We found ourselves up to our necks in the software crisis!” The problem was that the upward curve of ambition driven by new hardware capacity outran the improvements in software:

As the power of available machines grew by a factor of more than a thousand, society’s ambition to apply these machines grew in proportion, and it was the poor programmer who found his job in this exploded field of tension between ends and means. The increased power of the hardware, together with the perhaps even more dramatic increase in its reliability, made solutions feasible that the programmer had not dared to dream about a few years before. And now, a few years later, he had to dream about them and, even worse, he had to transform such dreams into reality!

From its title to the repetition of phrases like “the poor programmer” to its references to “the intrinsic limitations of the human mind,” the essay presents a chastened vision of the human capacity to create software: the programmer, Dijkstra says, must be “fully aware of the strictly limited size of his own skull.”

[Read more…]

Filed Under: Code Reads, Software

Eye-raq: Santorum, Tolkien and terror

October 17, 2006 by Scott Rosenberg

I am the first in line to enjoy a good Lord of the Rings analogy. But there is something distinctly off in Sen. Rick Santorum’s effort to recast the Iraq War in Tolkienian terms:

Embattled U.S. Sen. Rick Santorum said America has avoided a second terrorist attack for five years because the “Eye of Mordor” has been drawn to Iraq instead.

Santorum used the analogy from one of his favorite books, J.R.R. Tolkien’s 1950s fantasy classic “Lord of the Rings,” to put an increasingly unpopular war in Iraq into terms any school kid could easily understand.

“As the hobbits are going up Mount Doom, the Eye of Mordor is being drawn somewhere else,” Santorum said, describing the tool the evil Lord Sauron used in search of the magical ring that would consolidate his power over Middle-earth.

“It’s being drawn to Iraq and it’s not being drawn to the U.S.,” Santorum continued. “You know what? I want to keep it on Iraq. I don’t want the Eye to come back here to the United States.”

The trouble here is not that Santorum is daring to compare a bloody real-life tragedy to a fantasy novel — pace my colleague Tim Grieve, who brought this bizarre tirade to my attention, or the spokesman for Santorum’s opponent, who complains, “You have to really question the judgment of a U.S. senator who compares the war in Iraq to a fantasy book.” That doesn’t bother me. Myths and fictions offer us powerful ways of seeing and talking about the real world. Popular politicians — like Ronald Reagan, who borrowed his “Evil Empire” imagery from George Lucas — understand this.

No, the problem is that Santorum’s analogy makes no sense. I think the senator means to offer a Middle Earth version of the GOP’s “We’re fighting them over there so we don’t have to fight them here,” but he’s messed it up badly. (Warning: Tolkienian geekery ahead!)

First of all, in Tolkien’s saga, the good guys are outgunned and outmanned by the Dark Lord, whereas in our world, the U.S. is a “hyperpower” whose military, in 2001-2, seemed to bestride the world. Second, in Tolkien, the good guys sent Frodo with the Ring into the depths of Mordor as a sort of last-ditch, bet-everything gamble; then they sent an army to the gates of Mordor as a diversion — to keep the Eye occupied and distract it from the hobbits headed for Mount Doom.

Santorum says the war in Iraq was meant to keep the Eye distracted. But what kind of diversionary maneuver keeps more than a hundred thousand troops fighting and dying for years? And what are we distracting our enemy from? Who are our hobbits? What secret plan is underway to break the power of Al-Qaeda once and for all? None, of course, because this is where the analogy dissolves into air: In Middle Earth, the Dark Lord’s forces are centralized and his minions are incapable of operating independently; in our world, our enemy is organized as a headless guerrilla network. There is no “Eye” to distract.

It’s hard, in truth, to find any useful Middle Earth analogy to the Iraq War: the parallels break down across the board. Still, you might think of Bush’s invasion of Iraq as the equivalent of a beleaguered Gondor, attacked by the armies of Mordor across the River Anduin, sending its army off on an expedition to Far Harad, after its leaders issued proclamations that the White Council had incontrovertible evidence of the Haradrim’s possession of Rings of Mass Destruction.

Something like that, anyway. But as you can see it really doesn’t work, even when you try harder than Santorum.
[tags]iraq, rick santorum, tolkien, lord of the rings[/tags]

Filed Under: Culture, Politics

Ballmer explains Windows delays — or, how Vista is like Iraq

October 16, 2006 by Scott Rosenberg

Steve Ballmer was interviewed in Saturday’s Times. Noted:

Q. What was the lesson learned in Windows Vista? After all, it wasn’t supposed to ship more than five years after Windows XP.

A. No. No, it wasn’t. We tried to re-engineer every piece of Windows in one big bang. That was the original post-Windows XP design philosophy. And it wasn’t misshapen. It wasn’t executed, but it wasn’t misshapen. We said, let’s try to give them a new file system and a new presentation system and a new user interface all at the same time. It’s not like we had them and were just trying to integrate them. We were trying to develop and integrate at the same time. And that was beyond the state of the art.

This is at once an unusually candid and an oddly defensive statement.

Ballmer is saying that, in 2001-2, as Microsoft pondered the next phase of Windows’ evolution post-XP, the company deliberately chose to “re-engineer every piece of Windows in one big bang.” It’s a telling choice of phrase. In the software development world, “big bang” (typically used in “big bang integration”) is used to describe a bet-it-all strategy that involves building lots of parts of a system separately and waiting until the end to hook them up and hope they play nicely together.

So Ballmer is essentially admitting that the “design philosophy” of the new Windows was founded on a risky, widely discredited approach. Then he turns around and says that it wasn’t “misshapen” — twice.

Misshapen? Is this a new buzzword I’ve somehow missed? Did the Times reporters mistranscribe “mistaken”? What is Ballmer talking about?

Then he says, “It wasn’t executed.” Note the passive voice, correct for it: “We didn’t execute it.” Which means, “We didn’t do it.” That’s, you know, obvious, I’d think.

Then Ballmer closes the explanation by declaring that the problem wasn’t one of integration; it was even worse than that — it was that Microsoft, the largest and most successful software company in the world, set out to simultaneously “develop and integrate” new versions of all the core functions of its central product. Now, in 2006, the company understands that this was “beyond the state of the art.” But back in 2001-2, they didn’t see that.

This is a fascinating rationalization. I’m loathe to draw too facile a comparison between the tribulations of a technology company and the drama of global conflict. But here, I think, there’s a clear and illuminating parallel between Microsoft’s hubris in this era and the Bush administration’s overreaching in Iraq — two phenomena that overlap almost precisely on the historical timeline.

And no, of course I don’t mean to suggest that there is any moral equivalence, or that the sad saga of a software product’s delay is in any way an event of equal import to the tragedy of an unnecessary war of choice resulting in hundreds of thousands of deaths. But there are some similarities, too, to wit:

Bush’s team — chests puffed large from its success in invading Afghanistan post-9/11 — ignored conventional wisdom and disregarded expert intelligence and invaded Iraq, only to discover that the effort to control and transform that country was beyond its means.

Gates’ team — surveying a decimated post-dotcom industry landscape as the “sole superpower” of technology — simiarly ignored conventional wisdom and disregarded expert knowledge. Incremental development? Continuous integration? They are for mere mortals. Microsoft, with its mountain of cash and its armies of developers, could bring brute force to bear on the most intractable of large-systems development problems. The company would rip out the guts of all of Windows’ key subsystems and renovate them at the same time — because it was invincible!

The result was predictable. Now a more humbled Microsoft is limping to the finish line with a version of Windows that — whether users find it reat or so-so or terrible — will always be overshadowed by the ambitious claims once made for it. In the context of that falling off, Ballmer’s statement is positively bizarre.
[tags]microsoft, steve ballmer, windows, vista[/tags]

Filed Under: Business, Politics, Software, Technology

Code Reads progress report and schedule

October 12, 2006 by Scott Rosenberg

I’m very happy with the knowledgeable and far-ranging discussions we’ve been having in the first two Code Reads (The Mythical Man-Month and “Go To Statement Considered Harmful”). The discussion of Dijkstra’s famous essay led us to some other related readings that I’m going to lay out for the next reading (which, like this week’s, will probably post a day late, on Tuesday rather than Monday — because it’s my kids’ birthday this weekend!). This will be a Dijkstra triple header: Notes on Structured Programming, “What led to ‘Notes on Structured Programming'”, and “The Humble Programmer.” Together these papers provide a deeper understanding of the perspective Dijsktra offered in the celebrated “Go To Statement” piece.

Then, the following week (Oct. 23), let’s look at Donald Knuth’s “Structured Programming with go to Statements”. The Knuth is almost certainly way over my head, but I’ll give it a go, and maybe you guys can help me out.

The week after (Oct. 30), let’s change the scene entirely, and look at Mitch Kapor’s Software Design Manifesto, which extends the discussions we’ve been having about the development process (Brooks) and coding discipline (Dijkstra) into the realm of design process.

I’ve added a permanent link in this blog’s sidebar to the Code Reads category archive and also a link to the RSS feed for the category, if you ‘re only interested in the software discussions and not in keeping up with my other topical ravings. I’ll also try to keep a link there to the post that lists the next reading(s).

Thanks to the denizens of Lambda the Ultimate, joel.reddit.com (the Reddit category created for devotees of Joel on Software), and programming.reddit.com for linking here and pointing people to the conversations. Also thanks to these individual bloggers for linking in: Rafe Colburn, Anarchaia, Hacia la Cuarta Generacion del Software, danvk.org, Superficie Reflexiva, Strange Quarks, Honey of an Anklet, and Ralph Johnson (one of the so-called “gang of four” authors of the original Design Patterns book). If I missed you (I’m relying on Technorati), let me know!

As for that book giveaway, here’s my plan: When I have the books in hand, I will award them at random from the list of people who have made what I consider substantive contributions to the discussion (which means nearly everyone so far). Then I’ll email you if I have an email address, or post here if I don’t, to let the winners know.

Filed Under: Code Reads

Microsoft sniffed at “acquiring YouTube’s technology”

October 11, 2006 by Scott Rosenberg

This little tidbit from the Journal’s day-one story on the Google/YouTube deal caught my eye:

A Microsoft spokeswoman said the company “evaluated acquiring this type of technology several months ago” but decided to build its own service, a test version of which opened recently.

It may be foolish to read too much into an unnamed spokesperson’s boilerplate wording, but it is unwittingly illuminating.

YouTube’s “technology” is smart: the company made a good bet on making posting videos really easy — it did for Web video what AOL did a decade ago to help people get online. But the technology itself is something that Google, or Microsoft, could duplicate for a tiny fraction of YouTube’s price tag.

Google traded its stock not for YouTube’s technology but for its massive and growing community of users. That Microsoft would describe the deal as “acquiring technology” is an indication that it’s still thinking like a packaged-software-goods company.
[tags]google, youtube, microsoft[/tags]

Filed Under: Business, Technology

North Korea in 60 words or less

October 11, 2006 by Scott Rosenberg

Josh Marshall has crisply debunked the Bush team’s attempt to throw smoke in the world’s eyes at the failure of its “we don’t talk with the axis of evil” stance in regard to North Korea’s nuclear test. With the administration desperately trying to cloud the issue, it is worth simply reposting his description:

“Failure” =1994-2002 — Era of Clinton ‘Agreed Framework’: No plutonium production. All existing plutonium under international inspection. No bomb.

“Success” = 2002-2006 — Bush Policy Era: Active plutonium production. No international inspections of plutonium stocks. Nuclear warhead detonated.

Face it. They ditched an imperfect but working policy. They replaced it with nothing. Now North Korea is a nuclear state.

[tags]north korea, nuclear proliferation, bush administration[/tags]

Filed Under: Politics

Code Reads #2: Dijkstra’s “Go To Statement Considered Harmful”

October 10, 2006 by Scott Rosenberg

Code ReadsThis is the second edition of Code Reads, a weekly discussion of some of the central essays, documents and texts in the history of software. You can go straight to the comments and post something if you like. Here’s the full Code Reads archive.

The title of Edsger Dijkstra’s 1968 “Go To Statement Considered Harmful” is among the best-known phrases in the history of programming. Interestingly, the phrasing of the title — which has become so regular a cliche in the field it inspired Eric Meyer to compose the waggish “‘Considered Harmful’ Essays Considered Harmful” — was not Dijkstra’s work at all. As Dijkstra explained it:

Finally a short story for the record. In 1968, the Communications of the ACM published a text of mine under the title “The goto statement considered harmful,” which in later years would be most frequently referenced, regrettably, however, often by authors who had seen no more of it than its title, which became a cornerstone of my fame by becoming a template: we would see all sorts of articles under the title “X considered harmful” for almost any X, including one titled “Dijkstra considered harmful.” But what had happened? I had submitted a paper under the title “A case against the goto statement”, which, in order to speed up its publication, the editor had changed into a “letter to the Editor”, and in the process he had given it a new title of his own invention! The editor was Niklaus Wirth.

How did Wirth come up with the odd phrase? My hunch is: some combination of English-as-a-second-language (though, since Wirth got his PhD here at Berkeley, that may be completely wrong) combined with the essential trait of radical concision drummed into the heads of programmers of that era. Fewer words! Fewer characters! Less space in memory!

[Read more…]

Filed Under: Code Reads, Software

Google and YouTube — just add fizz?

October 9, 2006 by Scott Rosenberg

I don’t think the Google acquisition of YouTube is in itself an indication of dotcom-bubble-style thinking, as much of the mainstream coverage must inevitably suggest. YouTube is unprofitable — it hasn’t had much revenue to speak of at all till recently, from what I can tell. But it’s a great site and service and has a vast audience. It is, in short, much like Google was for the several years before Google stumbled on the brilliant revenue model that has propelled it to giddy peaks of valuation. Google wants to lead the Net video field; YouTube needs deep pockets to fund its bandwidth bills and build out the infrastructure to support its growth, and corporate help steering through the intellectual-property maze its business represents. It also needs a brain trust that has experience figuring out how to make money from a service with millions of users but no business model. That’s a good match.

$1.65 billion is a lot of money, but the tut-tutting chatterboxes are forgetting that, er, this isn’t cash changing hands, it’s stock. At Google’s current valuation this amount represents very roughly one percent of the company. One of the chief reasons companies like Google go public in the first place — aside from rewarding early investors and management — is so it can leverage market enthusiasm for these sorts of acquisitions. Google’s leaders know — or they ought to know — that its stock won’t stay over $400 forever. They’re doing the smart thing, playing their cards while their deck’s value is high.

No, neither Google nor YouTube is engaging in bubble-think — but watch for the onset of that condition in coming days and weeks, as the GoogTube deal gets turned into a valuation yardstick by hungry also-rans and competitors. “Let’s see, YouTube had X users and sold for $1.6 billion — therefore my company with 1/20th X users is worth at least $80 million!” That sort of talk is cheap. It was already beginning to turn up on the cover of Business Week, even before this deal. If and when people start investing on the basis of such logic, we’ll know that the awful era of TheGlobe.com has truly been reborn.
[tags]google, youtube, deals, bubble[/tags]

Filed Under: Business, Media, Technology

Code Reads notes

October 9, 2006 by Scott Rosenberg

Thanks to the good folks at Lambda the Ultimate, a programming-languages blog that I have subscribed to for several years, we’re getting a little more of a discussion going on The Mythical Man-Month. Several people have noted that few of us have the time to read a book a week for a discussion group like this. That would certainly include me (if I hadn’t already read a lot of the books already).

My plan for Code Reads has always been to mix up longer essays and books with shorter works. This week’s reading is Edsger Dijsktra’s “Go To Statement Considered Harmful,” which really isn’t long at all. I’ll post my thoughts tomorrow — I’m running just slightly behind this week — and we’ll see how it goes.

Over the next month, as we build a little more momentum here, I will try to post a longer schedule of topics so there’s a little chance to read more in advance — or, if you see a half-dozen topics but only one in particular interests you, you can cherry-pick it.

Filed Under: Code Reads

Fallows on Iraq

October 6, 2006 by Scott Rosenberg

We’d sent James Fallows my book because I knew he’d had a longstanding interest in software — how it’s created and how creative people use it — and so I figured there was a chance he’d enjoy it. I’d chatted briefly with him when he interviewed me last spring for an article he was writing about Chandler. But I’d never met him in person.

So when I learned that he was scheduled for a book-tour stop right here in Berkeley today, on the publication of his new Blind Into Baghdad, I rolled myself down the hill to the UC Journalism School for his packed lunchtime talk on Iraq.

If any American journalist has a right to shout “I told you so!” about everything that’s gone wrong in Iraq, it’s Fallows: his Nov. 2002 Atlantic piece, “The 51st State,” foretold the endless difficulties the U.S. would face in the wake of a successful assault on Saddam Hussein’s regime.

Shouting isn’t Fallows’ style. Instead he spoke forcefully and thoughtfully for 45 minutes. He argued that, right now, there are simply no good alternatives or “right” choices for the U.S., just varying degrees of bad options. The Democrats, he said, shouldn’t fall into the trap of offering specific proposals about what to do to fix things. Instead, they should point to the upcoming elections as a simple moment of accountability — a chance to offer a vote of no confidence in a president who says “stay the course!” and a vice president who says he’d do everything “exactly the same” if he had another chance. Then, if Democrats succeed in winning any share of power, they’ll need to devise an “adaptive” policy, since no one can predict how events will unfold.

Asked about how future historians will view the Bush administration, Fallows pointed to 2002 as a pivotal year, in which the nation started with a budget surplus, considerable national unity and unprecedented global support. Where did it all go? Why did Bush throw so much down the Iraq hole? Ten days after 9/11 the president delivered a great speech — then he did nothing in the months that followed to summon national resolve, develop an energy policy or express a broader strategy.

Questioned about the prospect of military action against Iran, Fallows said an attack would be “the most reckless military action in my lifetime. And I don’t think it’s going to happen.” The U.S. military is “100 percent” opposed, he said. He guessed that the Bush administration’s hints and leaks about possible military moves against Iran were part of a “crazy man negotiating strategy.”

This gave me a flashback to fall of 2002, when I’d returned to my high school alma mater for the celebration of its newspaper‘s centennial, and hosted an alumni panel of journalists and political insiders discussing the prospect of an invasion of Iraq.

The consensus of the panel — Robert Caro, Marc Fisher, Mark Penn, and Nicholas Horrock — was that the Bush administration was unlikely to deliver on its threats to invade Saddam’s Iraq. The sabre-rattling was a negotiating tactic — a big game of chicken.

Oops. That was one inaccurate consensus — composed, I imagine, of part wishful thinking and part underestimation of the Bush administration’s recklessness. I dearly hope Fallows’s guess on Iran isn’t rooted in a similar thought-mix.
[tags]James Fallows, Iraq, Iran, Blind into Baghdad[/tags]

Filed Under: Media, Personal, Politics

« Previous Page
Next Page »