June 30, 2004

Bad Name For An A Cappella Group

"Vowel Movements".

I'm just saying.

Posted by Curt at 09:03 PM

June 26, 2004

H. Clinton Interview

MSNBC - Hillary Clinton talks politics and future

Couric: “Are you sorry you gave the President authority to go to war?”

Clinton: “I don't regret giving the President authority. I regret the way he used that authority.”

I think an even better way to say it would be: "I don't regret giving the Presidency that authority. I do regret the way George Bush used that authority."

Posted by Curt at 07:26 PM

The Living Word

"...One of the great admonitions in the Good Book is, don't try to take a speck out of your eye if I've got a log in my own." - President Bush

hee hee.

If at first you don't succeed, strike the other cheek! Spare the rod, eye of a needle! Spoil a camel! Three Sixteen! Three Sixteen!

Posted by Curt at 02:45 AM | Comments (1)

June 24, 2004

Senatorial Candidate Sex Scandal

Daily Kos || IL-Sen: Ryan may drop out after all

So, there's this Republican running for Senate in Illinois, and he's embroiled in a sex scandal (have you noticed that the only time you see the word "embroil" is when is has to do with a sex scandal?), and he might have to drop out of the race.

Here's the thing, the sex scandal involved something salacious that happened between him and his wife.

I think the press has a long way to go. This episode - something to do with going to do a sex club and wanting to do some anonymous exhibitionism, which she wasn't comfortable with, so she left in tears - was something that they both wanted to keep private. It was in the divorce papers, which got leaked. In the absence of other allegations, which his ex-wife is not making, there is no reason to believe that this is something other a couple trying something out until one spouse hit her limit. It might have been her reason for divorce, but there's no evidence to suggest that this was abuse.

It would be one thing if this were adultery, but this was with his wife. It didn't break a marriage contract, it didn't break the law, and it wasn't supposed to be public. I'm a firm supporter of Obama, but this is a lousy continuation of a crappy pattern in politics and press.

Now, this is pretty funny:

But it does emphasize the whole moralization aspect of this - painting him as a sexual deviant, and leaving aside all the other questions of whether he abused his wife, whether he lied about it, etc. Those questions aren't relevant to this cartoonist. A great example of a feeding frenzy.

Posted by Curt at 11:13 AM | Comments (2)

Nader Justifies

Notes on the Atrocities has a review of Nader's justification of running, and how it starts to sound convincing after a while. He has two points - that we have more than two choices, and that a Kerry presidency may not be better in the long run.

I have a different reaction to those two points. The first one is easy, of course I agree that we "do" have more than two choices. It's in quotes because it really means "should have". But Nader's one of those types that believes we should pretend that something is true if we think it should be true. I would love to make an honest decision between Nader and Kerry. But it comes down to the voting system. The voting system does not allow it. If we're going to use a voting system, we have to submit to the voting system. We can't express our principles by accepting a system that doesn't have room for them. If we do, it's ultimately an unprincipled action.

His rebuttal to that point is the same justification as what's behind the second point - that without his presence, there isn't motivation to change. That we're not going to have change without fucking things up first. I really think that there is something about this belief that is central to Nader as a person. This pattern of causing damage in order to highlight the damage in order to create motivation to fixing the damage. Yes, I believe there are problems with democracy independent of Nader. But he's saying the only way to fix it is to follow his approach. I reject that wholeheartedly.

I would argue that weblogs and the internet have done a lot more for democracy than Nader did in 2000. I believe that this stronger press community can help fix democracy, and I don't believe that we need Nader to increase the odds of a Bush re-election in order to help us save it.

Posted by Curt at 10:56 AM | Comments (4)

June 22, 2004

Weblogs, Wikis, and Comments

Weblogs have always frustrated me because of the limitation of their form. What's important is getting our thoughts and reactions down. The whole creation-date reverse-chronology thing is kind of arbitrary, though.

Aside from being arbitrary, though, I think it is limiting. The ephemeral nature of our weblog thoughts gets in the way of heavier analysis, and serves as an obstacle towards building on our earlier thoughts. Furthermore, the comments on weblog entries could channel the input of the comment-givers in a more useful manner.

I'm planning on abstracting out some of the functionality of my own weblog / wiki combination, and I think I have the plan nailed down.

