It’s cool to be evil

I think Dave’s got the right of it: kicking Google, like kicking Wikipedia, is the new cool. Oh, I have my doubts about both; but then, I’ve always had my doubts about both. Even when the lemmings flocked on the side of do no evil.

I do want to point out, though that my Practical RDF book is in Google’s book search. As is Unix Power ToolsEssential Blogging, and Developing ASP Components, 2nd Edition. That’s a lot of online content when you consider this is in addition to the millions of words, code how-tos and examples, and photos I’ve published online: here in my weblog, at several online magazines, and up on Flickr.

Luckily there aren’t more people cheap like Steve Rubel, or I wouldn’t be able to afford to continue posting to this weblog, publishing my photos online, creating and giving away code, as well as answering questions and helping folks when I can.

I wonder, then, who it is that is supposed to change? Google for publishing the bits from the books? Or Ruebel for not spending a dime on content that helps make people like him famous?

Programming Languages

Mystery solved

A month or so ago, I wrote that I couldn’t access my weblog because when I tried, nothing showed. My host had upgraded to PHP 4.4.1 and it broke something in the application, but what we couldn’t tell. My host said they could find nothing in the logs to explain the problem. In the meantime, they backed out 4.4.1 on my machine, and haven’t upgraded it back.

Yesterday, I heard from a weblogger who is using the semantic web plugins I created for WordPress: all of a sudden, he couldn’t access his administration pages. However, in his case he was able to find the problem in his error log:

PHP Fatal error: Maximum execution time of 30 seconds exceeded in
…/wp-content/plugins/delSetup.php on line 31

I didn’t see this error message in my error logs, but his email gave me a key to the problem. The line number indicated pointed to the following lines in the plugin:

reset( $del_menu_items );
while( $arr = current( $del_menu_items ))
while( $submenu[’metadata.php’][$index] ) $index++;
$submenu[’metadata.php’][$index++] = array(__($arr[’title’]), 5, $arr[’script’]);

The culprit is the code traversing the submenu and testing to see if it exists. Seeing this tiggered my memory about one of the first bugs issued for PHP 4.4.1 that had to do with next and current array functions, and other array problems introduced with the security fix. These have since been fixed in the CVS source, but not issued as a new release.

The code used in the plugin is a copy of code that others have used to add administrative menu extensions to WordPress. Further checking showed that WordPress now has functions to manage menu additions starting in WordPress 1.51 and 1.52. Examining the function code, there shouldn’t be any problems with PHP 4.4.1, so I’m changing my plugins to use the new functions.

Note, though, to other WordPress users: if you’re using a plug-in that’s extended the administrative menus, check with the creator to see if they’re using the old hack or the new admin menu functions. If they’re using the old hack, disable the extension until new plugins are released. If you don’t and your ISP upgrades to 4.4.1, you’ll be dead in the water.


My precious

I wasn’t expecting any Christmas presents, as we had all agreed we wouldn’t exchange any this year. It was both a surprise and delight, then, to get a box of chocolate covered cherries (a favorite) in a pretty Christmas bag with a card containing a check to be used for an iPod.

My finances are such that I would not have bought an iPod for myself, but I have been lusting for one. There are other music players that cost less and probably have wider functionality, but I’m fond of iTunes (yes for all its evil copyright ways) and I loved the integration between the two. Besides, Dave Winer’s had such troubles with his–I wanted to be helpful; to be able to tell him what he can do with his iPod.

One problem to work around is the new, fifth generation iPods ‘recommend’ USB 2.0 and all I have on my laptops (PC and Mac) is USB 1.1. After considerable research, I found this thread at the Apple forum that talks about USB 2.0 cards, and decided on the Belkin USB 2.0 notebook card. I bought it at the local CompUSA and tried it out last night with my Nikon D70 (sort of a USB 2.0 device), and it seemed to work fine. Time, and a *first synch between computer and iPod will tell.

It was interesting reading through the thread at the forum. Many loyal Apple customers feel burned by the fact that 5G is USB 2.0 rather than the ubiquitous Apple firewire:

From someone who doesn’t understand any of this: Is the bottom line that even with a newer operating system, my iMac800mhz (no usb 2.0) -a mere 2 years old- is not compatible with the 5th generation video ipod? This is how Apple rewards product loyalty?

Many seem to see it as a form of Steve Jobs megalomania:

Here’s something to make you just a little more angry: I was told that the only reason for the removal of FireWire from the 5G iPod is that the internal connector was the last obstacle to shaving a few extra millimeters off the thickness of the case from the 4G models, and Steve Jobs was adamant about making the “it’s smaller than ever!” claim at his last keynote. Thus, screw us. (Caveat: I can’t prove this accusation is true. It may be apocryphal, but I have to admit it sure sounds like a Steve sort of demand, and I’ve been unable to come up with any other logical reason why FireWire support should have been yanked in the first place. Even USB 2.0 is objectively inferior to FireWire in a whole host of ways.)

