Categories
Burningbird

Becoming one with the MT pod people

Second Update:I didn’t choose the Hubble article as a test case for my conversion because it’s particularly good writing. I wrote this years ago and I know it needs severe editing and updating. I picked it as an example primarily because it fit all the test cases for XHTML compliance.

 

Thanks to Jay Allen’s helpful notes in my comments, I found a simple way to generate an RDF/XML file for each of my postings, all using the PostCon vocabulary. You can see an example for this entry, in fact. Which means I can automatically feed these into my PostCon system for management. Which means…

Yeah!

(I really do need to take to time to read the MT documentation a bit more carefully than I have done.)

Additionally, as Jay pointed out, with the template/archive management, you can split category pages by directory (and rename the files to something other than the number system if you want), but I still prefer separate weblogs for major type of document, and to reserve the category for the specific domain. This gives me hierarchical categorization — type/domain (or domain/type if I had reversed it). Unless you can do this with Movable Type, too, and I didn’t see this functionality in the documentation, either.

I think a Movable Type book is in order, but I’m sure the Trotts are already writing it.

When taking a break from working on the book, I’m slowly moving my content over to Movable Type management. While doing so, I’m taking the opportunity to update everything to XHTML 1.0 strict, as well as being CSS2 compliant.

I’ve already made the transition to XHTML 1.0 strict in the main Burningbird Network page. This page lists out excerpts from new entries across all of the web sites, including this weblog. At this time, only the Practical RDF, Photo Gallery, Articles, and weblog links show in the page, but I’ll add the other sites as I bring them inline.

I pull the excerpt information from the MySql database (oh, how nice it is, too), using PHP. In addition, I created a Perl program that takes the RDF/RSS from all of my websites/weblogs and merges them into one RDF/RSS file. You can see the code for this in Chapter 14 of the Practical RDF book, which I uploaded last night. The application is scheduled as a cron job (scheduled re-occurring job) running every hour.

An advantage to pulling excerpt information for each posting for the main Burningbird Network page is this forces me to write an excerpt for each posting, article, tutorial, etc. Even if the excerpt is no more than the first few sentences of the posting copied over to the MT excerpt field, it’s better than the chopped up text that shows in the RSS feeds now. And it only takes a minute at most.

(BTW: If you’re subscribed to any of my RSS feeds, I would ask that you switch your subscription to the new file. However, you can also continue to subscribe to a specific entity, such as this weblog, or Practical RDF, or Articles, or whatever.)

I’m in the process now of setting up Burningbird Articles. In my past life, at each of my web sites I used to have a sub-directory of articles off of the main site containing more in-depth writings. I still do, but in addition to accessing the articles using http://yasd.com/articles or whatever was used, readers can now access articles at articles.burningbird.net. I’ll be doing the same to a all my other sub-directories — each one becomes a separate weblog.

I used a separate weblog specifically to control the location of the files — that’s the main determiner. Ultimately this becomes a content type category — such as article, tutorial, weblog, etc. Following this scheme, http://domainname.com/articles became articles.burningbird.net and is managed through Burningbird Articles; http://domainname.com/interaction became interaction.burningbird.net and is managed through Burningbird InterActZone and so on. I’ll convert all the older material I want to keep into weblog entries, and since the file names will differ — MT does use a numbered system and my old entries had regular names — my post-content management system (PostCon) handles the re-directs to the new locations.

All main pages are PHP and full of PHP goodness. All secondary pages (individual articles, posts, etc.) are HTML pages — no server-side coding. Peripheral pages such as Backtrack are also PHP or based on some other functionality such as CGI.

Another significant change is my domain management: I used to have several sites, each with their own domain: YASD (yasd.com) for computer technology; P2P Smoke (p2psmoke.org) for distributed and P2P technologies; Dynamic Earth (dynamicearth.com) for science and environment; Solar Lily (solarlily.com) for art; and NetJetter (netjetter.com) for travel, hiking, outdoor recreation, and adventure. I still have the domains, but all of the sites are now merged into Burningbird, and all point to burningbird.net. They’re joined by a couple of new ones: MirrorSelf, which will become my photo blog in addition to my static photo gallery; and EvilWoman, which is going to become something….else. My online book, which I’ve been working on quietly offline, is called Marbles, and it will be at marbles.burningbird.net, when I set it up.