A weblog entry and a wiki entries are the same thing - a collection of text that is about something. Both of them have added features beyond that. Wiki entries are usually, but not always, editable by other people. Weblog entries usually, but not always, have comments afterward. Wiki entries usually, but not always, have revision history.

I believe both styles of entries should have all of those capabilities. (I personally prefer to use my wikis as way to update living documents of my own - I'm not so attached to the group-authorship part. But I like having the option.)

They are the same thing. A wiki entry may or may not be able to be edited by anyone. A weblog entry merely restricts its entries to be edited by only certain authors. But it doesn't have to.

A weblog displays in reverse chronological creation order. It doesn't have to, though. A wiki doesn't, but it could.

So, that's the first step - to see them as the same thing. We'll call them nodes.

Revisions

Nodes should have revision history. This is common for wikis - it should be common for weblog entries, as well. Some of our weblog entries are long essays, that require a lot of effort and work. We might want to revise them and update them.

I've already written a Revision History plugin for Movable Type 2.x . It works well, and you can see it working at the bottom of my revised weblog entries, or over in my "Living Entries" sidebar.

Revision history is already common for wiki entries, because of the chaotic group authorship. But, it is useful even for single-authorship environments.

Comments

A node is a collection of text. The node can elicit comments. Since there are multiple possible revisions for a node, these comments could eventually be incorporated into the node itself. These comments could be tracked, so as they are incorporated, they are checked off. If a comment is checked off, it would not display underneath the next revision. It would continue to display under the older version of the node.

It is true that group-authored wiki nodes already have comments put right in the node by their many authors. But there are advantages to having the comments be separate from the node - plus it enables comments by multiple users while the node itself may only be authored by a smaller set of authors.

So, comments would be attached to a revision. Each time a node is edited, someone can choose to resolve, hide, or promote a collection of those comments. Going back a version can let someone see the old comments, and if they want, address them or unaddress them as of that version.

A comment is attached to a revision of a node. When created, it stores what revision it was created against. And it has a "resolved" attribute that can be set or unset at someone's whim.

Flow

Imagine firing up your blogging tool (I use Ecto), and creating your node. You assign it a WikiWord, and you publish it. It's now a wiki entry. But you also click the checkbox to say that you also want it displayed in your weblog view, which displays your chosen entries in reverse-chronological order, by creation date.

You would also specify if, in the weblog view, you wanted it to always statically display the version you are writing now, or instead always display the most recent version.

It would be the same through the web. You're reading an old wiki entry, and you come across a WikiWord with no entry. You click on it to get the edit form to create the new entry. And like before, you choose whether or not to display it in the weblog view.

You could also select whether or not to allow this particular node to only be editable by yourself, or by others.

And, when editing old nodes, you would tell it whether to update itself in the weblog view to its most recent version. And, you could tell the weblog whether you want it to redisplay your node by your edit date. You would tell your weblog whether to display this node by its original creation date, by the date of its most recent edit (causing it to disappear from its old chronology and reappear in its new chronology), or even both.

The node would have revision history, and comments. The weblog view is just a way to view multiple nodes in reverse-chronological order.

Bundling Nodes

Finally, a node can contain other nodes. Why not? Perhaps you want one node included that has an ever-evolving definition of a term, inside of another node that discusses that definition.

The inner node could be a simple link, or, with a flag, could be set to display itself inline. I have already written a movable type plugin that does this for Kwiki wikis.

There are two ways to handle this, both of which require some disciplined coding. One would be to only one allow n levels of nesting deep, usually one.

The other would be to allow multiple levels of nesting, or to require the node to keep track of what nodes are being referred to.

Either would be necessary to eliminate the possibility of infinite loops.


I think the combination of these features would enable a far deeper level of analysis and collaboration among webloggers. Right now our weblogs are very biased towards ephemeral thoughts and reactive commentary. But if we stir in the ability to allow weblog entries to:

  • become more of living documents like wikis
  • continue eliciting commentary through the reverse chronological view
  • refer to other weblog entries for added life and wisdom-building
  • track isssues and suggestions in a rudimentary fashion through incorporating revision-based comments
then we will have a much faster-evolving community, in terms of both participation, and wisdom.

Posted by Curt at 09:42 PM | Comments (4)

June 21, 2004

Opposing Luntz' Talking Points

I write a fair amount here about political rhetoric and psychology. The granddaddy of Republican Rhetoric is Frank Luntz. This is the guy that puts together all the phraseology that is so infuriating because we liberals can tell that it's horsecrap, even though we recognize that it sounds good. It's convincing to way too many people out there.

Atrios got his hands on one of the latest issues of Luntz' talking points. Let's review some of it here.

Communicating the Principles of Prevention & Protection in the War On Terror

The overwhelming amount of language in this document is intended to create a lexicon for explaining the policy of "preemption" and the "War in Iraq."

However, you will not find any instance in which we suggest that you use the actual word "preemption," or the phrase "The War in Iraq" to communicate your policies to the American public. To do so is to undermine your message from the start. But those are not the right words to use.

Your efforts are about "the principles of prevention and protection" in the greater "War on Terror."

Please do not underestimate the importance of these rhetorical nuances. Let us understand the stark reality of public opinion which provides the context for this language research. Like it or not, the situation in Iraq is the poster-child for the War on Terror. It is today's ground zero. You must develop a better way to talk about Iraq in the greater context of the War on Terror.

Now, what are some good ways to oppose these talking points?

First, Luntz pitches us a big fat softball. Obviously, something about "preemption" doesn't work very well for their message. Why would that be?

"Preemption" implies stopping something that may or may not have occurred in the first place. "Prevention" implies stopping something that is otherwise inevitable.

"Prevention" is also a comforting word. It implies a guarantee. This thing that was definitely going to happen will now not happen, which means you don't even have to think about what it was going to be.

And we know that this is what they actually want. They want us to believe that something Will happen, that their policies will Keep it from happening, and that we don't have to Think about it.

Obviously, these attitudes don't serve an informed electorate. Now, our electorate isn't necessarily interested in being informed, but in order for them to make the right choice of who to vote for, we have to convince them not only that our candidate will solve the problem, but is in fact taking the problem seriously in the first place - which means exposing the other candidate as someone who is not taking it seriously.

So, we say the part of their argument that they are trying to leave unsaid, and then we show how it's ridiculous. It's like the opposite of a straw man - we're not propping up a ridiculous argument that our opponent isn't making. We're exposing a ridiculous argument that our opponent is making.

Their first implication is that they are preventing something. Point out that they have never actually identified what it is they are preventing - they've never shown that something was certain to happen, that is now less likely to happen. Ask rhetorically, "What did invading Iraq improve for us? What are we safer from? What were we in danger of that we are not in danger of anymore?"

The other part of their ridiculous argument is that you can tell that their only hope is to keep Iraq connected to the War On Terror. This is because they are extraordinarily vulnerable to the idea of Iraq being a distraction to the War On Terror. They cannot let this idea take hold of the American people.

Invading Iraq protected us from nothing. Invading Iraq made us more susceptible to Iraq-sponsored terrorism, not less. We were winning the War On Terror, but the decision to invade Iraq distracted us from that goal, and now we are in danger of losing the War On Terror. We have fallen seriously behind, and it is vitally important to our nation's security to start implementing policies that will reduce the threat of global terrorism.

More Luntz:

What Matters Most
  1. "9/11 changed everything" is the context by which everything follows. No speech about homeland security or Iraq should being without a reference to 9/11.
  2. The principles of "prevention and protection" still have universal support and should be addressed prior to talking about Iraq.
  3. "Prevention at home can require aggressive action abroad" is the best way to link a principle the public supports with the policies of the Administration. "It is better to fight the War on Terror on the streets of Baghdad than on the streets of New York or Washington."
  4. "Terrorism has no boundaries, and neither should efforts to prevent it." Talk about how terrorism has taken the lives of the British, the Spanish, Italians, Germans, Israelis, innocents from all across the globe. Remind listeners that this is truly an international challenge. "Americans are not the only target."
  5. "The world is a better place without Saddam Hussein." Enough said.
First, go ahead and experience the willies, because this certainly warrants it.

One great way to oppose this is just to quote item #1, and attribute it to Frank Luntz' GOP Talking Points. It proves there is a deliberate attempt to link Iraq to 9/11.

But the GOP has owned 9/11 for too long. 9/11 meant something else, other than the need for carpet bombing, and it's not convenient to the GOP. A good Democratic speechwriter could weave in these themes and reclaim 9/11.

9/11 was a day when an enemy thought they would break us, but instead they brought us closer together. On the day of 9/11, two towers came tumbling down, and instead of everyone in New York City hiding in their houses, they lined up around the block to give blood. Our citizens spilled blood, and we lined up around the block to give more. There is nothing that symbolizes America's strength to me more than that image. I know that nationwide, we all started valuing human connections a bit more after that day. Overseas, they see us as imperialists, because of our GOP policies. But our true identities are that of the scrappy underdogs. Ingenuity, individuality, and above all, heart. Terrorists can try to hit us, and they may hit us harder than they've hit us yet, but they're still destined to lose, because they don't understand us.

As for "prevention and protection", the relevant question is still "from what?" What did invading Iraq secure us from? See above.

Point number Three is a complete platitude. As with most platitudes, it's best to either ask for an example, or labor to come up with one and show how they don't work. Try to explain some sort of American disaster that was likely before invading Iraq, and isn't likely now. As for "Better Baghdad than Washington", ask for their evidence that invading Baghdad prevented a planned attack on Washington.

As for number four, just agree with it. There's nothing wrong with the point. But if it's used in defense of invading Iraq, ask again what terrorism invading Iraq secured us from.

And for number five, agree wholeheartedly. But then ask, "But is the world better off with Saddam Hussein being replaced with two hundred Osama bin Ladens?"

All of those points are reaction points, however. The point to use to get out in front is to argue for better protection from terrorism, to make the point that invading Iraq has made us less safe from it, and that it was a distraction from the War On Terror.

Remember, with Bush, the point isn't that he lied. Republican voters will defend a lie if they see it as being in service to an honorable agenda. The point is that Bush was wrong. That is what is unforgiveable to GOP voters. Bush followed his instincts on what would make us safer from terrorism, his instincts were grossly wrong, and we're going to pay for it if we don't make changes now.

Posted by Curt at 07:43 PM | Comments (5)

Clinton, Bush, Lies

"When Clinton Lied, No One Died."

I saw this quote today and, to my surprise, it annoyed me. There are times when the partisanship gets in the way of our goals. This is one of those red meat statements - throw it to the base, watch them salivate. It feels good when we want to put blinders on, but it isn't so great for convincing anyone.

There are probably quite a few people on the right these days that are laboring to make the current state of affairs make sense to them. Repeating statements like the above isn't going to help matters, because it's relatively see-through. For all of Bush's flaws, we can't exactly argue that his goals were to go off and kill him some American soldiers. This isn't the case where he made some careless lie, and then whoops, some soliders died.

The point is that Bush had a vision. Bush justified it with lies, but sending our soldiers to war wasn't some sort of negligent accident on his part. It was a design.

The point is that Bush's lies, infuriating as they are to the base, are still only smokescreens to what the real issue is. In other words, his lies aren't actually the point. Focusing on his lies, in my opinion, doesn't help to beat him in the election.

What matters is that Bush was wrong. And he's not backing down from how he was wrong, which is a problem for the future, and why he must not be re-elected.

Bush justified Iraq by saying that Iraq had weapons of mass destruction. Overall, Iraq didn't have WMD. Now, folks from all sides of the political spectrum were wrong about this, to various degrees. But Bush overstated, and acted like this reason alone was reason enough to behave as we did towards Iraq. This is a style of lie, in that it's acting in bad faith.

But, it's beside the point, because Bush had a real reason for invading Iraq.

Bush justified Iraq by saying that Saddam was a ruthless tyrant. Now, this is obviously true, but it's not like a ruthless tyrant is an automatic reason for the U.S. to go to war to topple that tyrant. Again, it was a style of lie, because he was acting in bad faith.

And again, it's beside the point, because Bush had a real reason for invading Iraq.

In order to oppose Bush responsibly - and reach the swing voters - you have to oppose him on the merits of his case. It's not sufficient to focus on the tortured justifications, because they are distractions. People that support Bush are used to thinking in terms of agenda, not truth - they knew that these justifications weren't the real reasons to go to war. They just saw it as an exercise of power, to fulfill an agenda. They recognized that Bush had an agenda, and they believed that agenda was worthwhile. Screaming and crying about Bush's lies won't matter much to these people. Attacking the merits of his case, however, will.

Bush believed that invading Iraq would make us safer from terrorism. That's really what this all comes down to. You get these neocons drunk, and they'll defend this point on the merits. Richard Perle will all the time, even though they try to get him to shut up about it. They believed that toppling Iraq would lead to a respected American bastion of Democracy right in the middle of the middle east, that the rest of the middle east would be cowed, and that this position of American influence would either convince the terrorists that they could never win, or would convince surrounding governments to crack down on terrorism or they would be invaded too.

It's a gross miscalculation, it's incompetent, and it doesn't take a highly advanced analysis of the Arab people to understand why. There were many, many people who believed that this was an incompetent idea even before he started - senior-level officials that knew a lot more about middle east dynamics than the administration did. They either didn't speak out enough, or the media was intimidated enough to not give them ink, but it's a large part of the national dialogue that has not yet been uttered, and needs to be.

For all the progress that we've made over the past year in furthering our voice and making our protestations reflected in the mainstream press, there are still many examples of ludicrous bully logic that haven't been challenged. One is that the "islamic extremists" hate us because of our freedom. For one thing, that an inherently racist attitude. But it's also self-defeating because it gives our enemies too little credit, which keeps us from being able to understand them, which keeps us from being able to effectively oppose them.

Our entire war has come from simplistic, incompetent bully logic like this. Bush believes that invading Iraq makes us safer from global terrorism. All we need is a strong, disciplined message that explains, No, Georgey, it doesn't quite work that way, as you can see, and educate the rest of the population. You look at occurrences of terrorism. You look at AQ visibility. You look at troop movement - where we took troops away from to fight Iraq. You look at opportunity cost. You look at Iraq's attitudes about America. And then you ask, are we safer from global terrorism? Safer than if we hadn't invaded?

Ignore the lies. They are transparent to everyone, anyway. They're nothing but a distraction from how ridiculous and incompetent Bush's actual agenda was.

Posted by Curt at 02:12 AM

June 20, 2004

Debate Seems Forced

MSNBC - Frist: Senate debate on gay marriage forced

I'll say it's forced! (Love those ambiguous headlines.) For more, check this article on how the GOP is trying so darn hard, but just can't seem to get people upset about this yucky satany gay marriage thing.

Posted by Curt at 08:14 PM

Journalism Commandments

Big, Left, Outside: The Ten Suggestions of Authentic Journalism

Al Giordano has a draft list of ten guidelines for Real Journalism. They're thought-provoking. For a career centered around these aims, I'd probably want to be a journalist, myself.

Posted by Curt at 07:43 PM

Programming and Information

For those of you who have been reading me for a while, you know that I've been slammed with programming work lately. One of the things that has been nice about being so busy is that I've developed some new opinions about the best way to program. I decided I'd write about it. I'm going to try to keep it on the level that non-programmers can understand. This will be a good way to see how a good programmer needs to think, and how those thinking styles can be applied to other parts of life.

Almost all of my programming has to do with the web. This is one of three main families of programming. (I'm being dreadfully simplistic and leaving a lot of things out, but it's how I'm choosing to frame it, and you'll just have to deal with it. Actually, that's kind of like programming right there!)

The first family of programming is application programming. For instance, anything you double click on to start. You interact with it, and then you click "Quit" to quit it. While you are using this program, it is always on, and always listening. When you click something, it responds instantaneously. The entire style of programming is based upon waiting for and listening to these "events". I don't do much of this kind of programming.

The second family is straight one-off programming (my term, not an academic term). You have one task you need to accomplish, you invoke the task, and then it's done. It runs once, has no interactivity, and then it's completed. I do some of this, but it's more the kind of programming that a system administrator would do.

The third family is web programming, kind of a blend of the other two. It's everything that happens when you click the Submit button, and then some. What's odd about a website is that your experience of the website might encompass several clicks, but the program you are interacting with does not run when your web browser isn't spinning. Each time you refresh a page, the program starts up, runs, and then completes and forgets everything. In order for the website to remember who you are from hit to hit (like when it knows what your username is), we the programmers have to do all sorts of complicated things involving saving little bits of information either in your browser (cookies), in a database on the website's side, or (most usually), both.

So, what I'm going to talk about is architecture. How should a programmer architect a site to make building websites easy?

Let's start with bad ways to do a website. Here's how a non-programmer sees a website's functionality.

CrazyProgram

This is a completely understandable way to visualize the workings of a website when you're not a programmer. However. Let me repeat that. This is a completely understandable way to visualize the workings of a website when you're not a programmer. Unfortunately... there are programmers that view websites this way too.

Here's how the Evil programmers do things. They start with the link, they're told it needs to do something, and it needs to end up drawing a page. So the programmer sits down, they receive the link, and they do every single little task in a step-by-step manner. Maybe the top of the page doesn't have any interactivity, so they'll just draw the html there. Then it needs to display the member's username. So they'll query the database for the username, and then they'll print it out. Then they'll load a couple of graphics, then they'll do a couple more database queries, etc.

Multiply that by twenty pages for a small website. And now let's demonstrate why these programmers are Evil, and why they also usually tend to have poor social graces, and why they hate project managers.

Pierre sashayed into the room, dashing as always. He adjusted his cufflinks and gingerly approached Rufus, who was rolling rubber cement into tiny little balls and throwing them at the secretary's hair.

"I say, Rufus?" asked Pierre brightly.

"What." Rufus glowered up at Pierre. It wasn't a query, it was a statement.

"I wanted to tell you what an excellent job you did on the website project! We were only two weeks late. True, it was initially estimated as a one-week project, but - "

Rufus snarled. "That was your fault for not telling me about the..."

"Quite right! Quite right!" A bead of sweat broke out on Pierre's forehead, which he immediately blotted with his monogrammed handkerchief. "But the site is delivered now, and the client is happy, and you did a wonderful job."

"Yes." Rufus didn't even bother to nod.

"The client did have one question. At the bottom of each page, where you list out the user's current five favorite cds? The client originally wanted each cd to show the user's rating of the cd as well - "

"WHAT?! No one told me that!" Rufus' nostrils quivered.

"Oh, I'm sure it was in the spec, I have it right here in version 2. At any rate, it seemed like a minor change, can you do that before you leave?"

"NO, I can't do it before I leave! Pierre, I can't be expected to do these large changes at the drop of the hat. I swear, I am surprised this company hasn't gone out of business yet, when people like you are the ones making promises to the client. Your mouth is writing checks that your brain can't cash, Pierre. Do you even UNDERSTAND what a large site this is? Those cd listings are on EVERY SINGLE PAGE. I have to go through every page of the website, look up the rating of the database for each song, and write it out. Can you count, Pierre? That's twenty pages times five cds. What's twenty times five, Pierre?!"

Poor Pierre. His handkerchief was probably soaked by the end of that tirade. Who's wrong in this scenario?

I drew it broadly so it should be obvious that Rufus is wrong. Rufus also has some other things seriously wrong with him, as well, but that's beside the point and I'm not sure how those qualities snuck in there. Hmm. Anyway, thank God Pierre didn't tell Rufus that the site also needed to be translated to Spanish!

When programming, it is important to take common functionality out, and create subroutines out of it that several places can call. This is Programming 101, even bad programmers know how to do this. But it is interesting that a lot of programmers stop there, and do not apply the same style of thinking to architecture and processes.

On a very abstract level, every interactive website goes through one flow pattern:

  1. It retrieves information
  2. It does stuff to and with that information
  3. It displays some information
Here is another way to look at it:
MVCProgram
Here's one more way to look at it. There's stuff. There's stuff that you do with that stuff, and then there's how you make the stuff look.

Sometimes I like looking at it as nouns, verbs, and adjectives. In any program, you are going to have things like Members, or Customers, or Products, or CDs, or Articles, or WeblogEntries, or Recipes, or Activities, or whatever. These are nouns. If you've got a website that has to do with customers buying cds, you are going to have Customers and you are going to have CDs, and that reality just isn't going to change very much.

What is going to change is what you do with them. Sometimes you might want the Customer to have a new CD. Or you might want them to rate it, or buy it, or destroy it, or compare two cds, or trade them with another customer. These actions are limited only by the imagination of Pierre. These are verbs. They are constantly in motion, always changing, and Pierre needs his change fast.

Finally, once you have the customers collected and the cds rated, you need to show the page. You've got all the information loaded up, the processing is done. All that's left is deciding how to make it pretty. There's no real functionality here, it's just dressing. These are the adjectives.

This is why it's very important to keep these three layers separate. Nouns don't change very much. A customer might get a middle name, but he's not going to turn into a llama. Verbs change all the time - there are always new features. And the adjectives can change even when the features don't. What if Pierre wants everything to be exactly the same, but he wants it in a lighter shade of blue? Or, in Spanish? They are still customers, they are still cds, and the features are the same - it's just in Spanish now. It shouldn't be necessary to reprogram the site. Just drop in the translation.

If you need to change the display, you don't want to touch the featureset. If you need to change how a feature works, you don't want to touch how the data is stored. This is how bugs happen. This is why Rufus is a rude creep, because he didn't think ahead. He knows his abilities are poor, but he's not taking responsibility, so he bullies others into thinking the flaw is on their side. He might be President someday, but he's not a good programmer.

Well, I haven't really gotten into the stuff that I've learned for myself recently (which has to do with finding the right mix between OO inheritance and standard MVC encapsulation), but this is a good stopping point. I hope this was interesting, and I hope you never have to pick rubber cement balls out of your hair.

Posted by Curt at 01:04 AM

June 19, 2004

More News Visualization

stamen: google news is so much fun to play with.

Posted by Curt at 08:28 PM

June 18, 2004

Pop Quiz!

georgeryder

Winonah Ryder or Boy George?

Posted by Curt at 07:21 PM

June 16, 2004

Rumsfeld Ordered Hidden Prisoner

rummybooks

Hmm. Something fresh. Something new. We'll see if this leads to something big, or will just be something passing, something ephemeral...

Posted by Curt at 04:43 PM | Comments (2)

I'm So Healthy!

Being a vegetarian isn't all bad when you have a corrupt government.
Posted by Curt at 01:25 AM | Comments (1)

Psychology Of Bush

Salon.com Books | The inner W.

Salon has an article about a book that psychoanalyzes Bush from a distance. Now, that's enough to raise an eyebrow right there, but I have to admit it is pretty entertaining to read.

One thing that captures the imagination is the idea of Bush being taught that all negative emotions are evil, leading to him projecting those qualities on others and then punishing them for it. It ties in quite nicely with the perception that I've written about of Bush being a bully. But, the intriguing part is the idea of him projecting because he's trying not to feel that way about himself.

One of my basic beliefs is that when we do too much of that, it comes back to bite us. It's this mysterious part of life - we're going to learn our lessons one way or another. The harder we try to resist them, the more damage they could do when they become unstoppable.

If that's what is happening here, Bush is engaging in a Herculean effort to avoid it. I mean, this is heavy stuff - he's staking the presidency of the United States on his hypothetical self-delusions. If the facade crumbles and the reversal rocks his world at the wrong time, it could hurt a lot of people besides just himself.

Or, it could just be entertaining. Like the image of Bush bull-rushing Kerry onstage at a debate when Kerry calls him a mere shadow of his father.

Posted by Curt at 01:20 AM | Comments (1)

Reagan And Bush

In hindsight, I think the political impact of Reagan's death was a net loss for Bush.

There was a bit of fanfare when Bush left to go overseas - working on tough foreign policy issues, where the voters liked seeing him, accentuating the Republicans' (supposed) strength in foreign policy, etc.

But the press got diverted from that due to Reagan.

I honestly think the Bush bounce would have been greater had it not happened at that time.

Posted by Curt at 12:00 AM | Comments (1)

June 15, 2004

V.P. Prediction

Here's my prediction for Vice President. Kerry's going to tap Gephardt. There will be much grousing.

Then, however, it will leak that Gephardt only intends to be the V.P. for one term. After which there will be this perpetual tantalizing slot to fill in 2008... perhaps, by one H.R.C...

Posted by Curt at 09:01 PM | Comments (1)

Webloggery

Oh my doodness. You can tell I've been really busy lately - my weblog colulmn is shrinking. Things at work are finally slowing down a bit, though, and it's quite a war story. We should start seeing some new output soon.

Posted by Curt at 06:07 PM | Comments (1)

June 13, 2004

Real Estate Hunting

"Oh, you're here! CHRISSY! WILL YOU GO GET THE STINK OUT OF THE BATHROOM?!"
Heard from a homeowner yesterday as I showed up to see her house that was for sale.

Posted by Curt at 11:30 AM | Comments (3)

June 08, 2004

Gay Marriage Recall Fails

There was an effort to recall two of the county commissioners that approved gay marriages in Portland. Luckily, the recall failed.
Posted by Curt at 12:24 AM

June 07, 2004

Unwriting

Well, I managed to get a little bit of aggression out by picking on some wingnuts. That was fun.

Things have been so busy lately - averaging over 40 billed hours a week over the past six weeks, which feels like a lot, for freelancing. At least for my tolerance levels. I'm working on a project for citibank (through a vendor) that is kicking my ass.

There's a whole list of articles that I have written for this weblog, in a parallel universe that wasn't so busy. There was the examination of different software architecture styles in web building. There was the discussion of the three different families of web text. There were all the brilliant political thoughts that I would have had, but can't put my finger on right now because I'm too invested in how to avoid using an Oracle view that joins twelve tables. Oh, the tragedy of it all.

Posted by Curt at 11:38 PM

June 06, 2004

Randi Rhodes and Treason

I'm bumping up a comment from the bowels of my weblog, as well as my response.

I wrote an entry a while back complaining about Randi Rhodes. I was venting at the time and have since relaxed my opinion about her, but the link got shopped around the web a bit, and people have started commenting.

So, here's a comment that was left today, by a "Chattipaula".

I've discovered a true treasonous women on the Liberal radio station, Air America, her name is Randi Rhodes and I've dubbed her "Baghdad Randi". Like Tokyo Rose and her counterpart Hanoi Jane this Randi is spewing hatred for this country and our president during a time of war.. It never ceases to amaze me how the liberal left has nothing but hatred for this country. This country, in their eyes does everything wrong from taking the country from the Indians to using too much of the earth's resources. This terrible country, America, is where these hate spewing Liberals make their money and drive their SUV's and have the freedom to babble out their hateful rhetoric. I've heard enough and I'm trying to circulate this around the Internet. This radio station, which is a Bizarro copycat of conservative radio, will die off soon enough but a lot of harm can be done in the interim. There is no substance, originality or entertainment value to this station. Listening to it is like holding your hand closer and closer to the flame, until the pain is unbareable, and you stop. So do your thing and forward this to all. Remember end Air America, let the clean air in.
My response - every time I see one of those trains of thought that appears genuine, I'm fascinated. There's plenty of that rhetoric coming from GOP politicians and columnists, but in those cases it's almost always spin and an attempt to manipulate public opinion, to serve some sort of agenda - they don't actually believe it. But once in a while someone repeats it from actually believing it, and it's fascinating.

Maybe I'm surprised that that entire comment was written with only one obvious spelling error. Because usually, that line of thought is only held by people that are stupid enough to be conned by it.

I honestly don't know the right approach to dealing with people that believe this horseshit and also seem reasonably intelligent. Do you just patiently explain that just because the U.S. manages to do something, it doesn't mean it's the right thing to do? Of course the U.S. does good things, but it's also capable of doing bad things, and sometimes it does. But what kind of moron actually believes that just because the U.S. does something, it means by definition that it is good? How can you reconcile that attitude with the ability to spell correctly?

My mind is still boggled.

Posted by Curt at 02:43 PM | Comments (27)

June 05, 2004

Reagan Died

Well, Reagan died. I'm not all, like, "good" but I'm not all, like, majorly traumatized, either. Reagan doesn't look all that bad compared to Bush. I also sort of like the rest of his family.

So much for the conspiracy theories of them bringing out the news right in the middle of the Republican convention.

Political effect: It does seem that Bush has managed to engage the marketing machine for a little mini-rally. Something about the Chalabi and Tenet stuff makes it feel like some Bush opponents might be overreaching a bit. Plus, I think this "fence-mending" tour might relieve some of the on-the-fence voters a bit. And this Reagan stuff will get some wingnuts to write all sorts of flowery masturbatory essays about how great they are.

But I don't think it will end up giving Bush any boost to speak of. If anything, the contrast will make Bush look worse.

The mini-rally will last right up until the next thing... which might be The Plame Affair.

Posted by Curt at 02:34 PM | Comments (1)