> This is how Apple rewards product loyalty?

You probably didn’t see it, but not long ago Saturday Night Live aired a skit where Steve Jobs held a keynote and introduced three new iPods in the span of about a minute and a half. Each of the new iPods made the one introduced seconds earlier an utterly obsolete technological dinosaur, and the last one was was literally invisible, yet somehow managed to hold five million songs and every photo ever taken by mankind.

(Apple’s obsession with minute tolerances extends even to packaging–the box the iPod came in, this morning, was an amazing example of packaging.)

Steve Jobs is just reflecting the behavior we see in other geeks who made it big in the last few decades: so how do I top the miracles I’ve produced in the past? It must be dehumanizing to continually have to pull miracles of technology out of one’s pocket.

Anyway, I’ve never been one to be over loyal to any vendor. I was disconcerted when I realized my new iPod wouldn’t work well with my older Powerbooks, until a friend pointed out about adding a USB 2.0 card (Note: I forgot the card slot even existed). However, I never expected that Apple would adjust all their ancillary gadgets to work with my machines. If the company released a version of the operating system that wouldn’t work, I would be peeved, as my machines are not that old. But I gather there were people with B&W G3’s questioning how to get the iPod to work with their machines–leaving the rest of us asking how they managed to get OS X 10.4.3 working.

But I digress. I went back and forth on color when ordering: black or white. White is traditional, but I’ve been around the block for a while and white didn’t seem to fit me. Besides, there’s something sleek and panther like about the black. iNoir.

I also debated with myself whether to pay the extra 100.00 for another 30GB of space. In the end, needing to purchase a USB 2.0 card and a separate power adapter convinced me to go with the smaller. Still, there was this inner coder in me that had a hard time letting go of the extra 30GB.

I mentioned my dilemma to my roommate. He asked do I really need to carry 60GB of songs around with me.

“Spacesss. Ssshhelleee needsss spacessses!”


“How many songs do you have in your iTunes now?”


“Taking up how much space?”


“Does that include any video? What if you exclude the video?”


“How many songs can the smaller iPod record?”

“About 7500.”

“You don’t have that many songs. How many does the larger iPod record.”


“15,000! You really think you would record 15,000 songs?”

“I might.”


I started to say I could fill the space up with podcasts, but stopped myself before I was completely lost; realizing that I was under the effect of the iPod.

I bought the smaller. However, since Apple provided the option, I did have it engraved. The end goes something like…

…one to bring them in, and in the music bind them.

My holiday treat. My iPod. My preciousssss.

*Update: Just before I posted this, the friendly FedEx man delivered my iPod. It was ordered on Christmas Day, and shipped (for free) from China. I guess it was not a slow boat after all. I plugged it in, it synched in what seemed like seconds, and now I’m listening to “In the Year 2525″. Anyone remember that song?

Dave? Dave? I’m ready to help you now, Dave.


Obliquely yours

After the last post, Zoë begged pardon and informed me that …cats are never assholes; it must be something indulged in by lower life forms, like humans. And dogs.

I told her the post was about tolerance, and the importance of humor and having a sense of perspective. She rolled her eyes at me and said, why didn’t I say so. Well, I mumbled, because I’m a writer and writers never write directly when they can write obliquely.

She then let me know that cats never do anything obliquely. Seeing the incredulous expression on my face, she haughtily sharpened her claws on my office chair, yawned, and looked at me. Oh. She then told me to go away and do it right this time.

Or else.


Zoë says Have a Very Merry Christmas!

Or else.

Photography Places


I renewed my Botanical Garden subscription as a Christmas Present to myself. I wasn’t going to renew it; I had planned on trying new walks next year. But the Botanical is a place of sanctuary for me — especially in the winter when I can have the place to myself.

Yesterday, though, there were dozens of parents and grandparents out with children to see the train show. I grabbed a few photos, though not many. The room was crowded, the lighting not great, and I didn’t want to block people from the displays.

I did want, so much, to get a picture of a grandfather showing his grandson the model trains. He would point at one coming around a corner or a building, and the child would stand their bug eyed with wonder; the image of the two of them, heads close together, was a visual joy. I only caught them indirectly, though, when taking pictures of the entire display. Like the natives who believe you steal a person’s soul when you take their photo, you do take something when you intrude on an intimate scene, camera ready to selfishly rip it away.

Instead, I’ll get my photos of small trains and fluffy cotton hills and tell you about the grandfather and the grandson. And the asshole.

Christmas model trains

The room was crowded, and the adults who came to see the show stood back from the table so that those with kids could get a better view. There was one woman, though, part of a an older couple, who seemed less interested in seeing the show and more interested in ensuring others did not.