To maintain the distinctive flavor of each item as it moves over to the new system, I’ve created MT categories in each of my site weblogs (such as Burningbird Articles) and labeled then ‘yasd’, ‘dynamicearth’, ‘solarlily’ and so on. When an individual page is opened (such as my Hubble story I just ported) I’m using the category to change the style sheet as well as logo, using the MT tag <$MTEntryCategory> tag. You can see it in action now — all main pages willl eventually open with the Burningbird deep burgandy color (the bittersweet chocolate brown color is going away) but anything associated with Dynamic Earth, such as the Hubble story, opens with a deep pine green. P2P smoke is gray, NetJetter is a deep blue and so on.

As for layout, all main pages have the three column layout shown in the Burningbird Network web page and the primary Burningbird Articles page; all secondary pages have the two column layout, as shown in the Hubble article page.

The only exceptions to this rule will be this weblog, the Practical RDF weblog, and Marbles.

The layouts not only validate as XHTML 1.0 strict, they also conform to Mark Pilgrim’s Accessibility guidelines, as you’ll be able to test for yourself if you use a voice browser (just the main page for now).

The clean up for each article is enormous, especially considering my use of graphics. I had replace the IMG vspace and hspace attributes with CSS margin attributes, and the align attribute with the CSS float. The result is better, just a lot of work. Not to mention closing all of those open break tags. And why did I use caps so much for so many of my tags?

Another change I had to make was to remove the ‘&’ from all CGI references int he MT template code (such as with trackback and setting the view mode). I had to replace them with the encoded value, which I’m not sure how to show you.

However, in spite of all the care, I am still having problems with IE. No version of IE will take follow the CSS height attribute when used in a TD element. Based on this IE oversized some of the rows, and the looks are off. No problem with the writing, just the overall look. But I’m not going to change the design because of a flaw in Microsoft’s IE browser.

(If someone has a workaround, I’d be glad to hear it.)

One other change I’m making isn’t ready to view yet. I’ll post when the application to support it is finished.

If I had one wish for Movable Type, it would be the ability to create a separate template that’s anchored to an individual entry so that I can create a separate XML page associated with my individual archive entries (other than the XHTML ones). However, MySql comes to the rescue again — what I can’t do within Moveable Type directly, I can do within the Movable Type database.

Categories
Just Shelley

Lessons from the tortoise

My back and leg have progressively been getting better and the weather warmed up so that I could get out for a small, light walk today. Being outdoors, even for just a little while, going for a walk again, these all work for me better than all the drugs in the world.

There’s this pile in front of me, it’s got a large sign that reads, “Things Shelley can’t control” and the pile is big. Huge. However, if I stop focusing on it, fixating on it, and open my eyes and look around, there’s a smaller pile over to the side and a little to the back, with a tiny sign that reads, “Things Shelley can control”. I’m going to get up and move my butt over to sit in front of the smaller pile, and put the Big Pile of Stuff I can’t control behind me. I’m not going to look at it because there’s nothing I can do about it.

I can’t afford the doctor to get my back checked out, but there are things I can do now. I started today with the small, gentle walk, and I didn’t fall, and I feel pretty good right now. I can also control what I eat, and can alter my diet to foods that feed the brain, and calm the soul, and heal the bones and muscles. And as a special treat, I’ll include in this diet a tiny box of Godiva chocolates every once in a while, when I’ve been particularly good. Because we all know that chocolate is good for the soul.

Beginning Monday, I hit the gym associated with the housing complex and start re-building muscles to take the strain off the lower back, knees, and ankles. Slow but sure, and with plenty of careful stretching. All that I learned years ago during Karate classes can now be put to use as I carefully re-introduce my body to good health. And I’ll feel better when I’m working out because this will be something I can control, and feeling better in my mind will make me feel better in my body. Health is as much a matter of mind as it is the body.

I can’t afford to make the payments on my bills or to pay the state of California or the IRS what I owe them, but I can work things out with each. I can write them and call and come up with a plan we can all live with. Smaller payments will allow me to stretch my dollars, or to make it in a job with a lower income. By doing this, I don’t have to default on my debt so my creditors and California and the IRS get paid. Hopefully I’ll be able to keep Golden Girl.

Sure my credit will take a hit for a while, but I’ll just have to refrain from buying that huge diamond bracelet on tick. Or the new TiBook.

Such things I’ve been getting incensed over. I can’t believe I got all uptight about weblog links. Weblog links! I mean, can we find anything in the world more inconsequential than weblog links, blogrolls, and all that crap? Well, okay, the study that re-enacted the gunfight at the OK Corral in order to determine why only 8 bullets out of 30 rounds found a target, that’s more inconsequential. But just barely.

