Categories
Programming Languages

More new toys

I still love Locomotive, but I haven’t forgotten my PHP, or my first love, RDF. (Note to self: get out more).

Anyway, I spotted the following at the RAP (RDF API for PHP) site:

RAP 0.93 will be released in January 2006 and will include support for the SPARQL query language and the SPARQL protocol.

I’ve been waiting for this to implement more evil plans. Oh rapturous joy! Oh sublime happiness!

I am dancing a jig. Do you see me?

*dance* *dance*

Happy face.

*dance…GROWORWOOWROWRWR!

(I danced on Zoë’s tail…)

Categories
Technology Weblogging

Form to Press

I’m in the process of porting the functionality I’ve created in Wordform to WordPress 2.0. You can see the working weblog here. While I’m at it, I’m updating the semantic weblog plugins to fit the new environment.

(Speaking of WordPress 2.0, did that go from source code control to release with no intervening beta period? Does this make it, then, Web 3.0–no beta at all?)

Some of the functionality I created with Wordform will be easy to implement in WordPress. For instance, I can create a new Administrative skin which, among other things, turns off the display of the in-page preview for the Write page. I can then add another plugin function to add a Preview button and open the preview full page, as I have it with Wordform. This was very difficult with older versions of WordPress because it wouldn’t display posts with draft status. Now, all you have to do is attach the page number to the end, and it displays. Be aware of this if you’re running WordPress–anyone can see your draft posts, as long as they can work through the post number.

This is the same functionality I have with Wordform. I had planned on putting in password protection, but never did.

Correction: In WordPress 2.0, it doesn’t display unless you’re logged in. My error. Sorry.

The comment management system I have is going to be tricky to implement in WordPress. This includes the post-edit, as well as my spam prevention techniques which are dependent on turning comments off after a certain period, adding in throttles, and the use of whitelisting. I also have to turn off ping and trackbacks, though not disable them. I particularly have to add plugins to remove that abysmal misuse of microformats, nofollow on links for commenters. This is on by default and I see no way in options of disabling this. Bluntly, this should be an option, because nofollow is a piece of crap. However, I believe plugins already exist for this.

I also have to see if the Dashboard can be overridden to remove the WordPress feed; at a minimum, I should be able to override the menu and remove the Dashboard option altogether.

Anyway, once I’ve worked these things through, I’ll port Burningbird back to WordPress.

Categories
Programming Languages

Chu chu code

Recovered from the Wayback Machine.

I can’t believe how easy it is to set up Ruby on Rails on the Mac with Locomotive. I went from two downloads to my first application in less than 1/2 hour. Great stuff.

I’m in the process of making vast changes here abouts. The first change is I’m moving my Tinfoil Project domain to a new development server that is upgraded to all the latest, breaking edge PHP, MySQL, Ruby on Rails, and so on. Tinfoil is being re-focused from photos to high-tech, and the new server will provide examples of code how-tos and tutorials I hope to work on this next year.

I’m looking at a virtual private server at A2 Hosting or OCS Solutions at this time, but wouldn’t mind hearing about other hosts–with a few caveats.

I’m looking for a service that goes month to month, since my income is uncertain from month to month. I need enough RAM to run my examples, and enough bandwidth not to have to pay overage. I wouldn’t mind a control panel, and some assistance (paid or otherwise) if things go wonky. I’d also like a system that has some of what I want already installed, so I don’t have to start from scratch. These are things I want. What don’t want is a service that’s heavily connected with weblogging.

You all may jump on the Cluetrain, but I’m finding I’d be just as happy, thank you, in not having a close, intimate connection with vendors. I want to be able to deal at a professional level with companies, and not have Sarah or Sam ‘offended’ by what I write in my weblog.

I want a clear means of communication detailed at the company site; I don’t want representatives in my comments whenever I mention their product. I don’t want to have to use my weblog as a form of extortion to get a company’s attention; or as a backdoor way of doing business.

I don’t care if they see me for who I really am, as long as they see me as ‘customer’ and act accordingly. I don’t want input into the company workings other than “what you’re selling me is working, here’s my money”.

I don’t want to be ‘bad’ or ‘good’ for being critical. I don’t want legions of supporters converging in my space, protecting that nice woman, hip young man, or crusty, but with a heart of gold, legend in his own mind . I don’t want what I say to show up on the tech.meme. I don’t care if what I write shows up on Google — I just want it to work.

I want a service; I’m willing to pay. This is not the beginning of a personal relationship. I don’t want it treated that way. The only train I want to be on around here, is Locomotive.

Categories
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’]);
next($del_menu_items);
}

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.

Categories
Technology

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!”

*look*

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

“203″

“Taking up how much space?”

“900MB”

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

“700MB”

“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″

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

“I might.”

*look*

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.