She planted herself along the edge of the table and moved down the side, brushing children out of the way, complaining about how warm the room was, how tacky the display was and responding indifferently when her husband pointed out some novelty or other. She stepped into the way when people were taking pictures, and had a face like Jim Carrey’s Mr. Grinch–but less green. Which was too bad, in a way, as at least a green face would have added some touch of holiday spirit.

the train 2

She wasn’t the only person not interested in the display and along for the ride. But where others were patient indulgence, she moved and acted as if the room, and the people in it, were responsible for her present state of misery.

I remember being concerned that she would ruin the show for others, because people like her can. But I could see, across the display from her that when she passed, people would fill in the space left in her wake, children close to table, parents bent down (just to help the children, you understand), smiling adults in the back (discovering that there’s also a train running along the back, among the Christmas flowers — just for them).

trains are for boys, eh?

After the show, I walked around the grounds. It was a nice day yesterday — warm enough for Spring, though with dead things. There wasn’t much to photograph other than the greenhouse flowers and an oddity now and again.

A young couple was at the main pond and the man was breaking up chunks of ice with his foot and they were tossing them out onto the ice. I stopped to watch because they were having such fun. However, my presence made them hesitate and I could see they were wondering if I was going to get upset at them for tossing the ice about. I imagine if I had been an asshole, like the woman at the train show, I would have puckered up and looked on them with disapproval and ruined what was nothing more than an a moment to have a bit of winter fun.

Instead I called out to them to never mind me, and to continue; after all, it was only ice and they weren’t hurting anything. I eventually walked over to chat with them and watched as they had fun with the ice. They even offered me a chunk if I wanted to try it, which was nice of them.

ice on ice

Yesterday was a good day to walk about the Gardens–few distractions. I spent the time thinking about the lessons I’ve learned from this year that I want to take into 2006. During my musings, I found I could reduce them all to a simple two-part philosophy.

The first part is: The world is full of assholes.


This is a very important philosophy to have. The world is full of assholes. Contrary to how we may feel at times, we’re not asshole magnets and they’re not gathered solely around us–assholes are everywhere. As such, we’re never going to be free from them. We therefore have only one recourse and that’s accept that assholes are an inevitable fact of life.

You better not shout, you better not cry, you better not pout–I’m telling you why…because the world is full of assholes.

The lover that has left us is an asshole. The boss who has fired us is an asshole. The middle aged white guy who holds a technical conference and doesn’t invite women? Asshole, big time.


The politician who doesn’t vote the way we want is an asshole; the crooked judge, the bad cop, the robber, the killer, the racist, bigot, sexist, and molester–all assholes. But so is the clerk at the store who crushes our eggs, or the dog owner who doesn’t use a pooper scooper; not to mention the person who innocently takes the parking space we wanted.

That woman at the train show: asshole. Me at the pond–not an asshole. Yesterday.

Keep the world is full of assholes firmly in your mind. If every job we lose we tear ourselves up with insecurity over the rejection, we’ll die young. If, in the loneliness of our beds, late at night, we lay sleeplessly, listening to echos of “if only, if only”, we’ll go mad. We are not walking around with a cosmic “kick me” sign pasted to our butts. Or if we are, we’re all wearing the same sign.


What do you do with an asshole? You catch them, you cure them, you cage them. You make them clean up, grow up, shut up. You stay and fight, or you walk away. Most of the time, all you have to do is give them a few minutes. Whatever you do, you take away their power.

touched by light

At the train show, the people had two choices in how to react to the lady who was an asshole: they could have focused on her behavior, or they could focus on the show. If they had focused on her behavior, the show would have been ruined. As it was, she was nothing more than a minor nuisance, perhaps even someone to pity.

But enough about her: look at that train coming around! Can you hear the whistle?

the train

We seldom have an opportunity to change people. We seldom have an opportunity to agree on what needs to be changed. I may think a person is being an asshole because they see everything around them as a marketing opportunity; they may think I’m an asshole, because why should I care what they think?

If a person does act like an asshole, though, we can remember the people at the train show and the older lady who probably is not a very happy person. Whatever influence she had, she lost immediately because the people around her were just too busy having fun.


The world is full of assholes. What a philosophy to experience at a Christmas train show. What a philosophy to take into a new year! Isn’t this the season of good will to all? Where is the ’seeing good’ in humanity in a statement such as this?

You probably think I’m an asshole for saying making this statement, and this leads me to the second part of my philosophy; the part which adds, I think, both perspective and hope:

The world is full of assholes, and sometimes I’m one of them.

The world is full of assholes, and sometimes I’m one of them. Does a woman’s philosophy have to get more complicated than that? I don’t think so.

Whatever your religious belief or lack of one, Merry Christmas, assholes. You make my world a better place.