I’ve also been getting pretty frustrated at Bush and how he’s running the country into the ground while he spends all of his time focusing on the Prize that is Iraq. Oh, I get angry, and every time I do, I tense up and then I start moving in an agitated manner and I strain my back all over again.

“Damn f**cking a**hole! Ow!”

I can’t stop Bush from doing what he’s doing, but I can stop getting angry and frustrated about it because all this does is burn calories and cause me to hurt myself. I’ll focus, instead, on what I can do, which is write, vote, and protest, hopefully with others. What I can’t do alone, in my house fuming in front of the TV going red in the face every time I see that Man, I might be able to accomplish in concert with others. Or not, but I’m not going to spiral in on what I can’t control.

I have to get rid of my storage unit in San Francisco. Okay. My roommate, who is a wonderful person, has offered to take some time off and rent a small truck and we’re going to head over in February and load as much as we can to bring back. Won’t be all of it, but that’s okay. Goodwill is one block away from the storage unit and they can use the stuff. As for the books, I’ll have to get rid of about half of them, but I can keep half, which is more than I expected a few weeks back.

I figured out what to do with the books I can’t bring back — I’m giving them to the homeless shelters in the area, because I have a hell of a lot more than they do, and I have friends and family who will make sure that I never have to try and find a way to stay warm when it’s -20 outside.

I’ll have to sell my mineral collection, and my better pieces of jewelry, but you know, I hardly ever wear the jewelry — gets in the way when I hike — and the rocks are collecting dust, anyway. Time to stop hanging on to the baggage, because all it is stuff. I’m keeping the lava lamps, though, as gifts for some friends of mine. Lava lamps shouldn’t be sold, they should be given because lava lamps are a state of mind.

I’m also keeping my current TiBook, which you can get from me only if you can pry it from my cold dead fingers. That and my camera. The great thing about digital is you don’t have to pay for developing or printing.

I haven’t been able to find a job, and that’s been about the worst for me; I’ve worked since I was 16 years old. But this is one I have to let go of. I have to concentrate on what I can control, which is finishing the book for O’Reilly, and digging up some other paid writing. And if I can’t find a computer job, or technical writing, or training, then I may have to look for work outside my field, but such is life. I was a waitress more than once, and have worked an assembly line years ago; if I have to wait tables again. or help cap bottles of Budweiser, I will. This is what people do when the economy takes a nose dive.

My Dad did this years ago during the Depression. He quit college, and worked jobs ranging from being a lumber man in Alaska, to working the rails for the railroad down in the lower 48. My Dad is 92 years old, and I truly believe the reason he’s still alive today is that he’s never spent a moment of his life shaking his fist at the world and railing at it for being unfair.

Time for my father’s daughter to make like a chip off the old block. We Powers, we come from a long line of Irish fighters who used to, I have been told, pour molten lead down our enemies throat. My family doesn’t raise quitters. Or people who sit in front of piles of stuff they can’t control.

Categories
Burningbird

Come together

I finally started posting the updated chapters for the Practical RDF book, over at the weblog. These have been edited, drastically, since the last release. The end is in sight for this book and I’m not sure who’s happier: me or my editor. This book has been a long time coming.

Thanks to my most recent announcement about the TOC, I was introduced to some new and very interesting uses of RDF/XML out there ‘in the world’; including a very sophisticated commercial application. These are all covered in the updated chapters.

Other work, though the effect is subtle: I’ve made some majors modifications here and there. For instance, the Recent Comments, Recent Trackbacks, and Recent Writing sections now cross all of my weblogs/web sites. I found that with the Practical RDF, weblog keeping it in isolation from Burningbird was not a good idea.

Now, no matter what main page you go to you’ll be able to see, at a glance, what’s happening elsewhere in the Burningbird Network. I used PHP/MySql to make these change, and once I test the code out a few days, I’ll post it online.

I didn’t use Movable Type plug-ins because by the time I’m finished with the Burningbird Network re-organization and my porting of all the BB Net pages to Moveable Type, I’ll have over twelve main weblog/web site pages. MT plug-ins would require a re-build of all these pages whenever a comment or trackback arrived or a new posting or edit was made.

There’s much less CPU involved just by accessing recent activity directly from the database. Since the amount of data is small and the queries are optimized, the data access should be lightweight. If anything, the PHP processing is what slows the page accesses with my current host, which tends to be a bit CPU and bandwidth bound, rather than I/O bound.

(In other words, with my current host, CPU resources are a bit strained, as is the available Internet bandwidth; however, internal file access, which is what happens with local database queries, does not seem to be strained at this time.)

Of course, all individual and category or secondary pages are static HTML. They’re only re-built when a change is made to the page that impacts them, only, so it was more efficient to use MT plug-ins with them. The only exception is the Backtrack PHP page, which is why it’s linked from the individual pages, instead of incorporating the processing directly into the page itself.

It’s coming together. It’s all finally starting to come together. Right now, over you.

(Apologies to the Beatles for taking their song title and messing with their words.)

Categories
Writing

Mockingbird’s Wish

Recovered from the Wayback Machine.

The news spread first as a whisper and then as a shout: First Mother was granting to each creature one wish. One wish, only, but whatever was asked, would be granted. Mockingbird heard the news from Hawk who head the news from Sparrow who heard the news from Robin and the forest was atwitter with the sound of the birds as they discussed this extraordinary event.

When the Great Day came, all the birds gathered in the Glen, bending the limbs of the trees until they grumbled and groaned out from the weight. Suddenly, a smell of new grass and old dirt and the sound of sea breeze and rustling sand and the light of the sun and the moon entered the Glen, and all the birds bowed low because this was First Mother, the first of all of them. The light was so bright they could not see her form, but they could feel her warmth, and when she spoke each word seemed weighted, as if pulled from Time itself.

:My friends, today I give each of you a wish. One wish only, but whatever you ask, I will grant it.

The birds clacked their beaks and moved their wings until the Glen was full of the sound of feathers; but they fell still when First Mother spoke again.

:Before you ask your wish, though, think hard, and think long. Whatever you ask will be given on to you and to all your descendants for all time. Do not spend your wish foolishly.

And, as the words ended, a beam of light shone out from the glory of First Mother and fell on Cardinal.

:What will you have Cardinal?

Cardinal shied back at first, startled at being the center of eyes, shaken by the light that shown dully on its plain brown feathers. After a moment, though, it spoke out.

“First Mother, I have long been plain. Neither small, nor large, with no interesting markings and no particular song. I would wish, more than anything, to be beautiful. To be of a color so rich that it is noted throughout all lands. This is what I truly wish.”

:So be it, Cardinal.

The light on Cardinal began to intensify and became so bright that all of those in the Glen had to turn away because it hurt their eyes so. When it suddenly stopped, the birds blinked their eyes to adjust to the darkness. As each recovered its sight it turned towards Cardinal, and gasped out at what it beheld.

Where Cardinal had been, dull and brown and plain and unseen, now stood a glorious creature of incredible color! Rich red shown from its wings and around its face dark velvety black. Slowly, Cardinal became aware of the other birds stares and tentatively stretched its own wing out. When it beheld its beauty and its color, which shown out even in the darkness, it was overcome, bringing both wings over its face, body trembling with joy at the change. When it could finally speak, it whispered out, “First Mother, thank you. Thank you from the bottom of my heart, and thank you from all my descendants throughout all time”. At those words, Cardinal bowed low to the ground.

Cardinal among trees

The act was repeated many times. The shining light, the wish, the incredible change. On through the afternoon and through the night and the next day, First Mother granted the wishes of whomever the light shown.

Eagle wished for sight that would allow it to spot food from high above. Pelican wished for a beak that would allow it to hold many fish. Crow asked for cunning, and when it made its bow in gratitude, unlike the other birds it kept one eye cocked towards First Mother, always alert for the main chance.

Owl asked to see at night, and Nightingale asked for glorious song. In fact, many birds asked for a special song, all of their own, all unique and beautiful. To listen to each sing their first song after their wish was granted was a glorious experience indeed.

Mockingbird watched all of this in wonder and more than a little envy. It thought it to itself, “I would have liked to have the red of the Cardinal, and the eyesight of the Eagle, and the song of the Nightingale, but they were asked first.”

As time went by and other birds had their wishes granted — Seagull to fly and Penguin to swim and Ostrich to run — Mockingbird’s envy grew, until in the midst of its discontent an idea came to it. The Idea of all Ideas! It smiled to itself, sure that it’s wish would be the best of all. When its turn finally came, when it felt the heat and warmth of the beam, Mockingbird knew what to ask.

:What will you have Mockingbird?

“First Mother”, it said. “I have listened to the song you’ve given Nightingale and Canary and Meadowlark. And I asked myself why should I have only one song, one sound, when I can have many.” Mockingbird boldly looked into the light that was First Mother.

“That is my wish — to have all the songs of all the birds of the world. To be able to hear any bird and any song and sing as sweetly or as cleverly as they do. I want all the songs, First Mother. All of them.”

:Mockingbird, your wish is both vast and shallow. Are you sure of your wish? Are you sure that what you want is all the songs of all the birds?

“Yes, First Mother. I am”, Mockingbird replied, smug in the knowledge that First Mother would grant the request.

:So be it, Mockingbird.

Slowly the air around Mockingbird brightened until it had to close its eyes from the light. A faint shock went through its body and settled in its throat, and it knew that its wish had been granted. As it waited for the light to dim, and to be able test its new abilities, it was surprised to hear what sounded like a sad sigh within the glow around it.

After the beam stopped and the light faded, all the birds looked at it in silence. “This will never do”, thought Mockingbird to itself. “You there, Canary. Sing something!”

Canary moved to protest but of course the protest issued forth as glorious song. And after a few notes, Mockingbird felt something come over it and opened its beak and from its throat came sounds twin to Canary. Canary was so surprised it’s song sputtered to an indignant stop.

Though its song was lovely, indeed, Mockingbird wasn’t satisfied. “You, there, Meadowlark! Sing!”, it demanded.

As with Canary when Meadowlark sought to protest its protest came out as song and soon the sounds of Meadowlark joined the song of Canary, and were eventually joined by Nightingale and Robin and Finch and so on until Mockingbird’s song outshone all of them for it’s intricate beauty and complex melody, one bird’s song after another. Even the trees were moved to silence and ceased their complaints at the wonder of the sound.

The other birds were not happy because what was once uniquely their’s now belonged to another. However, they didn’t complain because to do so would be ungrateful to First Mother.

After all the wishes had been granted and after First Mother left the Glen, the birds dispersed to their homes, some to plains, some to the sea, and some to forest where Mockingbird made its home. Over time other creatures came to the trees and they were eventually joined by First Man and First Woman. Villages sprang up and roads were built. and Mockingbird took delight in siting in the trees near the villages, singing its song, well satisfied when it looked down on the entranced faces that stared at it.

One day Mockingbird was sitting in a tree near the road when an old man and a little girl walked beneath it. It began its song, a complex weaving of Chickadee, flowing into Hawk cry, mixed with the mournful tone of Owl, and ending on delicate otherworldly chimes of Hummingbird. The old man and the girl stopped, caught in the spell of the sweet sound.

“Grandfather, what kind of bird is that, which can sing so many songs!”, the little girl asked.

“Well, granddaughter, that is Mockingbird. And it can sing all the songs of all the birds in the world. In fact, there is no song it cannot hear that it cannot sing.” The old man sighed. “Is it not beautiful?”

“It is grandfather. A lovely sound indeed.”

The little girl listened for a time and then turned to her grandfather, a puzzled expression on her face.

“But Grandfather, what is Mockingbird’s true song? How can we tell which song is true and which song copied if it sings all the songs of all the birds in the world?”

“Granddaughter, the Mockingbird has no song of its own. It’s only sound is that which it borrows from others.” At that the girl seemed sad, and the old man hastened to reassure her. “But isn’t its song beautiful and rich? Why are you so sad?”

“Because, grandfather, the Mockingbird has no song of its own.”

On hearing this Mockingbird’s sound faltered and it fell silent. When the song ended, the old man and the little girl, released from the spell of the music, walked away, leaving Mockingbird alone with its thoughts.

Thoughts now filled with regret.

Categories
Just Shelley

Creaky body update

Today the sun is out, and a morning dove just landed on my office window sill, giving my cat Zoe the thrill of her life. The dove coo’d and Zoe did her little meow-clack-meow-clack sound she makes when she spots Prey. This didn’t worry the dove terribly because even doves are smart enough to know that there’s a barrier between her and the Predator.

The amazing bird tree across the road is just filled with a variety of bird life today — mockingbirds, cardinals, chickadees, doves, you name it. I don’t know what it is about this tree that collects all the birds from the neighborhood. I do know if the apartment ever made moves to cut it down, I would chain myself to it.

Speaking of chains, pretty much desk and bed bound at this point in time. My back has worsened, to the point of waking me up at night. However, one thing in my favor is that Advil works especially well with me…and there’s always my margaritas at night. For medicinal purposes, of course.

Yes, as soon as I get my next advance, I am going to the doctor. I hear you all making this suggestion with a certain amount of exasperation in your voices.

But, oh, this day was made for hiking…